VIOLET V3e: enable shadow soak (faithful -0.02) + relaxable entry threshold
launch_dolphin_violet.py: _build_shadow reads DOLPHIN_VIOLET_ENTRY_VEL_DIV_THRESHOLD (VIOLET-only gate relaxation for low-vol validation; logs RELAXED:not-parity-faithful). supervisord.conf: DOLPHIN_VIOLET_DECISION_SHADOW=1 (faithful -0.02 default). 20-min validation soak PASSED: decisions journaled (sizer cubic curve reproduced live), 0 bad rows, 0 orders, 0 errors. Findings for next: vel_div/asset pairing parity (engine sizes IRP-picked asset w/ scan top-level vel_div), USDC-in-universe. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -327,11 +327,17 @@ def _build_shadow():
|
||||
sess = uuid.uuid4().hex
|
||||
capital = float(os.environ.get("DOLPHIN_VIOLET_SHADOW_CAPITAL", "69000"))
|
||||
# engine defaults == live BLUE base curve (max_leverage 9.0, vel_div_threshold -0.02).
|
||||
engine = VioletDecisionEngine()
|
||||
# DOLPHIN_VIOLET_ENTRY_VEL_DIV_THRESHOLD relaxes the entry gate VIOLET-ONLY (e.g. to
|
||||
# exercise the journal on a low-vol day). NOT BLUE-parity-faithful while relaxed.
|
||||
thr = float(os.environ.get("DOLPHIN_VIOLET_ENTRY_VEL_DIV_THRESHOLD", "-0.02"))
|
||||
relaxed = abs(thr - (-0.02)) > 1e-9
|
||||
engine = VioletDecisionEngine(entry_vel_div_threshold=thr)
|
||||
journal = VioletDecisionJournal(sink=ch_put_violet, session_id=sess)
|
||||
LOGGER.warning(
|
||||
"VIOLET DECISION SHADOW ON (session=%s ref_capital=%.0f) — journaling muted "
|
||||
"decisions to dolphin_violet.violet_decisions; NO orders.", sess, capital,
|
||||
"VIOLET DECISION SHADOW ON (session=%s ref_capital=%.0f entry_thr=%.4f%s) — "
|
||||
"journaling muted decisions to dolphin_violet.violet_decisions; NO orders.",
|
||||
sess, capital, thr,
|
||||
" RELAXED:not-parity-faithful" if relaxed else "",
|
||||
)
|
||||
return {"engine": engine, "journal": journal, "capital": capital, "mono_ns": mono_ns}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user