ForexBestRobots.com比较 EA →

价格行为 · 策略 2

内包K线外汇策略:母K线与收盘突破

可测试的 EUR/USD H1 内包K线计划:严格的母K线边界、收盘突破、固定退出,以及扣除交易成本后的仓位规模计算。

阅读时间:24 分钟由 ForexBestRobots 编辑团队审查
假设的 EUR/USD H1 内包K线示例,展示三根已完成K线、固定边界、入场报价、止损、目标与事件时间。EUR/USD · H1 · Bid 图表母 K 线 → 内包 K 线 → 收盘突破

突破 K 线开盘之前固定价位。收盘后检查第一个可交易报价。

内包 K 线是高低范围完全位于前一根 K 线范围之内的较小 K 线。它显示收缩,并不能确定下一步行情的方向或盈利能力。本文将这一观察转化为明确研究基准:三根已收盘 K 线、固定价位、较短入场窗口,以及考虑成本的放弃规则。

1. 此内包 K 线形态衡量什么

顺序为 M → I → B:母 K 线、内包 K 线及紧接着的突破 K 线。三者必须是已收盘且相邻的 H1 K 线。母 K 线与内包 K 线定义候选;第三根确认或取消它。第三根仍未收盘时的价格触及,不是入场信号。

以下限制是作者定义的研究选择,不是保证有效的标准。12–40 pip 母 K 线振幅、50% 收缩限制、2 pip 缓冲、3 倍振幅目标、1.5 成本调整比率及 8 根 K 线时间退出,都属于此特定基准。修改之前,应将它们作为完整规则集测试。

2. 品种、图表与时钟

使用 EUR/USD H1 Bid 图表。记录经纪商服务器时间、夏令时惯例及 K 线开盘时间。序列中每根 K 线必须恰好在前一根之后 1 小时开始。跨越周末、缺失 K 线或交易时段缺口的候选应放弃;不要压缩缺口,使形态看起来相邻。

这里, 1 pip = 0.0001。经纪商显示的 point 可能小于 pip。区分图表价格、Bid 与 Ask。买入订单按 Ask 入场、Bid 平仓;卖出订单按 Bid 入场、Ask 平仓。示例采用 USD 账户和说明性合约条件,不是实时报价。

3. 母 K 线与严格内包 K 线

母 K 线是紧接着的上一根已收盘 K 线,绝不是为了方便选取的更旧 K 线。其振幅定义为 R = M_high − M_low。要求母 K 线振幅为 12–40 pip,包含两端值。两根 K 线都必须具有有效 OHLC 价格及非零振幅。

要求 M_low < I_low < I_high < M_high ,按完整 K 线计算,包括影线。高点或低点相等不符合此基准。内包 K 线振幅至少 3 pip,且不大于母 K 线振幅的 50%: 3 pips ≤ I_range ≤ 0.5 × R。实体颜色不是额外过滤条件;即使十字星,只要完整振幅通过这些测试,也可以符合条件。

4. 固定边界、止损与目标

内包 K 线收盘时,在下一根开盘前固定两根 K 线及全部价位。带缓冲的 Bid 边界为 U = M_high + 2 pips 与 L = M_low − 2 pips。不要看到突破后扩大母 K 线振幅。

买入的固定 Bid 止损为 SL_buy = L ,固定 Bid 目标为 TP_buy = U + 3 × R。卖出使用 2 pip 的固定点差容许值: SL_sell_Ask = U + 2 pips 与 TP_sell_Ask = L − 3 × R + 2 pips。两个卖出退出价都是 Ask,因为空头持仓按 Ask 平仓。

卖出的 2 pip 容许值是预设换算选择,不是重建的历史 Ask 数据,也不是未来点差预测。即使入场报价变化,计划目标仍然固定。3 倍振幅投射目标由作者选定;不假定也不承诺价格达到目标。报价未通过风险检查时,应放弃,不要将目标移得更远。

5. 只由下一根已收盘 K 线确认

只有紧接内包 K 线的那根 K 线可以确认候选。买入要求 B_close > B_open 与 B_close > U。卖出要求 B_close < B_open 与 B_close < L。恰好收盘在边界上不通过。影线越过边界,但收盘不符合条件,也不通过。

否决同时触及两个缓冲边界的 K 线: B_high ≥ U 同时满足 B_low ≤ L。这是基于完整 OHLC 的保守过滤,不推断先触及哪个边界。买入也应否决 B_high ≥ TP_buy 或 B_low ≤ SL_buy。卖出应否决 B_low ≤ L − 3 × R 或 B_high ≥ U;这些是保守的 Bid 图表否决条件,并非声称发生了 Ask 执行。

