

Discover more from Citrini Research
Risk/Reward and Scenario Analysis in Trading
A Brief Post-Mortem on a Successful Trade in SOFR Futures
I have been posting some of my more tactical positioning, things that aren’t going to fill a page, in the chat feature here for subscribers. It’s been a great week so far, sans a bit of donation to Market Makers while hedging for CPI.
Since the ADP Jobs report, I have been which very enthusiastic about the asymmetry presented in a long on December 2023 SOFR Futures. I rarely, if ever, “average down” into a position that is lower than my first entry but I did on this one, which should convey what my level of conviction was.
On 6/29, when the entire front end of the curve sold off in spectacular fashion as a response to the ADP jobs report, I booked the profit on the September put spread I had put on and went long Z3 (December 2023 contract) I took profits from having sold 5s on 2s5s10s and a SOFR put spread and put it all into long SFRZ3 futures after the ADP jobs report sent it down to 94.56. I later “averaged down” on this when Fed commentary sent it as low as 94.515, to 94.545 average cost.
Someone asked me whether December 2024 would have been a better long to put on when I did than the December 2023 contract I went with, and some others have asked me to talk about position sizing and risk management.
In light of that, I figured this was a good opportunity to do a bit of discussion about the most important thing you can possibly do in trading (and probably in life): accurately assessing risk versus reward.
Some basics (since a few of you seemed unfamiliar with the instrument), SOFR is the secured overnight financing rate that typically mirrors the lower bound of the Fed Funds Rate (with a spread). The way you measure the expectation of 3 month sofr at settlement is simple, just 100 minus the contract.
So, at 94.56, these contracts were pricing in 44bps of hikes by December. What does that mean in reality? An 88% chance of two 25bps hikes before the end of the year that bring the terminal rate to 5.5%. This was pricing that meant it was easy to make a call, which I did:
So why did I choose z3 over z4 when z4 represented, potentially, more significant upside for my view? It has less to do with the potential upside and more to do with framing the potential upside in terms of the potential downside.
Here was the low down on the trade, as I explained it when I doubled down on July 6th in the chat (again, please check it out if you’re a paid subscriber. We’ve got a cool community going on there. No politics or fintwit drama, just talking about stocks and macro and stuff. It’s what you thought fintwit would be when you first found it).
On Sunday evening I laid out this case and also that U7 would be a good long into the CPI print as rate expectations 4 years out had just gotten absolutely nuked. Another 10bps lower on U7 would have represented the market pricing in a not so slim possibility of rates staying above 4% out to 2027, and while I don’t know what will happen in 2027 I do know how people think in 2023 - especially with an easy comp CPI coming up. That wasn’t likely to happen. It’s much more comfortable here pricing in the low to mid 3s.
Also, totally unrelated to the discussion of the STIR trade and risk vs. reward but I also said it was the place to go long FXI calls, which is up almost 8% in 4 sessions (the August calls I lifted Friday and Monday are up to 36 from 13 and the larger position in further OTM calls I got at the end of May are finally above water again).
Anyway, back to breaking down the Z3 trade and risk/reward.
Scenario Analysis:.
Let’s say I was wrong and this didn’t end up playing out how it did (CPI was hot or Powell was caught ranting at a dead concert about how he’d seen the truth and it was a 10% Fed Funds rate, plenty of scenarios in which I could have been wrong).
If I had gone long Z4 on 6/29, I’d have gotten a fill at around 96.00 (a 4% rate by the end of next year). But I didn’t want to express a view on rate CUTS, I wanted to express a view that rate HIKES were over. Why is that? Because the margin of safety betting on lower rates by Dec 2024 when 100bps of rate cuts are already priced in is much smaller than betting on rates not going higher by the end of the year when 5.44% by eoy is already priced in. What happens if I’m wrong in the Z4 scenario?
First off, even if I was right I’d have to had held through Z4 going down 80 ticks below my entry because it’s pricing out a much more variable outcome all the way into next year, something I did not want to deal with. But let’s say I had anticipated that, there was still a scenario where it could reasonably have ended up down all the way to a little over 94.50 (aka no rate hikes in 2024 priced in and a terminal rate of 5.5%). So there was no “market implied stop” (I don’t know what to call it but I view it as a level at which things would have to be drastically & improbably different in order to trade beyond) like there was with Z3 at 94.50 for another 300 ticksto the downside!! Unacceptable to really lever up against that unless I was very convinced the market would be pricing a Fed that brings back ZIRP before the end of 2024. So let’s say I had done Z4 (or even m4/u4) with a 100 tick potential drawdown. My expected outcome was 100 ticks of upside. Risk one to make one is not how you succeed in trading. In fact, it’s almost certain to destroy you.
So what about the scenario in which I buy Z3 as long as it’s above 94.50 but below 94.58? What if the market continued to price very confidently (leaving no room for potential option value on an unforeseen issue in the economy that sends rates lower) that rates would be 5.5% by the end of December?
I’d have lost 12 ticks [ (94.56-94.50)/0.005 ] from my initial entry after the ADP report. No big deal.
And what did the drawdown look like in the meantime?
Normalized to 100, the drawdown on Z3 was -3.5bps (current PnL indexed to 100 is +19bps with a target of +34bps) while the drawdown on Z4 was -44bps (and it is now up +30bps).
Ex post, we see that I was able to size Z3 5-10x bigger than I’d have been able to size Z4 (in reality I was on the low end of this, Z3 long was sized about 6x what a more traditional SOFR position for me would have been).
In fact, because the risk/reward was so well defined here (considering that 5.5% as a terminal rate, or at least the highest rates might go in 2023, is essentially a 99.9999% conviction stance for me), I was able to add in on that tiny drawdown and get my cost basis down from 94.560 to 94.545 (the low tick on Z3 was 94.515).
So I was now risking 9 ticks. Meanwhile, if I was right about the Fed funds rate already having topped at 5%, I’d be looking at 91 ticks. Slightly more than 10x on risk is a “too good to pass up” trade.
Even if my bull case wasn’t right, my base case that the maximum number of rate hikes left in 2023 was 25bps would have put Z3 at 94.75. 9 ticks of risk to 44 ticks of reward or 4.5x on risk (where it’s trading right now). Not as excellent as 10, but still very good!
That simply did not exist in playing something further out the curve and having to deal with the potential for the curve ball of “there won’t be more rate hikes but rates will stay high all of next year”.
The thing about this is it is really not that much of an actual macro bet. While it may have aligned with my own macro thesis, I’d have taken it just the same if it didn’t. This is just taking a good deal when it’s on the table because capitulation has occurred, which is especially potent in macro instruments like STIR and Treasury futures where leverage is high and movements that are typically relatively slower go from being less like “moves” and more like “slightly delayed teleportations” when there’s a significant development or Econ print. Nobody really wanted to sell that 95.515 print on Z3, they just didn’t have the option not to.
This is what I try to do, while I have my core holdings (typically long term LO equities, but occasionally long/short if the market is in a downtrend) and then I trade around them by flitting from market to market, trying to be there in any given market or asset class when the likelihood my counterparty is acting stupidly is at its highest.
When the risk reward gets too good (or too bad), your thesis should matter less. I explained the thought process behind this when I wrote about putting on the 2s10s steepener in anticipation of a bull steepener as SVB collapsed on March 9th.
The best part was I didn’t even have to abandon my thesis for very long, a couple weeks after the risk reward on the (very crowded at that point) 2s10s steepener got way worse than the flattener given the data was showing that the bank failures had an exceedingly mild-at-worst effect on the strength of the overall economy.
Gladiator in arena consilium capit
The only addendum to this is that you need to be able to make these decisions and analyze the potential scenarios if it goes for you/against you/sideways in, more or less, a split second. Z3 traded under 94.56 for 5 minutes on 6/29 and under 94.54 for about 20 on 7/6.
If you’re trading, this should be second nature to you. You should be thinking about risk reward like you think about taking a breath or blinking, that is to say, subconsciously unless things are getting kind of nuts.
Unfortunately, nobody can really “teach” you this. It needs to become instinctual. The only thing that is good for this is experience, the value in any education surrounding this kind of thing is mostly going to be in learning what not to do so your own process of discover what to do is more accurate - practicing wrong is practicing to fail, after all.
Before a button is ever pushed all of this should be done. What’s more, it should be done not in a rote, standard way but in a way that considers both your own outlook, the current market regime and where the consensus is. Those should all be fleshed out and prepared, alongside knowledge of your hit rate and what kind of reward your risk needs to make when you are correct in order to be profitable.
Once you’ve got this down, it’s pretty great when it works out.
Risk/Reward and Scenario Analysis in Trading
This is a fantastic post-trade analysis. Learned a ton. Thanks for this!
Great writeup! I used the post ADP puke to add FFK4 - with the similar logic. Avg cost of 94.9 implied rates above 5pct until end of may 24. Looking to close hopefully ard 95.5.