以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  交易策略发布专区  (http://www.weistock.com/bbs/list.asp?boardid=10)
----  人人宽客C08  (http://www.weistock.com/bbs/dispbbs.asp?boardid=10&id=161457)

--  作者:系统使用者
--  发布时间:2018/2/2 23:13:21
--  人人宽客C08
//思路:趋势+小止损+回撤止盈
//适用软件:金字塔V4.10
//数据周期:通用(H,30M,15M,5M,1M)
//数据合约:指数合约
//交易合约:主力合约
//适合品种:白银,玉米,棉花,玉米淀粉,热卷,铁矿石,焦炭,鸡蛋,塑料,豆粕,甲醇,镍,聚丙烯,螺纹,菜粕,橡胶,白糖,PTA,PVC,动力煤,5年期国债,10年期国债,(IF,IC,IH,可用1分钟)等
开仓资金:=30000;//单次开仓资金
保证金比率:=0.1;
手数:=INTPART(开仓资金/(o*MULTIPLIER*保证金比率));


//定义参数
LENGTH:=200;
损幅:=3;//止损幅度,百分之
STARTPER1:=5;  //1级跟踪止盈,盈利5%启动
STOPPER1:=100; //1级跟踪止盈,盈利回撤100%触发    
STARTPER2:=10; //2级跟踪止盈,盈利10%启动
STOPPER2:=50;  //2级跟踪止盈,盈利回撤50%触发
STARTPER3:=20; //3级跟踪止盈,盈利20%启动
STOPPER3:=20;  //3级跟踪止盈,盈利回撤20%触发
//上下区间
NN:=BARSLAST(DATE<>REF(DATE,1))+1;//今天开盘到目前为止的周期数
今开:=VALUEWHEN(NN=1,O);//当天的开盘价
今高:=HHV(H,NN);//今天全天的最高价
今低:=LLV(L,NN);//今天全天的最低价
昨高:=REF(今高,NN);//昨天全天的最高价
昨低:=REF(今低,NN);//昨天全天的最低价

BAND:=昨高-昨低;
UPPERLINE:=今开+BAND;
LOWERLINE:=今开-BAND;
//均线
均线:=MA(CLOSE,LENGTH);

//开平仓条件
卖开条件: = C<LOWERLINE AND LOWERLINE<均线;
买开条件: = C>UPPERLINE AND UPPERLINE>均线;


买平空单: = C>UPPERLINE OR C>均线;
卖平多单: = C<LOWERLINE OR C<均线;

variable:maxprofit=0;//有仓位时最大获利
//程序主体
//开仓
IF holding=0 THEN
BEGIN
BUY(买开条件,手数,MARKET);  //开多信号
end

IF holding=0 THEN
begin
BUYSHORT(卖开条件,手数,MARKET);   //开空信号
end

平空:SELLSHORT(holding<0 and 买平空单,holding,thisclose);                  //平空信号
平多:SELL(holding>0 and 卖平多单,holding,thisclose);                       //平多信号

开仓后最高价:=HHV(h,enterbars);
开仓后最低价:=llV(l,enterbars);

//止损
平多止损:SELL(holding>0 AND enterbars>0 and  L<=enterprice*(1-损幅*0.01),holding,limit,MIN(O,enterprice*(1-损幅*0.01)));                       //平多止损
平空止损:SELLSHORT(holding<0 AND enterbars>0 and H>=enterprice*(1+损幅*0.01),holding,limit,max(o,enterprice*(1+损幅*0.01)));                  //平空止损

//止盈
//最大盈利达到"STARTPER1"%之后盈利回撤"STOPPER1"%,平空
平空1:=holding<0 AND enterbars>1 AND 开仓后最低价<=enterprice*(1-0.01*STARTPER1) AND HIGH>=开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER1;
平空止盈1:SELLSHORT(平空1,holding,limit,max(o,开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER1));
//最大盈利达到"STARTPER1"%之后盈利回撤"STOPPER1"%,平多
平多1:=holding>0 AND enterbars>1 AND 开仓后最高价>=enterprice*(1+0.01*STARTPER1) AND LOW<=开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER1;
平多止盈1:SELL(平多1,holding,limit,MIN(O,开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER1));

//最大盈利达到"STARTPER2"%之后盈利回撤"STOPPER2"%,平空
平空2:=holding<0 AND enterbars>1 AND 开仓后最低价<=enterprice*(1-0.01*STARTPER2) AND HIGH>=开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER2;
平空止盈2:SELLSHORT(平空2,holding,limit,max(o,开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER2));
//最大盈利达到"STARTPER2"%之后盈利回撤"STOPPER2"%,平多
平多2:=holding>0 AND enterbars>1 AND 开仓后最高价>=enterprice*(1+0.01*STARTPER2) AND LOW<=开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER2;
平多止盈2:SELL(平多2,holding,limit,MIN(O,开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER2));

//最大盈利达到"STARTPER3"%之后盈利回撤"STOPPER3"%,平空 
平空3:=holding<0 AND enterbars>1 AND 开仓后最低价<=enterprice*(1-0.01*STARTPER3) AND HIGH>=开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER3;
平空止盈3:SELLSHORT(平空3,holding,limit,max(o,开仓后最低价+(enterprice-开仓后最低价)*0.01*STOPPER3));
//最大盈利达到"STARTPER3"%之后盈利回撤"STOPPER3"%,平多
平多3:=holding>0 AND enterbars>1 AND 开仓后最高价>=enterprice*(1+0.01*STARTPER3) AND LOW<=开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER3;
平多止盈3:SELL(平多3,holding,limit,MIN(O,开仓后最高价-(开仓后最高价-enterprice)*0.01*STOPPER3));


--  作者:马良
--  发布时间:2018/2/3 11:36:23
--  
谢谢分享
--  作者:topdo
--  发布时间:2018/3/13 22:37:10
--  
 学习了

--  作者:木鱼石传说
--  发布时间:2018/4/23 21:45:06
--  
请问楼主,这就是七禾网上说的《商品期货通用策略系列之四》C08通用策略吗?
--  作者:幸运60
--  发布时间:2018/12/9 20:18:14
--  

感谢分享


--  作者:starmichael
--  发布时间:2020/3/6 23:07:32
--  
谢谢分享