如何测试支撑阻力区间
直接答案
支撑阻力区间可以通过将其视为一个关于价格相对于明确定义的区间如何行为的可衡量假设来进行测试。然后,你将价格进入、触及或穿越该区间时的情况与不使用该区间的基准进行比较。为了使结果可验证,你必须明确你的假设(区间如何构建,“尊重”或“突破”如何定义)、选择基于时间的数据分割以防止前瞻性偏差,并包含实际成本,如点差、佣金、滑点和执行延迟。最后,通过使用不同的区间定义和验证窗口重复测试来检查其稳健性。
机制与定义
支撑阻力区间是一个价格带,而非单一水平。它反映了一种观点,即在某些价格区域附近可能会反复出现买方和卖方兴趣,导致价格在该带内停留或在触及边缘时产生反应。
要测试它,你需要明确的操作定义:
-
区间构建规则(假设): 决定如何计算下界和上界。规则类型示例包括使用回溯窗口内的历史高/低点、使用围绕中心估计值的波动率调整带,或使用聚集的摆动点。关键是该规则必须足够明确,以便其他人可以复现这些边界。
-
事件定义(你测量的内容): 选择一个或多个可测量事件,例如:
- 触及: 价格达到任一边缘,无需收盘价在带内。
- 反弹: 价格从边缘反向移动至少一定距离。
- 突破: 价格收盘价超出带外一定幅度。
-
结果指标(如何评分表现): 不要将该概念视为主观的“似乎有效”,而应使用与事件定义相关的数值指标。常见的指标模式包括反弹与突破的频率、触及后的平均价格波动,或达到移动阈值的命中率。如果你将结果转化为类似收益的度量,则还必须指定机制(入场时间、出场时间以及使用的价格)。
-
基准(你比较的对象): 测试只有在与某物比较时才有意义。基准可以包括:
- 基于无条件移动的朴素预期,
- 区间边界的随机或排列版本,
- 简化的“始终在内”或“始终突破”参考行为(取决于你如何评分结果)。
由于区间交易行为可能随市场状态变化,你的假设必须包含一个条件(例如,“当带由前N个时段构建时,触及更可能反弹而非突破”)。否则,测试无法将该概念与一般市场行为区分开来。
假设检验设置(基准、数据分割与成本)
一个实用的测试设置遵循五个步骤。
1) 提出可证伪的假设
写出一个可能失败的陈述。例如(模板):“当价格触及构建的上下边界时,在接下来Y根K线内反弹超过阈值X的概率高于基准概率。”
这一点很重要,因为支撑阻力区间并不保证有效;它是在特定定义下对相对行为的主张。
2) 按时间分割数据
使用基于时间的分割,使得在时间 t 的区间只能使用截至 t 的可用信息。常见方法是:
- 训练期: 仅使用训练部分选择超参数(回溯长度、带宽、阈值)。
- 验证期: 评估选定的设置。
- 可选的样本外测试: 在设计中未使用的后期数据上确认。
这可以防止前瞻性偏差,这是交易相关测试中的主要失败模式。
3) 选择成本与执行假设
如果你将结果转化为类似交易的结果,请包含成本,因为它们可能将看似的优势转化为亏损。即使你仅测量“反弹 vs 突破”,你也应反映实际执行不会在理想价格发生。
指定假设,例如:
- 点差模型(固定 vs 可变),
- 佣金(如有)结构,
- 滑点(分布或最坏情况界限),
- 你的评估是使用买卖价差代理还是中间价。
如果你无法合理证明成本模型,请将测试保持在非经济度量空间(例如,分类类指标),并说明这一局限性。
4) 同时评估幅度与频率
一个设置可能有更高的反弹频率,但如果反弹幅度小或突破幅度大,表现仍可能不佳。因此评估:
- 频率指标(事件发生的频率),以及
- 幅度指标(事件后价格移动的距离)。
5) 使用统计与稳健性检验
稳健性有助于区分“对某一区段的过拟合”与可重用的模式。
应包括的稳健性检验:
- 区间定义敏感性: 使用不同的回溯窗口和带宽重新运行测试。
- 阈值敏感性: 改变反弹/突破的距离边际和时间范围。
- 前向滚动验证: 通过滑动训练/验证窗口重复测试。
如果在微小变化下表现崩溃,则结果可能反映的是脆弱的关系。
通过实例展示证据(非保证)
以下是如何设计测试而不假设实时数据的示例。
-
选择定义: 使用前50根交易K线的最高高点作为上边缘,最低低点作为下边缘(明确规则)。定义触及为任何价格范围与边缘相交的K线,并定义反弹为价格在接下来的10根K线内从该边缘反向移动至少X单位。
-
选择基准: 计算在接下来的10根K线内移动至少X单位的无条件概率,无论价格是否触及边缘。
-
运行分割: 使用A–B月选择X(以及可选的带宽变体),然后使用C–D月评估。不要在参数选择中重用C–D数据。
-
计算指标: 对每次边缘触及,测量是否发生反弹。将反弹率与基准概率比较。
-
若使用经济指标则包含成本: 如果你将反弹转化为假设的入场和出场,指定买卖价差假设并包含滑点。如果你无法可信地指定它们,请严格以事件为基础报告结果,并说明未包含成本现实性。
-
压力测试: 使用替代规则(例如,围绕摆动点的波动率调整边际)重新计算带宽,并使用略微不同的X和Y值重新运行。
结果可能显示,“触及-反弹”在某些时期有时比基准更可能发生,有时则不然。