请教一下老师,下面这个葛兰碧均线法则的部分应用程序应该怎么写代码?如图:

此主题相关图片如下:qh.png

第一步:均线MA1下穿MA2时,平多开空;
第二步,价格继续下跌,MA1相对MA2的乖离值逐步扩大,当乖离值小于一定值比如a时,平空开多;
第三部,假如价格close如期反弹,当close上穿MA2时平多并开空;
第一步:均线MA1下穿MA2时,平多开空;
第二步,价格继续下跌,MA1相对MA2的乖离值逐步扩大,当乖离值小于一定值比如a时,平空开多;
第三部,假如价格close如期反弹,当close上穿MA2时平多并开空;
if cross(ma2,ma1) then begin
平多;
开空;
end
if a>一定值 then begin
平空;
开多;
end
if cross(c,ma2) then begin
平多;
开空;
end
再请教,这里有个逻辑问题,搞不清楚应该如何编写代码,请老师再指点!
上述案例中,如果总的要求是:
(1)MA1<ma2时做空;
if ma1<ma2 then begin
平多;
开空;
end
(2)在负乖离大于a值时,先平空止盈并反手做多;
if a>一定值 then begin
平空;
开多;
end
但这个代码虽然可以完成乖离过大时的开多要求,但这与MA1<ma2时做空矛盾,存在开多后价格果然反弹乖离小于A后再不因“MA1<ma2“被平多并反手开空的问题?应该如何编写呢?
(3)在首次向上反弹即将触及MA2时平多并反手做空,即上图3的位置,但此时ma1依然小于ma2。
[此贴子已经被作者于2013/6/24 10:26:00编辑过]