MT5指标编译通过 · EX5 12KB 自动发布 65 1

超级趋势双通道指标

kau100·1 个月前发布

绿色支撑通道+粉色阻力通道,台阶式跳跃,带填充背景显示多空区域

超级趋势双通道指标

MT5 真机运行截图 · 服务器把编译好的 EX5 挂到黄金 H1 图表上截的,你装上去看到的就是这个样子

SuperTrendChannel.mq5预览 35 / 183 行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#property copyright   "XAUOF 指标工坊"
#property version     "1.00"
#property strict
#property indicator_chart_window
#property indicator_buffers 6
#property indicator_plots   4

// 绿色支撑通道
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrLimeGreen
#property indicator_width1  2
#property indicator_label1  "支撑通道"

// 粉色阻力通道
#property indicator_type2   DRAW_LINE
#property indicator_color2  clrHotPink
#property indicator_width2  2
#property indicator_label2  "阻力通道"

// 多头区域填充(支撑线下边界到支撑线)
#property indicator_type3   DRAW_FILLING
#property indicator_color3  clrPaleGreen
#property indicator_label3  "多头区域"

// 空头区域填充(阻力线到阻力线上边界)
#property indicator_type4   DRAW_FILLING
#property indicator_color4  clrMistyRose
#property indicator_label4  "空头区域"

//--- 输入参数
input int      ATR_Period = 10;          // ATR 周期(控制通道灵敏度,推荐 10-20)
input double   ATR_Multiplier = 3.0;     // ATR 倍数(控制通道宽度,推荐 2.5-4.0)
input int      Channel_Smooth = 5;       // 通道平滑周期(数值越大台阶越宽,推荐 3-10)

//--- 指标缓冲区

已显示前 35 行,共 183 行。完整源码仅对 xauusd.team VIP 开放查看与复制。

开通 VIP 查看完整源码
MT5 运行截图 · 完整视图带价格轴和时间轴的整张图表(约 150 根 H1 K 线),上面的封面是它最近 80 根 K 线的放大视图
超级趋势双通道指标 在 MT5 上的真实截图

作品说明

错误原因是 MQL5 中 PLOT_FILL_BASE 这个常量不存在。MQL5 实现填充效果需要用 DRAW_FILLING 类型,并且填充的两个缓冲区必须在 SetIndexBuffer 时按顺序绑定,填充会自动发生在相邻的两个 DRAW_FILLING 缓冲区之间。

修正方案:将填充缓冲区调整为与基准线配对,绿色填充在支撑线下方,粉色填充在阻力线上方。

使用说明

安装方法

  1. 将代码保存为 SuperTrendChannel.mq5,放到 MT5 数据文件夹的 MQL5\Indicators 目录
  2. 在 MetaEditor 中打开文件,点击编译按钮(F7),确保编译成功无错误
  3. 重启 MT5 或在导航器中右键刷新,在"自定义指标"里找到本指标
  4. 拖到黄金 1 分钟图上即可看到绿色和粉色双通道

参数调节

  • ATR_Period(ATR 周期):默认 10,数值越小通道反应越快但毛刺多,越大越平滑但滞后;黄金波动大时可用 8-12
  • ATR_Multiplier(ATR 倍数):默认 3.0,控制通道宽度;数值越大通道越宽、信号越少但越可靠,推荐 2.5-4.0
  • Channel_Smooth(通道平滑周期):默认 5,控制台阶宽度;数值越大台阶越宽、跳跃越少,推荐 3-10

信号判断

  • 做多信号:价格突破绿色支撑通道向上,进入绿色填充区域时考虑做多,止损放绿色通道下方
  • 做空信号:价格跌破粉色阻力通道向下,进入粉色填充区域时考虑做空,止损放粉色通道上方
  • 震荡区:价格在两条通道之间时为震荡,建议观望或做区间交易
  • 通道跳跃:台阶式跳跃代表市场结构变化,跳跃时刻需要重新评估持仓

注意事项

  1. 编译时如果提示 PLOT_FILL_BASE 错误,说明使用了不存在的常量,本版本已修正为 MQL5 标准的 DRAW_FILLING 实现方式
  2. 填充区域是通过 DRAW_FILLING 自动在相邻缓冲区间填充实现的,绿色区域在支撑线下方,粉色区域在阻力线上方
  3. 本指标属于趋势跟踪类型,在震荡行情中会频繁穿越通道产生假信号,建议配合成交量或其他过滤指标
  4. 黄金 1 分钟图波动剧烈,建议结合更高时间框架(5 分钟、15 分钟)的通道方向过滤信号
  5. 台阶效果是通过变化阈值实现的,如果觉得台阶太窄或太宽,调整 Channel_Smooth 参数即可

AI 解读根据源码逐行分析写成,供参考,以实际运行为准

这是什么

这是一个基于 ATR(真实波幅)动态计算的双通道趋势指标,在图表上画出绿色支撑线和粉色阻力线。通道采用台阶式跳跃,不会频繁抖动;同时用淡绿和淡粉背景填充多空区域,方便识别当前市场结构。价格突破绿色通道向上进入多头区,跌破粉色通道向下进入空头区,在两条通道之间时为震荡。

逻辑原理

