python macd背离_Python 精简多品种 MACD 趋势策略
Python 精简多品种 MACD 趋势策略
Python 精简多品种 MACD 趋势策略
Author: Zero, Date: 2017-06-18 11:35:13
Tags: 趋势 Python MACD 多品种
需要引用小小梦公开的商品期货交易类库
python版CTP商品期货交易类库(支持2/3 测试版)
'''
/*backtest
start: 2016-01-30
end: 2016-12-30
period: 1440
periodBase: 60
mode: 0
*/
'''
class Trader:
def __init__(self, q, symbol):
self.q = q
self.symbol = symbol
self.position = 0
self.isPending = False
def onOpen(self, task, ret):
if ret:
self.position = ret['position']['Amount'] * (1 if (ret['position']['Type'] == PD_LONG or ret['position']['Type'] == PD_LONG_YD) else -1)
Log(task["desc"], "Position:", self.position, ret)
self.isPending = False
def onCover(self, task, ret):
self.isPending = False
self.position = 0
Log(task["desc"], ret)
def onTick(self):
if self.isPending:
return
ct = exchange.SetContractType(self.symbol)
if not ct:
return
r = exchange.GetRecords()
if not r or len(r) < 35:
return
macd = TA.MACD(r)
diff = macd[0][-2] - macd[1][-2]
if abs(diff) > 0 and self.position == 0:
self.isPending = True
self.q.pushTask(exchange, self.symbol, ("buy" if diff > 0 else "sell"), 1, self.onOpen)
if abs(diff) > 0 and ((diff > 0 and self.position < 0) or (diff < 0 and self.position > 0)):
self.isPending = True
self.q.pushTask(exchange, self.symbol, ("closebuy" if self.position > 0 else "closesell"), 1, self.onCover)
def main():
q = ext.NewTaskQueue()
Log(_C(exchange.GetAccount))
tasks = []
for symbol in ContractList.split(','):
tasks.append(Trader(q, symbol.strip()))
while True:
if exchange.IO("status"):
for t in tasks:
t.onTick()
q.poll()
Sleep(1000)
相关内容
更多内容
JR13 能不能每行注释下,看不太懂哦
th666 想问下如果想加入自编的函数指标的话应该加在哪里比较好?加在Trader类里面还是外面?
python macd背离_Python 精简多品种 MACD 趋势策略相关推荐
- 商品期货策略 之 Python 精简多品种 MACD 趋势策略框架(注释版)
Python 精简多品种 MACD 趋势策略框架(注释版) Python超级精简的多品种MACD趋势策略框架, 代码超级精简, 注释超级详细啰嗦. >_<! 需要引用 python版CTP ...
- python如何用macd选股_Python Finance:如何使用macd指标进行信号策略?
我试图了解库存数据并在python中实现它.在开始我在Python 库中使用MACD指标stockstats. 我想知道,如果我有一个特定股票的100个OHLC条目,我怎样才能使用MACD输出来产生信 ...
- python量化自动交易_Python量化交易之MACD'顶底背离'形态的实现,自动
点及财经,股票期货专业投机者. 前言 股票或期货的价格波动,总会有一些可以规律可以遵循的.其中,'背离'也算是其中的一种,并且可以作为判断趋势结束或阶段调整的预警信号. 通常情况下,我们所说的'背离' ...
- 用python写期货量化策略,期货单品种MACD择时加ATR止损
import numpy as np import talib import time import jqdata import talib import smtplib from email.mim ...
- MACD背离指标公式
DIFF:EMA(CLOSE,12)-EMA(CLOSE,27); DEA:EMA(DIFF,9); MACD:2*(DIFF-DEA), COLORSTICK,LINETHICK2; 低位金叉:=C ...
- 【转】python获取计算股票技术指标DIF/DEA/MACD
学习 3-8 115阅读4点赞0评论 python有几个股票数据获取接口,如tushare,但其只能获取到一般指标,且是积分制,即如果要获取更多的指标和接口,则需要做任务提高积分:pytdx可以获取到 ...
- 国内股票MACD指标计算,Python实现MACD指标计算,Talib实现MACD指标计算
0 引言 MACD指标是最为常见的指标之一,股票每日的K线数据通过Tushare.Baostock等平台能够获取到个股及指数的Open.High.Low.Close.Volume等数据,MACD等技术 ...
- 双线macd指标参数最佳设置_macd线参数如何设置最佳买点,MACD指标的参数设置,MACD参数设置多少最佳...
Q1:MACD指标的参数设置,MACD参数设置多少最佳 DIF:=EMA(CLOSE,12)-EMA(CLOSE,26); DEA:=EMA(DIF,9); MACD:=(DIF-DEA)*2; 一般 ...
- 【手把手教你】获取股票数据并进行量化回测——基于ADX和MACD趋势策略
01 引言 不少喜欢量化的读者向我反馈,虽然已经掌握了Python的编程基础,但仍不知道如何切入到股票量化分析上,一是对如何获取股票数据还不太熟悉:二是拿到股票数据后不知道怎么做量化回测.实际上公众号 ...
最新文章
- esp ghost引导_ghost做uefi+gpt 需要什么cmd命令修复引导
- linux系统的5种文件类型及其属性符号
- 海康大华RTSP格式
- gSoap的“error LNK2001: 无法解析的外部符号 _namespaces”解决方法
- java判断字符串的值是否为0或者为空
- python3.6 django部署_Apache2+Django+Python3.6部署-
- element 输入框点击事件_Element Input输入框的使用方法
- JavaEE Tutorials (10) - Java持久化查询语言
- 【总结】6种机器学习中的优化算法:SGD,牛顿法,SGD-M,AdaGrad,AdaDelta,Adam
- iOS 地址智能解析器(收货地址 或 寄件地址)
- 手持式频谱分析仪/路测仪推荐哪一款?TFN全新RMT系列不容错过
- 自主导航:赋予移动机器人智能感知与运动的能力
- 论文阅读: Disentangled lmage Colorization via Global Anchors
- 深度学习基础-经典模型总结
- 情感分析的新方法,使用word2vec对微博文本进行情感分析和分类
- 用java做列车牵引计算,[_列车牵引计算及操纵示意图计算机软件的开发] 颈椎牵引器图片...
- 你好, View Binding! 再次再见, findViewById!
- Lenovo 联想 E46 E47 SLIC Marker程序
- ROBOTSTUDIO中基础术语、在线功能
- LineChart、BarChart的纵坐标设置