Skip to content

Training Guide

Welcome to the EduMatcher self-study training programme. This hands-on guide takes you from a cold start to confidently operating every major feature of the exchange.

If you are new to finance we strongly recommend you start by reading How an Exchange Works, a non-technical introduction to the core components and data flows in an exchange. It will make the training exercises more intuitive and meaningful.

How to Use This Guide

The 29 chapters (00–28) are one continuous sequence, not independent modules. Every chapter's own "Prerequisites" section names the chapters it needs, and in every case but two that is simply "everything before it." There is no reordering the sequence — if you only need part of what the exchange does, the right move is to work through it from chapter 00 and stop when you've covered what you need, not to skip ahead. Choose Your Path below tells you where a given goal lets you stop.

Every chapter states its prerequisites and links the user-guide sections that back it. Read those first if the topic is new to you; use them afterwards as the reference.

What you need

  • EduMatcher installed. Any of the routes in Installation works. Chapter 00 walks through them and helps you pick.
  • Several terminals. The exchange is a set of processes, and this guide asks you to watch them side by side. A multiplexer (tmux, screen) or split panes helps, but separate windows are fine.
  • Basic YAML and command line. No finance background is assumed.

The two consoles

This is the one thing worth knowing before Chapter 00, because mixing them up is the most common early mistake:

pm-alf-console pm-admin
You are a trader the exchange operator
Prompt shown in this guide [TRADER01]> [GW_ADMIN\|ADMIN]>
Typical commands NEW, AMEND, CANCEL, STATUS, ORDERS, POS, QUOTE, QLEGS BOOK, HALT_SYM, CANCEL_SYM, KILL\|GW=, SESSION\|STATE=, GATEWAYS
Can see the whole order book No Yes

A prompt containing |ADMIN]> always means the pm-admin terminal. Anything else is a trader console. Commands are not interchangeable between them — a BOOK typed into a trader console just answers Unknown command.

Conventions

  • [TRADER01]> — type this at that trader console's prompt.
  • [GW_ADMIN|ADMIN]> — type this at the operator console's prompt.
  • A plain $ or a bare command — type this in a normal shell.
  • [output] — expected output; exact wording may vary between versions.
  • — a checkpoint. Verify it before moving on; if it fails, the next exercise will not behave as described.

Choose Your Path

You do not have to complete all 29 chapters in one sitting. Because each chapter only assumes the ones before it, picking a goal below just means working through the sequence from chapter 00 and stopping where shown — everything up to that point is genuine prerequisite for what follows, so skipping ahead is not a shortcut, it just means an exercise stops working.

flowchart LR
    Start(["Why are you\nhere?"]) --> Trader["Learn to trade"]
    Start --> Operator["Run or operate a\nclassroom exchange"]
    Start --> Everything["Cover it all,\nincluding external\nprotocols"]

    Trader --> T1["Chapters 00 → 08"]
    T1 --> TDone(["Placing, amending,\ncancelling orders;\nauctions and TIFs"])

    Operator --> O1["Chapters 00 → 19"]
    O1 --> ODone(["Liquidity, risk\ncontrols, P&L, a full\nsession, admin tools"])

    Everything --> E1["Chapters 00 → 28\nin order"]
    E1 --> EDone(["Everything above, plus\nALF, BALF, CALF, RALF,\nREST/WebSocket, and\nthe market index"])

    style Start fill:#4a5568,stroke:#2d3748,color:#fff
    style TDone fill:#2f855a,stroke:#276749,color:#fff
    style ODone fill:#2f855a,stroke:#276749,color:#fff
    style EDone fill:#2f855a,stroke:#276749,color:#fff
Your goal Work through chapters What you'll have
Learn to trade — place, amend, and cancel orders; understand fills, TIFs, order types, and auctions 00–08 Everything a working trader needs day to day
Run or operate a classroom exchange — liquidity, risk controls, P&L, a full session, admin tools 00–19 Everything above, plus the operator's toolkit
Cover everything, including external protocols — bots and systems that talk to the exchange over ALF, BALF, CALF, RALF, REST, or WebSocket 00–28 The full training programme

There are two shortcuts worth knowing about: chapter 25 (the market index) only needs chapters 00–03, so if all you want is pm-index, you can jump to it early instead of working through the whole sequence — see the note at the end of Part 5. And chapter 28 (IPO valuation) needs only chapter 00 for its first six exercises; the last one also needs 00–03 and 07.

Training Plan

The chapter numbers below are the order to work through them in — they are grouped into five parts purely so you can find a topic quickly by browsing, but a part is not a self-contained unit: some parts' chapters are spread across the real sequence, interleaved with other parts.

