SAWEM Phase 1 — Trading Simulator
An overnight, single-repo simulator of the South African day-ahead net pool — DAM → IDM → balancing → settlement — with bilateral PPAs settling as CfDs against the System Marginal Price. Wager: legitimacy beats sophistication. Every cleared price is replayable to the cent.
Cleared
Hour 18 — peak
Open the receipt, replay, verify in your browser or CLI.
Buyer
Large-customer settlement
CfD vs SMP · NBC line-itemised · imbalance priced · signed Rand.
Generator
Wind plant reconciliation
Scheduled · metered · curtailed · CfD · mirror-confirmed to buyer.
Municipality
Indirect via CPA — onboarding flow
Direct-BRP fails on prudential; route via the CPA.
Public
Market monitor — no login
DP aggregates · 24-cell hour grid · CSV/JSON · text-only twin.
Trader
Phase 1 — wheeling channel only
Sandbox shadow bids · "Try live auction" demonstrates the rejection.
Regulator
Market monitor — surveillance
RSI withholding · wash-trade · price-spike — each flag explainable + chain-escalated.
Multilingual welcome
- English: Welcome — South African Wholesale Electricity Market (shadow mode)
- isiZulu: Sawubona — (long-form translation under review) (translation under review)
- isiXhosa: Molo — (long-form translation under review) (translation under review)
- Afrikaans: Welkom — Suid-Afrikaanse Groothandelselektrisiteitsmark (skadumodus)
- Sepedi: Dumela — (long-form translation under review) (translation under review)
Determinism: integer cents, integer MW-minutes, tie-break price ASC → ts ASC → party_id ASC.
Seed for the demo auction is fixed at 42. The CLI verifier imports the
same clearHour() module the server uses; settlement lines that are not anchored in
Trading Rules R2 (e.g. just-transition) carry the persistent
illustrative placeholder chip.