如果这一根 K 线失败,候选即过期。不要为更晚的突破继续保留旧母 K 线。后来的相邻母 K 线与内包 K 线组合,可以作为独立新候选记录,并使用新价位;连续嵌套内包 K 线属于不同变体,除非它独立满足这里严格的相邻组合规则。

6. 买入流程

  1. 内包 K 线收盘时,验证相邻关系、严格包含及两项振幅过滤;记录固定上边界、Bid 止损和 Bid 目标。
  2. 等待紧接着的 H1 K 线看涨收盘于上边界之上。请求订单前,应用全部 OHLC 否决条件。
  3. 检查收盘后第一个可用且可交易的报价。它必须在 60 秒内到达、点差不超过 2 pip,且 Bid 严格位于固定止损和目标之间。Ask 必须仍低于目标。
  4. 从入场 Ask 到止损 Bid 计算止损距离,从入场 Ask 到目标 Bid 计算收益距离。计入成本、预留、1.5 比率下限及仓位限制。
  5. 只允许立即尝试一次市价订单,退出价位固定。如果报价或经纪商条件不通过,应跳过候选。执行响应不确定时,任何进一步操作前先核对实际订单。

此基准在突破 K 线完成后市价入场。收盘前放置 Buy Stop 挂单、在内包 K 线高点入场,或之后回踩入场,都需要独立规则与独立测试。

7. 卖出流程

  1. 内包 K 线收盘时,记录相同的固定母 K 线振幅及缓冲边界,以及采用预设 2 pip 容许值的固定 Ask 止损和 Ask 目标。
  2. 等待紧接着的 H1 K 线看跌收盘于下边界之下。否决同时触及两边界的 K 线,以及卖出专用的 Bid 图表否决条件。
  3. 使用 60 秒内的第一个可交易报价,点差不超过 2 pip。Ask 必须严格位于两个固定 Ask 退出价之间,入场 Bid 必须仍高于 Ask 目标。
  4. 从入场 Bid 到止损 Ask 计算风险,从入场 Bid 到目标 Ask 计算收益。采用相同成本模型、1.5 比率下限及手数向下取整。
  5. 只允许立即尝试一次市价交易。保留固定 Ask 退出价;报价无效、保证金不足、交易量无效或止损距离不可接受时,跳过。结果不确定时,再次操作前先核对执行。

卖出不是把买入示例的价格标签互换。Ask 触发的退出和点差变化都很重要。回测中应获取适当 Ask 或 tick/点差数据,不要把 Bid K 线当作 Ask 止损或目标已执行的证据。

8. 报价窗口与经纪商限制

第一个可用且可交易的报价决定候选结果;60 秒是时效限制,不允许等待更好点差或入场价。报价缺失或过期、点差超过 2 pip、退出价已被越过,或比率低于 1.5,都应放弃。之后的报价不能挽救同一候选。记录信号时间、报价时间、Bid、Ask、点差及放弃原因。

发送订单前,验证实际品种的最小手数、手数步长、最大手数、可用保证金、止损距离及冻结限制。报告的止损距离为零,不一定意味着没有动态限制。不要悄悄移动止损、向上取整交易量,或反复提交结果不确定的订单。记录实际成交,以及它与评估报价的差异。

9. 固定退出与时间限制

保持初始止损和目标不变。此基准不包含加仓摊平、放宽止损、临时决定的移动退出或额外持仓。同一时间只允许该策略一笔持仓;若已有未平仓持仓,记录并跳过新信号。

若两项价格退出都未关闭交易,在第九根 H1 K 线开盘时请求市价平仓,入场 K 线计为第 1 根。因此,11:00 入场的时间退出安排为 19:00,即 8 根 K 线之后。若准确开盘报价不可用,使用该时点之后第一个可交易报价。采用先发生的有效退出,并在发送时间退出请求前核对是否已按价格退出成交。

跳空或执行不佳时,止损、时间限制及预留都不能封顶亏损。记录实际平仓报价、佣金和滑点。如果保护退出不能设置或确认,不要将持仓视为安全受保护;在测试或实盘操作流程中明确处理这一执行失败。

10. 完整买入示例

以下是某个 EUR/USD H1 交易日虚构但内部一致的 Bid K 线。未展示交易结果。时间采用经纪商服务器时间;每根 K 线所在行标明开盘至收盘区间。

