您现在的位置:程序化交易>> 期货公式>> 金字塔等>> 金字塔知识>>正文内容

全局变量赋值问题 [金字塔]

  • 咨询内容: VARIABLE:sj=0,sjh=0,bj=0,bjh=0;
    /止损IF C<AVGENTERPRICE  and holding=1   and sjh=1 and c<g   THEN BEGIN  //and (sj=c and sjh=1)or (bj=c and bjh=1)多损s:sell(y2,HOLDING,MARKETr);ENDif 多损s=1 then begin sj:=0;sjh:=0;   end     
    //进场 if holding=0 and sj=0 and sjh=0 and t1 and y1 then begin s多进:buy(1,1,MARKETR),NODRAW; sj:=c; sjh:=1; end if holding=0 and bj=0 and bjh=0 and t2 and y1 then begin b多进:buy(1,1,marketr),NODRAW; bj:=c; bjh:=1; end
    在图表第一次遇到s多进 场的信号,全局变量执行正常触发全部止损信号止损并重新赋值归零。接着第二次遇到s多进场信号,开仓后的第一跟k线有赋值,第二根k线起 sj   sjh 重新赋值为0,   什么原因,请老师给看下
    如果s止损这么写 /止损IF C<AVGENTERPRICE  and holding=1   and sjh=1 and c<g   THEN BEGIN  //and (sj=c and sjh=1)or (bj=c and bjh=1)多损s:sell(y2,HOLDING,MARKETr); sj:=0;sjh:=0;   end      则在第一次与到s多进场后的第3跟k线sj   sjh就赋值成零了  

     

  • 金字塔客服: 全局变量的赋值,放到平仓语句同一个begin-end下。再把y2放在if后面的判断里面
    IF C<AVGENTERPRICE  and holding=1   and sjh=1 and c<g  and y2 THEN BEGIN  //and (sj=c and sjh=1)or (bj=c and bjh=1)多损s:sell(y2,HOLDING,MARKETr);
    sj:=0;
    sjh:=0;
    END


    之所出现你说的“ 则在第一次与到s多进场后的第3跟k线sj   sjh就赋值成零了  ” 很显然是if后面的条件满足了,但是y2没有满足,所以只重置全局变量了,但是平仓却没有触发。

 

有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友

可联系技术人员 QQ: 262069696  点击在线交流或微信号:cxh99cxh99  进行 有偿收费 编写!

怎么收费,代编流程等详情请点击阅读!

(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容