- Strategies in C++ or PythonPython hooks marked
@fastmm.hotcompile to machine code with Numba. - One strategy file for backtest and liveReplays are deterministic, and the simulated exchange models queue position.
- Account poolsSeveral sub-accounts trade behind one venue, and orders spread across them.
- GatewayOne
fastmm-gatewayholds the exchange connections; several strategy processes attach to it and can stop or restart without dropping them. - Live control
fastmm-ctlchanges a running session's parameters without a restart. - Low-latency tuningHost and network tuning built in, such as core pinning and kernel bypass.
Quickstart¶
python3 -m venv .venv && . .venv/bin/activate
pip install "fastmm-engine[hot]"
fastmm init my-mm && cd my-mm
python backtest.py
The wheel needs Linux x86-64 and CPython 3.10 or later, and no keys. On Debian and Ubuntu, sudo apt install python3-venv first. To build the C++ programs, see Install.
The same strategy trades live against the simulated exchange on this machine:
pip install "fastmm-engine[live]"
fastmm sim &
python -m fastmm run strategy:MyMm --config sim.toml --duration 60s
Films¶
FastMM in two minutes
What a market maker does, and what FastMM does for one.
The fastest trader wins
Why the quote that moves first keeps the fill.
One tick through the engine
From the market-data packet to the order on the wire.
Where to go next¶
- Quickstart: a strategy, a backtest and a live session against the local exchange.
- Your first market maker: a C++ strategy from its header to Binance Demo, in nine steps.
- Quote on one venue, hedge on another: run
xmmon Binance Demo. - Run on a testnet or Binance Demo: keys, a dry run and a first keyed session.
- Account pools: several accounts of one exchange behind one venue.
- Run in production: what to set before a keyed session runs unattended.
- Low-latency TCP: busy polling and kernel bypass for order entry.
- How FastMM works: the engine thread, the path of one event and what it guarantees.
- How fast it is: one production session's latency from market data to order, and its load.
- Benchmarks: the engine alone, on one machine.

