Skip to main content
The common.predictions.kalshi_trades table provides comprehensive trade data from Kalshi prediction markets. Each row represents a single trade with details about the market ticker, contract quantity, pricing, and trade sides. Use this table to analyze trading patterns, market volumes, price discovery, and participant behavior across Kalshi prediction markets.

Table Columns

Data Precision Notes:
  • Prices are stored as floats on a 0-1 scale (e.g., 0.65 = $0.65)
  • Each contract is worth $1 at settlement
  • Trade Volume in USD = num_contracts * taker_price
Unique Key: trade_id
Column NameData TypeDescription
projectVARCHARProject identifier, always ‘kalshi’.
protocolVARCHARProtocol identifier, always ‘kalshi’.
trade_dateDATEDate of the trade (used for partitioning).
created_timeTIMESTAMP_NTZ(9)Timestamp when the trade was created.
trade_idVARCHARUnique identifier for the trade.
tickerVARCHARMarket ticker identifier for this trade.
num_contractsNUMBERNumber of contracts traded in this trade.
taker_sideVARCHARSide taken by the taker (yes or no).
maker_sideVARCHARSide taken by the maker (opposite of taker_side).
yes_priceFLOATPrice for “yes” outcome as a float (0-1 scale).
no_priceFLOATPrice for “no” outcome as a float (0-1 scale).
taker_priceFLOATPrice paid by the taker based on taker_side.
_created_atTIMESTAMP_NTZ(9)Timestamp of the entry creation on Allium’s database.
_updated_atTIMESTAMP_NTZ(9)Timestamp of the entry update on Allium’s database.

Sample Queries

  • Recent Trades
  • Daily Volume
Query recent Kalshi trades with market details:
select
  trade_id,
  ticker,
  num_contracts,
  taker_side,
  yes_price,
  no_price,
  taker_price,
  trade_date
from common.predictions.kalshi_trades
where trade_date >= current_timestamp - interval '7 days'
order by trade_date desc
limit 100

Understanding Trade Sides

  • taker_side: The outcome the taker is buying (yes or no)
  • maker_side: The opposite outcome (if taker buys yes, maker sells yes / buys no)
  • yes_price + no_price = 1.0 (they should sum to 1)
  • taker_price: The price paid by the taker, equal to either yes_price or no_price depending on taker_side
  • notional volume: The full USD volume moved due to the trade. Sum of the face value of contracts at redemption