SF18Re | MACD顶底背离+动态区间交易模型源码(增加状态逻辑)

松鼠Quant
2025-09-16


图片
量化策略开发,高质量社群,交易思路分享等相关内容

工具推荐

👉· 参数筛选工具

👉 ·Ai帮你编写策略

👉· 订单流图表

👉· 加入2025俱乐部

👉· Ai投研助手课程


『正文』

ˇ

大家好!SF系列策略推出以来累计阅读量6万,是备受粉丝喜欢的量化系列,有很多老策略因为年代久远、软件更新等原因无法正常使用。我们决定对SF系列重制、优化代码结构、工作区重制使策略能够开箱即用。


SF系列与算法系列源码已经全部重制完成(可以打包)

1.tb重做了工作区888合约,部分代码重写。

2.增加了python代码。

3.文华8代码更新。


SF18更新说明:我们发现原趋势与背离逻辑存在冲突和不足,所以增加了背离与趋势交易的信号状态存续代码。

1.将背离状态与背离信号分为两层,首先是出现背离状态,然后等待触发真正的反转时下单。如下图:

图片

问:出现背离时交易它的位置是最好的,为什么要等待信号确认?

答:因为背离交易本身是一种抄底摸顶的思路,它与趋势是冲突的,当出现单边强度很强的趋势就会不断触发背离,这是传统摆动指标(相对指标)的通病,所以我们需要分层实现,第一层监控状态,第二层等待最终信号确认。如下图:

图片

2.趋势交易模块,当出现交叉状态,由于迟迟没有等来突破确认,交易状态一直保存,随着时间推移,前面的信号意义不大。所以我们需要设置一个过期代码,如下:










if(K<>0 and time!=time[1]){    Barcout=Barcout+1;    if(Barcout>N)    {K=0;Barcout=0;     }}
图片

顶背离


当价格K线图上的走势一峰比一峰高,价格一直在向上涨,而MACD指标图形上的由红柱构成的图形的走势是一峰比一峰低,即当价格的高点比前一次的高点高、而MACD指标的高点比指标的前一次高点低,这叫顶背离现象。顶背离现象一般是价格在高位即将反转转势的信号,表明价格短期内即将下跌,是卖出的信号。(如下图)


图片



底背离


底背离一般出现在价格的低位区。当价格K线图上的走势,价格还在下跌,而MACD指标图形上的由绿柱构成的图形的走势是一底比一底高,即当价格的低点比前一次低点底,而指标的低点却比前一次的低点高,这叫底背离现象。底背离现象一般是预示价格在低位可能反转向上的信号,表明价格短期内可能反弹向上,是短期买入信号。(如下图)


图片



顶底背离的形态描述


图片
图片


策略简介


       SF18号策略有俩种开仓模式,其一就是上面所描述的顶底背离开仓,其二是MACD动态区间交易原理,具体可以参考SF08号策略;

   

策略思想:


1.使用变量将MACD的快慢均线交叉点记录,然后获取上次交叉到本次交叉之间的周期数。


2.当MACD出现顶底背离时,开多开空;


核心计算:   1.MACD交叉状态记录

                    2.构建周期内的高低点区间

                    3.描述背离状态,同时保存结果;

多头进场:1.最近一个MACD信号是金叉,突破周期内高点;

2. 出现底背离时,开多;

空头进场:1.最近一个MACD信号是死叉,突破周期内低点;

2.出现顶背离时,开空;

出场:移动出场;


//使用周期:1小时周期


部分核心计算:


图片


图片


顶背离代码:


图片

底背离代码:

图片


SF18顶底背离信号图:


图片

底背离开仓


图片

顶背离开仓


图片

底背离开仓


点评:

            MACD顶底背离的交易次数较少,且是一种抄底摸顶交易方法,往往是低胜率高盈亏比的交易,且对高低点的定位尤为关键,只靠一个顶背离很难形成一致性的交易系统,因此我们带入第二种交易模式,MACD动态区间交易模式。


动态区间交易模式


图片


图片


图片


        首先要保存交易时的Bar线索引号(位置),然后计算本次交叉与上次交叉时的BAR线间距(多少个BAR线),回溯这个BAR数量同时给它设置一个最小值,取它的高点或者低点作为进出场的轨道价格;

图片

图片
图片
图片
绩效报告
图片
图片
图片
RB
图片
LC
图片
EC
图片
SI
图片
IM
图片
SC
图片
AG
图片

防迷路


           图片

微   信|小松鼠-松鼠Quant

微信号|viquant01

历史源码SF18》

加入2025量化俱乐部



分享