以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  改模型谢谢  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=155953)

--  作者:期货一生
--  发布时间:2017/7/13 22:11:23
--  改模型谢谢
CC:=(C+L+O+H)/4;
MA1:MA(CC,N1);
MA2:MA(CC,N2);
MA3:=MA(CC,N3);
MA4:=MA(CC,N4);

BB1:=MA1>REF(MA1,1)&&MA2>REF(MA2,1)&&MA3>REF(MA3,1)&&MA4>REF(MA4,1);
SS1:=MA1<REF(MA1,1)&&MA2<REF(MA2,1)&&MA3<REF(MA3,1)&&MA4<REF(MA4,1);
C>REF(H,1)&&BB1,BPK;
C<REF(L,1)&&SS1,SPK;

BKPRICE-CLOSE>=REF(MA(C,30),1)*0.0382&&BKPRICE>0&&BKVOL>0,SP;
CLOSE-SKPRICE>=REF(MA(C,30),1)*0.0382&&SKPRICE>0&&SKVOL>0,BP;
AUTOFILTER;
TRADE_OTHER(\'AUTO\');自动换主力合约
CLOSEKLINE(2,45);//每根K线提前45秒
SETALLSIGPRICETYPE(TRACING_ORDER);//该模型中所有信号根据连续追价的设置进行委托
SETMOVEOPIPRICE(TRACING_ORDER);

--  作者:wenarm
--  发布时间:2017/7/14 9:21:01
--  
正在处理
--  作者:wenarm
--  发布时间:2017/7/14 9:28:15
--  

CC:=(C+L+O+H)/4;
MA1:MA(CC,N1);
MA2:MA(CC,N2);
MA3:=MA(CC,N3);
MA4:=MA(CC,N4);

BB1:=MA1>REF(MA1,1)andMA2>REF(MA2,1)andMA3>REF(MA3,1)andMA4>REF(MA4,1);
SS1:=MA1<REF(MA1,1)andMA2<REF(MA2,1)andMA3<REF(MA3,1)andMA4<REF(MA4,1);


if C>REF(H,1) and BB1 and HOLDING<=0 then  begin
 SELLSHORT(1,1,MARKET);
 buy(1,1,MARKET);
end


if C<REF(L,1)and SS1 and HOLDING>=0 then begin
 sell(1,1,MARKET);
 BUYVOL(1,1,MARKET);

end


if ENTERPRICE-CLOSE>=REF(MA(C,30),1)*0.0382 and ENTERPRICE>0andBKVOL>0 and HOLDING<0   then sell(1,1,MARKET);
if CLOSE-EXITPRICE>=REF(MA(C,30),1)*0.0382 and EXITPRICE>0andSKVOL>0 and HOLDING>0   then SELLSHORT(1,1,MARKET);

 

 

//TRADE_OTHER(\'AUTO\');自动换主力合约  这个目前没有相关函数。需要使用后台通过算法实现。(正在考虑具体方式)

 

下面2句话可以通过专业版的设置功能完成。
CLOSEKLINE(2,45);//每根K线提前45秒
SETALLSIGPRICETYPE(TRACING_ORDER);//该模型中所有信号根据连续追价的设置进行委托

SETMOVEOPIPRICE(TRACING_ORDER);//这个目前没有相关函数。需要使用后台通过算法实现。(正在考虑具体方式)


--  作者:期货一生
--  发布时间:2017/7/14 9:42:12
--  
无法通过
--  作者:pyd
--  发布时间:2017/7/14 9:54:11
--  

CC:=(C+L+O+H)/4;
MA1:MA(CC,N1);
MA2:MA(CC,N2);
MA3:=MA(CC,N3);
MA4:=MA(CC,N4);

BB1:=MA1>REF(MA1,1) AND MA2>REF(MA2,1) AND MA3>REF(MA3,1)AND MA4>REF(MA4,1);
SS1:=MA1<REF(MA1,1) AND MA2<REF(MA2,1) AND MA3<REF(MA3,1)AND MA4<REF(MA4,1);

ABB:=(TIME0-TIMETOT0(DYNAINFO(207))<=45) OR NOT(ISLASTBAR);
IF ABB AND C>REF(H,1) AND BB1 AND HOLDING<=0 THEN  BEGIN
 SELLSHORT(1,1,MARKET);
 BUY(1,1,MARKET);
END


IF ABB AND C<REF(L,1)AND SS1 AND HOLDING>=0 THEN BEGIN
 SELL(1,1,MARKET);
 BUYSHORT(1,1,MARKET);

END


IF ABB AND ENTERPRICE-CLOSE>=REF(MA(C,30),1)*0.0382 AND ENTERPRICE>0 AND  HOLDING>0   THEN SELL(1,1,MARKET);
IF ABB AND CLOSE-EXITPRICE>=REF(MA(C,30),1)*0.0382 AND EXITPRICE>0 AND HOLDING<0   THEN SELLSHORT(1,1,MARKET);

 

[此贴子已经被作者于2017/7/14 9:54:45编辑过]

--  作者:期货一生
--  发布时间:2017/7/14 9:56:16
--  
参数缺省于步长什么意思
--  作者:pyd
--  发布时间:2017/7/14 10:06:08
--  

参数就是你的N1,N2,N3,N4

缺省是参数的默认值

步长是参数优化时每次加几来优化

例如N1(5,1,20,2);

缺省值5,N1默认是5

步长2是每次加2优化,n依次取1,3,5,7,9等

 

 


--  作者:期货一生
--  发布时间:2017/7/14 10:21:39
--  
明白,已经通过,OK,
--  作者:期货一生
--  发布时间:2017/7/14 11:17:15
--  

DYNAINFO模型提示不建议用此函数,请把这个函数去掉,直接在功能设置那里设置就可以了

加载在螺纹连续合约上面,是否会直接做到1710合约上去

到期怎么换1801合约?

 

另,运作这个模型,购买普通版的2800元的可不可以正常程序化交易了


--  作者:wenarm
--  发布时间:2017/7/14 12:18:08
--  

目前没有自动换月的处理设置或者函数。后面会增加

 

标准版基本就可以满足你上面的代码。

[此贴子已经被作者于2017/7/14 12:18:35编辑过]