2011/11/16 15:00:00 沪铜连续 开空 56980 2 0.00
2011/11/28 10:00:00 沪铜连续 平空 55410/56979 2 15,688.01 2.75 537,752.00 23.64
2011/11/30 15:00:00 沪铜连续 开空 58180 2 0.00
2011/12/01 10:00:00 沪铜连续 平空 57690/58179 2 4,888.01 0.84 542,628.00 23.64
这是截取的一个策略测试的记录。我的原意是收盘价开平仓,策略公式中的介入点都是选的本周期收盘价。
测试结果却全是下周期开盘价,红色巨亏的单变成盈利了,这结果就大相径庭了。
请问介入点是下周期开盘价是软件缺省的吗?我要用收盘价的话应该怎样设置呢?
IF CC2=1 AND C<DZS THEN BEGIN//持有多头仓位收盘价格跌破DZS平多仓
SELL(1,KCL,MARKET);
CC2:=0;//持仓归0
MAXH:=C;//高点初始化
MAXL:=C;//低点初始化
DZS1:=C-100*MINDIFF;//
DZS2:=C-100*MINDIFF;//
DZS:=C-100*MINDIFF;//多止损初始化
END
IF CC2=-1 AND C>KZS THEN BEGIN//持有空头仓位收盘价涨破KZS平空仓
SELLSHORT(1,KCL,MARKET);
CC2:=0;//持仓归0
MAXH:=C;//高点初始化
MAXL:=C;//低点初始化
KZS1:=C+100*MINDIFF;//
KZS2:=C+100*MINDIFF;//
KZS:=C+100*MINDIFF;//空止损初始化
END
//多头买入开仓
IF CC2=0 AND BUYCOND THEN BEGIN
BUY(1,KCL,MARKET);
CC2:=1;
DZS1:=UPPER;//调用3ATR做为止损
DZS2:=GBD;//调用顾比倒数线做为止损
MAXH:=H;//记录当时的高点
END
//空头卖出开仓
IF CC2=0 AND BUYSHORTCOND THEN BEGIN
BUYSHORT(1,KCL,MARKET);//开仓卖出
CC2:=-1;
KZS1:=DOWN;//调用3ATR做为止损
KZS2:=GBG;//调用顾比倒数线做为止损
MAXL:=L;//记录当时的低点
END
IF CC2:=1 AND H>MAXH THEN BEGIN //创新高后,重新定位离场位,以实现浮动止损
DZS1:=UPPER; //
DZS2:=GBD;//
MAXH:=H; //
END
IF CC2:=-1 AND L<MAXL THEN BEGIN //创新低后,重新定位离场位,以实现浮动止损
KZS1:=DOWN; //
KZS2:=GBG;
MAXL:=L;
END
火哥,上面就是我的开平仓语句,很多都是跟你学的,谢谢了。
图形上的显示信号是对的,就是测试时是下周期开盘价,不知什么原因?