Multi-Meeting Rate Path Trading: Combining SOFR Futures with Kalshi Event Contracts
Overview #
Most traders who follow Fed policy gravitate to one of two instruments: CME Fed Funds Futures (ZQ) or Kalshi event contracts. Both encode the same policy signal, but they do it differently — and that difference is the trading edge.
ZQ prices the expected monthly average of the Effective Federal Funds Rate. Kalshi prices the probability of a discrete outcome at a specific FOMC meeting. These are related but not interchangeable, and the gap between them — when it exceeds friction — is tradeable.
This article goes deeper than the FOMC day trade. It covers the instruments you need for multi-meeting rate path construction, the math that bridges prediction markets to futures pricing, and the five scenarios where combining both creates asymmetric edge. Prerequisite: you should already understand how ZQ contracts work and the basics of Kalshi event contract mechanics. If not, start with the Fed Funds Futures ZQ guide and the Introduction to Prediction Markets.
Key Concepts #
SOFR vs Fed Funds: Not Interchangeable
SOFR — the Secured Overnight Financing Rate — is the rate on overnight repurchase agreements collateralized by Treasury securities. The Effective Federal Funds Rate (EFFR) is the volume-weighted rate on overnight unsecured bank reserves lending. Both track Fed policy closely, but SOFR carries no credit risk (it's secured), so it sits 5-8 basis points below EFFR in normal conditions.
CME 3-Month SOFR Futures (SR3) settle against the compounded average SOFR over a calendar quarter. CME 30-Day Fed Funds Futures (ZQ) settle against the average EFFR over a calendar month. For single-meeting event trading, ZQ is the right instrument — its monthly window captures exactly one FOMC meeting cycle. For multi-meeting path trading across 2-3 meetings, an SR3 strip is more efficient because it encodes 3 months of compounding expectations in one contract.
On Kalshi, SOFR contracts ask whether the 3-month SOFR fixing will end above or below a specific threshold at quarter-end. These are path contracts, not event contracts — they're sensitive to how rates move across the full quarter, not just at one meeting. This makes them natural companions to SR3 futures for complex multi-meeting views. See the SOFR (SR3) Futures complete guide for full contract mechanics.
SOFR vs EFFR in plain terms: SOFR is secured (Treasury-backed overnight repo). EFFR is unsecured (bank-to-bank reserve lending). SOFR runs 5-8 bps cheaper in normal markets because it has no credit risk. When SOFR spikes above EFFR, something unusual is happening in secured funding — that's your signal to pause any cross-instrument trades.
The Month-Weighting Problem
This is the single biggest source of confusion between ZQ-derived probabilities and Kalshi prices. ZQ encodes a monthly average, not a post-meeting rate. When traders quote "CME FedWatch says 78% cut," that number has already done the month-weighting math. Kalshi prices the meeting directly. They should diverge based on meeting timing within the month — and they do, by exactly the amount the math predicts.
The formula: if the FOMC meeting falls on day D of an N-day month, with N-D days remaining after the meeting:
E[r_monthly] = (D/N) × r_pre + ((N-D)/N) × r_post
Rearranging to solve for implied post-meeting rate:
r_post = (E[r_monthly] - (D/N) × r_pre) × (N/(N-D))
Then the meeting probability formula for a cut scenario (two discrete outcomes: hold at r_0 or cut to r_1):
p = (r_0 - r_post) / (r_0 - r_1)
Example: ZQ September at 95.42 implies 4.58% average. Meeting falls September 18th (17 pre-meeting days, 13 post-meeting). Current EFFR 4.83%. Solving: r_post = (4.58% - (17/30)×4.83%) × (30/13) = 4.25%. That's a 25bp cut result. Probability = (4.83% - 4.58%) / (4.83% - 4.25%) = 43%.
If Kalshi prices the "cut" contract at 50¢, there's a 7-cent gap — well above the ~3.3¢ round-trip friction. That gap is the trade.
FedWatch isn't your model. CME FedWatch uses a simplified month-weighting that diverges from the full formula above — especially for meetings in the first half of the month. FedWatch can be off by 5-10 percentage points in those cases. Run the math yourself. The edge lives in the gap between FedWatch's shortcut and the real probability.
Path Probability vs Individual Meeting Probability
Individual meeting contracts on Kalshi price each decision independently. But from a futures perspective, what matters is the distribution of paths across multiple meetings — because that's what SR3 contracts encode. A September SR3 contract prices the average SOFR over the full Q3, which depends on July and September FOMC decisions combined.
The disconnect: individual meeting markets can each look fairly priced while the joint multi-meeting path distribution is mispriced. This happens because prediction market participants focus on one meeting at a time, but futures traders price the full path.
As @SMCJB noted in the General bond / interest rate discussion, Fed Funds, Eurodollars, and SOFR contracts all price as 100 minus the interest rate — the same mechanic — but settlement mechanics differ substantially between them. Miss those differences and you get surprised by basis moves on a trade you thought was simple.
Liquidity Thresholds
Kalshi rate contract liquidity follows a predictable pattern: thin at 10+ days out, building from D-6, peaking at D-2 to D-4, then collapsing as the meeting approaches. The practical threshold is $50,000 in open interest — below that, bid/ask spreads are too wide for reliable fills. Best entries are D-4 to D-2 where OI typically reaches $140K-$210K with 1-2¢ spreads. At D-1, spreads blow out. At D-0, Kalshi halts trading approximately 45 minutes before the Fed announcement.
See the Getting Started on Kalshi guide for account setup and funding details before your first rate contract trade.
How It Works: The ZQ-to-Kalshi Bridge #
Extracting Meeting Probability from ZQ
Start with the ZQ contract for the month containing the FOMC meeting you're analyzing. The 100-minus-price gives you the implied average EFFR for that month. Then apply month-weighting to isolate what rate the market implies after the meeting. Finally, map that implied post-meeting rate to meeting probabilities using the formula above.
The key assumptions this requires: (1) the only rate-moving event in the month is the FOMC meeting, (2) outcomes are discrete (hold/cut/hike), and (3) you know the pre-meeting EFFR. When CPI surprises or NFP shocks occur mid-month, these assumptions break — which is exactly when the speed-of-information trade becomes available.
Building the Multi-Meeting State Tree
Once you have single-meeting probabilities for each upcoming FOMC meeting, you can construct a state tree. Each node represents a rate level after a meeting. Each branch carries the probability of that outcome. Path probability is the product of all branch probabilities along that path.
For July (60% cut, 35% hold, 5% hike) and September (given cut in July: 35% cut, 60% hold, 5% hike), the "cut-cut" path probability is 60% × 35% = 21%. The "cut-hold" path is 60% × 60% = 36%. The "hold-cut" path is 35% × 40% = 14%.
Now check Kalshi's cumulative path contracts. If a "two cuts by September" contract trades at 15¢, but your tree says 21% probability — that's a 6-point gap. After ~3.3¢ friction, you're looking at roughly 2.7¢ net edge per contract. With position sizing, that's real money.
When the SR3 Strip Disagrees with ZQ
An SR3 quarterly contract encodes the compounded average SOFR over 90 days. If you price the expected SOFR path using your state tree and compare to where SR3 trades, you get a different angle on the same signal. SR3 discrepancies often appear when the market hasn't fully processed the path implications of a shift in single-meeting probabilities — the futures markets update sequentially, not simultaneously.
The trade: if your tree says the Q3 SOFR average should be 4.38% but SR3 prices it at 4.42%, that's a 4-tick discrepancy worth $50 per contract. Layer in position size and the edge compounds. The hedge is ZQ (to isolate the path mismatch from the single-meeting directional risk).
Practical Application: Five Tradeable Scenarios #
Scenario 1: Single-Meeting Dislocation After Data
CPI prints hotter than expected at 8:30 AM. Kalshi's "cut" contract drops from 72¢ to 65¢ within 90 seconds. ZQ hasn't fully repriced yet — it's still reflecting the pre-print expectation. The gap between Kalshi's new implied probability and ZQ's stale price is your entry window.
Execution: use Kalshi's faster repricing as the signal, then enter ZQ in the same direction as confirmation. Close the ZQ position when it converges with Kalshi at the 4-6 minute mark. The Kalshi position either rides the binary event or gets closed at a premium to your entry.
As @SMCJB analyzed in the Wall Street macroeconomic discussion: "The Z25 contract closed at 96.35 last night which implies a Fed Funds rate of 3.65% in December. Current rate is 4.33%." That kind of ZQ read is exactly the month-weighting conversion described above. The gap to Kalshi's event-specific pricing is what turns the read into a trade.
Scenario 2: Multi-Meeting Path Mismatch
Each individual meeting contract looks fairly priced. July at 60% cut, September at 55% additional cut. But when you build the state tree, the combined "two-cut" path probability is 33%, while Kalshi's cumulative contracts price it at 25%. That 8-point gap is not accessible from any single-meeting trade — you can only see it by combining the tree math with the cumulative contract pricing.
Trade: buy the cumulative "two cuts by September" contract at 25¢. Hedge directional rate exposure with ZQ (short, since you're long a cut view). Close at convergence as the cumulative market catches up to the tree implied probability. This is the core multi-meeting arbitrage.
Scenario 3: Tail Event Isolation
The consensus is 90% hold, 5% cut, 5% hike. You think the hike probability is underpriced at 5¢ — your analysis says 8-10% based on recent inflation data and Fed language. You want the tail, but you don't want to run naked short-rate exposure.
Solution: buy 100 "hike +25bp" Kalshi contracts at 5¢ ($500 total risk). Short 2 ZQ contracts to hedge ~80% of the directional rate sensitivity. If the hike occurs: Kalshi pays $10,000, ZQ hedge loses ~$2,400, net +$7,100 (+1,420% on capital at risk). If hold: Kalshi expires worthless (-$500), ZQ hedge gains ~$200, net -$300 (-60%). The hedge transforms a speculative binary bet into an asymmetric probability play with defined risk.
Scenario 4: Reaction-Function Trade
FOMC statement language shifts — the word "gradual" disappears, or the dot plot shows a higher median than expected. This changes the reaction function for subsequent meetings before participants can fully price it into the multi-meeting futures curve. Kalshi individual meeting contracts respond within minutes. The SR3 strip takes longer because it requires a coherent re-assessment of the entire path.
The window: in the 15-30 minutes after the statement release, build a position in SR3 strip contracts that reflects the new path implied by the updated individual meeting probabilities. Close when the strip catches up to the implied path.
Scenario 5: Cross-Market Confirmation
Not all divergences are opportunities — some are information signals. When ZQ, SR3, and Kalshi all converge on the same probability reading, conviction is high enough to size up. When one venue diverges from the others, it's either stale pricing (temporary opportunity) or genuine information asymmetry.
The rule: check all three before entering. If Kalshi and ZQ agree but SR3 disagrees, it's likely a path-vs-event mismatch worth trading. If ZQ and SR3 agree but Kalshi is different, check open interest — thin liquidity causes price distortion that isn't a real signal.
— using ZQ as the primary rate signal and treating faster-moving instruments as secondary confirmation is the right framework.
Execution and Risk Management #
Position Sizing for Prediction Market Rate Contracts
Kalshi rate contracts are binary — $0 or $100. A position of 100 contracts at 20¢ risks $2,000 and can pay $10,000. Kelly Criterion applies: if your edge is 5 percentage points above the implied probability (you think 25% vs 20¢ market price), Kelly says bet approximately (0.25 - 0.20) / (1 - 0.20) = 6.25% of your prediction market capital. Don't oversize on Kalshi — the binary nature means full loss is a real outcome on any single position.
For ZQ, each tick ($41.67) at standard contract size is meaningful. The hedge ratio for a Kalshi-ZQ pair trade isn't 1:1 — it depends on the sensitivity of the Kalshi contract price to a rate move, which changes as the event probability moves. At 50% (maximum uncertainty), the rate sensitivity is highest. At 5% or 95%, it's low. Adjust the ZQ hedge size so as the probability shifts.
For a deeper dive into how binary contracts are priced and how settlement works, the Event Contract Settlement Mechanics guide covers Kalshi's resolution process in detail.
Settlement Risk and Contract Definitions
This is where many traders get burned. Kalshi FOMC contracts settle on the announced target range, not on the EFFR itself. There's a small timing difference: Kalshi settles at announcement (2 PM ET), ZQ settles on the monthly average EFFR computed over the full month. Your hedge isn't a perfect hedge — there's a residual EFFR-to-announcement basis.
For SOFR contracts specifically, Kalshi settles against the NY Fed's published 3-month average, while SR3 settles against the compounded index. These are very close but not identical. For most trades the basis is negligible. During unusual funding stress (like regional banking volatility in 2023 when SOFR spiked relative to EFFR), the basis matters much.
@CannonTrading covered the key difference between SOFR and the Eurodollar contracts it replaced in the SOFR transition discussion: SOFR measures the cost of borrowing U.S. dollar cash overnight using Treasury securities as collateral — that secured nature is what keeps the SOFR-EFFR basis tight in normal conditions and explains why basis blowouts are a funding stress signal.
When to Use SOFR vs ZQ
Use ZQ when: expressing a view on one specific FOMC meeting's binary outcome; pairing with Kalshi event contracts for single-meeting divergence plays; trading around the announcement itself.
Use SR3 when: expressing a view on the rate path across an entire quarter; building multi-meeting relative value positions; hedging duration sensitivity in a rate path trade.
Use both when: building a complex view across multiple meetings where both the binary event and the path matter; trading the reaction-function shift after a surprise statement; constructing the full hedge for a Kalshi tail event position.
Common Execution Mistakes
The most common mistake is entering Kalshi rate contracts at D-1 or D-0. Spreads are 5-10¢ at that point — you're giving up half your edge before the trade starts. Best practice: enter at D-4 to D-2 when OI exceeds $100K and spreads are 1-2¢. Use limit orders at the midpoint of the spread.
The second most common mistake is treating the month-weighting conversion as optional. If the meeting falls in the last third of the month, the effect is minimal. If it falls in the first half, the weighting much changes the implied probability. Always compute it before comparing ZQ-implied probability to Kalshi price.
Third: using market orders on ZQ around data releases. ZQ spreads widen to multiple ticks during CPI, NFP, and FOMC announcements. Limit orders only — know your acceptable fill range before the print, not after it.
Multi-Meeting Path Construction: Step-by-Step #
Step 1: Pull ZQ contracts for each month containing an FOMC meeting in your horizon (next 2-3 meetings). Calculate implied monthly average rates using 100 - price.
Step 2: Apply month-weighting to each ZQ contract. This gives you the implied post-meeting rate for each meeting date.
Step 3: Map implied rates to meeting probabilities. Define discrete outcome scenarios (hold/cut 25bp/cut 50bp/hike 25bp) — exclude options below 1% probability to keep the tree tractable.
Step 4: Build the state tree. Each branch carries its meeting probability. Multiply along paths to get path probabilities.
Step 5: Compare to Kalshi cumulative contracts. Find contracts pricing cumulative outcomes. Calculate model-implied probability from your tree.
Step 6: If model probability exceeds Kalshi price by more than 3.3¢ (friction), the trade is viable. Size based on Kelly, enter at D-4 on limit orders, hedge directional exposure with ZQ.
Step 7: Monitor and update. The tree changes as new data arrives. If the gap narrows before expiration, close early and take the profit.
The SOFR-EFFR Basis: When It Matters #
In normal conditions, the 5-8 bp SOFR-EFFR basis is stable and predictable. It widens when credit risk or funding stress appears in the overnight market. During the March 2023 regional bank stress, SOFR spiked relative to EFFR as secured funding demand surged. Anyone holding SOFR prediction market contracts anchored to EFFR assumptions got caught.
The practical rule: monitor SOFR-EFFR basis before building positions involving both instruments. The NY Fed publishes daily rates. A basis above 15 bps is unusual and warrants caution. A basis below 3 bps might indicate pricing anomalies in one market. Normal range: 5-8 bps.
As @SMCJB's analysis in the Treasury Yield Futures thread demonstrates when discussing yield curve instruments: the relationship between different short-end rate instruments requires careful attention to the specific reference rates and settlement mechanics, not just the headline price level. The 2021 SOFR volume data @SMCJB cited — SOFR futures ADV at 531K contracts, 26% of Eurodollar volume, with single-day records of 784K — shows how quickly the market migrated to the new benchmark once liquidity was there.
What Doesn't Work #
Pure arbitrage between Kalshi and ZQ. These instruments have different settlement timing, different underlying reference rates, and different liquidity profiles. The gap between them is not risk-free arbitrage — it's relative value with residual risks. Treat it as such.
Holding Kalshi contracts through the meeting on thin liquidity. If you can't exit at a fair price before the Kalshi halt, you're stuck with a binary event outcome. That's a different risk profile than the path trade you thought you were running.
Building a static tree. A CPI print or a hawkish Fed speaker changes the branch probabilities. Update the tree every time significant macro data arrives — the market does, even if you don't.
Assuming CME FedWatch probability equals your model probability. FedWatch uses a simplified calculation that doesn't apply the full month-weighting math. For meetings in the first half of the month, FedWatch can be off by 5-10 percentage points. Do the math yourself.
Limitations and Risks #
Model risk is real. The state tree assumes discrete outcomes and independent meeting probabilities. A surprise 50bp cut in July changes everything for September. Your conditional probabilities need updating, not just the path weights.
Platform risk: Kalshi is regulated but relatively new. Settlement disputes have occurred on ambiguously worded contracts. Always read the contract specification before trading — the reference rate, settlement time, and resolution logic can differ from the headline description.
Capital efficiency mismatch: ZQ requires significant margin (~$1,300 per contract). For large path trades, the ZQ margin requirement can be the binding constraint. Size your position in ZQ terms, not Kalshi terms.
Liquidity at close: Kalshi rate contracts can be difficult to exit at fair value in the final 24 hours before the meeting. Plan your exit window at D-2 to D-3 while OI is still healthy.
Conclusion #
The gap between prediction market event contracts and CME rate futures is a tradeable instrument in its own right. The month-weighting math bridges the two. The multi-meeting state tree finds the mispricing. The ZQ hedge isolates the event probability from directional rate risk.
Done right, this is one of the more intellectually rigorous trades available to active futures traders. It requires genuine understanding of how rate expectations are encoded in different instruments, careful attention to settlement mechanics, and disciplined position sizing. But the edge is real, repeatable, and scales with position size in ways that pure event contracts cannot.
The tools are ZQ for single-meeting bridges, SR3 strip for path construction, and Kalshi for binary event exposure. Use each for what it does well. Combine them when the opportunity spans multiple horizons. And always do the month-weighting math — it's the difference between trading the right signal and trading a shadow of it.
Knowledge Map
Prerequisites
Understand these firstGo Deeper
Build on this knowledgeReferences This Article
Articles that build on this topicCitations
- — General bond / interest rate discussion (2021) 👍 3“Fed Funds, Eurodollars and SOFR contracts all price as 100 minus the interest rate. Hence an interest rate of 0.5% equals a price of 99.5.”
- — FOUR more NEW MICRO's - Micro Treasury Yield Futures coming 16 Aug'21 (2022) 👍 15“SOFR futures ADV has jumped to 531K contracts 26% of Eurodollars. SOFR futures volume hit a record 784K contracts on Jan. 11.”
- — Is the WH trying to engineer a recession? This Wall Street pro explains the vision (2025) 👍 2“The Z25 contract closed at 96.35 last night which implies a Fed Funds rate of 3.65% in December. Current rate is 4.33%.”
- — Spoo-nalysis ES e-mini futures S&P 500 (2022) 👍 5“I looked at the fed funds futures for November, priced as 100-{price} as the average daily rate for the month”
- — Sofr (2023) 👍 1“Three-Month Secured Overnight Financing Rate (SOFR) Futures. SOFR measures the cost of borrowing U.S. dollar cash overnight using Treasury securities as collateral.”
- — Secured Overnight Financing Rate Data (2024)
- — Understanding CME FedWatch Tool (2024)