步骤价格或固定值检查
母 K 线 · 08:00–09:00O 1.0812 / H 1.0830 / L 1.0810 / C 1.0826振幅 20 pips;符合母 K 线过滤。
内包 K 线 · 09:00–10:00O 1.0826 / H 1.0827 / L 1.0817 / C 1.0821振幅 10 pips;严格包含;为母 K 线振幅的 50% 。
10:00 时固定U 1.0832 / L 1.0808 / TP_buy 1.0892突破 K 线开盘前记录。
突破 · 10:00–11:00O 1.0821 / H 1.0836 / L 1.0820 / C 1.0834看涨收盘高于上边界;没有否决。
第一个报价 · 11:00Bid 1.0834 / Ask 1.0836点差 2 pips;只评估一次。
固定买入退出价SL_Bid 1.0808 / TP_Bid 1.0892入场使用 Ask;退出使用 Bid。
假设的 EUR/USD H1 内包K线示例,展示三根已完成K线、固定边界、入场报价、止损、目标与事件时间。
说明性价格,并非交易结果。母 K 线振幅为 20 pip;内包 K 线振幅为 10 pip。突破于 11:00 收盘。入场使用 Ask 1.0836;多头持仓的止损和目标采用 Bid 1.0808 和 1.0892。不暗示未来价格路径。

母 K 线振幅为 20 pip。内包 K 线振幅为 10 pip,恰好是母 K 线的 50%,两个极值均严格位于母 K 线内部。10:00 时,缓冲边界固定为 1.0832 和 1.0808。固定买入目标为 1.0892,在突破 K 线开始前记录。

第三根 K 线看涨收盘于 1.0834,高于 1.0832。其高低点均通过否决检查。11:00 时第一个可交易报价为 Bid 1.0834 / Ask 1.0836。2 pip 点差通过上限检查。入场使用 Ask,因此止损距离为 28 pip,目标距离为 56 pip,尚未计入额外建模成本。

11. 各步骤可用的信息

不要利用最终突破 OHLC、之后的点差或交易结果,事后选择母 K 线或目标。

服务器时间当时已知的信息允许的操作
09:00母 K 线已完成。观察下一根 K 线;尚不入场。
10:00内包 K 线已完成并符合条件。固定振幅、边界及退出价位。
11:00突破 K 线已完成并符合条件。获取第一个可交易报价。
11:00:00第一个报价通过成本和仓位检查。尝试一次市价交易;入场小时的 K 线编号为 1。
19:00自入场小时开始,已过去八根 H1 K 线。若仍有持仓,在第一个可交易报价执行时间退出。
任何检查未通过后候选交易已过期。记录原因;不要重新启用其固定价位。

12. 成本、收益风险比与手数计算

此图例采用 USD 10,000 净值、0.5% 的 USD 50 预算、100,000 EUR 的 EUR/USD 合约大小、每标准手每 pip 为 USD 10,以及 0.01 的手数步长和最小手数。往返佣金为每手 USD 7。这些是示例输入;实际交易计算仓位前,应从经纪商获取真实品种属性及以账户币种表示的 pip 价值。

为不利入场执行预留 1 pip,为不利退出执行预留 1 pip,共 2 pip。D 是止损距离,G 是目标距离,均以 pip 表示,并按正确的入场和退出报价侧测量。模型为 risk_per_lot = (D + 2) × 10 + 7 与 reward_per_lot = (G − 2) × 10 − 7。要求建模收益为正,且 reward_per_lot / risk_per_lot ≥ 1.5。点差已通过 Bid/Ask 距离计入;不要再次计入。

计算示例值含义
风险预算10,000 × 0.005 = 50 USD示例净值的 0.5%。
止损距离(1.0836 − 1.0808) / 0.0001 = 28 pips从买入 Ask 到止损 Bid。
目标距离(1.0892 − 1.0836) / 0.0001 = 56 pips从买入 Ask 到目标 Bid。
毛收益风险比56 / 28 = 2.00尚未计入预留及佣金。
每手风险(28 + 2) × 10 + 7 = 307 USD止损距离加预留及佣金。
每手收益(56 − 2) × 10 − 7 = 533 USD目标距离减预留及佣金。
成本调整后的收益风险比533 / 307 ≈ 1.74通过 1.5 下限。
原始交易量 → 有效交易量50 / 307 ≈ 0.1629 → 0.16 lot向下取整至 0.01 步长。
建模持仓风险307 × 0.16 = 49.12 USD在 USD 50 预算内。
建模持仓收益533 × 0.16 = 85.28 USD假设固定目标执行时的预测;并非实际结果。

原始交易量向下取整为 0.16 手。其建模风险为 USD 49.12;0.17 手建模风险为 USD 52.19,超过 USD 50 预算。如果最小有效交易量仍超过预算,则跳过。此算术估算风险敞口;预留不是保证的最大亏损。

如果实际成交不同,应重新计算风险敞口,并记录执行偏差,不放宽固定退出价位。确定性测试必须说明如何处理超过预算的成交或无保护持仓;不要假装请求价格就是成交价格,以此隐瞒问题。

13. 必须跳过的示例

