策略分享

期货日线布林带策略

由crisvalentine创建,最终由crisvalentine 被浏览 289 用户

布林带策略的交易规则

相关定义如下:

中轨 = N时间段的close价格简单移动平均线

上轨 = 中轨 + K × N时间段的标准差

下轨 = 中轨 − K × N时间段的标准差

当前价格相对位置 percent_b = (close - lower)/(upper - lower)

本例中N取20,K取2

当percent_b ≥ 1时,以第二日开盘价平空开多;

当percent_b ≤ 0时,以第二日开盘价平多卖空;

策略构建步骤

  1. 确定期货合约和回测时间

    通过证券代码列表输入要回测的期货合约,以及回测的起止日期

  2. 确定买卖条件信号

    在输入特征列表中通过表达式引擎定义 buy_condition=where((close-(mean(close,20) - 2std(close,20))) / (4std(close,20))>=1,1,0),实现买入信号。 在输入特征列表中通过表达式引擎定义 sell_condition=where((close-(mean(close,20)- 2std(close,20))) / (4std(close,20))<=0,1,0),实现卖出信号。 通过自定义Python模块获取合约基础数据,通过衍生特征抽取模块实现买卖条件指标 buy_condition 和 sell_condition 数据的抽取。 通过缺失数据处理模块删去有缺失值的数据。

  3. 确定买卖原则

    如果当日 buy_condition > 0,执行平空开多操作; 如果当日 sell_condition > 0,执行平多开空操作。

  4. 模拟回测

    通过 trade 模块中的初始化函数定义交易手续费、滑点、杠杆比例和是否逐日结算; 通过 trade 模块中的准备函数定义 context.buy_condition 和 context.sell_condition 变量来获取并存放每日买卖交易信号; 通过 trade 模块中的主函数(handle函数)查看每日的交易信号,按照买卖原则执行相应的交易操作。

https://bigquant.com/experimentshare/f3dc7afacc5042bfa00b61e52c3478df

\

标签

期货日线简单移动平均线
{link}