//////开多仓1/////////////
if holding=0 and buycond then //开多
begin
sellshort(holding<0,0,market);
buy(holding=0,3,market);
maxprofit:=0;
MAXPROFjw:=0;
end
//////开多仓2/////////////
if holding<0 then
begin
sellshort(buycond,0,market); //平空仓
end
if holding=0 and buycond then begin
buy(1,3,market); //开多
maxprofit:=0;
MAXPROFjw:=0;
end
1 如果当前没有仓位或持有多仓,这两段代码运行结果一致;
2 如果当前持有空仓,第一段代码没有任何动作;第二段代码将平掉空仓然后开多仓。
将第一段代码的语句“if holding=0 and buycond then //开多”,改为:
if holding<=0 and buycond then //开多
那么两段代码实现的功能将是一模一样的了!