Half Trend Scanner MT4
- 指标
-
Evgenii Sutulov
I build trading indicators, strategies, and dashboards that don't repaint.
Seven years doing this. MetaTrader 4, MetaTrader 5, TradingView.
Closed bars only. What you see is what happened.
The bar being formed never changes a published value. - 版本: 1.3
- 激活: 20
二十八个品种,四个周期,一块屏幕,而这笔交易已经在下方的图表上了。Half Trend Scanner 把阶梯状的趋势线跑遍你的整张自选列表,按最近翻转的先后给看板排序,并用一列告诉你每个品种上有几个周期意见一致。每一个无法测量的单元格都会用文字解释自己,而不是留成空白,所以一块空看板从来不是谜。
每售出10份,价格上涨10美元。
这是一个文件里的两个产品。第一个是 Half Trend 本身,画在你眼前的这张图上:守住自己水平直到被市场顶出去的阶梯状趋势线、围绕它的 ATR 通道,以及翻转箭头。
第二个是一块看板,把同一套计算同时跑在一串品种和若干周期上。看板告诉你哪些货币对翻转了、翻转得有多新;下面的图表把线和通道摆给你看,于是你不必再挂第二个指标,就能按表格找到的东西行动。
看板
每个品种一行,每个扫描周期一列,最多四列、最多二十八个品种。该列表出厂时扫描十五个品种,改一项设置即可提高到二十八个。品种列表用逗号分隔,也可以直接取 Market Watch 的列表。经纪商前缀和后缀从当前图表识别,也可手工给定。开箱默认扫描四个周期:M15、H1、H4 和 D1。
单元格读作 ^14b:趋势线站在哪一侧,以及多少根K线之前翻到那一侧。flat 表示计算跑过了但没找到方向。三个点表示这个单元格还没有被测量,开启提示后,把鼠标停上去会用文字说明原因。超过新鲜度阈值的信号保留颜色但画得更安静,因此色相说的是方向,分量说的是它还有多重要。行内任何位置有新鲜信号时,整行会铺上一层强调色。
AGREE 列正是用看板而不是用八张图的理由。它对每个品种取可见的周期列,找出多数一侧,打印成 v3/4 这样的形式:方向,以及可见周期中有几个站在那一侧。当所有可见周期都一致时,该单元格用那一侧的颜色加粗绘制。平局打一个短横,这是刻意为之,它不是结论。只有一个周期可见时,整列会被丢弃,而不是打印一个只重复旁边单元格的 1/1。
列标题就是按钮。点击周期标题按该列排序,最新在上,该列为空的行沉到底部;再点一次反向。点击 AGREE 按一致程度排序,完全一致排在最前。活动标题带上强调色和一个尖角,于是排序状态就住在控件本身上。另有一个 Sort 按钮,为整块看板的顺序在 freshest、grade、name 之间循环。
Show 按钮在 all、buys、sells、fresh 之间循环。buys 和 sells 跟随 AGREE 的结论而不是任何单个单元格,因此出现在 buys 下的行在 AGREE 里一定读到向上的符号,平局的行在两边都不出现。这是对视图的过滤而不是对计算的过滤:被隐藏的行仍在测量,仍会发出提醒。
表格上方的图例用一行解释记号,可以关闭。周期按钮只显示或隐藏某一列,不会停掉它背后的计算。点击单元格会把当前图表切换到那个品种和那个周期,而不是开一个窗口。
可见行数按图表窗格自动适配,行数设置是上限。全部放得下时不画翻页按钮;放不下时,上一页和下一页连同页码一起出现。因为看板从不画出比窗格能容纳更多的行,所以无论行数设置多大,翻页按钮永远在屏幕内、永远够得着。
两行状态始终显示:已就绪品种数与总数、距上次更新多久、回看窗口内的信号数;然后是看门狗那一行,或者一句解释为什么什么都没显示。
诊断
第二块面板默认关闭,回答"为什么没有信号":品种覆盖情况、哪些序列K线不足、窗口内找到多少信号,以及这个指标为了干活在 Market Watch 里打开了多少品种。无法测量的单元格会给出解释,而不是留空。
图表指标
画在价格窗口里:按所处一侧着色、跨过翻转K线也不断开的 Half Trend 线,每条轨道都是各自颜色细线的 ATR 通道,用细点网绘制、让K线能直接透过去读的两层通道填充,线以上是多头色、线以下是空头色,以及 BUY 和 SELL 箭头。如果你只要看板,可以在 Styles 标签页里关掉它。它的周期与看板扫描的周期分开设置。
设置页
齿轮打开三个标签页。Values 涵盖周期、振幅、是否显示正在形成的K线上的信号、通道偏移和 ATR 周期。每一行都带步进按钮、取值范围和一句帮助。改动其中一项会重算整块看板,面板会同时报告进度。
Alerts 涵盖总开关、各事件开关、四个通道、冷却时间和一个测试按钮。
Styles 涵盖图例、是否在本图上绘制指标、调色板、趋势线、ATR 通道、两层通道填充、箭头、线宽和箭头大小。这些与配套的单图表指标是同一组显示控件,名称也相同,因此在一边调好的图表可以在另一边复现。
在设置页上调过的值立刻生效,休市时也一样:看板和图表会当场重算,而不是等下一个报价。三套配色,其中一套是色盲友好的,用蓝色和橙色代替红色和绿色。面板位置、配色、排序、过滤、可见列,以及在设置页上改过的每一个值,都按图表分别保存,跨周期切换和终端重启后依然保留。界面为英文。
提醒
开箱默认关闭。总开关就在面板上,旁边的 Test alert 按钮会通过当前打开的每一个通道发送一次。
事件是新鲜的 BUY 和新鲜的 SELL,对每个扫描周期分别声明,另加 data health,它在某个品种失去或恢复数据时开口,再加上在本图上触碰 Half Trend 线,这是图表指标上的回撤事件,而不是看板找到的任何东西。有一个最低等级设置;本移植不做等级评定,因此每个信号都算等级一。
通道是弹窗、声音、推送到手机端和电子邮件。冷却按单元格和事件分别保持,默认三十分钟。
终端负载
工作量是有预算的:每个定时器节拍只刷新固定数量的品种,因此长列表会把负载摊开,而不是让终端卡住。首轮是渐进的,面板会报告已测量的百分比。
从 EA 读取
图表指标公开十五个缓冲区,全部可以通过 iCustom 读取。缓冲区 0 Buy 在 BUY 翻转K线上带着箭头价格,其余时候为 EMPTY_VALUE,并且不绘制;缓冲区 1 Sell 对 SELL 翻转同理。缓冲区 2 到 5 属于两层通道填充,是显示用的管线,不是拿来读的。缓冲区 6 Half Trend Up 是趋势向上期间的趋势线,缓冲区 7 Half Trend Down 是趋势向下期间的同一条线;在翻转K线上两者都有值,正是这一点让画出来的线不断开。缓冲区 8 ATR High 是通道上轨,缓冲区 9 ATR Low 是下轨。缓冲区 10 BuyMark 和缓冲区 11 SellMark 是缓冲区 0 和 1 的绘制副本。缓冲区 12 Signal 在 BUY 翻转时为 +1,在 SELL 翻转时为 -1,没有翻转时为 0。缓冲区 13 是作为一条不断开序列的线,缓冲区 14 是趋势本身,向上时为 0,向下时为 1。
缓冲区 0 和 1 是与 EA 之间的契约。它们从不着色,无论 Styles 标签页怎么设置都会在每一遍计算中写满,所以显示这一侧没有任何东西能让策略拿不到信号。你在图上看到的是绘制副本,与契约保持同步。隐藏是通过显示来做的,绝不会去清空缓冲区,因此上面列出的每一个索引都保持可被 iCustom 读取,在显示开关关掉时也仍然出现在数据窗口里。
这张映射表是扫描器自己的,它与单图表的 Half Trend MTF 并不相同:后者在索引 13 处插入一个 Override 缓冲区,并把不断开的线和趋势公开在 14 和 15。请读上面那份清单。
看板本身是面板而不是缓冲区。它靠眼睛和提醒来读。
本产品背后的那个单图表指标 Half Trend MTF 是免费的。如果你只跟一个品种,就用它;这个扫描器存在的意义是同时盯住许多个。
来源
这是 everget 发布在 TradingView 上的 "HalfTrend" 的移植,而那本身又是一个更早的 MetaTrader 4 指标的移植。算法是规范的,其源头就在 MetaTrader 4。TradingView 上的脚本是公开发布的,因此按公式移植是允许的;本实现不是逐行翻译,而是从公式重新搭建出来的。
产品沿用该方法的名称,是因为它实现的就是这个方法。原作归其作者所有,此处不主张对其的著作权。
诚实的边界
看板读的是已收盘的K线,单元格的年龄也按已收盘的K线来数。在图表指标上,当正在形成的K线信号打开时,未完成K线上的箭头可能在这根K线收盘前消失。把这个设置关掉,正在形成的K线会完全留空;而已经在收盘K线上发布过的内容,两种情况下事后都不会改变。
AGREE 数的是周期,它不估计概率。四个周期一致,意思是同一个品种的四份相关读数一致。平局是刻意不给结论的,它在 buys 过滤和 sells 过滤下都被隐藏。
阶梯状的趋势线按设计就是翻得晚,而在看板上这意味着,同一个震荡的小时里会有好几个货币对显示新鲜翻转,每一个都是真的,每一个都不好。
扫描是有代价的。二十八个品种乘四个周期是一百一十二个单元格,在慢机器上会有感觉;要调低的是预算那个设置。
经纪商不提供的品种,以及对 ATR 周期而言太短的序列,无法测量,看板会说明是哪些、为什么。
这里不主张任何盈利数字、胜率或回测结果。

