CAT researchOverviewEURUSDGBPUSDXAUUSDGBPCADEURCADAUDJPYGBPJPYResearch notes

entry5m v7 — v3 with an indicator-based take-profit (opposite-side H1 triangle): pre-registration

Status: pre-registered 2026-09-07 (commit 937652c), built (1f8c09c) and run the same day; verdict: FAIL, 0 of 3 groups (see research/2026-09-07-entry5m-v7-opptri-screen.md). The Pine input (section 4) is built regardless. Parent: v3 2026-09-06-entry5m-v3-fixed3r-prereg.md (FAIL 1/3: EURUSD 415 trades net +53.9 R PF 1.21 passed alone; GBPUSD +19.6 R; XAUUSD −28.4 R; EURJPY −21.9 R).

1. The variant (Daniel, 2026-09-07)

"Include indicator-based take profit: take profit when a triangle appears on the H1 chart on the opposite side if the trade was taken on H1."

Question Decision
Trigger An AVWAP-Z triangle on the bias timeframe on the side opposite to the trade, at the Elevated tier or above, as the ZTD core marks it (triBull for a short trade, triBear for a long trade), read on the H1 close
Combination Whichever comes first: the fixed R:R target, the stop, the bias end, or the opposite-side triangle. With a partial on, the triangle closes the remaining size
Timing The H1 close is known on the first 5m bar that opens after it; the trade is closed at that bar's close (the same mechanics as a bias end), reason opp_tri. The order of events on that bar is the harness order: intrabar stop/partial/target first, then the H1 events
Scope Exits only. The bias continues and pending orders are untouched (a pending order may still fill later in the same bias)
Base v3 exactly: divergence bias, stop_mode = "h1_extreme", target_mode = "fixed_r", target_r = 3.0, no scale-out; EURUSD, GBPUSD, XAUUSD, EURJPY

2. Exact rule change

  • ZTD port: ZtdRow gains triB/triU (the core's triBear/triBull atoms: triangle tier at or above t_min_tier, intrabar reading as configured; not Pine plots, ignored by the golden comparison).
  • Entry5mConfig.exit_on_opp_tri: bool = False (v1-v6 unchanged when False).
  • BiasTracker.on_h1_close: when the flag is on and a bias is active, an ("opp_tri", bias) event is emitted first on any H1 close whose row has the opposite-side triangle (triU for a short bias, triB for a long bias), before the bias end/start events of that bar; both bias sources.
  • Runner: on opp_tri with an open position, broker.close_at(i, t, close, "opp_tri") (size-weighted R as for any close); counter exit_opp_tri. Nothing else changes.

3. Primary cell (judged) and criteria

v3's cell plus exit_on_opp_tri = True: pivot_n = 3, min_pb_bars = 3, timeout_h1 = 96, min_rr = 1.0, pending_max_bars = 48, max_hold_bars = 0, stop_mode = "h1_extreme", target_mode = "fixed_r", target_r = 3.0, bias_source = "divergence", scale_out_r = 0, ZTD defaults, on the four symbols.

Criteria: the v1 spec's section 8 verbatim (at least 200 trades; PF > 1.15 and ex-outlier PF > 1.0; expectancy > +0.05 R; best month <= 35% of net R; both calendar halves net-positive; at least two of the three groups usd/metal/jpy, GBPUSD net R not negative). A fail means this variant is dead as specified; no parameter search follows. Sensitivity grid printed, NOT judged.

Expected side effects, stated now: shorter average holds, fewer 3R exits and fewer bias-end exits, a share of trades closed early at a profit or a small loss; the direction of net R is not predictable in advance.

4. The Pine indicator

Regardless of the verdict, the indicator gets the input Exit on opposite-side HTF triangle (default off) with the same mechanics, plus htfTriB/htfTriU on the HTF surface and exit code 5 (opp_tri) in the data window, drawings and alerts; verified by the existing gates (H1 gate with the two new columns compared against the pyakao port's triB/triU on the exported H1 bars, since ZTD v17 does not plot them) and a parity export with the input on.