{ "simulation": { "market_simulator": { "initial_positions": { "exchange": "COINBASE", "assets": { "BTC": 0.1, "ETH": 5.0, "USD": 10000.0 } }, "market_data": { "sources": [ { "loader_class": "cvttpy_trading.trading.mkt_data.time_series.loaders.sqlite_loader.SqliteMdLoader", "file_name": "/path/to/market_data.db", "table_name": "md_trades", "columns": [ "tstamp", "tstamp_ns as tm", "tstamp_ns as local_time_ns", "exchange_id", "instrument_id", "px as price", "qty as quantity", "trade_id", "condition as aggressor_side", "condition as taker_side" ], "time_column": "tstamp", "exchange_id": "COINBASE", "instruments": [ "PAIR-BTC-USD" ], "md_type": "TRADES" }, { "loader_class": "cvttpy_trading.trading.mkt_data.time_series.loaders.sqlite_loader.SqliteMdLoader", "file_name": "/path/to/market_data.db", "table_name": "md_booktops", "columns": [ "tstamp", "tstamp_ns as tm", "tstamp_ns as local_time_ns", "exchange_id", "instrument_id", "bid_price", "bid_quantity", "ask_price", "ask_quantity" ], "time_column": "tstamp", "exchange_id": "COINBASE", "instruments": [ "PAIR-BTC-USD" ], "md_type": "BOOK_TOP" } ], "api": { "web_socket": { "url": "ws://localhost:28080/ws" } } }, "order_entry": { "execution": { "execute_on": [ "BOOK_TOP", "TRADES" ], "top_only": true, "pricing_method": "BY_MKT_TRD_PRICE_BY_TRADE", "min_order_age_sec": 0.1, "fee_schedule": { "taker_fee_rate": 0.006, "maker_fee_rate": 0.004 } }, "api": { "web_socket": { "url": "ws://localhost:28081/ws" }, "REST": { "port": 28082, "base_url": "http://localhost:28082", "endpoints": { "new_order": ["POST", "/order"], "cancel_order": ["POST", "/cancel"], "cancel_all": ["POST", "/cancel_all"], "open_orders": ["GET", "/open_orders"], "order_status": ["GET", "/order_status"] } } } }, "accounting": { "api": { "REST": { "port": 28083, "base_url": "http://localhost:28083", "endpoints": { "positions": ["GET", "/positions"], "trades": ["GET", "/trades"] } } } } } } }