Skip to content

Measure open-position risk and cost-comparable curriculum benchmarks - #16

Merged
SignalLayerLabs merged 1 commit into
mainfrom
feat/lean-nav
Oct 20, 2026
Merged

SignalLayerLabs merged 1 commit into
mainfrom
feat/lean-nav

Conversation

@SignalLayerLabs

@SignalLayerLabs SignalLayerLabs commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Problem and evidence

Curriculum drawdown currently covers closed trades, so a later profitable exit can conceal an adverse open-position path. The price-only hold reference excludes execution costs and assumes full investment.

Change

  • Add report-only, versioned bar-close NAV/drawdown from existing frozen fills, with cash reserved and fees booked once at the recorded clocks.
  • Compare policy and fixed expert with a delayed-opening hold using the same capital, window, commissions and capacity model. Preserve residual cash after partial entry; keep mark NAV distinct from estimated net liquidation.
  • Withhold values for invalid/missing entry or mark paths and unverified exit capacity. Compute full-resolution statistics before curve compaction; ignore future prices/exits in prefix values and hashes.
  • Store reports in the worker, including a one-time evaluation refresh for exhausted packs without relearning or checkpoint changes. Show optional, backward-compatible Research tables, per-pair quote units and current-episode-only prospective valuation.
  • Document the pinned LEAN analysis and independent Python implementation; no LEAN/.NET runtime or copied source/data dependency.

Verification

  • Final backend/migration suite: 1,037 passed in 121.47s; existing Pydantic/UTC deprecation warnings remain.
  • Frontend: 44 tests passed; TypeScript and static production build passed (63 pages).
  • Independent review: two report-only P2 findings reproduced RED, fixed and regression-tested; no remaining P1/P2 findings.
  • Fresh durable-worker replay on repository SPY/QQQ and local hashed Yahoo Chart EURUSD/GBPUSD inputs: 32 cycles, 1,109 dependent expert outcomes, zero duplicate updates after a new DB session. All source hashes, model checkpoints, learning counts and original policy/fixed-expert metrics exactly match the preceding source-recovery receipt.
  • QQQ policy +0.345%, bar-close drawdown 1.110%, versus modeled hold net-liquidation +66.472%; SPY policy −0.345%, drawdown 0.345%, versus hold +42.131%. Both USA policies underperform hold. FX full-path values are WITHHELD for preserved invalid bars; confirmation remains unopened. See docs/evidence/lean-nav-evaluation.json.
  • Space metadata, packaged-source audit and diff whitespace checks passed.

Risk and rollback

This improves measurement, not model skill or demonstrated alpha. Costs/liquidity are modeled; hold is a cash-notional opening scenario and terminal sale is an estimate. Bar-close drawdown excludes intrabar losses. No dividends/carry/taxes or cross-currency aggregation. Revert this commit to remove optional reports/UI; immutable source, outcome and checkpoint identities remain intact. No schema migration.

Production PR15 is deployed at 8789d12, but useful curriculum learning is not yet verified: an observed scheduled event deferred before entering the worker for resource_pressure, while its outer status was mislabeled completed. This PR preserves that guard; runtime resource diagnosis is separate and remains open.

  • No credentials or restricted data are included.
  • GET endpoints remain read-only.
  • No frontend render triggers heavy computation.
  • Financial claims are evidence-bound.
  • Tests cover the changed behavior.

@SignalLayerLabs
SignalLayerLabs marked this pull request as ready for review October 20, 2026 06:14
@SignalLayerLabs
SignalLayerLabs merged commit a555f97 into main Oct 20, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant