INTERACTIVE SCENARIO LAB & ARCHITECTURAL BLUEPRINT

Live Scenario Simulator &
Market Data Flow Architecture.

Step through institutional clearing scenarios in real time. Inspect wire protocol messages, sequence flow between simulated peers, and participant state blotters under both happy-path and chaos-injected market conditions.

The Journey of 500 Shares: What Really Happens Behind Your Screen

Forget financial jargon and acronyms for a moment. Here is the everyday human story of what happens when Sarah buys shares from David — and why banks need market simulators to make sure no one gets cheated.

👩‍💻
Sarah (The Buyer)
A software engineer in Melbourne tapping "Buy 500 CBA" on her CommSec app.
👨‍🦳
David (The Seller)
A retiree in Sydney selling his 500 CBA shares on Macquarie to pay for a road trip.
🏛️
CHESS (The Referee)
The central market referee holding the shares and cash so neither side can run away.
🏦
Reserve Bank (Cash Vault)
The official central bank where real AUD transfers between participating bank accounts.
Chapter 1 · 10:00 AM
The Coffee Shop Order & The Digital Handshake
Step 1: The Match

Sarah is sitting in a Melbourne cafe. She opens her brokerage app and taps Buy 500 Commonwealth Bank shares at $130 ($65,000 total). At that exact instant in Sydney, David taps Sell 500 Commonwealth Bank shares at $130.

In less than 2 milliseconds, the exchange trading computers match them together! But here is the catch that most people don't know: No money or shares have changed hands yet. A trade match is simply a legal promise. Sarah still has her money, and David still has his shares.

⚙️
In the Simulator
This is handled by the Alder Orders engine (Port :8695), simulating front-office FIX execution and trade drops.
Chapter 2 · 10:05 AM
The Two Digital Letters to the Referee
Step 2: The Instructions

How do the two brokers settle up without trusting each other? Sarah's broker (CommSec) and David's broker (Macquarie) both write an official digital letter to the market clearing house (CHESS):

Sarah's broker writes: "We promise to hand over $65,000 at the morning batch."
David's broker writes: "We promise to hand over 500 CBA shares at the morning batch."

CHESS reads both letters, checks that the numbers match, and locks both sides into the schedule.

⚙️
In the Simulator
This is Scenario 1, Step 1 & 2: The bilateral settlement instruction (comm_801) and matched advice (sett_101).
Chapter 3 · 10:30 AM Cut-Off
The Magic Swap: Delivery versus Payment (DvP)
Step 3: The Swap

Why can't Sarah just send the money first? What if David takes the cash and vanishes?
Why can't David just send the shares first? What if Sarah's bank defaults and doesn't pay?

To eliminate this risk, the financial market invented DvP (Delivery versus Payment). Imagine a secure glass box: Sarah puts $65,000 inside the box. David puts 500 CBA shares inside the box. At exactly 10:30 AM, the referee inspects the box. Only if both the money and the shares are present does the box unlock and swap them simultaneously. If one side is missing, the trade stops and neither side loses a single cent.

⚙️
In the Simulator
This is Scenario 1, Step 3 & 4: Central bank cash debit (pacs.009) across Exchange Settlement Accounts (ESA) and settlement notice (sett_117).
Chapter 4 · 10:31 AM
The Golden Number: Sarah Legally Owns Her Shares
Step 4: Ownership

Australia has a financial superpower that protects everyday investors: The HIN (Holder Identification Number).

Sarah's shares are not stored on her broker's private balance sheet. Instead, the government-backed market register permanently records:
HIN 1001 · Sarah Jenkins · 500 CBA Shares [REGISTERED]
Even if Sarah's broker goes completely bankrupt tomorrow, Sarah still owns 100% of her Commonwealth Bank shares. David gets his $65,000 cash in his bank account to enjoy his road trip. Everyone is happy!

⚙️
In the Simulator
Check the Alder Settlement tab on simulators.aegisposttrade.com to see HIN accounts (1001, 1002) and their live share balances stored directly in PostgreSQL.
The Plot Twist · Chaos Testing
What if David Forgot He Sold Those Shares Yesterday? (The Fail Story)
Scenario 2: Settlement Fail

Imagine David accidentally sold his 500 shares last week and forgot. When the referee checks the glass box at 10:30 AM, David has zero shares to deliver!

In an unregulated market, Sarah would lose her $65,000. But under the clearing engine:
1. The alarm rings instantly (Settlement Fail Notice: sett_119).
2. The referee slams the box shut: Sarah's $65,000 is protected and returned.
3. David's broker is fined a mandatory daily failure penalty levy until they buy the shares on the open market.

This is why banks buy Aegis Market Simulators. Banks and brokers cannot afford to make a mistake during live settlement. Our simulator lets them test this exact disaster scenario on a developer laptop in 400 milliseconds!

⚠️
In the Simulator
Select Scenario 2 (Settlement Fail) in the player below to watch the INSU (Insufficient Units) fail code and fail levy isolation trigger live!
Scenario: Step 1 of 4

Bilateral Settlement Instruction (comm_801)

Participant Broker (PID 02999) submits a bilateral instruction to deliver 50,000 units of BHP for AUD $2,150,000 against receiving participant (PID 01444).

Active Peer Interaction Path:
Broker / OMS
CHESS :8690
RBA Cash :8691
DCS :8692
AMQP :8693
CTM :8694
HIN Books
Cockpit :8699
Participant Real-Time Blotter State PID 02999
Security Position
200,000 BHP
Settlement Cash
AUD $4,250,000.00
Margin / Fail Levy
AUD $0.00
Lifecycle Status
INSTRUCTION_ACCEPTED
Outbound HTTP POST /inbound
Loading scenario payload...

How to Run, Analyze, and Interpret Simulator Scenarios

A comprehensive operational guide for financial engineers, clearing managers, and integration architects. Learn how to step through clearing lifecycles, decode institutional ISO 20022 wire payloads, and interpret real-time holding book and cash ledger mutations.

1

Select Your Clearing Lifecycle

Choose one of 6 institutional market scenarios in the player above. Each scenario loads a complete multi-entity market state including participating brokers, investor HINs, security balances, and central bank cash accounts.

2

Step Through Sequence & Wire

Use Next Step → or Auto Play ▶ to trigger stage transitions. Watch the animated sequence flow between Participant Desks, Market Authorities, and Cash RTGS rails in real time.

3

Inspect Payloads & Blotter State

Toggle between Request Wire (ISO XML/AMQP), Peer Response (clearing acks/fails), and Engine Trace to inspect validation checks, holding reservations, and multilateral net obligations.

Scenario Playbook Matrix

What each scenario demonstrates, the wire protocols executed, and how to verify correctness across your accounting and holding records:

1. Standard DvP Batch Settlement
Happy Path
Business Objective
Simulate standard bilateral delivery-versus-payment (DvP) equity trade settlement between two brokers at the scheduled 10:30 AM Sydney cut-off.
Protocol Messages
comm_801 (Bilateral Instruction) → sett_101 (Match Advice) → pacs.009 (RTGS Cash Line) → sett_117 (Settlement Complete).
How to Interpret Results
Verify that 50,000 BHP units move from Delivering HIN (02999) to Receiving HIN (01444) precisely when AUD $2,150,000 clears across central bank Exchange Settlement Accounts (ESA).
2. Settlement Fail & Chaos Injection
Chaos Test
Business Objective
Verify that your middle-office and settlement engines safely isolate short-delivered positions without blocking other clean settlement lines.
Protocol Messages
comm_801 (Instruction) → sett_119 (Fail Notification with reject reason INSU - Insufficient Units).
How to Interpret Results
Delivering HIN holds only 20,000 of 100,000 required units. The trade is marked SETTLEMENT_FAILED, fail levies are computed, and cash is unlocked back to the buyer.
3. ASX DCS Derivatives Give-Up
Derivatives
Business Objective
Test Exchange Traded Options (ETO) allocation where an executing broker transfers trade liability to a clearing broker with real-time SPAN margin.
Protocol Messages
ASX DCS MCM 1.5.0 message TR → GU (Give-Up) → TU (Take-Up) → pacs.008 (Margin Variation Debit).
How to Interpret Results
Open position moves to the clearing broker's derivative account; initial and variation margin obligations are locked in the cash ledger.
4. Middle-Office Block Allocation (CTM)
Middle Office
Business Objective
Simulate institutional trade booking where an asset manager executes an aggregate parent order and splits it into discrete custodian child accounts.
Protocol Messages
DTCC CTM REST JSON Allocation → MT515 / ISO 15022 Client Confirmation → Bilateral CHESS staging.
How to Interpret Results
Ensure the parent order balance equals exactly the sum of allocated child contracts (e.g. 500k = 250k Custodian A + 150k Custodian B + 100k Custodian C).
5. Investor HIN Registration (AMQP)
Subregister
Business Objective
Validate real-time retail investor onboarding, AML status verification, and Holder Identification Number (HIN) creation on the market subregister.
Protocol Messages
acmt.001 (Account Opening Instruction) → OASIS AMQP 1.0 event stream → acmt.002 (HIN Allocation Notice).
How to Interpret Results
Verify the new HIN is registered with correct participant sponsorship PID (01402) and initial free holding balances are primed to 0 units.
6. Corporate Action & DRP Entitlement
Corporate Actions
Business Objective
Simulate mandatory cash dividend distribution and optional Dividend Reinvestment Plan (DRP) share allocation on the ex-date snapshot.
Protocol Messages
caev.001 (Corporate Action Event Advice) → Entitlement Diary Record → pacs.008 (Cash Dividend Credit) / sett_105 (DRP Issue).
How to Interpret Results
Check dividend cash calculation ($1.50 × holding balance) less applicable withholding tax, and confirm DRP fractional share allotments.

