布林带在移动平均线上下构建了一个波动率包络。它们描述的是价格相对于近期窗口的位置;触及布林带并不说明价格接下来会怎么走。同一条布林带既可以框定延续假设,也可以框定向中轨回归的假设,因此在检验其中任何一种之前,先把规则写下来。
计算您打算使用的布林带
对于简单移动平均版本,将中轨写为所选价格序列在固定长度上的均值。上轨是中轨加上标准差的选定倍数;下轨则减去同一距离。明确价格输入、平均类型、回溯长度、标准差约定、乘数,以及是否包含当前K线。“二十加二”是常规默认值,并非普遍最优。
以下是一个虚构的五收盘价计算,使用收盘价 98、99、100、101 和 102,并在本例中采用总体标准差。简单平均值为 100。各值相对均值的偏差为 −2、−1、0、1 和 2,因此均方偏差为 (4 + 1 + 0 + 1 + 4) ÷ 5 = 2。标准差为 √2,约 1.414。乘数取 2 时,示例布林带为 100 ± 2.828:下轨 97.17,上轨 102.83。最新收盘价 102 接近上轨,但仍位于其内侧。仅凭这一观察无法定义任何订单。
不同平台在中轨类型、数据源、偏移和预热行为上可能不同。TradingView 记录了其可调整的布林带输入项,以及常见的 SMA 加减两倍标准差设置。在假定另一套实现与之相符之前,先手工重算几行并比较数值。如果窗口不完整,应保留缺失值,而不是用零填充。
将布林带位置与宽度作为测量值来解读
两个常见的衍生值回答的是不同的描述性问题。%B = (close − lower band) ÷ (upper band − lower band) 表示收盘价相对于当前包络的位置;当价格位于带外时,它可以低于 0 或高于 1。BandWidth 为 (upper − lower) ÷ basis × 100%,是当前包络宽度的归一化度量。在上述虚构示例中,收盘价 102 对应的 %B ≈ 0.854,BandWidth ≈ 5.66%。这两个数字本身都不是概率、预测或方向。该指标的创建者将 %B 描述为相对位置,将 BandWidth 描述为归一化宽度;常用的两倍标准差设置并不会把价格变成服从正态分布的 95% 事件。
即便在极小的示例中,计算约定也很重要。五个收盘价的平方偏差之和为 10。除以 5 得到总体方差 2,以及上文所示的布林带。除以 4 得到样本方差 2.5,标准差约 1.581,布林带约为 96.84 和 103.16;同一收盘价对应的 %B 约为 0.816,BandWidth 约为 6.32%。记录平台实际采用的标准差约定,并核验其输出,而不是假定各实现一致。TradingView 提供数据源和中轨类型等布林带输入项,而 Pine 的参考文档记录了标准差函数及其 estimate 选项。
对于挤压假设,应从历史训练窗口中定义“狭窄”——例如低于选定的 BandWidth 百分位——并在评估后续数据之前冻结该阈值。狭窄的布林带描述的是所选规则下的压缩状态;它并不指明突破方向。将压缩后的延续规则与任何回归规则分开检验,纳入平静期和失败的扩张情形,并在尝试过多种长度或百分位时考虑选择偏差。
将信号K线与建模成交分开
对于基于收盘价的规则,某根K线在仍在形成时,其最终值尚不可得。可复现的检验应说明其布林带是仅使用更早的收盘价,还是包含刚完成的收盘价,然后在所有输入首次已知的时刻记录信号。这一选择可能同时改变阈值和决策的时间戳。
TradingView 的 Pine Script 策略文档描述了一个平台特定的默认行为:在历史K线收盘后进行计算、并随即创建市价单的策略,通常将最早成交建模在下一个可用 tick,通常是下一根K线的开盘价。某项设置可以改变这一行为。这是模拟器的约定,并不代表所有回测引擎或交易所的实际执行。实盘限价单可能无法成交,市价单可能扫过深度,而手续费和滑点与指标值仍是两回事。
例如,将规则写为:“在第 t 根K线确认收盘时,将该收盘价与由前 20 个已完成收盘价计算出的上轨比较。若高于上轨,则记录一次突破观察;将市价入场建模在不早于下一个可用事件的位置。”另一条规则可能将第 t 根K线纳入布林带计算,或使用再入场条件。两者都可检验,但在看到结果后挑选看起来最好的版本,属于又一次策略搜索。冻结一个版本,说明执行假设,并在比较结果之前重新核算。
将两种解读作为独立规则来检验
均值回归检验可能要求收盘价完成于下轨之下,然后等待另行定义的再入场条件,再记录假设性的多头。明确出场、失效条件、最长持有时间,以及策略是否可以加仓。失败情形是价格持续向布林带下方更远处移动,或回归只在建模成本压过结果之后才出现。
延续检验可能将收盘价完成于上轨之上视为初步突破观察,并在声明的风险上限下评估后续入场。定义失败条件,例如随后收盘价回到布林带内侧。将这一检验与均值回归检验分开:它们使用不同的假设、入场时机和失败情形。如果您尝试了多种设置或解读,应保留完整的搜索过程,而不是只公布最佳组合。
该指标的创建者提醒,触及布林带本身并不是信号,价格在趋势中可能沿着布林带行走,而收盘于带外最初属于延续解读。同一份指引还提醒读者,不要把两倍标准差当作服从正态分布的 95% 边界;在常用设置下,实际观察到的包含比例可能更接近 90%。这些是方法论上的提醒,并不证明上述任何一种加密货币规则能够盈利。
进行公平比较
使用按时间顺序划分的窗口和单一声明的价格数据源。记录布林带参数、已完成K线的时间口径、交易次数、持有时间、回撤和成本。当建模标的是永续合约时,纳入买卖价差、手续费、滑点和资金费率。将每条规则与同一市场的简单基准比较,并报告亏损时段和邻近参数的结果。不要在扫描众多备选方案后挑选一个窗口,再将其呈现为未经触碰的评估。
SuperQuant 的公开策略示例不包含任意布林带规则构建器。本文不承诺该应用能够运行上述任何一种自定义设置,其内置的小时级历史数据为合成数据。请阅读均值回归、突破研究和回测过拟合。本文为研究教育内容,不构成信号或投资建议。