以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=170032)

--  作者:bill163
--  发布时间:2019/5/21 16:26:52
--  均线金叉死叉代码求助
老师好,帮我写一个自动交易,

1.5日线金叉30日线反手开多,死叉则反手开空;

2.设定止损50个价位(可调);

谢谢~

--  作者:FireScript
--  发布时间:2019/5/21 16:33:07
--  

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看
直接参考这个范例吧。你这个需求和这个范例基本查不到,只需要略做修改就行了。

--  作者:bill163
--  发布时间:2019/5/21 16:49:29
--  
老师好,我不会修改,你能给我写出来吗,


1. 5日线金叉30日线反手开多,死叉则反手开空;

2. 设定止损50个价位(可调);

--  作者:wenarm
--  发布时间:2019/5/21 17:13:14
--  

请问您具体什么地方不懂。作为量化用户,最起码要具备代码阅读理解能力。

下面是交易主干部分。

 

MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,30);

手数:=1;
//交易条件

平空开多条件:=CROSS(MA1,MA2);
平多开空条件:=CROSS(MA2,MA1);

//交易系统

if 平空开多条件=1 then begin
平空:SELLSHORT(HOLDING<0,手数,MARKET);

开多:BUY(HOLDING=0,手数,MARKET);
end

if 平多开空条件 then begin

平多:SELL(HOLDING>0,手数,MARKET);

开空:BUYSHORT(HOLDING=0,手数,MARKET);

end

 

IF AvGENTERPRICE-C>50*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END

 

IF C-AvGENTERPRICE>50*MINDIFF  and HOLDING<0 THEN BEGIN
SELLshort(1,HOLDING,MARKET);
END

IF AvGENTERPRICE-C>50*MINDIFF and HOLDING>0 THEN BEGIN
SELL(1,HOLDING,MARKET);
END

 



 

[此贴子已经被作者于2019/5/22 8:35:26编辑过]