flowchart LR
    subgraph seq["The real order (chapter numbers)"]
        direction LR
        g1["00–03\nFoundations"] --> g2["04–08\nTrading mechanics"]
        g2 --> g3["09–10\nLiquidity"]
        g3 --> g4a["11–13\nOperating"]
        g4a --> g4b["14\nLiquidity"]
        g4b --> g4c["15–19\nOperating"]
        g4c --> g5a["20\nExternal"]
        g5a --> g3b["21\nLiquidity"]
        g3b --> g5b["22–27\nExternal"]
        g5b --> g4d["28\nOperating"]
    end

Each row links to the lesson. The last column is the user-guide reading that backs it — skim it before the chapter, or use it afterwards as the reference.

Part 1 — Foundations

# Chapter You will be able to Pre-reading
00 Installation & Setup Install EduMatcher and know where its files live Installation, A Path Through the Guide
01 Configuring & Starting Up Author, verify, deploy a configuration; start the engine, scheduler and both consoles Configuration, Config Verifier, Running the Exchange
02 Setting Up Market-Maker Liquidity Seed a two-sided book so there is something to trade against Market Making, Market-Maker Bot
03 The First Trade Submit orders, read fills, follow an order's lifecycle ALF Console, Order Types

Part 2 — Trading mechanics

# Chapter You will be able to Pre-reading
04 Amending Orders Change price and quantity, and predict the effect on queue priority Order Amendment
05 Order Types Deep Dive Use MARKET, STOP, STOP_LIMIT, FOK, IOC, ICEBERG and TRAILING_STOP Order Types
06 Time-in-Force & Sessions Choose a TIF and predict how each session phase treats it Auctions & Scheduling
07 Auctions Run an auction and compute the equilibrium price by hand Auctions & Scheduling — Equilibrium price
08 Cancelling & Managing Orders Inspect and cancel resting orders; use the operator's bulk-cancel tools ALF Console, Exchange Commands

Part 3 — Liquidity and automation

# Chapter You will be able to Pre-reading
09 Market Making Run a two-sided quote by hand and inspect its legs Market Making
10 Combo Orders Submit multi-leg and OCO orders, and reason about leg risk Combo Orders
14 AI Traders & Swarm Generate realistic order flow for a demo or class AI Traders
21 Automation & MM Bot Tuning Script operator workflows and tune pm-mm-bot Exchange Commands, Market-Maker Bot

Part 4 — Operating the exchange

# Chapter You will be able to Pre-reading
11 Risk Controls Configure and trigger collars, circuit breakers, halts and the kill switch Risk Controls
12 P&L & Clearing Read positions, VWAP cost and realized/unrealized P&L P&L & Clearing
15 Statistics & Reporting Query OHLCV, trades and snapshots for analysis Statistics and Reporting
16 Persistence & Recovery Say what survives a restart, and verify it Persistence, Audit Trail
17 Capstone Scenario Run a full session end to end, combining everything above Running the Exchange
18 Exchange Observer Processes Compare the book, tape, order monitor, audit trail, stats and clearing views side by side Processes
19 Advanced Admin Operations Use KICK, QCANCEL, CANCEL_SYM and manual session overrides Exchange Commands
28 IPO Valuation Price an IPO, then list it and let the opening auction judge the price IPO Valuation, Listing a New Symbol

Part 5 — External connectivity (integration track)

These chapters are about connecting other software to the exchange over its wire protocols and APIs.

# Chapter You will be able to Pre-reading
13 Market Data & Drop Copy Explain the market-data and drop-copy feeds and watch them Drop Copy, DC Gateway
20 Drop-Copy Replay & Recovery Detect sequence gaps and recover a consumer Drop Copy — Replay
22 RALF Post-Trade Protocol Write a clearing, drop-copy or audit consumer RALF Gateway, RALF Protocol
23 CALF Market-Data Protocol Write a market-data consumer with snapshots and replay CALF Gateway, CALF Protocol
24 API Gateway REST/WebSocket Trade and query over REST, and stream over WebSocket API Gateway, REST API Reference
25 Market Index (pm-index) Run an index and apply corporate actions without disturbing its level Market Index, Index Admin CLI
26 ALF TCP Gateway Speak ALF over a raw socket ALF Gateway, ALF Protocol
27 BALF TCP Gateway Speak the binary order-entry protocol BALF Gateway, BALF Protocol

Chapter 25 can be taken out of order

Every chapter above requires all chapters before it — except chapter 25 (Market Index), which only needs chapters 00–03. Its natural reading partner is Statistics & Reporting (chapter 15) — pm-index history is queried the same way. It is numbered 25 because that is where it was written, between the API Gateway and ALF Gateway chapters; treat the number as an ordering convenience, not a dependency on chapters 04–24. Chapter 28 (IPO Valuation) is the other exception: see its Prerequisites.

Quick Reference

After completing the training, use the User Guide and Glossary for day-to-day reference.