Skip to content

Explanation

Understand concepts and design decisions behind FLOX. These pages are language-agnostic; code samples use tabs where they help.

Overview

Topic What You'll Learn
Architecture How components fit together
Bar Types Time, tick, volume, range, Renko, Heikin-Ashi — when to use which
Disruptor Pattern Why we use ring buffers (system-level, C++ internals)
Memory Model Zero-allocation event delivery (system-level, C++ internals)
Integration Flow End-to-end data flow through the system
Indicators What each indicator measures and when to use it
Venue types How a venue type (CEX, AMM, hybrid) drives pricing and settlement routing
Per-symbol scale How fixed-point price/quantity scale is chosen per symbol for DEX-range tokens
On-chain order lifecycle Pending, reverted, and gas-replaced states for DEX orders
Liquidity-provision signals Provide and withdraw signals for AMM pool positions
Position valuation The hook for nonlinear (LP, option) position valuation
AMM pricing in backtests Constant-product pool pricing, slippage, and price impact for DEX swaps
Market-making quoter Two-sided quote ladder with inventory skew and requote tolerance
AMM DEX connector Presenting a constant-product pool through the connector interface
Replay-equivalence gate The CI check that defends deterministic backtest replay

When to read these

  • Before diving deep into customization
  • When you want to understand design trade-offs
  • If you're debugging performance issues

A note on language

Some explanation pages — Disruptor Pattern, Memory Model — describe internals of the C++ engine itself. Code in those pages is C++ because that is the implementation. If you only use the Python, Node.js, or Codon bindings you can read them as background; the bindings expose the relevant behaviour through their own APIs without you needing to touch C++.