当系统建立头寸后,会由相应的侄孙,移动侄孙和出场条件,例如: if positionlong(p) then sellattrailingstop(bar+1,价位,lastposition,''); sellatstop(bar+1,价位,lastposition,''); if 出场条件 then sellatclose(bar,lastpositon,''); 但是测试的结果是移动侄孙总是先于侄孙执行,不知道是什么原因。
这个侄孙并不是头寸一建立就设,而是当头寸有一定的浮动盈利,比如100点盈利后,就设一个30点的盈利侄孙,同时还有其他条件的移动侄孙。在这种情况下,有时候移动侄孙是小于侄孙的。照理说价位是先碰到那个就执行那个,但是有时候却不是,我不明白是为什么?
不是取决于哪个止损价大,哪个小。先执行这句: sellattrailingstop(bar+1,价位,lastposition,''); 如果已经执行,下面的SELL都不会执行。如果没有执行,下面的SELL才可能会执行。