以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [求助]开、平仓优先问题 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=55045) |
-- 作者:jackie123 -- 发布时间:2013/8/13 10:11:33 -- [求助]开、平仓优先问题 一个模型里面有两个开、平仓条件,
比如:开仓条件1,平仓条件1 开仓条件2,平仓条件2
如何保证“开仓条件1 ”只会让“平仓条件1 ”来平仓,不会让平仓条件2来平仓?因为有时平仓条件1没达到,平仓条件2先达到了。
|
-- 作者:jinzhe -- 发布时间:2013/8/13 10:21:25 -- 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 |
-- 作者:jackie123 -- 发布时间:2013/8/13 13:19:06 -- 帮我看看下面的,当DMI 里ADX上升时,用SAR开、平仓;当ADX下降时用BOLL开、平仓。现在是想SAR开仓的,用SAR平;BOLL开仓的用BOLL 平。
ADXXS:=ADX>REF(ADX,1);//A.当ADX 上升时:
variable:n=0,m=0;
IF KDA1 AND HOLDING=0 THEN 开空1:BUYSHORT(HOLDING=0,SS,MARKETR),orderqueue; PDA1:=CROSS(SAR1,C)&&REF(KDA1,ENTERBARS)=1;//平多,当价格从上向下穿(小等于)SAR时 IF N=1 AND M<>1 THEN BEGIN
IF M:=0 THEN BEGIN |
-- 作者:jinzhe -- 发布时间:2013/8/13 13:26:33 -- IF PKA1 AND HOLDING<0 THEN
这里两个的END是干什么用的? |
-- 作者:jackie123 -- 发布时间:2013/8/13 15:19:25 -- 哦 ,多了个END,但是不是有个原则,先平后开吗,加上全局变量这要怎么弄? |
-- 作者:jinzhe -- 发布时间:2013/8/13 15:28:38 -- 把开平单独列出来写,不要按照反手的方式写 |
-- 作者:jackie123 -- 发布时间:2013/8/13 19:15:55 -- 我的模型里是两个开仓条件,三个平仓条件。平仓2,平仓3执行不对,帮我改改。谢了!
PDA1:=CROSS(SAR1,C)&&REF(KDA1,ENTERBARS)=1;//平多,当价格从上向下穿SAR时
variable:n=0,m=0;
IF N=1 AND M<>1 THEN BEGIN 平多1:SELL(PDA1 AND HOLDING>0,SS,MARKETR),orderqueue; 平空1: SELLSHORT(PKA1 AND HOLDING<0,SS,MARKETR),orderqueue;
IF M:=0 THEN BEGIN 开空2:BUYSHORT(KKB1 AND HOLDING=0,SS2,MARKETR),orderqueue; IF M:=1 AND N<>1 THEN BEGIN 平多3:SELL(PDB1 AND HOLDING>0,ss2,MARKETR),orderqueue;
|
-- 作者:jackie123 -- 发布时间:2013/8/14 16:12:44 -- JINZHE帮忙解决以上问题,谢谢了 |