以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 交易策略发布专区 (http://weistock.com/bbs/list.asp?boardid=10) ---- 【多头趋势策略】-SAR带移动止损系统 (http://weistock.com/bbs/dispbbs.asp?boardid=10&id=173640) |
-- 作者:fly -- 发布时间:2019/12/20 11:16:11 -- 【多头趋势策略】-SAR带移动止损系统 SAR指标,通过前期的高低点,来研判行情反转,简单易懂、稳重可靠,长期使用SAR指标虽不能买进最低价,也不能卖出最高价,但可以避免长期套牢的危险,同时又能避免错失牛股行情,深受广大中小投资者的喜爱。 SAR指标的计算公式相当繁琐,金字塔的PEL语言实现了SAR算法,附原帖供参考: http://www.weistock.com/bbs/dispbbs.asp?boardid=10&id=3437&authorid=0&page=0&star=1 一、SAR策略思想: 采用趋势技术指标-SAR、MACD进行开仓信号的判断,基本思想:当K线价格向上突破SAR指标,同时MACD指标在0线附近也形成“金叉”时,价格下跌趋势即将结束,将反转向上,买入开仓。 止损采用顾比倒数线。感谢阿火的顾比倒数线,原帖附上:http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=6337 二、金字塔策略源码 //中间变量 variable:zs=c,maxhl=c; //顾比倒数线 DISTL:=NEWLBARS(L,1); DISTH:=NEWHBARS(H,1); HI20:=REF(HHV(H,20),1); LO20:=REF(LLV(L,20),1); GBD1:=REF(L,DISTL); GBD2:=REF(GBD1,DISTL); GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20)); GBG1:=REF(H,DISTH); GBG2:=REF(GBG1,DISTH); GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20)); //SAR指标 Sar1:SAR(10,2,20),CIRCLEDOT; //MACD指标 DIFF := EMA(CLOSE,12) - EMA(CLOSE,26); DEA := EMA(DIFF,9); MACD := 2*(DIFF-DEA); //交易条件 con1:=any(ref(Sar1>high,1) and Sar1<high,3)=1; //最近3周期,有SAR向上突破K线 con2:=any(cross(diff,dea),3)=1 and diff<5; //最近3周期,MACD在0线附近金叉 //下单模块 //止盈止损平仓:下破移动止损线后离场 if holding>0 and (c<zs) then sell(1,1,limitr,c); //开多仓:SAR向上突破K线,MACD在0线附近金叉 if con1 and con2 and holding=0 then begin buy(1,1,limitr,c); zs:=gbd; //调用顾比倒数线做为止损 maxhl:=h; //记录当时的高点 end if holding>0 and h>maxhl then //创新高后,重新定位离场位,以实现浮动止损 begin zs:=gbd; maxhl:=h; end 止损线:zs; [此贴子已经被作者于2019/12/20 11:31:13编辑过]
|
-- 作者:zm71212302 -- 发布时间:2019/12/20 17:44:29 -- NB |