Add a sim-optimal broker node integrating the exposure stream into a pip-equity (signal-quality) stream #5

Closed
opened 2026-06-04 15:25:19 +02:00 by Brummel · 0 comments
Owner

C10 (reframed in cycle 0007) makes the sim-optimal broker the measure of SIGNAL
QUALITY: a downstream consumer node that consumes the EXPOSURE stream (#4) plus
the price stream and integrates exposure*return into a synthetic pip-equity
stream. It does NOT consume position events (the position-event table is a
separate, deferred layer; realistic brokers consume that, later).

Delivered jointly with #4 in cycle 0007 (the signal-quality loop): this half is
the broker.

Scope

A node (C8) with two f64 inputs (exposure, price). It holds prev_price,
prev_exposure, cumulative pips, and per-instrument pip_size (reference metadata
beside the hot path, C7/C15 — never streamed). Each fired cycle it realizes the
return earned by the exposure HELD INTO the cycle (decided at t-1), causal and
look-ahead-free (C2):

cum += prev_exposure * (price(t) - price(t-1)) / pip_size

and emits cumulative pip equity as its output port. Class (a) of C10:
deterministic, frictionless, perfect-fill — the level, currency-free playing
field for comparing and combining signals. The equity output is recorded by a
sink (cycle 0006 / C22), so the run yields a displayable trace.

Because a broker is an ordinary node, several can later attach at once (C10);
this issue ships only the sim-optimal one.

Anchors

  • C10 (reframed) — sim-optimal broker consumes the exposure stream, integrates
    exposure*return -> synthetic pip equity = signal quality.
  • C2 — the exposure held into a cycle earns that cycle's return (no look-ahead).
  • C7 / C15 — pip_size is metadata beside the hot path, not a stream.
  • C22 / cycle 0006 — equity persisted via a recording (sink) node.

Acceptance

[ ] A broker node consumes exposure + price, emits a pip-equity stream.
[ ] Frictionless, perfect-fill, deterministic (C1); no currency, no slippage.
[ ] PnL uses the exposure held into the cycle (decided at t-1) — no look-ahead (C2).
[ ] Per-instrument pip size sourced from reference metadata, not a stream.
[ ] Flat (zero exposure) during warm-up; equity starts at 0.
[ ] Equity stream recorded via a sink.

C10 (reframed in cycle 0007) makes the sim-optimal broker the measure of SIGNAL QUALITY: a downstream consumer node that consumes the EXPOSURE stream (#4) plus the price stream and integrates exposure*return into a synthetic pip-equity stream. It does NOT consume position events (the position-event table is a separate, deferred layer; realistic brokers consume that, later). Delivered jointly with #4 in cycle 0007 (the signal-quality loop): this half is the broker. ## Scope A node (C8) with two f64 inputs (exposure, price). It holds prev_price, prev_exposure, cumulative pips, and per-instrument pip_size (reference metadata beside the hot path, C7/C15 — never streamed). Each fired cycle it realizes the return earned by the exposure HELD INTO the cycle (decided at t-1), causal and look-ahead-free (C2): cum += prev_exposure * (price(t) - price(t-1)) / pip_size and emits cumulative pip equity as its output port. Class (a) of C10: deterministic, frictionless, perfect-fill — the level, currency-free playing field for comparing and combining signals. The equity output is recorded by a sink (cycle 0006 / C22), so the run yields a displayable trace. Because a broker is an ordinary node, several can later attach at once (C10); this issue ships only the sim-optimal one. ## Anchors - C10 (reframed) — sim-optimal broker consumes the exposure stream, integrates exposure*return -> synthetic pip equity = signal quality. - C2 — the exposure held into a cycle earns that cycle's return (no look-ahead). - C7 / C15 — pip_size is metadata beside the hot path, not a stream. - C22 / cycle 0006 — equity persisted via a recording (sink) node. ## Acceptance [ ] A broker node consumes exposure + price, emits a pip-equity stream. [ ] Frictionless, perfect-fill, deterministic (C1); no currency, no slippage. [ ] PnL uses the exposure held into the cycle (decided at t-1) — no look-ahead (C2). [ ] Per-instrument pip size sourced from reference metadata, not a stream. [ ] Flat (zero exposure) during warm-up; equity starts at 0. [ ] Equity stream recorded via a sink.
Brummel added this to the Walking skeleton milestone 2026-06-04 15:25:19 +02:00
Brummel added the feature label 2026-06-04 15:25:19 +02:00
Brummel changed title from Add a sim-optimal broker node consuming position events into a pip-equity stream to Add a sim-optimal broker node integrating the exposure stream into a pip-equity (signal-quality) stream 2026-06-04 16:51:11 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Brummel/Aura#5