以文本方式查看主题

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

--  作者:关树源
--  发布时间:2018/3/4 20:25:47
--  模型没有交易信号
老师帮我修改成金字塔程序化交易模型,谢谢!

ZH1:\'1000\';
PZ1:\'IF00\';
VARIABLE:A=0;

//条件判断
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
CONDBUY:=CROSS(MA5,MA10);
CONDSELL:=CROSS(MA10,MA5);

//控制日内交易次数
IF TTOTALDAYTRADE>=300 THEN EXIT;

//开仓和平仓
TBUY(CONDBUY AND TBUYHOLDINGEX( ZH1,PZ1 ,0 )<10,1,LMT,CLOSE,0,ZH1,PZ1 );
TSELL(CONDSELL,TBUYHOLDINGEX( ZH1,PZ1 ,0 ),MKT,0,ZH1,PZ1);

//加仓
IF TBUYHOLDINGEX( ZH1,PZ1 ,0 )<10 THEN BEGIN
阳线加仓:TBUY(CLOSE>OPEN,2,LMT,CLOSE,ZH1,PZ1);
阴线加仓:TBUY(CLOSE<OPEN,1,LMT,CLOSE,ZH1,PZ1);
END


//固定止损止盈
IF DYNAINFO(  7)-TAVGENTERPRICEEX2(ZH1 ,PZ1 ,0 )>20*MINDIFF THEN BEGIN
TSELL(1,TBUYHOLDINGEX( ZH1,PZ1 ,0 ),MKT,0,ZH1,PZ1);
END
//止损
IF TAVGENTERPRICEEX2(ZH1 ,PZ1 ,0 )-C>10*MINDIFF THEN BEGIN
TSELL(1,TBUYHOLDINGEX( ZH1,PZ1 ,0 ),MKT,0,ZH1,PZ1);
END


//监控未成交单
WCJ:=TREMAINQTY( 1, ZH1,PZ1);
IF WCJ<>0 THEN BEGIN
A:=WCJ;
END

//对为成交单撤单,并追单
IF WCJ>0 THEN BEGIN
TCANCELEX(1,1,ZH1,PZ1 );
TBUY(WCJ=0,A,MKT,0,ZH1,PZ1);
END

//监控持仓和资金状况
当前持仓量:=TBUYHOLDINGEX( ZH1,PZ1 ,0 );
当前可用资金:=TACCOUNT(19);
DEBUGOUT(\'当前持仓量%.2f\',当前持仓量 );
DEBUGOUT(\'当前可用资金%.2f\',当前可用资金 );


//收盘前强平
IF CURRENTTIME>=150000 THEN BEGIN
TSELL(1,0,MKT,0,ZH1,PZ1);
END


--  作者:wenarm
--  发布时间:2018/3/5 8:17:38
--  

这个是后台程序化策略,并无错误,其回测需要使用后台回测功能。

 


--  作者:关树源
--  发布时间:2018/3/5 8:45:05
--  
好的,收到了,谢谢老师!