| 以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (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=183724) | 
| --  作者:代人发贴 -- 发布时间:2021/1/4 9:49:18 -- 以下策略为金字塔程序化双边策略(可开多,可开空),请老师更改为两个单边策略(只开空一个策略,只开多一个策略) 以下策略为金字塔程序化双边策略(可开多,可开空),请老师更改为两个单边策略(只开空一个策略,只开多一个策略),谢谢 //该策略适用于图表程序化交易 
             //该范例适用于5分钟周期 
             //此策略仅供参考学习,请勿直接用于实盘 
   
             INPUT:N(55,1,100,1),SS(1,1,100,1),NMIN(10,1,100,1),LONG_CO(0.999,0.001,1.1,0.001),SHORT_CO(1.001,0.001,1.1,0.001); 
   
             BUYTIME:=TIME>OPENTIME(1) AND TIME<CLOSETIME(0)-NMIN*100;      //设置日内交易的开仓时段            
             SELLTIME:=TIME>=CLOSETIME(0)-NMIN*100;                                        //设置尾盘的清仓时段       
             UP_LINE:REF(HHV(H,N),1)*LONG_CO;                                                    //设置上轨线             DOWN_LINE:REF(LLV(L,N),1)*SHORT_CO;                                              //设置下轨线             MIDDLE_LINE:(UP_LINE+DOWN_LINE)/2;                                               //设置中轨线 
             CONKD:H>=UP_LINE AND BUYTIME ;                                                     //设置开多条件             CONKK:L<=DOWN_LINE AND BUYTIME;                                                 //设置开空条件             CONPD:C<MIDDLE_LINE;                                                                      //设置平多条件             CONPK:C>MIDDLE_LINE;                                                                      //设置平空条件 
   
             SELLSHORT(CONPK AND HOLDING<0,HOLDING,MARKET);             SELL(CONPD AND HOLDING>0,HOLDING,MARKET);             BUY(CONKD AND HOLDING=0,SS,MARKET);             BUYSHORT(CONKK AND HOLDING=0,SS,MARKET); 
   
             IF SELLTIME THEN                                                                               //收盘前全部平仓                 BEGIN                 SELL(HOLDING>0,HOLDING,MARKET);                 SELLSHORT(HOLDING<0,HOLDING,MARKET);                 END | 
| --  作者:FireScript -- 发布时间:2021/1/4 9:54:23 --  只开空: INPUT:N(55,1,100,1),SS(1,1,100,1),NMIN(10,1,100,1),LONG_CO(0.999,0.001,1.1,0.001),SHORT_CO(1.001,0.001,1.1,0.001); BUYTIME:=TIME>OPENTIME(1) AND TIME<CLOSETIME(0)-NMIN*100; //设置日内交易的开仓时段 SELLTIME:=TIME>=CLOSETIME(0)-NMIN*100; UP_LINE:REF(HHV(H,N),1)*LONG_CO; DOWN_LINE:REF(LLV(L,N),1)*SHORT_CO; MIDDLE_LINE:(UP_LINE+DOWN_LINE)/2; CONKK:L<=DOWN_LINE AND BUYTIME; //设置平多条件 CONPK:C>MIDDLE_LINE; SELLSHORT(CONPK AND HOLDING<0,HOLDING,MARKET); BUYSHORT(CONKK AND HOLDING=0,SS,MARKET); IF SELLTIME THEN                                                                               //收盘前全部平仓 BEGIN SELLSHORT(HOLDING<0,HOLDING,MARKET); END 只开多: INPUT:N(55,1,100,1),SS(1,1,100,1),NMIN(10,1,100,1),LONG_CO(0.999,0.001,1.1,0.001),SHORT_CO(1.001,0.001,1.1,0.001); BUYTIME:=TIME>OPENTIME(1) AND TIME<CLOSETIME(0)-NMIN*100; //设置日内交易的开仓时段 SELLTIME:=TIME>=CLOSETIME(0)-NMIN*100; UP_LINE:REF(HHV(H,N),1)*LONG_CO; DOWN_LINE:REF(LLV(L,N),1)*SHORT_CO; MIDDLE_LINE:(UP_LINE+DOWN_LINE)/2; CONKD:H>=UP_LINE AND BUYTIME ; CONPD:C<MIDDLE_LINE; SELL(CONPD AND HOLDING>0,HOLDING,MARKET); BUY(CONKD AND HOLDING=0,SS,MARKET);  IF SELLTIME THEN                                                                               //收盘前全部平仓 BEGIN SELL(HOLDING>0,HOLDING,MARKET); END |