AutoTrianglePatterns
- 指标
- 版本: 1.10
Auto Triangle Patterns
概述
Auto Triangle Patterns 是一款用于 MetaTrader 5 的图表指标。它会扫描当前图表的价格历史,寻找三种经典三角形形态:上升三角形、下降三角形和对称三角形。找到形态后,指标会绘制两条边界线,填充两条线之间的区域,并添加一个写有形态名称的文字标签。形态会保留在图表上,并随每根新 K 线向右延伸。
当价格向上或向下离开形态,或形态在没有突破的情况下走到顶点时,指标会标注结果并停止更新该形态。已经结束的形态会保留在图表上,便于回顾此前的形态。
本指标不会开仓或管理仓位,不会下单,也不产生交易信号。它是技术分析与图表可视化工具,所有标注都只是对已有价格数据的解读。
工作原理
形态搜索分为几个步骤。
摆动点。指标先寻找摆动高点与摆动低点。摆动高点是指其最高价不被左右两侧 K 线最高价超过的 K 线,摆动低点以同样方式寻找。左右两侧检查的 K 线数量由 InpPivotLeft 和 InpPivotRight 设定。由于右侧 K 线必须先收盘,一个摆动点只有在它之后出现 InpPivotRight 根 K 线后才会被确认。
边界线。上边线通过最近的 InpTouches 个摆动高点绘制,下边线通过最近的 InpTouches 个摆动低点绘制。用于同一条线的每个摆动点都必须与这条线保持不超过 InpFitTol 乘以 ATR(真实波幅)的距离,ATR 的周期由 InpAtrLen 设定。正是这个容差让两条线贴合真实的价格触及点,而不是做严格数学拟合。
形态分类。两条线的斜率决定形态名称。当一条线在形态长度上的总变化不超过形态高度的 InpFlatPct 百分比时,这条线被视为水平线。上边线水平且下边线向上,为上升三角形;上边线向下且下边线水平,为下降三角形;两条线同时收敛,且较快斜率与较慢斜率的比值不超过 InpSymRatio,为对称三角形。
有效性检查。一个候选形态需要同时满足若干条件才会被接受:两条线的摆动点在时间上必须相互重叠;形态长度必须处于 InpMinBars 与 InpMaxBars 之间;两条线的交点必须位于当前 K 线的右侧;上边线必须始终位于下边线之上;从形态起点到当前 K 线之间的每一根 K 线都必须停留在通道之内,容差与边界线使用的 ATR 容差相同。
绘制与更新。被接受的形态从起始 K 线绘制到当前 K 线。活跃形态的两条线会随每根新 K 线向右延伸,使形态始终反映最新价格。
形态结果。共有三种结果。价格突破上边线为向上突破,跌破下边线为向下跌破,两者都会在对应 K 线上标注箭头,线条保持实线样式。若价格走到形态顶点,或形态长度超过 InpMaxBars,形态会无突破地结束,并以虚线绘制,标注 "expired"。若在上一个形态仍然活跃时出现新形态,上一个形态同样以虚线绘制,标注 "no breakout"。
同一时间只保持一个活跃形态。已经结束的形态作为静态对象保留在图表上,不再变化。
使用方法
将指标加载到任意图表即可。它适用于任何交易品种与任何时间周期,默认参数对大多数图表都是合适的起点。
首先调整摆动强度。InpPivotLeft 与 InpPivotRight 共同定义一个摆动点需要多大才会被计入。取值越小,摆动点和形态越多;取值越大,形态越少但规模越大。合适的取值取决于交易品种和个人的读图习惯。
摆动强度的推荐起始值:
M5 至 M15:InpPivotLeft 3,InpPivotRight 3
M30 至 H1:InpPivotLeft 5,InpPivotRight 5
H4 至 D1:InpPivotLeft 7,InpPivotRight 7
每侧触及点数量是第二个主要控制项。InpTouches 设为 2 会更早、更多地找到形态;设为 3 或 4 时,每条线需要更多已确认的触及点,找到的形态更少,但依据的价格证据更充分。
容差 InpFitTol 以 ATR 为单位,决定摆动点以及形态内价格需要多严格地贴合两条线。0.3 至 0.8 之间的取值适用于大多数图表。取值越小,形态越紧凑、筛选越严格;取值越大,接受的形态越宽松。
突破方式由 InpUseClose 控制。默认值为 true 时,只有 K 线收盘于边界线之外才计为突破,因此仅影线刺穿边界线而未收盘在外的情况不会被标注。设为 false 时,改用 K 线的最高价与最低价判断。
当发现新形态、发生突破或跌破时,终端会显示提示。提示只针对已收盘的 K 线产生。指标首次加载并扫描历史数据时不会产生提示。
在得出结论之前请加载足够的图表历史。指标在加载时最多扫描 InpHistoryBars 根历史 K 线,图表加载的历史越多,呈现的形态越完整。
输入参数
形态检测
InpPivotLeft。摆动点左侧不得超越它的 K 线数量。默认 5。
InpPivotRight。摆动点右侧不得超越它的 K 线数量。默认 5。
InpTouches。每条边界线所需的摆动点数量,取值 2 至 4。默认 2。
InpFlatPct。边界线被视为水平线时,其在形态长度上的最大变化值,以形态高度的百分比表示。默认 25.0。
InpSymRatio。对称三角形中两条线斜率比值的上限。默认 3.0。
InpFitTol。摆动点与形态内价格相对边界线的容差,以 ATR 为单位。默认 0.5。
InpAtrLen。用于把容差换算为价格的 ATR 周期。默认 14。
形态规模与历史范围
InpMinBars。形态的最小长度,单位为 K 线根数。默认 15。
InpMaxBars。形态的最大长度,从形态起点计算到顶点。默认 200。
InpHistoryBars。指标加载时扫描的历史 K 线数量,设为 0 时扫描全部可用历史。默认 3000。
形态类型
InpShowAsc。启用上升三角形搜索。默认 true。
InpShowDesc。启用下降三角形搜索。默认 true。
InpShowSym。启用对称三角形搜索。默认 true。
显示效果
InpColAsc。上升三角形的线条颜色。默认 clrTeal。
InpColDesc。下降三角形的线条颜色。默认 clrRed。
InpColSym。对称三角形的线条颜色。默认 clrBlue。
InpLineWidth。边界线宽度。默认 2。
InpShowFill。填充两条边界线之间的区域。默认 true。
突破与提示
InpUseClose。要求 K 线收盘于边界线之外才计为突破;设为 false 时使用 K 线的最高价与最低价。默认 true。
InpShowBreakout。在突破或跌破的 K 线上绘制箭头。默认 true。
InpColBull。向上突破上边线的箭头颜色。默认 clrGreen。
InpColBear。向下跌破下边线的箭头颜色。默认 clrRed。
说明与限制
摆动点只有在右侧 InpPivotRight 根 K 线收盘后才会被确认。这一延迟是摆动点检测的固有特性,不是缺陷。已确认的摆动点之后不会移动或消失。
活跃形态会在新的摆动点出现时被重新拟合,因此在形态结束之前,它的线条、长度和标签都可能发生变化。已经结束的形态不会再改变。
突破基于已收盘的 K 线判断。启用 InpUseClose 时,仅影线刺穿边界线而未收盘在其外侧的情况不会被标注为突破。
活跃形态的两条线会绘制到当前 K 线,包括尚未走完的那一根;而突破判断本身只使用已收盘的 K 线。
同一时间只有一个活跃形态,此前的形态作为静态对象保留在图表上。
所有标注都是图表对象,隶属于图表窗口,会随指标一起被移除。
指标不使用指标缓冲区,因此在数据窗口中不显示任何数值,其结果也无法被其他程序读取。
指标需要图表上有足够的历史数据,并且 ATR 计算完成后才会开始绘制。
获取方式
本指标当前通过 MQL5 市场免费提供。下载次数超过 100 次后,将转为用户订阅(租赁)方式提供。按照 MQL5 市场规则,在转换为付费产品之前已获取免费版本的用户,可以继续使用其已获得的副本。
试用版本
按照 MQL5 市场规则,指标的试用版本无法在实时图表上运行。可以在客户端终端内置的策略测试器的可视化测试模式中观察其运行效果。
风险提示
本指标是技术分析与图表可视化工具。它不提供交易信号,不开仓或管理仓位,也不保证或承诺任何盈利。三角形形态与突破标注仅是对已有价格数据的解读。金融交易存在较大风险。是否使用本指标,以及在是否参考本指标的情况下做出的任何交易决定,均由用户自行负责。
支持
支持通过产品页面的评论区以及 MQL5.com 站内消息提供。
