以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  ma1大于ma2超过10个周期(10根K线)则平空。反之则平多。  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=168667)

--  作者:qq代人发帖
--  发布时间:2019/3/7 14:38:52
--  ma1大于ma2超过10个周期(10根K线)则平空。反之则平多。
请教:如果ma1大于ma2超过10个周期(10根K线)则平空。反之则平多。图表程序化的代码怎么写?
[此贴子已经被作者于2019/3/7 14:39:17编辑过]

--  作者:FireScript
--  发布时间:2019/3/7 14:59:55
--  

ma1:ma(c,5);
ma2:ma(c,10);
jc:cross(ma1,ma2);
sc:cross(ma2,ma1);
len1:BARSLAST(jc)+1;
len2:BARSLAST(sc)+1;
ct1:count(ma1>ma2,len1)>10 and ma1>ma2;//从最近第一次ma1>ma2开始统计ma1>ma2持续周期,且当前周期也是满足ma1>ma2
ct2:count(ma1<ma2,len2)>10 and ma1<ma2;//从最近第一次ma1<ma2开始统计ma1<ma2持续周期,且当前周期也是满足ma1<ma2

if  ct1 and holding<0 then sellshort(holding<0,holding,market);
if  ct2 and holding>0 then sell(holding>0,holding,market);


参考上面代码。注释中有说明关键部分的处理逻辑。
[此贴子已经被作者于2019/3/7 15:00:06编辑过]