risk_reversal_skew.
Websocket access for personal use is only available through the Advanced plan.
You can find fully-functional examples that stream data from many channels here:
- Python: https://github.com/unusual-whales/api-examples/tree/main/examples/ws-multi-channel-multi-output
- Javascript: https://github.com/unusual-whales/api-examples/tree/main/examples/ws-multi-channel-multi-output-nodejs
wss://api.unusualwhales.com/socket?token=<YOUR_API_TOKEN>
then join the risk_reversal_skew channel.
Each message carries the risk reversal skew — the put implied volatility minus the call
implied volatility — at one delta bucket for one expiry of one ticker. A positive value
means puts are more expensive than calls, the usual state for equity index options.
Delivery characteristics
Read these before writing a client, they are not obvious from the payload:- Updates arrive in a batch at most every ~30 seconds, not continuously.
- The channel is only live between 04:00 and 16:00 ET. Outside that window nothing is published at all and the socket is silent. This is expected, not a fault.
- One message per (ticker, expiry, delta) pair. Because this is a global channel covering the whole option universe and each ticker has many expiries, every batch is a large burst of messages. Your client must read from the socket promptly: a slow consumer is not disconnected, but frames it fails to keep up with are dropped.
- Only two delta buckets are published:
25and10.
/stock/:ticker/historical-risk-reversal-skew
endpoint, which returns the identical value under the same risk_reversal name. Note only
that the REST endpoint renders it as a decimal string, while this channel sends a JSON number.
Payload format:
