Live decomposition of the losing streak: 23% win rate with avg win +$1.23 /
avg loss -$1.04 on ~0.3-0.5% price moves, where the ~0.14% round-trip fee ate
30-50% of every tiny winner. Death by small-move grinding. The AI was closing
positions on ±0.5% noise after the 60m min-hold, capping winners at ~0.86%.
Redesign to 'few big positions, held for big moves':
- Throttle: min hold 60m->4h, noise-close window 90m->8h, reentry 30m->3h,
opens/hour 30->3, opens/cycle 6->2. Noise band widened -1%..+2% -> -4%..+6%
so small moves can no longer trigger a close.
- Exits: stop bypass -2.5% -> -5%, take-profit bypass +5% -> +12% (wide,
asymmetric — let winners run, cut losers only on a real move).
- Leverage 20x -> 5x: a -5% stop at 20x is instant liquidation; at 5x it is
-25% of margin, survivable. 2 positions x 2.5x = 5x total (full margin,
~20% cushion) instead of 4x5x=20x.
- Prompt now instructs the AI to set wide stops (~-5%) and distant targets
(~+10-12%), hold multi-hour, and never scalp 0.5% moves.
Live strategy updated (maxPos=2, lev=5, ratio=2.5).
Analysis of 410 live closed trades found the edge is real but was being
destroyed by execution: gross +$267 vs $245 fees; trades held <1h were net
negative (the <15m bucket alone: -$48 on $66 fees) while 1h+ holds carried
+$78; shorts lost $72 while longs made $94 — and both the prompt and the
engine were manufacturing those losers.
Changes, each tied to the data:
- Prompt: removed the 'MUST open at least one long AND one short every
cycle' mandate (forced weak-signal shorts); direction is now data-driven
with 'never open just to balance the book'. Added fee-awareness (round
trip ≈ 0.1% notional, require expected move ≥ 3x cost) and aligned the
hold discipline with the backend throttle.
- Forced book-balance opens now require |board z-score| ≥ 0.75 — the engine
previously force-opened full-size 10x positions on near-neutral signals
with hardcoded confidence 70. DirectionalCandidates now carries scores.
- Min AI-managed hold raised 45m → 60m (the 15-60m bucket still bled after
the earlier throttle landed).
- Legacy prompt hygiene: vergex path drops long-only-era custom prompts and
zh-era configs fall back wholesale to built-in English sections — fixes
the two long-failing kernel prompt tests.
- New Edge Profile dashboard panel: net after fees by hold-time bucket and
side, computed from recent closed trades, with an automatic takeaway line
— the fee/churn regression detector, always visible. Fixed the
HistoricalPosition timestamp types (epoch ms, not strings).