大K线可能是行情起点,也可能已经耗尽剩余空间。本模型用形成前已知的波动尺度评估它,等待下一根收盘小幅延续,并拒绝成本过高的首个报价。不会事后挑选一根更漂亮的扩张K线。所有示例数据均为虚构。
1. 这个模型研究什么?
该假设研究价格从平静序列转向方向性扩张的过程。不要求突破固定区间、重新进入通道,也不要求两根逆势回调K线。与 MACD/ATR 首次动量转折模型不同,这里的 ATR 用于候选质量和目标尺度,EMA 提供方向。看起来强劲的一根K线并不足够。本文不声称存在实测优势,也不是可直接运行的 EA。
使用按计划连续排列的 M5 Bid OHLC,以及基于收盘价的已完成指标。虚构 EURUSD 合约为 pip=0.0001; point=tick=0.00001。实际使用须遵守可执行 tick 和合约规格。真实 SELL 验证需要对应的实测 Ask 数据;将当前点差加到历史 Bid 上不能重建历史 Ask。这是可复现的研究基准,不是实盘设置。
2. 明确 EMA、真实波幅与 ATR 均值
以最初二十个收盘价均值作为 k19 的 EMA20 初值,随后使用 EMA20(k)=[2×Close(k)+19×EMA20(k−1)]/21。真实波幅从 k1 开始:TR(k)=max(High−Low,abs(High−PreviousClose),abs(Low−PreviousClose))。从 k14 定义 ATR14_SMA(k)=mean(TR(k−13)..TR(k))。这是算术平均,不是 Wilder 递推。EMA 初始化前不可用;ATR 为零或缺失时不能分类K线。
显示舍入前先比较完整精度。已有三根之前 EMA 值的 j 根K线,须同时满足 TR_j<=1.10×ATR_j; abs(EMA_j−EMA_(j−3))<=0.10×ATR_j; abs(Close_j−EMA_j)<=0.50×ATR_j 才属于平静。每项使用该根已完成的 ATR 与 EMA。MT4 的 ma_shift 是图上线条偏移,最后的 shift 则选择历史缓冲值;shift 0 是未收盘K线。声称与原生指标一致前,应核对时间戳和初始化。
3. 六根平静K线就绪,首个离开平静的事件即消耗机会
统计连续平静K线。达到六根后就绪;每增加一根平静K线,都更新最新锚点 Q 并固定 B=ATR14_SMA(Q)。随后首根非平静K线就是 S,立即消耗机会,不论其过小、过大、处于时段外或没有方向。模型不是寻找首根“质量合格的大K线”。持续平静只更新 Q,不产生入场。
S 之后必须重新出现连续六根新的平静K线。时段外、持仓或未解决请求阻止入场时也要跟踪状态。被拒报价、之后的大K线或新小时都不能恢复旧机会。缺失或无效K线使待确认信号作废并暂停新仓;先重建连续历史和新的平静状态。重启后核对归属并重放状态,不发送历史信号。
4. 用旧基准判断首根扩张是否合格
S 必须满足 1.80<=TR_S/B<=2.40; abs(Close_S−Open_S)/TR_S>=0.75。开盘应接近 Q:abs(Open_S−Close_Q)<=0.10×B。BUY 要求阳线、收盘高于自身 EMA20,且 EMA20 高于三根前的值;SELL 反向比较。方向条件不接受相等。ATR_S 仅为诊断值,绝不替换固定分母 B。
收盘须接近方向性极值:BUY: (Close_S−Low_S)/(High_S−Low_S)>=0.80; SELL: (High_S−Close_S)/(High_S−Low_S)>=0.80。S 和下一根计划 C 都必须在 [07:00,10:00) UTC 内收盘,并核实该日期的经纪商时间到 UTC 的换算。上限有意排除冲击性大K线。这个时段不等于新闻过滤,全部数值阈值均为未经优化的研究假设。
| UTC 时间 | EMA20 | ATR,pip | 固定 B,pip | TR / B |
|---|---|---|---|---|
| 07:55 / Q | 1.10000000 | 4.000000 | 4.000000 | 1.00 |
| 08:00 / S | 1.10006095 | 4.285714 | 4.000000 | 2.00 |
| 08:05 / C | 1.10012086 | 4.114286 | 4.000000 | 0.40 |
5. 固定实体止损与波动尺度目标
在 S 时,BUY 固定 S_bid=floor_tick((BidOpen_S+BidClose_S)/2−0.2 pip); T_bid=floor_tick(BidClose_S+3×B);SELL 固定 S_ask=ceil_tick((AskOpen_S+AskClose_S)/2+0.2 pip); T_ask=ceil_tick(AskClose_S−3×B)。止损向外舍入,目标向内舍入。SELL 使用实测 Ask 开盘与收盘;示例的恒定点差是虚构的。缺少所需 Ask 观测时不能入场。
止损取 S 实体中点加缓冲,不是 ATR 止损,也不是 S 的影线端点。目标从对应报价侧的 S 收盘投影三个扩张前 ATR 单位,不是入场风险的三倍。C、新 ATR、报价或成交都不改变水位。这些是后续保护和目标,不能把止损当成在 S 形成期间已经生效。
| 方向 | 止损 | 目标 | 实体中点 |
|---|---|---|---|
| BUY | 1.10030 | 1.10184 | 1.10032 |
| SELL | 1.10116 | 1.09962 | 1.10114 |
6. 只允许一次适度的后续推进
C 必须正好是下一根计划 M5 收盘。先检查 C 是否触及任一固定退出位:BUY 为 Bid 低点不高于 S 或高点不低于 T;SELL 为 Ask 高点不低于 S 或低点不高于 T。触及时取消。随后要求同方向实体、收盘位于自身 EMA20 正确一侧,以及相同的严格三根 EMA 斜率条件。C 缺失不能用后来的K线代替。
令方向为 d=+1 for BUY; d=−1 for SELL,要求 0<d×(BidClose_C−BidClose_S)<=0.25×B; TR_C<=B。推进为零不合格,过度延伸也不合格。C 不必是内包线,也不必突破历史区间。挂单、第二根确认或后来的新扩张都不能修复失败。下一次机会必须形成自己的六根新平静K线。
7. 首个观察到的报价只评估一次
在 C 计划收盘后观察到的首个本品种报价时,C 的已完成数据必须已经可用。要求 Bid/Ask 为正且顺序正确,并满足 spread<=1.0 pip; abs(Bid_ref−BidClose_C)<=0.5 pip; own_symbol_receipt_age<=250 ms。接收年龄是本地测量的经过时间,不是用服务器时间戳推测的网络延迟。首个报价不合格即消耗候选,后来的便宜报价不算数。
最多在 C+1 second 前(含边界)提交一次初始带保护市价请求。没有及时报价则过期。发送前立即复查当前报价、接收年龄、净比率、首次确定的同一数量、金额上限、归属、保证金、权限、最小手数和经纪商止损限制。如果不能随单提交固定 SL/TP 就放弃。不得改数量、放宽水位、等待改善或改用挂单补救。
8. BUY:旧波动尺度与新价格信息
示例中 Q 在 07:55、S 在 08:00、C 在 08:05 UTC 收盘。Q 为 EMA20_Q=1.10000; B=0.00040=4 pips;S 为 O/H/L/C=1.10000/1.10072/1.09992/1.10064; TR_S=8 pips; TR_S/B=2.00; body/TR=0.80。其 EMA20 为 1.10006095,ATR_S 升至 4.285714 pip,但 B 仍是四。
C 收于 1.10069,继续推进 0.5 pip,TR 为 1.6 pip。固定退出位为 S_bid=1.10030; T_bid=1.10184。首个报价为 08:05:00.100; Bid/Ask=1.10069/1.10077; F_plan=1.10079。.300 提交保护请求,距接收 200 ms;服务器在 .450 以 1.10078 成交,.500 回执。计划预留与实际成交价不能混同。
9. SELL:相同 Bid 分析,不同 Ask 退出
独立 SELL 分支将 Bid K线镜像,EMA20 斜率为负。S 的 Bid 开盘/收盘为 1.10138/1.10074,对应 Ask 为 1.10146/1.10082,因此 S_ask=1.10116; T_ask=1.09962。指标仍使用 Bid;Ask 决定 SELL 保护和退出测试。相同 ATR 幅度不表达方向。
C 的 Bid 收盘为 1.10069。首个 Bid/Ask 仍为 1.10069/1.10077,但 SELL 计划 F_plan=1.10067,实际成交 1.10068。Ask 目标 1.09962 只有在虚构恒定点差下才对应 Bid 1.09954。双向成本相同是人为构造的对称性,不是实盘表现相同的证据,也不是可靠的历史 Ask 重建方法。
10. 分别展示独立失败
first_nonexpansion 中,首根非平静 S 为 TR_S/B=1.60,低于下限。08:10 的更大K线不能替代它,因为没有六根新平静K线重置。oversized_expansion 的 TR_S/B=2.80 高于上限。late_confirmation 的 C 正好收于 S 收盘 1.10064,推进为零;08:10 的 1.10069 已太晚。
bad_first_quote 中 Bid 1.10069 与 Ask 1.10080 产生 1.1 pip 点差。虽然净 W/L 仍高于 1.50,点差检查仍失败;.200 的改善不恢复资格。这些是互相独立的虚构分支。被拒行没有新仓请求、交易手数或已实现损益。诊断参考价和假设数量不是成交,也不是零收益交易。
11. 按入场价要求足够的净空间
假设 USD 账户、每手 EUR 100,000,且 pip_value=$10/lot; equity=$10,000; new_risk=0.25%=$25; aggregate_risk<=0.50%=$50。F_plan 含 0.2 pip 不利入场预留:BUY 加在 Ask 上,SELL 从 Bid 扣除。再预留 0.2 pip 退出滑点和 0.7 pip 按数量线性收取的往返佣金,无最低或额外费用,故 c=0.9 pip。BUY 使用 L=(F_plan−S_bid)/pip+c; W=(T_bid−F_plan)/pip−c;SELL 反向计算价格距离。点差已由报价侧体现。
要求 L 和 W 均为正且 W/L>=1.50。普通报价得到 L=5.8; W=9.6; W/L=1.6551724。没有其他敞口时,lots=floor_step(min(25,50−existing_risk)/(L×10),0.01)=0.43,计划风险 $24.94、目标 $41.28。另一种首个报价 1.10073/1.10081 通过点差和偏离检查,却得到 L=6.2; W=9.2; W/L=1.4838710,任何数量都应拒绝。总风险未知或数量低于最小值时也暂停入场;不为已有自有持仓加仓或对冲。
| 报价 | 损失,pip | 回报,pip | 净 W/L | 结果 |
|---|---|---|---|---|
| 1.10069 / 1.10077 | 5.8 | 9.6 | 1.6551724 | 通过 |
| 1.10073 / 1.10081 | 6.2 | 9.2 | 1.4838710 | 失败 |
12. 管理全额退出与独立时间上限
BUY 在 Bid<=S_bid OR Bid>=T_bid、SELL 在 Ask>=S_ask OR Ask<=T_ask 时全额退出。否则在 min(C+15 minutes,10:00 UTC) 起的首个有效报价请求全平,时间从 C 而非成交算起。另发平仓请求前先核对经纪商是否已经执行退出。持仓管理不等待入场用点差或指标过滤。没有移动止损、部分平仓或目标延长。
目标分支在 08:10:10 触及正确报价侧,得到 10.6−0.7=9.9 net pips; $42.57。未使用的预留不作为费用扣除。跳空分支从 Bid 1.10060 跳至 1.09990 并在此退出,得到 −9.5 net pips; −$40.85,超过计划。时间分支的首个到期报价是 08:20:00.200,.350 在 Bid 1.10055 成交得到 −3.0 net pips; −$12.90。计划风险不是已实现亏损上限。
| 结果 | 净 pip | 净 USD |
|---|---|---|
| BUY / 目标 | 9.9 | 42.57 |
| SELL / 目标 | 9.9 | 42.57 |
| BUY / 跳空 | -9.5 | -40.85 |
| 退出 / 15 min | -3.0 | -12.90 |
| 请求 / 128 | 9.9 | 42.57 |
13. 结果未知时先核对再考虑新请求
timeout_reconciled 中,08:05:00.300 的请求在服务器 .450 成交,08:05:01 返回错误 128,08:05:02 才发现带保护持仓。超时不证明失败。暂停新仓,按标识、品种、方向和数量核对自有持仓、挂单与历史。订单注释不保证幂等性,绝不盲目补发新仓。
确认归属的成交若缺少固定保护或保护错误,预定故障处理是在有效报价和权限允许时只请求一次市价全平,之后告警并核对被拒或结果未知的请求。不盲目重复平仓,不碰无关持仓。重启后恢复归属、已接受保护、未解决请求和平静状态。禁止新仓不会停掉已有敞口管理。
14. 认识可能击败模型的市场状态
平静序列可能接着出现假扩张,大方向实体可能耗尽行情。小幅延续不证明后劲。EMA 滞后并重复利用形态已有价格;ATR 衡量尺度,不是方向或独立确认。实体中点止损可能位于正常噪声内。成本、变化的 Ask 路径、经纪商限制和跳空都能使漂亮的 Bid 图失效。
基准不含自动新闻禁入。新闻版本须事先声明完整的暂停窗口、点差恢复与新信号规则,包括已消耗和重置状态。除了亏损,还要比较错失机会与真实成本。不同平滑、平静条件、扩张上限、时钟或退出属于独立变体,不能看见结果后修改。
15. 先复现机制,再研究表现
三个 CSV 包含 822 bars; 2,010 events; 10 independent branches,由五个拒绝与五个备选入场组成。它们是人工机制演示,不是市场历史、同时持仓或胜率样本。入场后声明的一秒报价流及明确终点报价构成完整观测。分析用收盘标记不代表可成交报价。毫秒为虚构本地测量,不表示 MT4 原生服务器精度。没有融资或其他费用。
独立重算 EMA/TR/ATR、逐根平静条件、最新 Q 和首个被消耗的离开事件。核对扩张前 B、S 品质、正确报价侧固定退出、唯一 C、首个报价、全成本、数量和时序触发。包括五根与六根新平静线、ATR 零、跳空、等号、C 缺失、旧报价、过期、敞口未知、重启与超时。市场研究还需未使用期间、实测 Bid/Ask 和真实执行约束。这些 CSV 只验证机制。
16. 使用有限执行清单
确认连续已收盘数据和核对完毕的归属。数到六根平静K线,并在继续平静时更新 Q。质量和时段检查前先消耗首根非平静 S,用 Q 固定的 B 衡量。固定实体止损和三 B 目标。只检查计划 C,先看是否触及退出位,再看严格方向、有限推进和 TR。首个报价只判断一次,计算正的净空间和有效固定手数。
唯一带保护请求前复查执行与金额限制;核对结果并按独立时钟管理全平。失败后等待新的六根平静线,而非恢复旧足。记录全部拒绝、未知结果和成本。该规则使假设可检验,不证明正期望、保证亏损上限或适合实盘的设置。
常见问题
ATR 上升是否表示应该买入?
不是。ATR 测量幅度,方向来自 S/C 实体、EMA 位置和严格斜率。B 在 S 前固定,S 不能重定义评估自身的尺度。
首根非平静K线过小可以忽略吗?
不可以。首次离开平静就已在质量检查前消耗尝试。后面更大的K线需要新的连续六根平静线及自己的独立机会。
止损是 ATR 倍数或 S 的影线吗?
都不是。它是退出报价侧的 S 实体中点加向外缓冲。目标从对应 S 收盘投影三个此前 ATR 单位,不是三倍入场风险。
确认必须是内包线或突破区间吗?
不是。正好下一根收盘须在幅度上限内严格延续,同时满足同方向实体、TR 限制和 EMA 条件。先触及固定退出位则取消。
减小手数能挽救成本过高的入场吗?
不能。在声明的线性费用下,数量改变金额敞口,不改变 W/L。净比率不足的首个报价即使点差合格也应拒绝。
CSV 损益是已验证的策略表现吗?
不是。它们是独立虚构机制分支,不能证明期望、胜率或实盘适用性;跳空也说明计划风险不是亏损上限。
来源与研究说明
官方资料说明均线、真实波幅、指标偏移与订单参数。初始化、平静条件、阈值、时段、退出和价格均为原创研究假设,并非厂商建议或已验证的交易参数。
- MetaTrader 4: moving average definitions
- MetaTrader 4: true range and ATR
- MQL4: protected market-order parameters
教育研究假设。价格与执行均为虚构,不包含验证业绩、实盘设置或保证的亏损上限。