betting_combat.trading.ledger
What the trading run records: orders, fills and settlements — and the one rule that turns a filled order plus Kalshi’s result into P&L.
Money committed by an order is what was actually paid: filled contracts times
the average fill price, plus the fee Kalshi charged the order. A settlement
pays each contract its outcome’s value: 1 or 0, or for a cancelled fight
(result scalar) the settlement value Kalshi publishes.
Classes
FillRecord
OrderRecord
with_fill
with_fill(status: OrderStatus, filled_count: float, avg_fill_price: float | None, fees: float, acked_at: dt.datetime, venue_order_id: str | None = None, error: str | None = None) -> OrderRecordSettlementRecord
Functions
fill_status
fill_status(filled: float, count: int) -> OrderStatussettle
settle(order: OrderRecord, market_result: MarketResult, payout_per_yes: float, at: dt.datetime) -> SettlementRecordSettle one order’s filled contracts against the market’s official result.