以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  请教老师,如何 实现如下思路?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=182580)

--  作者:437382180311
--  发布时间:2020/10/19 20:24:15
--  请教老师,如何 实现如下思路?
ma10:ma(C,10);
ma50:ma(C,50;


条件A:ma10与ma50金叉后 到 ma10死叉期间,
取 第一次C<MA10开多,enterbars>10时平仓;
取 平仓后 再次C<ma10开多,enterbars>10时平仓;

之后条件A仍然保持,如果再有 C<ma10不再开仓;

请教老师这个思路如何 实现?

搞了好长时间是一直满足 c<ma10就开仓,不能实现只开第一次 和 第二次C<ma10 



--  作者:FireScript
--  发布时间:2020/10/20 8:57:47
--  
 供参考:

VARIABLE:ct:=0;//全局变量记录开仓次数

ma10:ma(C,10);
ma50:ma(C,50);

majc:cross(ma10,ma50);
masc:cross(ma50,ma10);

if masc then ct:=0;//死叉时候重置全局变量

if cross(ma10,c) and holding=0 and ct<2 and ma10>ma50 then
begin
buy(1,1,market);
ct:=ct+1;
end

if  holding>0 and ENTERBARS>10 then sell(1,holding,market);