Stochastic处于高位,可能伴随价格走强,而不是预告反转。本研究模型检验的是:首次进入强动量区后,价格在期限内突破,能否构成值得评估的信号样本。指标起点、固定区间和首次突破属于不同时间节点。以下行情、报价及金额均为虚构。
1. 明确独立的动量突破假设
本模型研究强动量区的新进入事件及其后续价格突破。已有的Stochastic回调策略则等待指标从相反的极端区域恢复,入场对象不同。本模型不要求EMA趋势过滤、背离枢轴或新的K/D交叉。
使用EUR/USD H1 Bid OHLC,单一账户须空仓,且没有待处理或结果不明的请求。持续观察每次收盘;重启后跳过错过的起点。参数及阈值只是研究选择,不是优化结果,也不证明存在优势。
2. 固定Stochastic的准确算法
采用(n, s, d) = (14, 3, 3)、Low/High价格字段及零显示位移。本例1 pip = 0.0001; point = tick = 0.00001。对每根已收盘K线先算R[t] = 100 × (Close[t] − LL14[t]) / (HH14[t] − LL14[t]),再算K[t] = SMA3(R)[t]; D[t] = SMA3(K)[t]。区间为零时R不可用;任何含不可用输入的平滑窗口也不可用。
这里取原始比例的简单平均。MetaQuotes公开示例采用距离之和与区间之和的比值,结果可能不同;CSV中的比较列不参与本策略决策。原始值、K、D首次分别出现于k = 13, 15, 17。区域起点最早可在k = 17检验,因为它只需前一K和当前D,不需前一组D值。支撑计算的18根K线均须有效,且时间逐小时连续。
3. 建立唯一的新强动量区起点P
BUY要求K[P−1] ≤ 80 ∧ K[P] > 80 ∧ K[P] > D[P];SELL要求K[P−1] ≥ 20 ∧ K[P] < 20 ∧ K[P] < D[P]。持续处于极端区域不是新起点,当前值恰等于阈值也不成立。已有活动机会或持仓时忽略新起点。
在P固定U = max(High[P−5 … P−1]); L = min(Low[P−5 … P−1])及W = U − L; 8 ≤ W / pip ≤ 30,并要求L < Close[P] < U。参考区间不含P本身。若起点已收在区间外,直接拒绝,不能重新解释为后续突破。P整根K线还须严格位于计划止损边界以内。
4. 三根内只处理首次突破
只有q ∈ {P+1, P+2, P+3}可能合格。检查价格前,若缺数据、小时序列中断、UTC收盘日期改变、触及止损边界或动量丢失,先取消。途中每根K线均须满足:BUY为K[q] > 80 ∧ K[q] > D[q],SELL为K[q] < 20 ∧ K[q] < D[q]。相等也取消。
BUY检查首次严格高于U的收盘,SELL检查首次严格低于L的收盘。实体须与方向一致,超出边界的幅度须为1 ≤ overshoot_pips ≤ 3。首次外侧收盘只要有一项失败,本轮机会即结束。恰在边界收盘仍算区间内。在P+3先检查有效突破,再判到期;后续K线不能补救首次弱突破,也不能延长期限。
5. 从原始区间固定保护价
采用BUY: SL = L − 1 pip; TP = U + 2 × W与SELL: SL = U + 1 pip; TP = L − 2 × W。这些价位在P时已知,此后保持不变。起点及每根等待K线均须满足:BUY最低价严格高于SL,SELL最高价严格低于SL。一旦触及,先取消,再谈突破资格。
两组行情均为Bid OHLC。BUY的SL/TP按Bid判断;SELL的SL/TP是从固定Bid区间数值推导的Ask阈值,并非实测Ask摆动极值。价格须符合实际最小跳动,保护方式须受支持。不能为放行不利报价而扩大止损或移动目标。区间投射距离不等于实际净风险的两倍。
6. 区分首个报价与发送期限
q可用后,恰好处理观察到的首个双边报价。Bid/Ask须为正且顺序正常,发送时有记录的报价年龄须为0 ≤ age_seconds ≤ 2,请求须严格早于q.close_UTC + 20 seconds。预检期间报价必须不变,否则取消。到期前没有首个报价,也不入场。
仅允许在08:00 ≤ t_UTC < 16:00发送。本例q覆盖09:00–10:00 UTC,首报价在10:00:02,请求在10:00:03,假定成交在10:00:04。10:00:20 UTC发送已太晚。发送前再次检查时间,并用相容的时钟计算报价年龄。这些秒数约束尚未发送的请求,不是经纪商挂单的到期字段。
7. 检查可执行报价侧及完整成本
点差不超过1.2 pips;BUY的Bid须严格高于U,SELL的Ask须严格低于L,相关退出侧报价须严格位于SL与TP之间。计划BUY E* = Ask + 0.2 pip; SELL E* = Bid − 0.2 pip,从q.close到E*的有向距离须落在含端点的0 … 2 pips。E*是计算仓位时的预留价格,不是可直接执行的请求价格。
从E*计算正的止损与目标距离。将往返佣金、未来退出预留及融资预留加到计划损失,并从收益扣除,要求G_net / L_net ≥ 1.5。本例使用commission = 0.6 pip; exit reserve = 0.4 pip; financing reserve = 0。适用成本、合约、保护或保证金不明则拒绝。点差及入场预留已计入E*,不能重复扣减。
8. 复算BUY起点与首次突破
在P = 40,前一K为75,当前K为85,D约73.888889。固定区间为L = 1.10000; U = 1.10200; W = 20 pips,P收于1.10180,仍在内部。首次外侧收盘是q = 41; Close[q] = 1.10210,高于U一个pip,且实体向上。K约88.768116,D为82.922705。
保护价保持Bid SL = 1.09990; Bid TP = 1.10600。首报价为Bid 1.10210 / Ask 1.10220,计划E*为1.10222。毛风险23.2 pips,毛收益37.8。计入合计一个pip的成本预留后得到L_net = 24.2 pips; G_net = 36.8 pips,比值为36.8 / 24.2 ≈ 1.520661。经纪商许可和实际执行另作假定。
9. 拒绝首次弱突破,不借用下一根K线
独立的弱突破行情使用相同起点和固定区间。首次外侧收盘为1.10205,只高于U 0.5 pip。K仍在高位区域,实体也向上,但未达到至少一个pip的要求,因此本轮机会立即结束。
下一根收于1.10220,突破两pips,但不能修复前面的失败。K持续高于80不产生新起点。只有以后独立的新阈值穿越、新有效参考区间及空仓账户同时满足,才能开始另一轮。拒绝是模型规则,并不证明后续行情无法交易。
10. 分开看待独立的报价备选情景
被接纳的BUY报价通过比值门槛。独立备选的计划入场若为E* = 1.10224,则36.6 / 24.4 = 1.5,等号通过。若为E* = 1.10225,净收益36.5 pips、计划损失24.5,得到36.5 / 24.5 ≈ 1.489796;即便点差和入场距离合格,也要拒绝。
另一个独立情景的首个点差为1.3 pips,即使比值合格也失败。各行是不同的首次观察假设,不是一串可挑选更好价格的后续报价。坏报价、到期或明确拒绝后,不重试同一突破。任何结果不明的请求,都要在允许新机会前先核对。
| 方向 | 计划E* | 固定SL | 固定TP | 净损失pips | 净收益pips | 净比率 |
|---|---|---|---|---|---|---|
| BUY | 1.10222 | 1.09990 | 1.10600 | 24.2 | 36.8 | 1.520661 |
| BUY | 1.10225 | 1.09990 | 1.10600 | 24.5 | 36.5 | 1.489796 |
| SELL | 1.09787 | 1.10010 | 1.09400 | 23.3 | 37.7 | 1.618026 |
11. 镜像SELL,同时单独检查Ask
按price_sell = 2.20000 − price_buy反射BUY价格。其起点K低于20,q收于1.09790,低于固定下沿1.09800。保护价为Ask SL = 1.10010; Ask TP = 1.09400。独立报价Bid 1.09790 / Ask 1.09800虽然净比值合格,却因Ask恰在边界而被拒绝。
可接纳的SELL备选为Bid = 1.09789; Ask = 1.09799; E* = 1.09787。计划损失23.3 pips、收益37.7,得到37.7 / 23.3 ≈ 1.618026。Bid行情镜像并不意味着BUY/SELL成本相同,也不能证明Ask触及SELL退出价。可执行侧行情须单独记录。
12. 确认成交并处理未知请求
最多发送一次市价入场请求前,检查实际tick、手数步长、可用保证金、保护限制及账户状态。使用当前允许的报价侧,不能用虚构E*预留价替代。突破合格和数值计划获准,都还不是确认订单。
确认订单号、实际成交、数量和保护。超时可能掩盖已经成交的订单,因此应核对而非重发。若成交违反原计划或保护失败,停止新入场,确认真实持仓,并在不扩大原止损的前提下寻求可执行平仓。全部成本均须计入;预留及预算不能保证真实损失上限。
13. 从完整计划损失向下取整仓位
假设USD账户、每手EUR 100000合约、每手每pip USD 10、预算USD 25、步长0.01手。BUY计划损失24.2 pips即每手USD 242:floor((25 / 242) / 0.01) × 0.01 = 0.10 lot。计划金额损失为USD 24.20,目标条件收益为USD 36.80。
SELL损失23.3 pips也允许0.10 lot,计划损失USD 23.30,目标条件收益USD 37.70。实际合约、账户货币折算及保证金须另行核验。若最小手数也超预算,则跳过。该金额只是示例,并非建议风险额度。
14. 先定义退出,再解释条件损益
SL/TP保持固定。入场后,只要已收盘K线不再满足方向动量条件,就在首个可执行报价尝试退出;所需数据不可用也触发核对与退出尝试。另设q.close_UTC + 4 h独立时间退出,本例为14:00 UTC。计时从突破收盘开始,不从较晚成交开始。退出未确认时保护仍有效。
假定BUY成交1.10222、0.10手,在已说明预留下,独立目标及止损情景分别为USD +36.80和USD −24.20。另一个时间情景假设没有更早退出:Bid 1.10450、退出成交1.10446、佣金0.6 pip,得到21.8 net pips = USD 21.80。若一根OHLC同时覆盖两保护边界而无报价先后记录,应记为未解决。持仓或请求尚未核清时识别的信号不能用于立即反向开仓。
15. 复算三个文件,不虚构回测
第一个CSV含三组虚构H1行情,共240行:BUY、镜像SELL及首次弱突破拒绝。K/D由声明的完整OHLC计算。合计比值列仅作比较。所选起点的过程只是信号演示,不是连续账户模拟。
其余文件包含七个独立报价计划及五个条件退出。在精确有理数比较后,CSV显示才保留12位小数。只用每个事件当时已知信息复算,并保留失败、缺失观察和未确认成交。不能从这些构造情景推导实际交易、胜率或实测收益。
16. 用未使用数据和成本检验假设
评估前固定数据规则、参数、事件顺序及执行假设。统计全部合格起点与已结束机会。测试震荡、快速反转、首次弱突破、时间缺口、成本上升、融资估计不明及执行不确定性,不能只选漂亮例子。
使用有代表性的历史Bid/Ask记录、未参与筛选的评估样本和前向观察。比较邻近参数,但不能把事后最佳参数当作证据。指南解释指标,本文补充一种明确的突破假设。可复算仅证明内部一致,不证明预测价值。
常见问题
Stochastic已经高于80,为什么还考虑BUY?
本假设把首次进入高位区视为可能走强,随后仍要求期限内的价格突破。它不声称高指标读数能使入场盈利。
必须出现新的K/D交叉吗?
不必。BUY要求K>D,SELL要求K
更强的第二次突破能替代首次弱突破吗?
不能。首次区间外收盘即处理本轮机会,实体或幅度不合格也已结束,后续K线不能补救。
相同14/3/3输入总与MetaTrader一致吗?
不一定。这里取原始位置比例的平均;合计比值平滑、不同数据源或价格字段都可能改变K/D。须核验实际安装版本。
Bid已破下沿,SELL为什么仍可能失败?
Ask也必须严格低于固定下沿。只有Bid不能证明可执行Ask条件,更不能证明SELL已退出。
金额结果是实测业绩吗?
不是。它们是虚构K线和假定报价、成本、成交下的独立条件计算。真实损失可能超过预留。
来源与研究说明
TradingView说明原始比例平均算法;MetaQuotes公开示例说明合计比值平滑。起点、固定区间、首次突破期限、成本门槛及虚构案例均为独立研究选择。两项参考资料均未验证本策略业绩。
教学研究假设。采用虚构OHLC、独立报价计划及条件退出,不包含实测交易业绩、连续账户回测、已测优势或保证。