量化交易入门阶段——MACD的背离用法(一)——DIFF背离

 

之前的文章《MACD的其他用法回测(二)》之中,我回测了大家经常用的号称指标之王的——MACD,回测的是一个不常用,但是比较有效的策略dea上穿0轴进场,下穿0轴出场。

本篇文章,我们回测一下MACD之中,号称准确性最高的用法——背离。

MACD的背离用法据我所知有3种,分别是:

DIFF的顶背离和底背离。

MACD差离柱线(红绿柱,也有股民叫红毛、绿毛)的顶背离和底背离

DIFF和DEA的金叉死叉,形成的顶背离和底背离

 

今天我们回测第一种,DIFF的顶背离和底背离。

说一下具体的含义:DIFF的顶背离和底背离是指,当价格走势创出30天内新高/新低,但是同期的DIFF并没有创出新高/新低,这个时候,就是顶背离/底背离,代表短期之内要见顶/见底。

比如,002599,2019年4月的走势,就是典型的顶背离。

 

再比如,002484 江海股份2019年6月的走势,就是典型的底背离。

 

顶背离和底背离在市场之中出现的次数并不多,但是很多投资者都认为背离信号是MACD这个指标之中最准确的信号,效果最好。

我不得不提醒的是,MACD这个指标的本意绝对是趋势跟随,而不是抄底抓顶,所以以背离作为信号,其后果之一就必然是信号少的可怜。

 

 

上一次我们的策略收益是26%:

股票池和上次一样,我们还用沪深300。

这一次仓位还是满仓干。

 

那么回测一下这个策略吧。

策略如下:

回测时间

2019.1.1-2019.12.31

买入条件:

DIFF底背离,买入

卖出条件:

DIFF顶背离,卖出

入场资金:

满仓买入所有形成金叉的股票

 

股票池选择:

沪深300

 

大家猜猜这个配合策略的收益率如何?

 

盈利32%,基本接近沪深300,又进一步提高了收益率,看来背离和大家平时使用的感觉一样,的确是目前为止MACD最准确的用法。

 

当然这并不是MACD的全部策略,我们今后还将继续回测MACD的其他几个策略。

大家有任何问题也欢迎留言,我看见之后,会给大家进行解答。

如果自己有策略,但是不会写代码的话,可以给我私信,价钱从几十到几百不等,看策略实现的难易程度而定,我使用的是聚宽平台,代码写好之后,可以在上面上模拟盘和实盘,对应的券商是第一创业证券。

``` {—————————————— 系统参数模块 ——————————————} {——估值体系优化——} DYNPETTM:=IF(FINANCE(33)>0, CLOSE/(FINANCE(33)/FINANCE(1)+0.0001), 1000); PB_RATE:=IF(FINANCE(5)>0, CLOSE/FINANCE(5), 1000); PEG_VAL:=DYNPETTM/MAX(FINANCE(54)/FINANCE(34)*100,0.0001); {——波动率自适应——} VOLATILITY:=STD(CLOSE,20)/MA(CLOSE,20); VAR_PERIOD:=IF(VOLATILITY<0.08,55,IF(VOLATILITY<0.15,34,21)); FAST_LEN:=MAX(CEILING(VAR_PERIOD*0.382),5); SLOW_LEN:=MIN(FLOOR(VAR_PERIOD*1.618),60); SGNL_LEN:=IF(VAR_PERIOD<=21,7,9); {——多周期参数——} KDJ_N:=IF(VOLATILITY<0.1,14,9); RSI_N:=IF(VOLATILITY<0.15,14,7); MOM_N:=IF(VOLATILITY<0.1,12,5); {新增动量周期参数} {—————————————— 核心指标模块 ——————————————} {——MACD增强——} DIF:=EMA(CLOSE,FAST_LEN) - EMA(CLOSE,SLOW_LEN); DEA:=EMA(DIF,SGNL_LEN); MACD:=2*(DIF-DEA); MACD_ANGLE:=ATAN((DIF-REF(DIF,1))/0.1)*180/3.1416; {——均线系统——} MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10); MA20:=EMA(CLOSE,20); MA60:=EMA(CLOSE,60); TREND_ARR:=MA5>MA10 AND MA10>MA20 AND MA20>MA60; {——量能优化——} VOL_MA5:=MA(VOL,5); VOL_MA20:=EMA(VOL,20); VOL_SIG:=VOL>VOL_MA20*1.5 AND VOL>REF(HHV(VOL,5),1)*1.2; {——动量确认——} MOMENTUM:=EMA(C,5)/REF(EMA(C,MOM_N),5)-1; WEEK_CHG:=(C-REF(C,5))/REF(C,5)*100; MOM_CONF:=EMA(C,5)>EMA(C,13) AND C>HHV(C*0.75,34); {——KDJ优化——} RSV:=(C-LLV(L,KDJ_N))/(HHV(H,KDJ_N)-LLV(L,KDJ_N)+0.0001)*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); J:=3*K-2*D; {—————————————— 信号合成模块 ——————————————} VALUATION:=DYNPETTM<35 AND PB_RATE<4.5 AND PEG_VAL<1.2; TREND_SIG:=TREND_ARR AND C>MA60*1.05 AND C<MA60*1.25; MOM_SIG:=CROSS(DIF,DEA) AND MACD>REF(MACD,1); PRICE_VOL:=VOL_SIG AND ABS((C-O)/(H-L+0.0001))>0.6; {——风险过滤——} BETA_COEF:=SLOPE(C/INDEXC,60)*STD(C,60)/STD(INDEXC,60); RISK_FLT:=BETA_COEF>=0.8 AND BETA_COEF<=1.2 AND FINANCE(42)/FINANCE(1)<0.6 AND FINANCE(10)/FINANCE(1)>0.3; {——周期协同——} CY_MON:=MA(C,10)>REF(MA(C,10),3) AND MA(C,20)>REF(MA(C,20),5); CY_WK_DIFF:=EMA(C,12)-EMA(C,26); CY_WK_DEA:=EMA(CY_WK_DIFF,9); CY_WK:=CY_WK_DIFF>REF(CY_WK_DEA,1); {——最终信号——} SCAN_SIG:=VALUATION AND CY_MON AND CY_WK AND COUNT(TREND_SIG AND MOM_SIG,5)>=2 AND WEEK_CHG>HHV(WEEK_CHG,20)*0.7; FINAL_SIGNAL:FILTER(SCAN_SIG,5),COLORGREEN;```各类问题进行分析和解答。我的问题是【我正在编辑【通达信量化择时周线选股】代码,我的选股逻辑是什么?用2015-2024年全周期A股验证选股逻辑的准确性,并提出优化建议和方案,所有参数计算关系和信号触发条件,是否选到盘中异动,启动主升浪的股票,及日线盘中预警选股和盘后选股,】,请帮我检查并补全正确代码,优化选股逻辑,所有参数计算关系和信号触发条件优化计算,生成修正后完整代码。
最新发布
03-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值