[求助]开、平仓优先问题 [金字塔]
- 咨询内容:
一个模型里面有两个开、平仓条件,
比如:开仓条件1,平仓条件1
开仓条件2,平仓条件2
如何保证“开仓条件1 ”只会让“平仓条件1 ”来平仓,不会让平仓条件2来平仓?因为有时平仓条件1没达到,平仓条件2先达到了。
- 金字塔客服:
variable:n=0,m=0;
if 开仓条件1 and n=0 then begin
开仓语句;
n:=1;
end
if 平仓条件1 and n=1 and m<>1 then begin
平仓语句;
n:=0;
end
if 开仓条件2 and m=0 then begin
开仓语句;
m:=1;
end
if 平仓条件2 and m=1 and n<>1 then begin
平仓语句;
m:=0;
end
- 用户回复:
帮我看看下面的,当DMI 里ADX上升时,用SAR开、平仓;当ADX下降时用BOLL开、平仓。现在是想SAR开仓的,用SAR平;BOLL开仓的用BOLL 平。
ADXXS:=ADX>REF(ADX,1);//A.当ADX 上升时:
ADXXX:=ADX<=REF(ADX,1);//B.当ADX下降或走平时
KDA1:=C>SAR1 AND ADXXS;//开多,SAR 在30分钟K线下方。
KKA1:=C<SAR1 AND ADXXS;//开空,SAR 在30分钟K线上方。variable:n=0,m=0;
IF N=0 THEN BEGINIF KDA1 AND HOLDING=0 THEN
BEGIN
开多1:BUY(HOLDING=0,SS,MARKETR),orderqueue;
END
IF KKA1 AND HOLDING=0 THEN
BEGIN开空1:BUYSHORT(HOLDING=0,SS,MARKETR),orderqueue;
END
n:=1;
ENDPDA1:=CROSS(SAR1,C)&&REF(KDA1,ENTERBARS)=1;//平多,当价格从上向下穿(小等于)SAR时
PKA1:=CROSS(C,SAR1)&&REF(KKA1,ENTERBARS)=1;//平空,当价格从下向上穿(大等于)SAR时。IF N=1 AND M<>1 THEN BEGIN
IF PDA1 AND HOLDING>0 THEN
BEGIN
平多1:SELL(HOLDING>0,SS,MARKETR),orderqueue;
END
IF PKA1 AND HOLDING<0 THEN
BEGIN
平空1: SELLSHORT(HOLDING<0,SS,MARKETR),orderqueue;
END
n:=0;
END
KDB1:=L<LOWER && ADXXX;// 开多条件: 价格触及boll下轨,且ADX下降时买入
KKB1:=H>UPPER && ADXXX;// 开空条件: 价格触及boll上轨,且ADX下降时卖出IF M:=0 THEN BEGIN
IF KDB1 AND HOLDING<=0 THEN
BEGIN
平空2:SELLSHORT(HOLDING<0,SS2,MARKETR),orderqueue;
开多2:BUY(HOLDING=0,SS2,MARKETR),orderqueue;
END
IF KKB1 AND HOLDING>=0 THEN
BEGIN
平多2:SELL(HOLDING>0,SS2,MARKETR),orderqueue;
开空2:BUYSHORT(HOLDING=0,SS2,MARKETR),orderqueue;
END
m:=1;
END - 网友回复:
IF PKA1 AND HOLDING<0 THEN
BEGIN
平空1: SELLSHORT(HOLDING<0,SS,MARKETR),orderqueue;
END
n:=0;
END这里两个的END是干什么用的?
- 网友回复: 哦 ,多了个END,但是不是有个原则,先平后开吗,加上全局变量这要怎么弄?
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容