基本思路
构造k线:
1,5分钟k线
2,15分钟k线
构造基于15分钟k线的移动平均线ma5和ma20
定义:maTrend 为ma5(15分钟k)大于ma20(15分钟k),真为1,假为-1
空仓:
if maTrend为1 并且RSI大于RSI做多阈值:
开多单
elif maTrend为-1 并且RSI小于RSI做空阈值:
开空单
持有多单:
if maTrend为-1并且RSI小于50:
平多单
持有空单:
if maTrend为1并且RSI大于50:
平空单
回测参数
rsiSignal = 20 # RSI信号阈值,多为50+20,空为50-20
rsiWindow = 14 # RSI窗口
fastWindow = 5 # 快速均线窗口,结合15分钟线使用
slowWindow = 20 # 慢速均线窗口,结合15分钟线使用
回测结果
回测区间:20190105-20190405
标的:IF9999
参数优化
分组测试:
setting.addParameter('rsiSignal', 15, 30, 5)
setting.addParameter('rsiWindow', 10, 20, 5)
setting.addParameter('fastWindow', 5, 15, 5)
setting.addParameter('slowWindow', 20)
setting.addParameter('rsiSignal', 20)
setting.addParameter('rsiWindow', 14)
setting.addParameter('fastWindow', 5, 10, 5)
setting.addParameter('slowWindow', 20,40,10)
结果:
annualizedReturn fastWindow slowWindow rsiSignal rsiWindow
0 2.34014462 5 20 20 14
1 2.259018138 5 40 20 14
2 2.121318283 10 30 20 14
3 2.091021151 5 30 20 14
4 1.991306239 10 40 20 14
5 1.935240956 10 20 20 14
参数优选:fastWindow,slowWindow,rsiSignal,rsiWindow分别为5,20,20,14
恰巧就是默认参数
完整回测报告
第一笔交易: 2019-01-17 14:20:00
最后一笔交易: 2019-04-04 11:10:00
总交易次数: 27.0
总盈亏: 137,678.72
最大回撤: -32,268.1
平均每笔盈利: 5,099.21
平均每笔滑点: 120.0
平均每笔佣金: 63.01
胜率 40.74%
盈利交易平均值 20,521.38
亏损交易平均值 -5,503.53
盈亏比: 3.73
计算按日统计结果
------------------------------
首个交易日: 2019-01-15
最后交易日: 2019-04-04
总交易日: 47
盈利交易日 16
亏损交易日: 18
起始资金: 1000000
结束资金: 1,137,678.72
总收益率: 13.77%
年化收益: 67.52%
总盈亏: 137,678.72
最大回撤: -36,433.56
百分比最大回撤: -3.3%
总手续费: 1,701.28
总滑点: 3,240.0
总成交金额: 56,709,180.0
总成交笔数: 54.0
日均盈亏: 2,929.33
日均手续费: 36.2
日均滑点: 68.94
日均成交金额: 1,206,578.3
日均成交笔数: 1.15
日均收益率: 0.28%
收益标准差: 1.15%
Sharpe Ratio: 3.78
线性回归系数 olsNum: 3,330.36
调整线性回归系数(olsNum/最大回撤) olsNum: -0.0914
调整线性回归系数夏普(olsNum/日收益标准差) olsNumShape: 2,890.09
近20日的最大回撤 -36,433.56
近20日总收益 3.64%
近20日收益标准差 1.0%
近20日最大单日跌率 -0.98%
近20日下跌天数 8.0
------------------------------
盈利交易bar 1955
亏损交易bar: 1902
收益标准差: 0.09%