指标先用 ATR 衡量市场波动幅度,然后在指定平滑周期(默认 5 根 K 线)内找最高价和最低价,算出中点作为通道中轴。中轴上下各加减 ATR 倍数的一半(默认 3 倍)得到阻力线和支撑线。

关键在于台阶效果:新计算的通道值只有和上一根相差超过 0.5 倍 ATR 时才会跳跃,否则保持不变。这样通道会呈现阶梯状,减少毛刺。填充区域是从支撑线向下延伸 2 倍通道宽度的淡绿色,从阻力线向上延伸 2 倍通道宽度的淡粉色,用于直观显示多空控盘区。

参数说明

  • ATR_Period(默认 10):ATR 周期。数值越小通道反应越快但噪音多,越大越平滑但滞后。黄金等波动大的品种建议 8-12,平稳品种可用 14-20。
  • ATR_Multiplier(默认 3.0):ATR 倍数,控制通道宽度。数值越大通道越宽、信号越少但可靠性高,推荐 2.5-4.0。小于 2.5 会频繁突破,大于 4.0 可能错过机会。
  • Channel_Smooth(默认 5):通道平滑周期。数值越大台阶越宽、跳跃越少,推荐 3-10。设为 1 就几乎没有台阶效果。

怎么用

将源码保存为 SuperTrendChannel.mq5,放到 MT5 数据文件夹的 MQL5\Indicators 目录,在 MetaEditor 里编译无误后重启 MT5。在导航器的"自定义指标"里找到它,拖到图表上即可。建议用在黄金 1 分钟图,也可以在 5 分钟、15 分钟等周期测试。

信号判断:价格突破绿色支撑线向上进入淡绿填充区时考虑做多,止损放支撑线下方;价格跌破粉色阻力线向下进入淡粉填充区时考虑做空,止损放阻力线上方。价格在两条通道之间时为震荡区,建议观望或做区间交易。通道发生台阶跳跃时代表市场结构变化,需重新评估持仓。

适用场景

适合趋势明显、波动较大的品种,如黄金、原油、主要外汇货币对。在单边行情中能较好跟踪趋势,台阶效果减少了频繁止损。推荐配合 1 分钟、5 分钟等短周期使用,同时参考更高时间框架(15 分钟、1 小时)的通道方向过滤信号。

不适合低波动的震荡行情,此时价格会频繁穿越通道产生假信号。不适合跳空严重的品种或时段(如周一开盘、重大新闻发布时),ATR 会被异常拉大导致通道失真。

风险提示

  1. 滞后性:ATR 和平滑周期都是基于历史数据,通道跳跃总是在行情走出来之后,无法预测拐点。
  2. 震荡假信号:在横盘或窄幅震荡时,价格会反复突破通道又回撤,导致频繁进出场。建议结合成交量或其他过滤指标。
  3. 台阶效应的双面性:台阶减少了毛刺,但也可能延迟对市场变化的反应。如果行情快速反转,通道需要几根 K 线才能跟上。
  4. 填充区边界任意:代码里填充区边界是通道宽度的 2 倍延伸,这个数值没有理论依据,只是为了显示效果。不要把填充区边界当作实际支撑阻力位。
  5. 参数敏感:ATR 周期和倍数对不同品种、不同周期的效果差异很大,默认值未必适合你的交易标的,需要回测调整。

常见问题

这个指标会重绘吗
不会。通道值是基于当前 K 线及之前的历史数据计算的,K 线收盘后通道值不会改变。但未收盘的当前 K 线通道会随价格波动实时调整。
台阶效果是怎么实现的,能关闭吗
代码里通过判断新计算值与上一根差距是否超过 0.5 倍 ATR 来决定是否跳跃。如果想要更敏感的通道,把 Channel_Smooth 参数改小或把代码里的 0.5 改成更小的数值,改成 0 就完全没有台阶。
默认参数适合什么周期
默认参数(ATR 周期 10、倍数 3.0、平滑 5)在黄金 1 分钟和 5 分钟图上测试过,适合快速波动行情。更高周期或更平稳的品种需要调大 ATR 周期到 14-20,倍数也可以适当放宽到 3.5-4.0。
可以用在 XAUUSD 以外的品种吗
可以。代码没有品种限制,但因为 ATR 是绝对波幅,不同品种的点值和波动特征差异大,参数需要重新优化。外汇货币对、原油、指数等都可以用,股票因为跳空多可能效果打折扣。
MT4 能用吗
不能直接用。这是 MQL5 代码,MT4 使用 MQL4 语言,函数和语法不同。如果要在 MT4 上用需要重写代码,把 iATR 改成 MT4 的 ATR 函数,把 SetIndexBuffer 和 PlotIndexSetInteger 改成 MT4 的缓冲区设置方式。

SuperTrend Dual Channel Indicator for MT5

A dual-channel trend indicator based on ATR, displaying green support and pink resistance channels with stepped transitions. Filled background zones highlight bullish and bearish areas, suitable for trend-following on volatile instruments like XAUUSD.

A short source preview is shown above for visitors; full source, copy and compiled EX5 files are available to VIP members.

评论

后可以留言,比如反馈用着怎么样、想加什么功能。

还没有人评论,来抢个沙发。