期货日线MACD策略
由crisvalentine创建,最终由bq7zuymm 被浏览 423 用户
这是旧版文档
MACD策略的交易规则
相关指标定义如下:
DIF=EMA(close,12)−EMA(close,26)
DEM=EMA(DIF,9)
DIF从下而上穿过DEA,买入开仓;
DIF从上往下穿过DEA,卖出开仓;
策略构建步骤
- 确定期货合约和回测时间 通过证券代码列表输入要回测的期货合约,以及回测的起止日期
- 确定买卖条件信号 通过自定义Python模块m4获取合约基础数据,通过自定义Python模块m1获取DIF和DEA指标数据; 在输入特征列表中通过表达式引擎定义 buy_condition=where((shift(DIF,1) > shift(DEA,1)) & (shift(DIF,2)<shift(DEA,2)),1,0),实现买入信号。 在输入特征列表中通过表达式引擎定义 sell_condition=where((shift(DIF,1) < shift(DEA,1)) & (shift(DIF,2)>shift(DEA,2)),1,0),实现卖出信号。 通过衍生特征抽取模块实现买卖条件指标 buy_condition 和 sell_condition 数据的抽取。 通过缺失数据处理模块删去有缺失值的数据。
- 确定买卖原则 如果当日 buy_condition > 0,执行平空开多操作; 如果当日 sell_condition > 0,执行平多开空操作。
- 模拟回测 通过 trade 模块中的初始化函数定义交易手续费、滑点、杠杆比例和是否逐日结算; 通过 trade 模块中的准备函数定义 context.buy_condition 和 context.sell_condition 变量来获取并存放每日买卖交易信号; 通过 trade 模块中的主函数(handle函数)查看每日的交易信号,按照买卖原则执行相应的交易操作。
https://bigquant.com/experimentshare/47f278b054664e7b90f4fd184ec33df7
\