以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  帮我看看我编写的下面模型,有何问题!  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=90235)

--  作者:jincheng1314
--  发布时间:2016/1/19 13:36:49
--  帮我看看我编写的下面模型,有何问题!
//本模型为简单Ma模型!!!

//定义参数
INPUT:N1(5,1,100,10),N2(10,1,120,10),N3(10,1,1000,10);

//绘制二条均线
MA1:MA(C,N1);
MA2:MA(C,N2);
variable:maxprofit=0;//有仓位时最大获利幅度

//准备下单条件,以MA1上穿MA2作为开多条件,以MA2下破MA1作为平多条件。
COND1:=CROSS(MA1,MA2);
COND2:=CROSS(MA2,MA1);


//下单做多

IF HOLDING=0 THEN BEGIN 
BUY(COND1,2,MARKET);
maxprofit:=0;
END

//平多反手做空
IF HOLDING>0 THEN BEGIN
win:=0;
win2:=0;
if holding > 0 and enterbars > 0 then
begin
 win:=c-enterprice; //记录最大盈利
 if win > maxprofit then
  maxprofit:=win; 
  
 win2:=maxprofit-win; //最大盈利后的回调幅度
end 

SELL(win <= -N3,0);  //止损

SELL(win >= N3 and win2 >= N3 and openprofit > 0, 0);  //追踪止盈

BUYSHORT(HOLDING=0,2,MARKET);
maxprofit:=0;
END    

//平空反手做多
IF HOLDING<0 THEN BEGIN 
win:=0;
win2:=0;
if holding < 0 and enterbars > 0 then
begin
 win:=enterprice-c; //记录最大盈利
 if win > maxprofit then
  maxprofit:=win;
  
 win2:=maxprofit-win; //最大盈利后的回调幅度
end
SELLshort(win <= -N3 and holding<0,0); //止损
SELLshort(win >= N3 and win2 >= N3 and openprofit > 0 and holding<0, 0);  //追踪止盈
BUY(HOLDING=0,2,MARKET);   
maxprofit:=0;                     
END  

//其他
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;


--  作者:jinzhe
--  发布时间:2016/1/20 16:47:53
--  
编译通过,如果用户碰到了什么实际应用上的问题,请讲出来