Squeeze Momentum Scanner
- 指标
-
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
Squeeze Momentum Scanner 是一个文件里的两个产品。第一个是 Squeeze Momentum MTF 本身,画在这张图自己的副窗口里:按扩张与衰减着色的动能柱状图,以及那一排挤压点,它告诉你布林带是在肯特纳通道内部、外部,还是刚刚走出来。
第二个是一块看板,把同一套计算同时跑在一串品种和若干周期上。挤压释放是一个短命的事件,而且在不同品种上发生在不同时刻,这正是看板派上用场的场合:表格把它们找出来,下面的副窗口让你看到产生它的那根柱状图。
看板
每个品种一行,每个扫描周期一列,最多四列、最多二十八个品种。品种列表用逗号分隔,也可以直接取 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 里打开了多少品种。无法测量的单元格会给出解释,而不是留空。
图表指标
画在自己的副窗口里:四色的动能柱状图和三态的挤压点。它的周期与看板扫描的周期分开设置。
设置页
齿轮打开三个标签页。Values 涵盖周期、布林长度、布林乘数、肯特纳长度、肯特纳乘数,以及肯特纳的区间是用真实波幅还是用简单的最高价减最低价。每一行都带步进按钮、取值范围和一句帮助。改动其中一项会重算整块看板,面板会同时报告进度。
Alerts 涵盖总开关、各事件开关、四个通道、冷却时间和一个测试按钮。
Styles 涵盖图例、调色板、动能柱状图、挤压点和点的大小。这些与配套的单图表指标是同一组显示控件,名称也相同,因此在一边调好的图表可以在另一边复现。
三套配色,其中一套是色盲友好的,用蓝色和橙色代替红色和绿色。面板位置、配色、排序、过滤、可见列,以及在设置页上改过的每一个值,都按图表分别保存,跨周期切换和终端重启后依然保留。界面为英文。
提醒
开箱默认关闭,总开关在面板上,旁边是 Test alert 按钮。
事件是新鲜的 BUY 和新鲜的 SELL,对每个扫描周期分别声明,另加 data health,它在某个品种失去或恢复数据时开口。有一个最低等级设置;本移植不做等级评定,因此每个信号都算等级一。
通道是弹窗、声音、推送到手机端和电子邮件。冷却按单元格和事件分别保持,默认三十分钟。Telegram 不属于本产品。
开销
工作量是有预算的:每个定时器节拍只刷新固定数量的品种,因此长列表会把负载摊开,而不是让终端卡住。首轮是渐进的,面板会报告已测量的百分比。
从 EA 读取
图表指标的缓冲区可通过 iCustom 和 CopyBuffer 读取。缓冲区 0 Momentum 是对去趋势序列做线性回归得到的端点值,缓冲区 1 是它的颜色索引:0 表示上升且扩张,1 上升且衰减,2 下降且扩张,3 下降且衰减。缓冲区 2 Squeeze 是那个点,凡是它可见的地方取值恒为 0.0,缓冲区 3 是它的颜色索引:0 表示没有挤压,1 表示挤压进行中,2 表示挤压已释放。缓冲区 4 Signal 在看涨释放时为 +1,看跌释放时为 -1,没有释放时为 0。
本产品没有单独的 Buy 和 Sell 价格缓冲区。事件就是缓冲区 4。
Styles 标签页是通过拿走一个 plot 的颜色来隐藏它的,从不通过清空缓冲区。上面列出的每一个索引在显示开关关掉时仍可被 iCustom 和 CopyBuffer 读取,也仍然出现在 Data Window 里。
看板本身是面板而不是缓冲区。它靠眼睛读,靠提醒送达。
来源
本产品移植自 "Squeeze Momentum Indicator [LazyBear]",依据的是作者本人的开源发布。该发布未附任何许可证,这使得对公式的贴近移植是允许的,而本实现遵循的是那些公式,不是靠猜。
产品沿用该方法的名称,是因为它实现的就是这个方法。原作归 LazyBear 所有,此处不主张对其的著作权。
诚实的边界
看板读取已收盘的K线,单元格的年龄也按已收盘K线计数。在副窗口里,尚未收盘那根K线上的柱状图和点是活的,会一直变到它收盘为止,所以一次在K线中途可见的释放,到收盘时可能已经不在。已收盘K线所发布的内容此后不再改变。
挤压释放是关于波动率的陈述,不是关于方向的陈述。动能的符号说明释放那一刻能量在哪一侧。挤压也可能释放之后什么都没有发生:压缩是扩张的必要条件,不是充分条件。
AGREE 数的是周期,它不估计概率,而对同一个品种的四次相关读数一致,并不等同于四次独立确认。平局刻意不给结论,并且在 buys 过滤和 sells 过滤下都被隐藏。
布林和肯特纳的设置会实质性地改变能检测到多少次挤压。肯特纳乘数放宽会更多,收窄会更少,而这两种配置都算不上正确的那一个。
扫描是有代价的。二十八个品种乘四个周期是一百一十二个单元格;在慢机器上要调低的是预算设置。
此处不主张任何收益数字、胜率或回测结果。

