关于股票回测的问题 (文华财经WH6赢顺V6.7)

投资者咨询:关于股票回测的问题 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-6-14 14:00

 老师:

我写了个股票程序如下:

LENGTH1:=5;
LENGTH2:=30;
FUND:=100000;
VAR1:=MAX(100,INTPART(FUND/C));
MA1:=MA(CLOSE,LENGTH1);
MA2:MA(CLOSE,LENGTH2);
CROSSUP(MA1,MA2),BK(VAR1);
CROSSDOWN(MA1,MA2),SP(VAR1);
STOCKDIVD(0);

我的程序里面设定了开仓的资金是10万元,在回测参数设置里面设的是50万元,为什么我从2006年回测的时候,在2006年回测报告里面用的是50万元开的仓,而在最近的回测报告里面用的本金是10万元呢?如图:

 



图片点击可在新窗口打开查看

图片点击可在新窗口打开查看
技术人员回复
日期:2018-6-14 14:24

 如果设置了复权,直接使用CLOSE函数计算开仓手数取的是复权后的价格

 

所以在历史K线上会存在手数计算错误的问题,这样改一下:

 

LENGTH1:=5;
LENGTH2:=30;
FUND:=100000;
CC:=RAWDATA('CLOSE');
VAR1:=MAX(100,INTPART(FUND/CC));
MA1:=MA(C,LENGTH1);
MA2:=MA(C,LENGTH2);
CROSSUP(MA1,MA2),BK(VAR1);
CROSSDOWN(MA1,MA2),SP(VAR1);
STOCKDIVD(0);