52 lines
2.5 KiB
TOML
52 lines
2.5 KiB
TOML
# polymaker global config. Secrets live in .env, never here.
|
|
# See the README.
|
|
|
|
[wallet]
|
|
# chain: Polygon mainnet
|
|
chain_id = 137
|
|
# signature_type — pick based on how your Polymarket account was created:
|
|
# 0 = EOA (funds held directly by your key; no proxy)
|
|
# 1 = email/magic proxy wallet
|
|
# 2 = older browser-wallet Gnosis Safe proxy
|
|
# 3 = POLY_1271 deposit wallet (the CURRENT architecture, ~June 2026+)
|
|
# If your UI shows a "deposit address", you almost certainly have a deposit
|
|
# wallet -> use 3. In every proxy case (1/2/3), BROWSER_ADDRESS is the DEPOSIT
|
|
# address (the funder that holds your pUSD), NOT your signing EOA and NOT the
|
|
# deployer/factory. Known SDK auth bugs live here (see the README) — `polymaker
|
|
# doctor` / `livetest` will tell you if you picked the wrong type.
|
|
signature_type = 3
|
|
clob_host = "https://clob.polymarket.com"
|
|
gamma_host = "https://gamma-api.polymarket.com"
|
|
data_api_host = "https://data-api.polymarket.com"
|
|
polygon_rpc = "https://polygon-bor-rpc.publicnode.com"
|
|
|
|
[engine]
|
|
debounce_ms = 250 # min gap between quote recomputes per market
|
|
quoter_tick_s = 60 # slow baseline refresh (reactions are event-driven); cool-off re-entry is precise
|
|
reconcile_interval_s = 20 # REST drift reconciliation cadence
|
|
catalog_refresh_s = 300 # market catalog rescan cadence (15 min)
|
|
heartbeat = true # exchange dead-man switch
|
|
heartbeat_interval_s = 5
|
|
journal = true # append raw WS/orders to journal/ for backtest
|
|
loop = "uvloop" # "uvloop" | "asyncio"
|
|
|
|
[risk]
|
|
max_total_exposure_usdc = 450.0 # sum of |position notional| + open buy notional
|
|
max_event_group_loss_usdc = 400.0 # neg-risk group worst-case loss cap
|
|
max_market_notional_usdc = 400.0 # per-market position+orders notional cap
|
|
daily_loss_kill_usdc = 40.0 # realized daily loss -> halt new quotes
|
|
ws_stale_halt_s = 10.0 # no book updates for this long -> halt market
|
|
user_ws_blind_halt_s = 15.0 # user WS down this long -> pull all quotes (can't see fills)
|
|
heartbeat_halt_failures = 3 # consecutive heartbeat misses -> halt + resync
|
|
max_order_error_rate = 0.25 # rolling order-post error fraction -> halt
|
|
|
|
[execution]
|
|
rate_budget_fraction = 0.25 # fraction of documented API limits we allow
|
|
post_only = true # every quote is post-only (maker-only mandate)
|
|
max_orders_per_batch = 15 # exchange batch cap
|
|
|
|
[paths]
|
|
db = "state.db"
|
|
journal_dir = "journal"
|
|
log_dir = "logs"
|