Protocol Decoder Ring: How to Read Wire Message Types

Quick reference guide to understanding the ASX ISO 20022, SWIFT, and central bank message formats emitted by the simulator:

Message Prefix Full Name Domain What to Look For
comm_801 Securities Settlement Transaction Instruction CHESS Bilateral Delivering HIN, Receiving HIN, Security ISIN, Quantity, Settlement Amount, and Cash Settlement Method (DVP/HOLD).
sett_101 Securities Settlement Transaction Confirmation CHESS Settlement Matched status (MATCHED), unique Clearing Match ID, and scheduled Batch Netting Cycle ID.
sett_119 Securities Settlement Transaction Fails Notice CHESS Settlement Reject Reason Code (e.g. INSU = Insufficient Stock, LACK = Lack of Cash, NOPA = Closed HIN).
clrg_501 Multi-Lateral Net Obligation Report Clearing House Net participant-level cash and stock obligations for the day across all market trades (Net-to-Gross netting).
acmt.001 Account Opening Request Subregister Tax File Number (TFN) status, Holder Name, Address, Resident Status, and Controlling Participant UIC.
pacs.009 Financial Institution Direct Cash Transfer Central Bank RTGS Debtor/Creditor BIC, RBA Exchange Settlement Account (ESA) numbers, and net currency cash amount in AUD.
MCM 1.5.0 ASX Derivatives Clearing Message ASX DCS Option Series, Strike Price, Expiry, Long/Short capacity, and Give-Up Agreement ID.
Ready to Test Live Against Your Own Systems?

You can connect your own FIX engine, OMS, or back-office settlement software to our cloud simulator instance, or test live via the interactive Event Injector console.

🚀 Open Live Simulator Console Request Sandbox Access Key

Institutional Architecture Topology

Explore how the six standalone simulated market engines connect seamlessly to your front-, middle-, and back-office banking infrastructure on 127.0.0.1. Click any component to inspect its protocols, port specs, and throughput benchmarks.

Participant Bank & Broker Systems Your Stack
◆ Front-Office OMS / EMS Desk
FIX 4.4 / REST
Order execution, child order routing, institutional fills, and algorithmic execution logging.
IRESS Drop-Copy Port 8695
◆ Middle-Office Trade Matching (CTM)
REST / ISO 15022
Institutional parent block breakdown, custodian allocation split, and client trade affirmations.
Block Allocations Port 8694
◆ Post-Trade Core & Subregister
CHESS ISO / AMQP
Bilateral instruction generation, HIN account sponsorship, trade allocation, and holding book updates.
CHESS Drop 1-4 Port 8690 / 8693
◆ Treasury & Central Bank Cash Desk
pacs.009 / RTGS
Exchange Settlement Account (ESA) monitoring, central bank liquidity sweep, and DvP cash obligations.
RBA Rails Port 8691
◆ Derivatives Clearing & Risk Desk
MCM 1.5.0 / TCP
Exchange-traded options & futures trade logging, give-up routing, and real-time SPAN margin calculations.
ASX DCS Port 8692
Aegis Standalone Simulator Cluster (127.0.0.1) Single JVM In-Memory
Peer 1: ASX CHESS ISO 20022 Engine
Port 8690
Drop 1–4 XSD validation, bilateral matching, multilateral netting algorithm, corporate actions, and HIN subregister.
comm_801 / clrg_501 < 1.4ms Latency 45,000 tx/sec
Peer 2: RBA RTGS / CBDC Cash Ledger
Port 8691
Interbank DvP cash finality, Exchange Settlement Account balances, pacs.009 credit transfers, and pacs.002 settlement receipts.
pacs.009 / pacs.002 < 0.9ms Latency
Peer 3: ASX DCS Derivatives Clearing (MCM 1.5.0)
Port 8692
Fixed-width high-speed TCP stream. TR trade records, AA allocations, Give-Up/Take-Up, and real-time SPAN margin calculations.
TR / AA / GU / TU SPAN Initial Margin
Peer 4: ASX CHESS OASIS AMQP 1.0 Broker
Port 8693
Direct OASIS AMQP 1.0 streaming queue. Subregister updates, holding adjustments, participant transfer frames, and push webhooks.
Native AMQP 1.0 Direct Queue & Topics
Peer 5: Institutional Trade Matching (CTM)
Port 8694
Parent block allocation matching, 3-way custodian split validation, electronic affirmation, and automatic CHESS staging.
Institutional Blocks Auto-Affirmation
Visual Cockpit & Chaos Controller
Port 8699
Visual monitoring console, scenario runner, state inspector, and REST Chaos & Network Partition injection API.
GUI Cockpit Chaos Injection API
Port 8690

