以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请教交易策略帮助  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=164553)

--  作者:喜闻乐见
--  发布时间:2018/7/24 12:14:36
--  请教交易策略帮助

请问下面的交易策略,添加一个在60ma之上只做多开仓再平仓,在60ma之下只做开空再平仓,该如何编写?

还有初来乍到,金币咋回事?类似微信红包?

 

//策略:唐奇安通道

 
//中间变量
INPUT:X(20,1,100,1),nmin(10,1,100,1),ss(1,1,100,1);
X周期高点:=ref(hhv(h,X),1);//X是参数,自行调整
X周期低点:=ref(LLV(L,X),1);

手数:=ss;
开仓时间:=time>opentime(1) and time;
平仓时间:=time>=closetime(0)-nmin*100;
{nmin为参数,closetime(0)-nmin*100表示 收盘时间-提前N分钟 N由nmin控制}
 
//交易条件:
开多平空条件:=C>X周期高点 and 开仓时间 and holding<=0;
开空平多条件:=C=0;

//交易系统
收盘平多:sell(平仓时间 and holding>0, 0, thisclose);
收盘平空:sellshort(平仓时间 and holding<0,0,thisclose);
平空:sellshort(开多平空条件 and holding<0, 手数,limitr,X周期高点);
平多:sell(开空平多条件 and holding>0,手数,limitr,X周期低点);
开空:buyshort(开空平多条件 and holding=0,手数,limitr,X周期低点);
开多:buy(开多平空条件 and holding=0, 手数,limitr,X周期高点);
 


--  作者:FireScript
--  发布时间:2018/7/24 13:28:49
--  
cond1:c>ma(c,60);
cond2:c<ma(c,60);
把上面条件添加到下面代码中去。但是有一点,如果c>ma60开的多,直到c<ma60 也没有触发平仓条件。这后面的逻辑你需要处理下。

平空:sellshort(开多平空条件 and holding<0 and cond2, 手数,limitr,X周期高点);
平多:sell(开空平多条件 and holding>0 and
cond1,手数,limitr,X周期低点);
开空:buyshort(开空平多条件 and holding=0 and
cond2,手数,limitr,X周期低点);
开多:buy(开多平空条件 and holding=0 and
cond2, 手数,limitr,X周期高点);
 

--  作者:喜闻乐见
--  发布时间:2018/7/24 13:50:01
--  

谢谢版主帮助,我先试一下!