-- 作者:kulolo
-- 发布时间:2016/11/29 15:16:49
-- 后台程序化交易模拟持仓问题
请问各位老师一个问题,比如说我写了一个自定义输入一个参数值没的程序,
然后通过判断当前持仓数来决定下多单空单还是平仓,但是在模拟的时候出现了一个问题,
就是后台程序似乎没有判断出持仓数,本来只下一手的单的模拟的时候却一直在下单下单
麻烦各位老师帮我看看代码哪里出现了问题
INPUT:N(120,50,250,10); //止损点数 INPUT:M(1,0,1,1); //M=1表示下一周期预测收阳,M=0表示下一周期预测收阴,
持仓数:=THOLDING; DEBUGOUT(\'当前持仓数为%.2f\',持仓数); OO: CALLSTOCK(\'IC00\',VTOPEN,7); //IC00当周开盘价 ED:= OO - CLOSE > N ; //当周开盘价与今周期收盘价之差是否大于止损点数(多头止损) EF:= CLOSE - OO > N ; //今周期收盘价与当周开盘价之差是否大于止损点数(空头止损)
PD:= ED AND 持仓数=1; //多头止损条件 PK:= EF AND 持仓数=-1; //空头止损条件
if M=1 then begin if 持仓数=0 then begin 开多:TBUY(1,1,MKT); //开多信号 end if 持仓数=-1 then begin 平空:TSELLSHORT(1,1,MKT); //平空信号 end end
if M=-1 then begin if 持仓数=0 OR PK then begin 开空:TBUYSHORT(1,1,MKT); //开空信号 end if 持仓数=1 OR PD then begin 平多:TSELL(1,1,MKT); //平多信号 end end
|