Summary
The Kalshi normalizer reads market.previous_price_dollars at normalizer.ts:81–82 to compute the 24-hour price change. The live Kalshi API no longer includes previous_price_dollars at the market level; the equivalent data is now split into previous_yes_ask_dollars and previous_yes_bid_dollars.
Affected field
market.previous_price_dollars — absent from live API response
Live API returns instead:
market.previous_yes_ask_dollars: float
market.previous_yes_bid_dollars: float
Code location
core/src/exchanges/kalshi/normalizer.ts:81–82 — reads market.previous_price_dollars for the priceChange24h calculation, with a fallback that returns 0 when the field is absent.
Severity
LOW — No crash. The fallback produces 0 for priceChange24h, so 24-hour price movement is always shown as flat for Kalshi markets.
Suggested fix
Replace market.previous_price_dollars with (market.previous_yes_ask_dollars + market.previous_yes_bid_dollars) / 2 (midpoint) or choose one side depending on convention.
Summary
The Kalshi normalizer reads
market.previous_price_dollarsatnormalizer.ts:81–82to compute the 24-hour price change. The live Kalshi API no longer includesprevious_price_dollarsat the market level; the equivalent data is now split intoprevious_yes_ask_dollarsandprevious_yes_bid_dollars.Affected field
market.previous_price_dollars— absent from live API responseLive API returns instead:
market.previous_yes_ask_dollars: floatmarket.previous_yes_bid_dollars: floatCode location
core/src/exchanges/kalshi/normalizer.ts:81–82— readsmarket.previous_price_dollarsfor thepriceChange24hcalculation, with a fallback that returns0when the field is absent.Severity
LOW — No crash. The fallback produces
0forpriceChange24h, so 24-hour price movement is always shown as flat for Kalshi markets.Suggested fix
Replace
market.previous_price_dollarswith(market.previous_yes_ask_dollars + market.previous_yes_bid_dollars) / 2(midpoint) or choose one side depending on convention.