情况规则检查决策
第一个报价 Bid 1.0834,Ask 1.0836533 / 307 ≈ 1.74;点差 2 pips。只有其他所有检查均通过,才符合条件。
第一个报价 Bid 1.0838,Ask 1.0840493 / 347 ≈ 1.42;点差仍为 2 pips。跳过:成本调整后的比率过低。
突破收盘于 1.0832收盘价等于上边界。跳过:未满足严格突破条件。
突破 K 线触及两个缓冲边界适用同时触及两边界的 OHLC 否决。跳过:不要推断盘中先后顺序。
第一个报价的点差为 3 pips超过 2-pip 上限。跳过:不要等待更窄点差。
第一个可交易报价在收盘后 61 seconds 到达超过 60-second 限制。跳过:候选交易已过期。

如果已记录日历中有信号收盘前后 15 分钟内计划发布的高重要性 EUR 或 USD 数据,也应跳过新信号。测试前选择日历、事件分类及时区,保留该快照,并明确处理日历数据缺失。此入场过滤不会改变现有持仓的固定退出价位。

14. 测试完整基准

记录每个符合条件的相邻组合,包括取消的候选及各自原因。初次评估时固定阈值和目标投射。将开发数据与之后未动用的评估数据分开,并涵盖不同波动和点差条件。查看结果后修改阈值,应视为需要重新评估的新变体。

当两个退出价都在一根 H1 OHLC K 线范围内时,无法仅凭它可靠确定执行顺序。使用适当低周期或 tick 数据,配合 Bid/Ask 或点差记录;标记未解决情况,不要分配有利结果。历史 Bid K 线本身不足以证明 Ask 触发的卖出退出。

MT4 的 Every tick 模式可能在 OHLC 控制点之间插值;测试器可能使用设置的点差模拟 Ask,而不是历史可变点差。记录建模方式、数据缺口、点差、佣金、滑点、新闻日历可用性及经纪商限制。报告交易数量、净结果、回撤、成本敏感性及执行歧义。本文未进行业绩回测,因此不提供测得的胜率或盈利声明。

15. 常见实现错误

  • 只使用 K 线实体、允许极值相等,或为了让形态符合而选择更旧的母 K 线。
  • 影线触及时入场,或让失败候选超出唯一允许的突破 K 线继续有效。
  • 看到入场价后才计算目标,或向外移动目标,让不足的收益风险比通过。
  • 使用 Bid 作为买入价,或假设 Bid 高点能证明 Ask 触发的空头持仓止损已执行。
  • 忽略成本、重复计入点差、向上取整交易量,或把执行预留当作亏损保证。
  • 重试状态不确定的订单、重叠持仓,或从有歧义的 H1 数据中选择有利退出顺序。

16. 入场前检查清单

  1. 三根相邻、已收盘的 H1 Bid K 线、有效 OHLC 及已记录的经纪商时钟。
  2. 母 K 线振幅 12–40 pip;完整范围严格包含;内包 K 线振幅至少 3 pip,最多为母 K 线的 50%。
  3. 内包 K 线收盘时固定缓冲边界、止损及投射目标。
  4. 恰好下一根 K 线按方向收盘越过要求的边界,并通过全部否决检查。
  5. 第一个可交易报价在 60 秒内,点差最多 2 pip,退出价未被越过且有效。
  6. 成本后收益为正,比率至少 1.5,交易量有效且向下取整,保证金足够。
  7. 日历过滤通过、没有现有策略持仓、立即尝试一次,并有明确的不确定成交处理流程。
  8. 已准备保护退出、8 根 K 线时间限制,以及完整信号、报价和成交日志。

17. 内包 K 线常见问题

内包 K 线必须与母 K 线同色吗?

不必。此基准过滤完整振幅,不过滤母 K 线或内包 K 线实体颜色。下一根已收盘突破 K 线提供方向条件。符合条件的收缩本身不预测盈利行情。

高点或低点可以等于母 K 线极值吗?

在这里不可以。严格包含排除相等。允许相同高点或低点的规则属于不同变体,不应混入此基准结果。

连续出现多根内包 K 线时怎么办?

原候选仍然只有紧接着一根 K 线可以确认。过期后,新的相邻母 K 线与内包 K 线组合可以用新价位独立符合条件。保留原母 K 线用于多根 K 线压缩,是另一种策略变体。

收盘突破是否证明优势?

不是。它只定义可重复触发。只有包含执行成本及未动用评估数据的适当测试,才能评估此基准;历史结果仍不保证未来表现。

18. 资料及适用范围

下方原始资料支持形态定义及平台机制,但不验证本文阈值、投射目标、过滤条件或预期表现。

19. 区分收缩与执行

母 K 线和内包 K 线定义收缩。紧接着一根完整 K 线可以确认;之后一个新鲜报价决定固定计划是否仍符合预算。任何条件失败,就跳过并保留原因。本文有用的输出是可一致测试的规则集,不是承诺突破会达到目标。