Crypto exchange order book database schema

How a centralised crypto exchange models its data: trading pairs, limit orders resting on the book, maker and taker trades, available versus locked balances, on-chain deposits and withdrawals, fee tiers and order book snapshots.

Crypto Exchange ER diagram

Crypto exchange order book database schema n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 n1 users idBIGINT emailVARCHAR handleVARCHAR country_codeCHAR kyc_levelSMALLINT fee_tier_idBIGINT statusVARCHAR two_factor_enabledBOOLEAN created_atTIMESTAMPTZ assets idBIGINT symbolVARCHAR nameVARCHAR asset_classVARCHAR decimalsSMALLINT chainVARCHAR contract_addressVARCHAR confirmations_req…SMALLINT min_withdrawal_ba…NUMERIC deposits_enabledBOOLEAN withdrawals_enabl…BOOLEAN markets idBIGINT symbolVARCHAR base_asset_idBIGINT quote_asset_idBIGINT statusVARCHAR min_order_baseNUMERIC step_size_baseNUMERIC tick_size_quoteNUMERIC listed_atTIMESTAMPTZ delisted_atTIMESTAMPTZ wallet_balances user_idBIGINT asset_idBIGINT available_baseNUMERIC locked_baseNUMERIC updated_atTIMESTAMPTZ balance_locks idBIGINT user_idBIGINT asset_idBIGINT lock_typeVARCHAR order_idBIGINT withdrawal_idBIGINT amount_baseNUMERIC released_baseNUMERIC statusVARCHAR created_atTIMESTAMPTZ released_atTIMESTAMPTZ fee_tiers idBIGINT tier_levelSMALLINT nameVARCHAR min_30d_volume_qu…NUMERIC maker_fee_bpsINTEGER taker_fee_bpsINTEGER effective_fromDATE orders idBIGINT user_idBIGINT market_idBIGINT client_order_idVARCHAR sideVARCHAR order_typeVARCHAR time_in_forceVARCHAR post_onlyBOOLEAN price_quoteNUMERIC quantity_baseNUMERIC filled_baseNUMERIC quote_spentNUMERIC statusVARCHAR fee_tier_idBIGINT sequence_numberBIGINT created_atTIMESTAMPTZ canceled_atTIMESTAMPTZ trades idBIGINT market_idBIGINT maker_order_idBIGINT taker_order_idBIGINT trade_referenceVARCHAR price_quoteNUMERIC quantity_baseNUMERIC quote_amountNUMERIC maker_fee_baseNUMERIC taker_fee_baseNUMERIC taker_sideVARCHAR sequence_numberBIGINT executed_atTIMESTAMPTZ deposits idBIGINT user_idBIGINT asset_idBIGINT deposit_addressVARCHAR transaction_hashVARCHAR output_indexSMALLINT amount_baseNUMERIC confirmationsSMALLINT block_heightBIGINT statusVARCHAR detected_atTIMESTAMPTZ credited_atTIMESTAMPTZ withdrawals idBIGINT user_idBIGINT asset_idBIGINT idempotency_keyVARCHAR destination_addre…VARCHAR destination_tagVARCHAR amount_baseNUMERIC network_fee_baseNUMERIC net_amount_baseNUMERIC statusVARCHAR transaction_hashVARCHAR reviewed_atTIMESTAMPTZ requested_atTIMESTAMPTZ broadcast_atTIMESTAMPTZ confirmed_atTIMESTAMPTZ balance_entries idBIGINT user_idBIGINT asset_idBIGINT entry_typeVARCHAR trade_idBIGINT deposit_idBIGINT withdrawal_idBIGINT amount_baseNUMERIC balance_after_baseNUMERIC created_atTIMESTAMPTZ order_book_snapshots idBIGINT market_idBIGINT sequence_numberBIGINT bidsJSONB asksJSONB depth_levelsSMALLINT mid_price_quoteNUMERIC captured_atTIMESTAMPTZ

Related database schemas