今天遇到一个问题,查了很久,我的程序如下:
if holding>0 then begin
if ACS=0.5 then begin
sell(1,0,LIMITR, min(open, l[ACSS]) -滑点);
ACSA:=0;
end
end
if holding<0 then begin
if ACB=0.5 then begin
sellshort(1,0,LIMITR, max(open, h[ACBB]) +滑点);
ACBA:=0;
end
end
if barpos<50 then exit;
if ACBA<3 then begin
if ACB=0.5 then begin
buy(1, 手数, LIMITR, max(open, h[ACBB]) +滑点);
ACBA:=ACBA+1;
end
end
if ACSA<3 then begin
if ACS=0.5 then begin
buyshort(1, 手数, LIMITR, min(open, l[ACSS]) -滑点);
ACSA:=ACSA+1;
end
end
持仓:holding, LINETHICK0;
============================
在K线图上看得到开平仓信号,就是历史测试没任何交易。
后来勾选"严格使用时间段数据测试"后历史测试就正常了。
把平仓那里的holding>0 改为 holding>=0 后,不勾选"严格使用时间段数据测试"进行历史测试也正常了。
不知道具体是什么原因导致的,希望大家注意,也希望老大们解决这个bug。
ACS这些变量各是多少啊?
不勾选严格使用时间段数据测试,测试的时候如果用到测试时间段之外的数据也会去调用而如果勾选上之后则只会使用该时间段内的k线数据。