Sign inSign up

malciller/dio-domains

By malciller

Updated 1 day ago

OCaml 5 multicore trading engine. Ladder and market-making strategies.

Image
1

485

malciller/dio-domains repository overview

dio is a trading engine written in OCaml 5. It runs a ladder strategy and a top-of-book market maker on Kraken, Hyperliquid, Lighter, Interactive Brokers, and Alpaca.

Each asset runs in its own OCaml domain. Orders go through a lock-free executor, market data lands in lock-free ring buffers, and position size comes from a capital-survival oracle that uses each asset's all-time drawdown. The dashboard is a terminal UI that attaches over a Unix socket.

Pull it:

docker pull malciller/dio-domains:latest

Tags: latest, v0.1.4. linux/amd64 only, so Apple Silicon runs it under emulation.

The image ships with no config. Take the examples out, edit them, then start it:

IMAGE=malciller/dio-domains:latest
docker run --rm -v "$PWD:/out" --entrypoint cp $IMAGE /usr/share/doc/dio/config.example.json /out/config.json
docker run --rm -v "$PWD:/out" --entrypoint cp $IMAGE /usr/share/doc/dio/.env.example /out/.env
docker run --rm -v "$PWD:/out" --entrypoint cp $IMAGE /usr/share/doc/dio/compose.yaml /out/compose.yaml

# edit config.json and .env
docker compose up -d

It trades real money. No warranty. Test on a testnet first.

Docs: https://diophantsolutions.com/dio/

Code and issues: https://github.com/malciller/dio-domains

MIT licensed.

Tag summary

Content type

Image

Digest

sha256:e8a5d5b18

Size

62.5 MB

Last updated

1 day ago

docker pull malciller/dio-domains