entry-gate: decision receipts per evaluation (plan 005 step 3)
New EntryGateEvaluatedEvent (symbol, source, passed, reject_reason, gates map) emitted once per _evaluate_entry_gates decision on both paths, behind TRADING_GATE_RECEIPTS (default on; dataclass default off so unit tests opt in). Added to the 14-day nightly purge tuple (high-volume diagnostic) and .env.example. Turns 'why didn't it trade X?' into a query and is the substrate plan 006 replays. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
d10b5cc921
commit
b6a4040e45
5 files changed
+85
-3
No files matched your search
@@ -133,6 +133,7 @@ TRADING_MAX_FRESH_ENTRIES_PER_DAY=10 # EXPERIMENT 2026-07-02 (owner-authorized)
|
||||
TRADING_MAX_CONCURRENT_POSITIONS=10 # raised 6->10; the 60% gross-notional cap below still hard-bounds TOTAL exposure (so this = more, smaller positions, not more risk)
|
||||
TRADING_REQUIRE_ABOVE_VWAP=1 # VWAP entry gate: only take breakouts trading >= session VWAP. The ONE validated selection signal (above-VWAP reaches +1R ~1.5x as often, n=3,110 from the labeler). 0=shadow-only (logs below-VWAP signals as rule_type=vwap_below but still enters). Set 0 to revert to pre-gate behavior.
|
||||
TRADING_UNIFIED_ENTRY=1 # run the fast path's anti-chase gates (day-extension: don't enter a name whose breakout level is >30% above the session open; halt) on the LIVE auto path too. Closes the gap where those guards only ran on the rarely-used fast trigger path. Fail-open on missing data. 0=pre-unification (auto path skips these gates).
|
||||
TRADING_GATE_RECEIPTS=1 # emit one entry_gate_evaluated event per gate evaluation (both paths) with the full pass/reject gate map — turns 'why didn't it trade X?' into a query. High-volume diagnostic, purged after 14 days like other observability spam. 0=off (no receipts).
|
||||
TRADING_ENTRY_FILL_MODEL=resting # auto-path fill: 'resting' = rest a limit AT the breakout level (fills only on a pullback, misses runners that gap up). 'marketable' = limit a hair above the trigger so it fills as price breaks UP through it (catches runners, the fast path's behavior; the limit still caps the fill so no gap-chase). VALIDATED LIVE 2026-06-24 open (NOK/SOFI/SSPC filled near-trigger, no chase) then reverted to resting (safe default). Flip to 'marketable' to use it.
|
||||
# Account-aware sizing: positions size off REAL broker equity (auto — so a $300
|
||||
# live account sizes for $300, not the $100k default). One position's value is
|
||||
|
||||
Reference in new issue
Block a user