系统的测试报告里,只有MaxDrawDown最大回撤:指资产(权益)曲线出现一个新的最高点后,此高点与其之后的最低点的差值。 请教老师,如何用代码写出: ①最大跌破初始资金差值? ②最大跌破初始资金差值时间?(xx年xx月xx日) 我说的最大跌破初始资金差值是指不管涨多少,只要跌破初始资金才开始记录,其中差值最大的一次:比如初始资金是10万,测试时间内,曾经最大跌到8万,, 那么最大跌破初始资金差值:10万-8万=2万 回测代码: INPUT:NMIN(10,1,100,1),a1(61,1,100,1),a2(961,1,1000,1),a3(100,1,100,1);
ma1:=MA(c,a1); ma2:=MA(C,a2); ma3:=MA(c,a3);
//交易条件 开多条件:=CROSS(ma1,ma2)and holding=0; 开空条件:=CROSS(ma2,ma1)and holding=0; 收盘平仓:=TIME>=CLOSETIME(0)-NMIN*100;//收盘平仓 平多条件:=(CROSS(ma3,ma1) OR 收盘平仓)and holding=1; 平空条件:=(CROSS(ma1,ma3) OR 收盘平仓)and holding=-1;
//交易系统 开多:BUY(开多条件 ,1,MARKET); 开空:BUYSHORT(开空条件,1,MARKET);
平多:SELL(平多条件,1,MARKET); 平空:SELLSHORT(平空条件,1,MARKET);
// //最大跌破初始资金差值?
//最大跌破初始资金差值时间?(xx年xx月xx日)
回测截图举例: 比如:测试时间段是:2021.1.1--2023.1.1,初始资金10万,周期一分钟,价格复权。 测试品种一:螺纹连续 最大跌破初始资金差值是:100000元-98814.22元=1185.78元 最大跌破初始资金差值时间:2021-2-24 19:00:00 测试品种二:热卷连续 最大跌破初始资金差值是:100000元-90749.13元=9250.87元 最大跌破初始资金差值时间:2022-12-29 02:59:00
|