kalshi. It was tested with kalshi-typescript.
Connect
Node
ancha connect kalshi --lang ts prints. The timestamp’s age is not checked.
Endpoints
All 25 endpoints are partial. Anything else returns HTTP 501 withx-ancha-gap: 1.
Starter data
Thekalshi-starter dataset is the account Acme treasury, funded with one 20,000 USD deposit, and three series with open markets whose books hold other traders’ resting bids.
The account holds five orders on the Fed and CPI markets: two filled bids and one filled ask on “Cut 25bps”, a partly filled and canceled bid on “Above 3.1%”, and a resting bid on “Above 2.9%”. Their fills, positions and fees are in the portfolio.
Checks
Kalshi has no state checks. Use trace checks, for example{ called: "POST /trade-api/v2/portfolio/events/orders" } or { not_called: "DELETE /trade-api/v2/portfolio/events/orders*" }.
Limits
- Requests are signed with RSA-PSS as on Kalshi; the timestamp’s age is not checked.
- Orders trade against other traders’ resting bids seeded with the scene, at the resting price, with Kalshi’s fee. Nobody else trades unless the scene says so, and no money moves.
- Primary subaccount only. No order groups, RFQs or quotes, candlesticks, historical data, WebSockets or FIX.