ASX CHESS ISO 20022 Engine (:8690)

Load in Simulator ↑
High-performance ISO 20022 clearing engine implementing ASX CHESS Drops 1 through 4. Validates schema rules, matches counterparty instructions, runs multilateral netting batches, and manages subregister HIN balances with complete determinism.
P99.9 Latency
< 1.4 ms
Wire Protocol
HTTP/1.1 REST XML
Sample cURL Verification Command:
curl -s -X POST http://127.0.0.1:8690/inbound \ -H "Content-Type: application/xml" \ -H "X-Aegis-Participant: 02999" \ -d '<Document xmlns="urn:asx:xsd:comm.801.001.01"><SdlrNtfctn>...</SdlrNtfctn></Document>'

End-to-End Market Data Pipelines

Explore the five core post-trade data pipelines implemented in the Aegis simulator suite. Select a pipeline to trace wire message sequencing from execution to finality.

Pipeline 1

Equities Delivery-versus-Payment (DvP) Settlement Flow

Trace bilateral instructions through CHESS matching, multilateral batch netting, RBA RTGS Exchange Settlement Account sweeps, and subregister ownership transfer.

Stage 1 Bilateral Instruction Submission
comm_801.001.01 (XML)

Executing broker desk transmits settlement instruction to deliver 50,000 BHP shares against counterparty payment of AUD $2,150,000. Engine verifies message schema, participant active permissions, and counterparty PID.

POST /inbound HTTP/1.1 Host: 127.0.0.1:8690 Content-Type: application/xml X-Aegis-Participant: 02999 <Document xmlns="urn:asx:xsd:comm.801.001.01"> <SdlrNtfctn> <MsgHdr><MsgId>MSG-20261007-00101</MsgId></MsgHdr> <SttlmDtls> <TxId>TX-BHP-88912</TxId> <ISIN>AU000000BHP4</ISIN> <SttlmQty>50000</SttlmQty> <SttlmAmt Ccy="AUD">2150000.00</SttlmAmt> </SttlmDtls> </SdlrNtfctn> </Document>

Market Scenario Execution Catalog

Standard test scenarios pre-programmed into the Australian Suite v1.0.0. Every scenario can be triggered in the simulator above, executed via cURL, or automated in CI pipelines.

Scenario ID Category Wire Protocols Simulated Ports Chaos Injection Action
SC-01: DvP Batch Settlement
comm_801 → clrg_501 → pacs.009
Equities Clearing comm.801, clrg.501, pacs.009 :8690, :8691, :8693 Happy Path
SC-02: Settlement Fail & Chaos Shortfall
sett_119 fail levy → auto-cure
Chaos / Exception sett.119, REST Holdings Credit :8690, :8699 Zero Balance Shortfall
SC-03: ASX DCS Derivatives Give-Up
MCM 1.5.0 TR → AA → GU → TU → SPAN
Derivatives / Risk MCM 1.5.0 TCP Fixed-Format :8692 Risk Limit Breach
SC-04: CTM Institutional Block Allocation
Parent Block → 3 Custodian Child Legs
Middle-Office REST / ISO 15022 / comm.801 :8694, :8690 Allocation Mismatch
SC-05: Direct HIN Onboarding via AMQP
acmt.001 → unique HIN → hold.201
Subregister OASIS AMQP 1.0, acmt.001, hold.201 :8693, :8690 Invalid TFN Syntax
SC-06: Corporate Action Dividend & DRP
caev.001 → Record Date → Cash / Share Credit
Corporate Actions caev.001, caev.002, pacs.009 :8690, :8691 Ex-Date Price Shock

Ready to Execute These Scenarios in Your Own CI Pipeline?

Request an evaluation JAR package and run all six scenarios in automated JUnit, Python, or Go test suites today.

Request 14-Day Free Evaluation View Developer Quickstart