forked from chiki2bum2/SniperGold_ML
154 lines
6.8 KiB
Markdown
154 lines
6.8 KiB
Markdown
# P3-S.15 SETUP-LEVEL TRAINING CONTRACT PROPOSAL — SNIPERGOLD_ML
| |||
| |||
```text
| |||
Status : PROPOSAL (NOT authorized implementation; NOT a new pipeline).
| |||
Session : P3-S.15 — ML Path / Training Architecture Decision.
| |||
Date : 2026-08-23
| |||
Scope : Defines WHAT a future setup-level training contract must specify,
| |||
so that a SEPARATE, AUTHORIZED implementation phase (P3-S.16 and
| |||
beyond) can build the dataset, labels, and model without ambiguity.
| |||
This proposal does NOT implement the pipeline, does NOT add features
| |||
to FEATURE_CONTRACT.md, does NOT retrain, and does NOT change the
| |||
frozen Candidate Setup.
| |||
Purpose : Resolve the architecture-level "training-contract" question posed
| |||
by §13 of the session brief, and hand a deterministic contract
| |||
skeleton to the future phase.
| |||
Provenance: P3-S.15 decision docs/P3_S15_ML_PATH_ARCHITECTURE_DECISION.md;
| |||
frozen P3-S.10 canonical contract; P3-S.13/14 handovers; P2.6/P3.1/
| |||
P3.2/P3.2.2 forensic evidence.
| |||
Human verification : REMAINS CANCELLED (historical only).
| |||
```
| |||
| |||
---
| |||
| |||
## 1. PRINCIPLE
| |||
| |||
The future training target must be a **single discrete Candidate Setup**,
| |||
measured from its **creation bar** forward, with an outcome defined causally
| |||
and economically, and with features that are **as-of the creation decision**
| |||
(no future information). The legacy per-bar 24-bar direction "label" is a
| |||
different target and is NOT a valid setup-outcome label (P3.2 classification B).
| |||
| |||
---
| |||
| |||
## 2. OBSERVATION UNIT (what one ML sample is)
| |||
| |||
```text
| |||
ONE ROW = ONE CANDIDATE SETUP (AFCandidateSetup, frozen F3).
| |||
| |||
setup_id : monotonic integer, assigned at CANDIDATE_SETUP.
| |||
direction : +1 bullish / -1 bearish (chain direction).
| |||
sweep_onset, sweep_dir : originating Liquidity EVENT reference.
| |||
choch_onset, choch_dir : structure EVENT reference (after sweep).
| |||
zone_type : OB | FVG.
| |||
zone_formation : zone formation bar.
| |||
zone_dir : zone direction.
| |||
zone_mit_at_creation : mitigation state when the chain consumed it.
| |||
creation_bar : M15 bar when the chain completed (CANDIDATE_SETUP).
| |||
m3_bar : M3 confirmation bar or -1 (optional).
| |||
identity : (direction, sweep onset, choch onset,
| |||
zone formation ts, creation ts) — causal unique key.
| |||
lifecycle : state + terminal reason (EXPIRED|INVALIDATED|CONSUMED).
| |||
reasons : provenance per stage.
| |||
| |||
This identity is SUFFICIENT as an ML observation key (P3-S.15 §6.3/§12).
| |||
Missing-fields check for the contract (§13 of brief):
| |||
- The frozen object lacks explicit LOT/SL/TP (correctly outside setup
| |||
validity: §A "trade" is outside setup). The LABEL must therefore be
| |||
defined in the contract with its OWN TP/SL constants (a research label,
| |||
not an object field).
| |||
- Optional M3 confirmation is present (m3_bar).
| |||
- H4/M30 gate states at creation are NOT stored in the setup object; the
| |||
H4/M30 context features must be aligned to the setup's creation — this
| |||
is a FEATURE-PIPELINE requirement, not a setup-object mutation.
| |||
```
| |||
| |||
---
| |||
| |||
## 3. LABEL CONTRACT (what P3-S.16 must define) — DIRECTION ONLY HERE
| |||
| |||
The label family to be measured (P3-S.15 §7), expressed as the future contract:
| |||
| |||
```text
| |||
TARGET: setup-outcome (L3 successor, TP-before-SL) with censoring.
| |||
| |||
START : the creation_bar's close (entry A = close of decision bar;
| |||
B = next-bar open as robustness, |A-B| ~ 0.008 ATR, P3.2 §6).
| |||
OUTCOME : measure from creation_bar forward.
| |||
TP : distance in ATR (k_tp) in the setup direction.
| |||
SL : distance in ATR (k_sl) against the setup.
| |||
HORIZON : bounded by the FRESH SETUP LIFETIME (P3.2 §6/§8: common
| |||
outcomes within 1-8 bars; ~90% <= 8; low censoring >= H16).
| |||
CLASSES : WIN / LOSS / UNRESOLVED (censored) / AMBIGUOUS (same-bar TP+SL).
| |||
UNRESOLVED is true censoring — MUST NOT be forced to LOSS.
| |||
INVALIDATION: opposite structure break (f8/f5 flip) and/or canonical
| |||
lifecycle INVALIDATED — recorded as a secondary metric, NOT a
| |||
replacement for SL (P3.2.2 §I: SL is faster than structure invalidation).
| |||
| |||
CONTRACT ITEMS the future phase must FIX in advance (NOT selected from AUC/PF):
| |||
- k_tp / k_sl values (and whether symmetric or asymmetric R:R).
| |||
- horizon length (bars) consistent with setup lifetime.
| |||
- censoring handling rule (UNRESOLVED treatment; exclusion or survival).
| |||
- de-overlap rule at the SETUP level: distinct setups with overlapping
| |||
outcome windows -> lead-setup-per-episode policy (analogous P3.2.2 §B).
| |||
- class-balance handling (real distribution is LOSS-heavy on old units;
| |||
must be re-measured on canonical setups, not artificially balanced).
| |||
- entry semantics (A = close of creation bar; B robustness).
| |||
| |||
SEVERED: the 24-bar / 0.75 ATR DIRECTION label is NOT the setup-outcome label.
| |||
```
| |||
| |||
---
| |||
| |||
## 4. FEATURE ARCHITECTURE (proposal; NOT added to FEATURE_CONTRACT.md)
| |||
| |||
Aligned to the canonical setup entity (P3-S.15 §8). Every feature is as-of the
| |||
frozen MTF as-of contract (all consumed bars closed before creation-bar close):
| |||
| |||
```text
| |||
H4 narrative state (gate direction), M30 context state (gate direction),
| |||
Liquidity EVENT ref (onset, dir, freshness, size/ATR),
| |||
CHoCH EVENT ref (onset, dir, latency after sweep),
| |||
ZONE ref (OB|FVG, age, width/ATR, price-in-zone offset, mit-at-creation),
| |||
Displacement attribute at creation,
| |||
M15 entry condition boolean + premium/discount filter + distance-to-zone/ATR,
| |||
M3 confirmation presence + direction,
| |||
identity/times (creation_bar, times-since-onset, time-since-zone-formation,
| |||
setup lifecycle stage),
| |||
geometry (zone geometry, distance measures).
| |||
| |||
These are a PROPOSAL ONLY. The full numeric contract (lookbacks, conditions,
| |||
defaults) will be authored in P3-S.16 as a NEW proposal document, keeping
| |||
docs/FEATURE_CONTRACT.md unchanged (§19 policy).
| |||
```
| |||
| |||
---
| |||
| |||
## 5. COMPARABILITY / PIPELINE
| |||
| |||
```text
| |||
Proposed future pipeline (NOT built here):
| |||
Market Data -> SMC primitives -> repaired Events/Zones -> Candidate Setup
| |||
-> Setup Snapshot -> Outcome Label -> ML Dataset -> setup-level model.
| |||
| |||
The old pipeline (M15 bars -> features -> 24-bar label -> MLP) is NOT
| |||
comparable as a predictor: unit, label, MTF set and consumer semantics all
| |||
differ (P3-S.15 §11.3). The legacy pipeline is retained only as evidence.
| |||
```
| |||
| |||
---
| |||
| |||
## 6. STATUS
| |||
| |||
```text
| |||
PROPOSAL ONLY. This document authorizes nothing and builds nothing.
| |||
- No dataset created.
| |||
- No label computed.
| |||
- No model trained.
| |||
- FEATURE_CONTRACT.md not modified.
| |||
- Candidate Setup / F1 / F2 / runtime unchanged.
| |||
The P3-S.16 IMPLEMENTATION phase is a separately-authorized scope that will
| |||
consume this contract skeleton. No retrain / no optimization preceded it.
| |||
```
| |||
| |||
*End of P3-S.15 setup-level training contract proposal (documentation only).*
|