Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Discuss all general (i.e. non-personal) investing questions and issues, investing news, and theory.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Fri Aug 11, 2023 2:59 pm
Kbg wrote: Thu Aug 10, 2023 11:14 am I don't think it is and yes we would.

I would suggest duration is a means to an end. In the approach of this thread's title, duration is used for mitigating stock risk using leveraged shorter term bonds vs. LTTs. That's where all of this came from.

However, at the end of the day we can't eat duration. We eat the premium that accrues to bond holders for lending out their money.

I believe there is hyper market efficiency in the US-T market space except for the occasional madness of crowds which translates into no uncompensated risks for the base object (a T-bill or note) and its derivatives.
I'm not quite sure what you mean with your comment.

I thought the purpose of the exercise was to determine if SOFR-based instruments yield a comparable return to treasury-based ones. I think there were a few documents posted in this thread showing that Eurodollar futures produced comparable returns to treasuries. (My memory was that a Eurodollar strip had a higher return than a duration equivalent treasury.) If a SOFR strip produces a significantly smaller return than a duration-equivalent treasury instrument (like a zero-coupon STRIPS, for example), then we probably don't want to use SOFR strips.

Can you elaborate on what you mean by "hyper market efficiency in the US Treasury market"? It is possible that I may agree in part with your view, but I need to know exactly what you mean.
I cannot speak for Kbg; but I think "a Eurodollar strip had a higher return than a duration equivalent treasury" is not necessarily true, at least not when you compare exposure at the same points on the yield curve, i.e. not comparing STT vs ITT or something. I think a comparison SOFR futures vs treasuries or treasury futures was never made in this thread, before the recent attempts. A CME paper suggested that SOFR futures might be a more efficient replacement for treasury futures, but I think it just compared implementation cost as in trading cost, and didn't study actual real world results with possible biases.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Fri Aug 11, 2023 2:07 pm
comeinvest wrote: Thu Aug 10, 2023 2:55 pm
unemployed_pysicist wrote: Thu Aug 10, 2023 10:42 am
Kbg wrote: Sun Aug 06, 2023 10:47 pm For what it is worth I have continuous adjusted 3 Mo SOFR futures data and the returns are as follows:

2018 (data begins 5/7/18 so partial year): -.01%
2019 .23%
2020 .17%
2021 .03%
2022 -.24%
2023 -.19%

By way of comparison the BIL ETF returned

2018 (data start 5/7/18 so partial year): 1.23%
2019 2.08%
2020 .37%
2021 -.11%
2022 1.4%
2023 -2.74%

Additionally I compared SHY with ZT futures from 2002 to date and, on average, ZT yield .7% points less than SHY (e.g. SHY returned 3%, ZT returned 2.3%)

I think if one is implementing the bond component via futures, then you have to realize and make adjustments for the fact that one is not simply a substitute for the other. After the analysis I'm far less enamored of futures for the bond component. Proportionally, the performance hit is substantial. Having said that, stock futures are around .8-.9% less per year on average (but sometimes the variation is quite a bit more negatively or favorably) which makes them a bit more palatable in my view than a leveraged ETF. However, 3x leveraged ETFs have some interesting compounding properties though which is a different topic perhaps for another day if you aren't too concerned with benchmark deviation.
Is this truly an apples to apples comparison? I assume that because BIL uses a variety of different treasury bills, it maintains a relatively constant duration (of 1-3 months?). Whereas a strip of SOFR contracts will have a duration that decreases by 1 day per day, until it makes a sudden jump when a new contract is purchased to replace the front contract when it settles to cash. Don't we have to make sure the modified durations match?
We could call that a detail. Although we need to account for this if we want an accurate comparison, this *might* average out and be a wash over time, if he tried to match the strip length to the average maturities of the bonds or that of the ETF portfolio, which I don't see him doing. I think the bigger problem is he doesn't seem to account for the returns on his collateral and cash surplus. Then we don't even know if he uses one contract or a strip, and in either case we don't know what contract or what kind of futures strip.
I was thinking something like this:

Portfolio 1:
t=0: Purchase of 3 month T-bill, which is a zero-coupon bond. The T-bill is allowed to mature. When it matures, take the proceeds and buy another 3 month T bill, repeating the process.

Portfolio 2:
t=0: For the SOFR portfolio, we buy the front contract on the first day of a 3 month reference period. We fully collateralize the portfolio, and invest the cash in SOFR; we put in the bare minimum for maintenance margin ($300-600?) + initial margin and any other outlays. Because the collateral is held in an overnight instrument, we should be able to sell collateral to meet any margin requirements. The SOFR contract is allowed to expire. When it expires, we repeat the process. Note that there is usually a 3 mo Tbill that matures very close to the end of the 3 month reference period for 3 month SOFR futures.

Or is this oversimplified - am I missing something? I can't decide whether SOFR (overnight rate) or 3 month Tbills are the correct use of the cash for Portfolio 2, or what to use for a longer strip (6 months to a year.)

I had assumed that something like my description for portfolio 2 was used in Kbg's backtest. For the treasury portfolio, the ETF BIL was used instead of the portfolio 1 described above.
Yes, that was originally my idea, and I think it is more or less what Huggins & Schaller are describing on pages 205-210 in "SOFR Futures and Options" (2022) viewtopic.php?p=7387997#p7387997

In my understanding, the equivalency of treasury futures, SOFR futures, and SOFR swaps implementation (as well as cash treasuries implementation) for purpose of risk-free duration exposure is basically based on the expectations hypothesis, together with the assumption of an almost constant basis spread with very small basis risk between 3-month T-bills and SOFR (and by implication between treasury forward rates and SOFR forward rates), and the cash-and-carry futures arbitrage. The latter 3 theorems basically allow us to verify the equivalency, or document drags / implicit financing cost spreads between those implementations, using different approaches and looking from different angles: forward rates, zero coupon rates, par rates.
Interest rate futures are not based on an asset, and therefore don't have any explicit financing cost; but the equivalency still holds, as we can compare forward rates or zero coupon rates - it's all about riding down the forward rate curves. If and when the slopes of the forward rate curves (SOFR futures, swaps, treasury futures, cash treasuries) are identical, i.e. the curves are parallel, then the implicit financing cost is the same. In case of interest rate futures, "implicit financing cost" means the performance difference to treasuries with an equivalent duration exposure.

I think part of the cash fluctuation you describe is reflected in the convexity adjustment of SOFR futures.

When comparing SOFR strips to treasury futures, we have to match and align the SOFR futures settlement observation periods with the expiration dates of the CTDs of the treasury futures (at the right end of the strip), or make reasonably approximations at the boundaries of the intervals. We also have to consider "partially consumed" SOFR futures settlement observation periods at the left end of the strip).

To your question regarding the collateral investment for the cash and carry: The collateral should be invested in short-term investable cash products, rather than maturities matching the length of the strip, as we don't want to add duration exposure and skew the results with the collateral. Collateral is just that. It is the excess cash that we have available as a result of using derivatives in lieu of cash securities (treasuries), and shall return the short-term risk-free rate (cash and carry arbitrage argument).
Whether you invest it in SOFR or T-bills or box spreads or whatever else you might come up with and consider risk-free, is a matter of definition, or you could say it's subjective based on the situation of the investor - the explicit financing cost of the derivatives under consideration would be relative to whatever risk-free rate you invest the collateral in.

Comparing the forward rates or zero coupon rates or par rates gives us theoretical results on expected relative financing cost based on current "forward rate spread valuations". We can then verify those with empirical performance comparisons over the time frame of the forward rates.

I have been wanting to post an empirical performance comparison between treasury futures and SOFR futures based on my Interactive Brokers futures data and with the above matching methodology for a long time; but now I feel that a naive, simplistic backtest is rather meaningless, if not counterproductive and misleading: We would at least want to adjust the backtest results for (1) changes in the forward basis spread over the backtesting period, and (2) in case of SOFR futures, for changes in expected volatility for the remaining time to expiration, or (for the already consumed time period) realized vs expected volatility, during the backtest period. The convexity assumes certain volatility events; if they didn't materialize, or if more severe volatility events happened than the ones that were priced in, then the realized financing cost is skewed. If we don't do those adjustment, any backtest results might be meaningless at best and potentially misleading, because both the basis spread (futures implied, or swap spreads) and volatilities (for SOFR futures convexity calcs) are naturally range bound and mean-reverting. So for example if the SOFR futures strip outperformed in the recent past relative to treasury futures, this might indicate underperformance of SOFR futures in the future, and vice versa.
Also, both changes in the (ex ante) forward basis spread and changes in (ex ante) expected volatility during the backtest period, would be reflected in existing positions "marked to market" - mostly for SOFR futures (basis and volatility) and swaps (basis), because of their longer time to expiration. In other words, if the implicit financing cost to expiration goes up, then (all other things being equal) existing positions go up in value, and vice versa. (Similar to box spread financing.)
A naive backtest comparison would be meaningless. It would be akin to looking at 1982 to 2021 and concluding that leveraged 30y treasuries will always outperform equities, without adjusting for initial conditions and valuations.
So we should instead compare the empirical backtest results to the theoretical forecast for the backtest period based on initial conditions.
Last edited by comeinvest on Tue Aug 15, 2023 4:15 pm, edited 7 times in total.
11xEBITDA
Posts: 3
Joined: Sun Aug 13, 2023 12:20 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by 11xEBITDA »

comeinvest wrote: Mon Aug 14, 2023 7:49 pm Chatham also offers this rate snapshot, presumably with data on or close to Aug 07, the date of the article https://www.chathamfinancial.com/insigh ... d-08-07-23 . It took me a while to grasp that the first column represents treasury swaps, not treasury rates for comparison, and probably the first 5 columns all represent different swap types, meaning different floating rate reference rates.

It strikes me that the treasury swap / SOFR swap spread seems to incrementally widen with maturity. Swaps can be used for an implicitly leveraged "term" exposure to the floating underlying rate, and eventually to an equivalent bond, so both must represent rates after deducting the equivalent implicit financing cost including an implicit financing cost spread (as difference between the forward spread and the spot basis spread between the two types of short-term floating rates). (Part of the implicit financing cost of the swap is the floating rate leg of the swap, with my interpretation.)

So perhaps my interpretation of the forward basis spread between the SOFR swap forward rates and the physical treasury forward rates as implicit financing cost was not entirely correct. I don't know what else might be the driver of the basis spread and its variation with maturity.

Somebody correct me if I'm wrong, but I gather that all swap rates and other rates in the table are "par rates", which means assuming a coupon or periodic payment equal to the indicated rate - so not comparable to zero coupon rates of the same maturity or expiration.

Image

Image
I found some research from ~2 years ago that discussed 5-year SOFR-treasury swap spreads to treasuries - at the time delta was around 15bps.

Generally all sources agreed that - in an idealized world with repo market financing rates equal to SOFR index, interest rate curves moving in parallel and no collateral required - a term SOFR rate below treasuries should be arbitraged away.

There are some additional costs that prevent that from happening:
  • Treasuries consume bank balance and bank dealer desks are typically the marginal market maker of treasuries, and hence treasuries should offer extra yield compensation for balance sheet usage. This effect should result in in a 10-20bps spread for 5y and increase with duration
  • Actual repo rates are relatively volatile vs. SOFR and repo may not always be available so the buyer of treasuries relying on overnight financing should be compensated with higher yield. This has around 3bps impact
  • Finally some 1-2bps compensation for illiquidity in a crisis like the one in March 2020 when 10y treasuries increased 20bps vs. SOFR swap rates
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

11xEBITDA wrote: Tue Aug 15, 2023 12:41 pm I found some research from ~2 years ago that discussed 5-year SOFR-treasury swap spreads to treasuries - at the time delta was around 15bps.

Generally all sources agreed that - in an idealized world with repo market financing rates equal to SOFR index, interest rate curves moving in parallel and no collateral required - a term SOFR rate below treasuries should be arbitraged away.

There are some additional costs that prevent that from happening:
  • Treasuries consume bank balance and bank dealer desks are typically the marginal market maker of treasuries, and hence treasuries should offer extra yield compensation for balance sheet usage. This effect should result in in a 10-20bps spread for 5y and increase with duration
  • Actual repo rates are relatively volatile vs. SOFR and repo may not always be available so the buyer of treasuries relying on overnight financing should be compensated with higher yield. This has around 3bps impact
  • Finally some 1-2bps compensation for illiquidity in a crisis like the one in March 2020 when 10y treasuries increased 20bps vs. SOFR swap rates
Can you please post links or references for your first sentence, and for the numbers in your last paragraph? Thanks.

Per my spreadsheet, ignoring the possible 1y and 2y anomalies, the current spread is asymptotically about 7 bps per year of duration, which would be ca. 14 bps for 2y, and 35 bps for 5y duration exposure via SOFR swaps.
This is between SOFR swaps and cash treasuries. My understanding is that SOFR swaps are better suited for comparisons, because with SFOR futures, volatility assumptions come into play, which is just an additional unknown parameter with potential bias.
A historical comparison of SOFR futures performance and duration matched SOFR swaps performance would be instructive.
The jury is still out how treasury futures implicit financing spreads fit into this picture.
Last edited by comeinvest on Tue Aug 15, 2023 5:02 pm, edited 2 times in total.
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

Now that the Fed NSS fit to the off-the-run US treasury curve data has been released, I added an additional plot at the bottom of my original post. The figure compares the three zero coupon curves that I have access to - the NSS curve calculated by the Federal Reserve Board (this tries to make a smooth fit to the curve), my analytical bootstrap with 3 day tolerance between coupon payments and already calculated spot rates (which permits idiosyncratic behavior, no smoothing whatsoever), and the zero-coupon curve that I bootstrap from 3mo SOFR futures.

viewtopic.php?p=7408473#p7408473
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

comeinvest wrote: Tue Aug 15, 2023 1:07 am This page has more info on their SOFR curve construction, including the convexity adjustment method: https://www.chathamfinancial.com/insigh ... otstrapper

More educational pages:
https://www.chathamfinancial.com/insigh ... ward-curve
https://www.chathamfinancial.com/insigh ... -rate-swap

Rate sheet: https://www.chathamfinancial.com/techno ... rket-rates
Thank you for putting all of these links in one post.

So they use: "Flavell convexity adjustment with a five-year flat vol."
It looks like Flavell wrote a text book, published through Wiley:

https://www.wiley.com/en-us/Swaps+and+O ... 0470661802

Looking at the table of contents, perhaps this particular convexity adjustment is described in section 2.4.
Here is the description:

F_{futures} - F_{FRA} = [1-exp(-phi)]*[1+T*F_{Futures}]/T,

where F_{futures} is the futures rate, F_{FRA} is the forward rate, T is the tenor of the contract in years, and phi=0.5*v^2*t^2*T, v=sigma*F_{Futures}/(1+T*F_{Futures}) is the instantaneous volatility, t is the time to the start of the forward rate, and sigma is the normal forward rate volatility taken from the cap market.

This expression was derived from the Heath-Jarrow-Morton approach. So, different than the expression (6.3) from Hull, for example, which uses the Ho-Lee model.

I do not understand how to insert a 5 year flat vol in the above equation. I have no access to caps and floors, so I can't calculate that one.

Ignoring the convexity adjustment for a moment, the rest of Chatham's calculation of the forward rate is very sophisticated (and currently beyond my understanding). As you read on the page, they take into account jumps in the Fed Funds target rate due to FOMC decisions, and the jumps at the end of the month that occur due to bank regulatory requirements. I am not doing anything nearly this fancy. Effectively I just take the futures price and put a convexity adjustment on it.

I will try to address your question in the following post when I have more time:
viewtopic.php?p=7413077#p7413077
In short, I match the date of the forward rate to the date of the futures contract because that seems consistent with the notation used by the 2018 Mercurio paper. I will also provide my own intuitive reasoning for why I believe this makes sense. I may not be correct, but I will try to explain in a later post, and we can discuss further.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Tue Aug 15, 2023 3:40 pm Now that the Fed NSS fit to the off-the-run US treasury curve data has been released, I added an additional plot at the bottom of my original post. The figure compares the three zero coupon curves that I have access to - the NSS curve calculated by the Federal Reserve Board (this tries to make a smooth fit to the curve), my analytical bootstrap with 3 day tolerance between coupon payments and already calculated spot rates (which permits idiosyncratic behavior, no smoothing whatsoever), and the zero-coupon curve that I bootstrap from 3mo SOFR futures.

viewtopic.php?p=7408473#p7408473
Great, thanks!
A few questions:

What are the potential effects of the chaotic T-bill dots in the first 9 months on our ultimate goal the financing cost comparison further out the curve?

What is the theoretical benefit of the NSS fit over your "analytical bootstrap"? The NSS curve seems to just simply not mimic the intrinsic curvatures of the actual data in the various maturity regions, and therefore not reflect reality - the interpolation seems to be too rough.

The "SOFR Implied Zero Coupon" curve does not show the 2y anomaly in my spreadsheet and chart. In fact, in your chart the spread between "SOFR Implied Zero Coupon" and treasuries, divided by maturity, seems to be about equal or perhaps higher at 5y than at 2y; whether we compare to the black or green curve, so the treasury version that we take doesn't explain the difference.
The only other difference between your and my data that I can see is yours is based on the convexity adjusted futures and mine on the Chatham SOFR swap yields, right? In your earlier chart that had the Chatham forward rates, the Chatham forward rates match the continuously compounded convexity adjusted SOFR futures forward rates after Jan 2026 with about 10 bps accuracy; but it's not clear at shorter maturities. What's your best explanation of the difference between our results of implied financing at the 2y point?

Should we compare zero coupon curves, or forward rate curves? Which is numerically more accurate? I understand the futures are originally forward rates, while the treasuries are originally zero coupon data based on coupon bond data.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

Ok, surprise!
While we are pondering which futures to use to leverage treasuries or duration, others already went a step further and tried to arbitrage:
https://quant.stackexchange.com/questio ... -stirt-vol
Reddit discussion (beware, quite low quality): https://www.reddit.com/r/investing/comm ... tive_swap/

And CME thought ahead and offers products to accomplish this. The key words are "invoice swap spread trading" and "futurized swap spreads".
https://www.cmegroup.com/trading/intere ... swaps.html
https://www.cmegroup.com/education/feat ... tures.html
http://www.erisfutures.com/
https://www.cmegroup.com/articles/2023/ ... stors.html
https://www.cmegroup.com/trading/intere ... tures.html

Of course this doesn't answer yet all the questions, particularly about SOFR futures (not swaps) in relation to treasury futures; and current data are hard to come by.

But it actually seems like the swap curve can and does develop "a life of its own" - a bit hard to explain, but a matter of fact. The spot SOFR/T-bill basis spread seems to be very low; and yet the swap spread curve has its own term structure. In other words, the leverage cost of risk-free duration exposure using different instruments is not the same. Similar but technically different ways of leverage don't seem to be controlled by the same balance sheet constraints or other supply/demand forces.

Also notice we introduced yet another instrument and level of indirection - swap futures - which may or may not have a bias vs their underlying, the swap; so in my opinion the chart below does not conclusively allow inference of the relative movement of swaps vs treasury futures, nor of SOFR futures vs treasury futures; at least not without verification.

Image

Image
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

Larry Summers (former Secretary of the Treasury) predicting 2.5% inflation plus 1.5% real return (for short term bonds) plus 0.75% term premium for 10y over short term bonds equals a target of 4.75% nominal return and 4.75% target average yield for the 10-year treasury for the next decade:
viewtopic.php?t=410885
Obviously point estimates are not very meaningful as predictions, but it's always good to put the level of rates in perspective. Wishful thinking of lower rates may or may not happen. I wouldn't mind Summers' predicted term premium making its way into my account, though ;)
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

comeinvest wrote: Tue Aug 15, 2023 4:50 pm
unemployed_pysicist wrote: Tue Aug 15, 2023 3:40 pm Now that the Fed NSS fit to the off-the-run US treasury curve data has been released, I added an additional plot at the bottom of my original post. The figure compares the three zero coupon curves that I have access to - the NSS curve calculated by the Federal Reserve Board (this tries to make a smooth fit to the curve), my analytical bootstrap with 3 day tolerance between coupon payments and already calculated spot rates (which permits idiosyncratic behavior, no smoothing whatsoever), and the zero-coupon curve that I bootstrap from 3mo SOFR futures.

viewtopic.php?p=7408473#p7408473
Great, thanks!
A few questions:

What are the potential effects of the chaotic T-bill dots in the first 9 months on our ultimate goal the financing cost comparison further out the curve?

What is the theoretical benefit of the NSS fit over your "analytical bootstrap"? The NSS curve seems to just simply not mimic the intrinsic curvatures of the actual data in the various maturity regions, and therefore not reflect reality - the interpolation seems to be too rough.

The "SOFR Implied Zero Coupon" curve does not show the 2y anomaly in my spreadsheet and chart. In fact, in your chart the spread between "SOFR Implied Zero Coupon" and treasuries, divided by maturity, seems to be about equal or perhaps higher at 5y than at 2y; whether we compare to the black or green curve, so the treasury version that we take doesn't explain the difference.
The only other difference between your and my data that I can see is yours is based on the convexity adjusted futures and mine on the Chatham SOFR swap yields, right? In your earlier chart that had the Chatham forward rates, the Chatham forward rates match the continuously compounded convexity adjusted SOFR futures forward rates after Jan 2026 with about 10 bps accuracy; but it's not clear at shorter maturities. What's your best explanation of the difference between our results of implied financing at the 2y point?

Should we compare zero coupon curves, or forward rate curves? Which is numerically more accurate? I understand the futures are originally forward rates, while the treasuries are originally zero coupon data based on coupon bond data.
For role of the chaotic T-bill dots as they apply to finding the implied financing, I guess we just have to take the best yield corresponding to the holding period (3 months).

Having thought more about this analytical bootstrap, I think that it is probably the (treasury) yield curve product you were looking for all along. It seems that you want to keep as much fine detail in the zero-coupon curve as possible, whereas the NSS fit gives a broader picture.
There are some benefits of the NSS curve:
- Easy calculation of zero coupon bonds, instantaneous forward rates, or arbitrary n-period rates m-periods forward at arbitrary maturity dates (calculating these rates will be more challenging with the analytical bootstrap, and not really possible to make the calculations at arbitrary maturity dates.)
- Large coverage; the NSS fit is valid out to 30 years (the analytical bootstrap cuts off at 10 years, due to the "missing" bonds between 2033 and 2036 maturity dates.)
- Useful tool for calculating returns where we do not have raw note/bond data, i.e., when we do backtesting. Without the CRSP or other suitable Treasury database, I think this is the best option available.

I think comparing either forward curves or zero coupon curves is fine. I would guess for any of the forward rates coming from rates futures (like SOFR futures), these may be slightly more numerically accurate than zero coupon curve, because the process will have one less calculation. But I don't think it makes much of a difference either way for rates futures. For my analytical bootstrap curve from notes and bonds, the zero-coupon curve will be more accurate because the forward rate will be one more calculation there. I will be limited by the discrete data points when calculating forward rates from the analytical bootstrap. Any interpolation to get specific forward rates at specific spots on the curve will introduce smoothing and possible non-realistic behavior.

I tend to transform the various curves into zero coupon curves to put them all on the same footing for visual comparison, because this feels conceptually easier to me. However, I suspect that comparing forward rates may be more common practice. I think Alan Greenspan was known to parse the yield curve into various forward rates, for example.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by skierincolorado »

Kbg wrote: Thu Aug 10, 2023 10:39 am.....
I noticed you deleted your post and was wondering why? I think your comparison or SOFR, treasury futures, and actual treasuries is important. I have some concerns about whether the durations are actually matched and how the collateral is invested. There are some very detailed attempts to do this upthread. There is also a published paper from the FED. Both show the same conclusion of about .1-.2% drag for treasury futures compared to treasuries, not the .8%-.9% you found. I would be interested if you could reconcile your conclusion with the FED paper and discussion earlier in the thread. I think I link the FED paper in the first post of the thread.
Last edited by skierincolorado on Tue Aug 22, 2023 6:21 pm, edited 1 time in total.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by skierincolorado »

11xEBITDA wrote: Tue Aug 15, 2023 12:41 pm
comeinvest wrote: Mon Aug 14, 2023 7:49 pm Chatham also offers this rate snapshot, presumably with data on or close to Aug 07, the date of the article https://www.chathamfinancial.com/insigh ... d-08-07-23 . It took me a while to grasp that the first column represents treasury swaps, not treasury rates for comparison, and probably the first 5 columns all represent different swap types, meaning different floating rate reference rates.

It strikes me that the treasury swap / SOFR swap spread seems to incrementally widen with maturity. Swaps can be used for an implicitly leveraged "term" exposure to the floating underlying rate, and eventually to an equivalent bond, so both must represent rates after deducting the equivalent implicit financing cost including an implicit financing cost spread (as difference between the forward spread and the spot basis spread between the two types of short-term floating rates). (Part of the implicit financing cost of the swap is the floating rate leg of the swap, with my interpretation.)

So perhaps my interpretation of the forward basis spread between the SOFR swap forward rates and the physical treasury forward rates as implicit financing cost was not entirely correct. I don't know what else might be the driver of the basis spread and its variation with maturity.

Somebody correct me if I'm wrong, but I gather that all swap rates and other rates in the table are "par rates", which means assuming a coupon or periodic payment equal to the indicated rate - so not comparable to zero coupon rates of the same maturity or expiration.

Image

Image
I found some research from ~2 years ago that discussed 5-year SOFR-treasury swap spreads to treasuries - at the time delta was around 15bps.

Generally all sources agreed that - in an idealized world with repo market financing rates equal to SOFR index, interest rate curves moving in parallel and no collateral required - a term SOFR rate below treasuries should be arbitraged away.

There are some additional costs that prevent that from happening:
  • Treasuries consume bank balance and bank dealer desks are typically the marginal market maker of treasuries, and hence treasuries should offer extra yield compensation for balance sheet usage. This effect should result in in a 10-20bps spread for 5y and increase with duration
  • Actual repo rates are relatively volatile vs. SOFR and repo may not always be available so the buyer of treasuries relying on overnight financing should be compensated with higher yield. This has around 3bps impact
  • Finally some 1-2bps compensation for illiquidity in a crisis like the one in March 2020 when 10y treasuries increased 20bps vs. SOFR swap rates
Did you post this research already? I would be very interested. I have been trying to follow the discussion but not ready/able to contribute at this time. If the above is true, wouldn't retail investors be better off owning treasury futures and not SOFRs?
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

skierincolorado wrote: Tue Aug 22, 2023 6:20 pm
11xEBITDA wrote: Tue Aug 15, 2023 12:41 pm
comeinvest wrote: Mon Aug 14, 2023 7:49 pm Chatham also offers this rate snapshot, presumably with data on or close to Aug 07, the date of the article https://www.chathamfinancial.com/insigh ... d-08-07-23 . It took me a while to grasp that the first column represents treasury swaps, not treasury rates for comparison, and probably the first 5 columns all represent different swap types, meaning different floating rate reference rates.

It strikes me that the treasury swap / SOFR swap spread seems to incrementally widen with maturity. Swaps can be used for an implicitly leveraged "term" exposure to the floating underlying rate, and eventually to an equivalent bond, so both must represent rates after deducting the equivalent implicit financing cost including an implicit financing cost spread (as difference between the forward spread and the spot basis spread between the two types of short-term floating rates). (Part of the implicit financing cost of the swap is the floating rate leg of the swap, with my interpretation.)

So perhaps my interpretation of the forward basis spread between the SOFR swap forward rates and the physical treasury forward rates as implicit financing cost was not entirely correct. I don't know what else might be the driver of the basis spread and its variation with maturity.

Somebody correct me if I'm wrong, but I gather that all swap rates and other rates in the table are "par rates", which means assuming a coupon or periodic payment equal to the indicated rate - so not comparable to zero coupon rates of the same maturity or expiration.

Image

Image
I found some research from ~2 years ago that discussed 5-year SOFR-treasury swap spreads to treasuries - at the time delta was around 15bps.

Generally all sources agreed that - in an idealized world with repo market financing rates equal to SOFR index, interest rate curves moving in parallel and no collateral required - a term SOFR rate below treasuries should be arbitraged away.

There are some additional costs that prevent that from happening:
  • Treasuries consume bank balance and bank dealer desks are typically the marginal market maker of treasuries, and hence treasuries should offer extra yield compensation for balance sheet usage. This effect should result in in a 10-20bps spread for 5y and increase with duration
  • Actual repo rates are relatively volatile vs. SOFR and repo may not always be available so the buyer of treasuries relying on overnight financing should be compensated with higher yield. This has around 3bps impact
  • Finally some 1-2bps compensation for illiquidity in a crisis like the one in March 2020 when 10y treasuries increased 20bps vs. SOFR swap rates
Did you post this research already? I would be very interested. I have been trying to follow the discussion but not ready/able to contribute at this time. If the above is true, wouldn't retail investors be better off owning treasury futures and not SOFRs?
I can't speak for 11xEBITDA; but I assume his numbers are historical averages, and/or theoretically explainable numbers; the actual spreads to treasuries have certainly fluctuated a lot historically and with maturities/expirations, if you look at the charts from third party research that I posted lately. The 2y swaps had positive spread to treasuries until recently.
I don't have a good understanding of the money market; but my understanding is that all of the following are - almost by definition - secured by treasuries: 1. treasury futures; 2. SOFR swaps; 3. SOFR futures. (The first Google results says: "The Secured Overnight Financing Rate (SOFR) is a broad measure of the cost of borrowing cash overnight collateralized by Treasury securities.")
Somebody correct me if I'm wrong but I think "repo" refers to someone holding treasuries and using them directly as collateral for some other purchase transaction for leverage. So essentially also secured by treasuries, albeit not via standardized derivatives or swaps.
In light of this, I personally have a hard time understanding why the implied financing rates can differ a lot between those 3 methods of leverage. For all three, some counterparty at the end of the "food chain" has to hold the actual physical treasuries with their - now possibly positive - (in)convenience yield arising from certain balance sheet constraints, as security for the derivatives, or not? Which should then trickle through the system and result in some spread of the leverage cost in relation to the short-term risk-free rate.
And all 3 methods of leverage effectively leverage bets on the future risk-free rate, not more and not less, and should as such be economically 100% interchangeable, once you go through the trouble and match exposure to durations and interest rate settlement observation periods (for SOFR futures) or swap expirations - certainly a math task that an institutional investor can do accurately. SOFR transactions don't even have the credit spread any more that eurodollar futures had, based on theoretical default assumptions. In fact I think SOFR behaved "better" than treasuries in Spring 2020; see 11xEBITDA's third bullet point.
All bullet points by 11xEBITDA would apply to all 3 methods, if I'm not mistaken.
So I guess the reasons for the discrepancies must be very technical, so that they can evade arbitrage arguments which would dictate the cost of leverage must be the same.

For SOFR futures, bets on interest rate volatility come into play, which is a science in and by itself, the effect of which on SOFR futures long-term risk and performance we would have to examine. But in my understanding volatility has little to no bearing on SOFR swap spreads.
Kbg
Posts: 409
Joined: Thu Mar 23, 2017 11:33 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by Kbg »

skierincolorado wrote: Tue Aug 22, 2023 6:18 pm
Kbg wrote: Thu Aug 10, 2023 10:39 am.....
I noticed you deleted your post and was wondering why? I think your comparison or SOFR, treasury futures, and actual treasuries is important. I have some concerns about whether the durations are actually matched and how the collateral is invested. There are some very detailed attempts to do this upthread. There is also a published paper from the FED. Both show the same conclusion of about .1-.2% drag for treasury futures compared to treasuries, not the .8%-.9% you found. I would be interested if you could reconcile your conclusion with the FED paper and discussion earlier in the thread. I think I link the FED paper in the first post of the thread.
:annoyed :oops:

I just spent an hour doing some data research and typing up a response and it took sufficiently long that BH flushed it when it logged me out. A big GRRRRRR.

Short version...

Actual June 2023 3M SOFR contract total return from first price 9/17/2018 to 8/22/23: -2.4%

A range of roughly equivalent ETFs over the same time period BIL to IEI total returns 7.47% to 2.36% (Leaving out SHV and SHY which I had posted earlier but those returns were in between of course)

Proportionately for bonds as an asset class that's a relatively large return difference. No guessing, extrapolating or estimating here. The above ARE the market returns of holding the SOFR vs. one of the ETFs for the time period.

Bottom line: Probably need to dial down leveraged bond return estimates/backtest expectations when substituting futures. Depending on leverage level desired, there may be no alternative. However, if using more moderate leverage I'd be highly inclined to leverage only the equity side where you are likely going to pay less of a penalty proportionately. The futures return equation(s) are well known so hopefully folks get what I'm saying here (for the moderate leverage taker).

And a handy link: https://www.spglobal.com/spdji/en/index ... s/#indices
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by skierincolorado »

Kbg wrote: Tue Aug 22, 2023 10:58 pm
skierincolorado wrote: Tue Aug 22, 2023 6:18 pm
Kbg wrote: Thu Aug 10, 2023 10:39 am.....
I noticed you deleted your post and was wondering why? I think your comparison or SOFR, treasury futures, and actual treasuries is important. I have some concerns about whether the durations are actually matched and how the collateral is invested. There are some very detailed attempts to do this upthread. There is also a published paper from the FED. Both show the same conclusion of about .1-.2% drag for treasury futures compared to treasuries, not the .8%-.9% you found. I would be interested if you could reconcile your conclusion with the FED paper and discussion earlier in the thread. I think I link the FED paper in the first post of the thread.
:annoyed :oops:

I just spent an hour doing some data research and typing up a response and it took sufficiently long that BH flushed it when it logged me out. A big GRRRRRR.

Short version...

Actual June 2023 3M SOFR contract total return from first price 9/17/2018 to 8/22/23: -2.4%

A range of roughly equivalent ETFs over the same time period BIL to IEI total returns 7.47% to 2.36% (Leaving out SHV and SHY which I had posted earlier but those returns were in between of course)

Proportionately for bonds as an asset class that's a relatively large return difference. No guessing, extrapolating or estimating here. The above ARE the market returns of holding the SOFR vs. one of the ETFs for the time period.

Bottom line: Probably need to dial down leveraged bond return estimates/backtest expectations when substituting futures. Depending on leverage level desired, there may be no alternative. However, if using more moderate leverage I'd be highly inclined to leverage only the equity side where you are likely going to pay less of a penalty proportionately. The futures return equation(s) are well known so hopefully folks get what I'm saying here (for the moderate leverage taker).

And a handy link: https://www.spglobal.com/spdji/en/index ... s/#indices
1) Is the method fully funded? IEI and BIL are fully funded investments, whereas a SOFR is unfunded (on margin). The comparison is to take the SOFR return plus the finance cost over the period to get the return of a funded SOFR investment.

2) a single sofr contract is in no way comparable to any bond etf. One would need to hold a strip of sofrs and then buy the next contract every three months as the closest contract expired. A sofr is a single point on the yield curve that is moving towards expiration. Initially it is longer in duration and would have returns similar to iEI *minus* BIL. As it approaches expiration it would have returns similar to BIL minus overnight/ffr. IEI minus BIl could return poor early and BIL minus overnight could return poor late giving the SOFR contract very different returns from IEI or BIL. There should be no expectation that it would be in any way similar.

Like I said these calculations were performed meticulously earlier in the thread for treasury futures vs treasuries and showed only a .1-.2% drag. This is also what the FED paper shows as well. Your .8-.9% is inconsistent and so it would be good to read those posts and the FED paper and try to reconcile them with your methodology. We haven't yet done it for SOFRs although some of the recent posts may contain that information.

My guess is that #1 and/or #2 explain the difference.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

Kbg wrote: Tue Aug 22, 2023 10:58 pm And a handy link: https://www.spglobal.com/spdji/en/index ... s/#indices
Somehow I keep getting directed to Australian and EU sites. I'm glad for down under as they show Australian dollar based indexes and New Zealand dollar swaps - a tiny country - seems a bit pathetic. Did anybody spot USD interest rate swaps data on the S&P site?

B.t.w. the methodology documents are a bit hard to decipher, but I think the total return indexes are the funded futures portfolio return indexes, using 91-day T-bill returns for the initial cash outlay.
DMoogle
Posts: 551
Joined: Sat Oct 31, 2020 10:24 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by DMoogle »

Is the consensus here still that it's worth it to keep a portion of the portfolio in ITTs, even given that short-term rates exceed long and medium term rates?
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

DMoogle wrote: Thu Aug 24, 2023 9:35 am Is the consensus here still that it's worth it to keep a portion of the portfolio in ITTs, even given that short-term rates exceed long and medium term rates?
I can't speak for consensus, but just for myself. The shape of the yield curve is not directly related to relative expected returns, because you will have to roll over shorter-maturity bonds; so don't change the asset allocation or the positioning on the yield curve based only on simplistic current yield arguments.
There is however a possibility of positive excess returns from "carry" strategies, described in the paper "Carry Investing on the Yield Curve" that was referenced a number of times early in this thread, and others. Depending on the definition and interpretation of "carry", carry might favor STT currently. Boglehead user Physicist once did a simulation that didn't show convincing benefits of max carry; but I have not reconciled his results with the results from the paper.
Other papers also referenced in this thread showed consistent outperformance of an STT or short-term interest rate only strategy, with maximum sharpe ratios of eurodollar futures with ca. 12 months until expiration.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by skierincolorado »

DMoogle wrote: Thu Aug 24, 2023 9:35 am Is the consensus here still that it's worth it to keep a portion of the portfolio in ITTs, even given that short-term rates exceed long and medium term rates?
Yes. I haven't seen any contention regardijg that and theoretically the inversion of the curve should not be related to the return of ITT. It just means rates are expected to fall.

The contention and dialog recently has mostly been around SOFRs and whether they are a substitute for treasury futures.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Treasury futures vs SOFR futures backtesting

Post by comeinvest »

I originally posted this on 06/15 but deleted it because I was not sure if my math was right.

I went through the trouble and tried to compare the performance of the SOFR strips to that of the equivalent treasury futures, with data from IB charts which have a ton of problems, but I have relatively high confidence in them if you carefully compare "apples to apples" data points with the same timestamp, or end-of-day (EOD), or settlement data, and if there is no futures contract stitching involved.

Please let me know if my methodology of selecting "equivalent" SOFR futures and treasury futures makes sense; the methodology is based on my own reasoning. "Equivalent" is based on the arbitrage argument of the expectations hypothesis: The long-term rate is the average of the expected short-term rates between now and the maturity of the long-term bond, and both underlyings are essentially spot quotes of risk-free short-term rates. So both represent an economic exposure to short-term risk-free rates over the contemplated time period (i.e. the time period between now and the maturity of the CTD). Term premia are baked into both the long-term bond yield and the "biased" short-term forward rates expectations, and should mimic each other because both are risk-free term premia.

I'm only interested in the relative performance of a duration exposure, not in absolute dollar gains or losses; therefore I just add the SOFR futures quotes that are part of the strip, both at the beginning and then again at the end of the backtest period; the ratio should be the performance, that is comparable to the performance of equivalent the treasury futures contract.

I ignored the coupon of the treasury and treated the treasury as a zero-coupon bond; the effect should be very small. I also ignored many of the intricacies of treasury futures like the embedded quality option, and various embedded delivery timing options.

I ignored convexity adjustments, because I think they apply to both types of futures, and should result in similar if not equal adjustments.
EDIT: Convexity adjustments need to be applied to the SOFR futures, the fair value of which depends on expected volatilities beyond the end of the backtest period until the expiration of the SOFR futures.

For the June 2023 /ZT future I did the work for both the "last day" (CTD maturing 03/31/2025) and "first day" (CTD maturing 6/15/2025) delivery CTD, to cover all my bases. I crafted 2 SOFR strips: "Strip 1" matches the period between 02/24/2023 and 03/31/2025; "strip 2" matches the period between 02/24/2023 and 06/15/2025. SOFR futures settle to backward looking averages; therefore movements in the soonest expiring SOFR future (the Dec 2022 contract expiring 03/14/2023) should represent changes in expectations for overnight rates between 2/24/2023 and the remaining term of this contract, until the expected rates converge to the realized rates. I also extrapolated the furthest SOFR future (expiring 03/19/2025 and 06/18/2025 respectively) to cover the gap between the expiration of the SOFR future and the maturity of the CTD of the treasury future (03/31/2025 and 06/15/2025 respectively).

Unfortunately IB charts don't allow to chart expired contracts together with active contracts within a virtual security expression; therefore I had to collect the data separately and add them by hand.

Assuming that my methodology makes sense, I'm not happy with the results; but I'm not panicking. Two quarters don't say much, and the successful use of STIR futures for leveraged portfolio duration risk exposure was demonstrated in the papers cited earlier in this thread.
EDIT 1: Like I mentioned in the discussion of the SOFR swap spreads, the backtest results may infer nothing about the future, as we have to adjust for initial valuation conditions (spreads of the yields (swaps) or theoretical implied financing cost / futures yields (futures) of the derivatives vs treasuries or vs each other) which can fluctuate a lot based on the charts posted earlier.
EDIT 2: Results over short backtesting periods are also not meaningful for predictions, because the SOFR futures are affected by changes in expected volatilities, which are not directly observable.

June 2023 /ZT future, time period 02/24/2023 16:00 to 05/24/2023 16:00 :

Code: Select all

~ZT 2023-06 emulated 1: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + ("SOFR3 DEC'24 @CME" / 90 * 102)
~ZT 2023-06 emulated 2: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + "SOFR3 DEC'24 @CME" + ("SOFR3 MAR'25 @CME" / 92 * 90)

ZT 02/24/2023 16:00 (6 mo. chart - trades) 101'260
ZT 05/24/2023 16:00 (6 mo. chart - trades) 102'102
Performance if /ZT (not annualized): (102 + 102.5/320) / (101 + 260/320) -> 1.0049877

SOFR3 Dec 2022 02/24/2023 16:00 (3 mo. chart - trades) 95.555
SOFR3 Dec 2022 03/14/2023 16:00 (3 mo. chart - trades) 95.5525
SOFR3 strip 1 02/24/2023 16:00 (6 mo. chart - midpoints) 774.345
SOFR3 strip 1 05/24/2023 16:00 (6 mo. chart - midpoints) 777.7032
Performance of emulation of /ZT with SOFR strip 1 (not annualized): (777.7032 + 95.5525) / (774.345 + 95.555) -> 1.0038576
SOFR3 strip 2 02/24/2023 16:00 (6 mo. chart - midpoints) 855.7364
SOFR3 strip 2 05/24/2023 16:00 (6 mo. chart - midpoints) 859.5594
Performance of emulation of /ZT with SOFR strip 2 (not annualized): (859.5594 + 95.5525) / (855.7364 + 95.555) -> 1.0040161
March 2023 /ZT future, time period 11/22/2022 EOD to 02/24/2023 EOD :

Code: Select all

~ZT 2023-03 emulated: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + ("SOFR3 SEP'24 @CME" / 91 * 104)

ZT 11/22/2022 EOD (6 mo. chart - trades) 102'132
ZT 02/24/2023 EOD (6 mo. chart - trades) 102'200
Performance of /ZT (not annualized): (102 + 200/320) / (102 + 132.5/320) -> 1.0020596

SOFR3 Sep 2022 11/22/2022 EOD (6 mo. chart - trades) 96.5175
SOFR3 Sep 2022 12/21/2022 EOD (6 mo. chart - trades) 96.5275
SOFR3 Dec 2022 11/22/2022 EOD (6 mo. chart - trades) 95.42
SOFR3 Dec 2022 02/24/2023 EOD (6 mo. chart - trades) 95.555
SOFR3 strip 11/22/2022 EOD (1y chart - midpoints) 682.7425
SOFR3 strip 02/24/2023 EOD (1y chart - midpoints) 679.0721
Performance of emulation of /ZT with SOFR strip (not annualized): (679.0721 + 96.5275 + 95.555) / (682.7425 + 96.5175 + 95.42) -> 0.9959695
Image

Image

Image

Image

Image

Image
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Treasury futures vs SOFR futures backtesting

Post by skierincolorado »

comeinvest wrote: Thu Aug 24, 2023 4:38 pm I originally posted this on 06/15 but deleted it because I was not sure if my math was right.

I went through the trouble and tried to compare the performance of the SOFR strips to that of the equivalent treasury futures, with data from IB charts which have a ton of problems, but I have relatively high confidence in them if you carefully compare "apples to apples" data points with the same timestamp, or end-of-day (EOD), or settlement data, and if there is no futures contract stitching involved.

Please let me know if my methodology of selecting "equivalent" SOFR futures and treasury futures makes sense; the methodology is based on my own reasoning. "Equivalent" is based on the arbitrage argument of the expectations hypothesis: The long-term rate is the average of the expected short-term rates between now and the maturity of the long-term bond, and both underlyings are essentially spot quotes of risk-free short-term rates. So both represent an economic exposure to short-term risk-free rates over the contemplated time period (i.e. the time period between now and the maturity of the CTD). Term premia are baked into both the long-term bond yield and the "biased" short-term forward rates expectations, and should mimic each other because both are risk-free term premia.

I'm only interested in the relative performance of a duration exposure, not in absolute dollar gains or losses; therefore I just add the SOFR futures quotes that are part of the strip, both at the beginning and then again at the end of the backtest period; the ratio should be the performance, that is comparable to the performance of equivalent the treasury futures contract.

I ignored the coupon of the treasury and treated the treasury as a zero-coupon bond; the effect should be very small. I also ignored many of the intricacies of treasury futures like the embedded quality option, and various embedded delivery timing options.

I ignored convexity adjustments, because I think they apply to both types of futures, and should result in similar if not equal adjustments.
EDIT: Convexity adjustments need to be applied to the SOFR futures, the fair value of which depends on expected volatilities beyond the end of the backtest period until the expiration of the SOFR futures.

For the June 2023 /ZT future I did the work for both the "last day" (CTD maturing 03/31/2025) and "first day" (CTD maturing 6/15/2025) delivery CTD, to cover all my bases. I crafted 2 SOFR strips: "Strip 1" matches the period between 02/24/2023 and 03/31/2025; "strip 2" matches the period between 02/24/2023 and 06/15/2025. SOFR futures settle to backward looking averages; therefore movements in the soonest expiring SOFR future (the Dec 2022 contract expiring 03/14/2023) should represent changes in expectations for overnight rates between 2/24/2023 and the remaining term of this contract, until the expected rates converge to the realized rates. I also extrapolated the furthest SOFR future (expiring 03/19/2025 and 06/18/2025 respectively) to cover the gap between the expiration of the SOFR future and the maturity of the CTD of the treasury future (03/31/2025 and 06/15/2025 respectively).

Unfortunately IB charts don't allow to chart expired contracts together with active contracts within a virtual security expression; therefore I had to collect the data separately and add them by hand.

Assuming that my methodology makes sense, I'm not happy with the results; but I'm not panicking. Two quarters don't say much, and the successful use of STIR futures for leveraged portfolio duration risk exposure was demonstrated in the papers cited earlier in this thread.
EDIT 1: Like I mentioned in the discussion of the SOFR swap spreads, the backtest results may infer nothing about the future, as we have to adjust for initial valuation conditions (spreads of the yields (swaps) or theoretical implied financing cost / futures yields (futures) of the derivatives vs treasuries or vs each other) which can fluctuate a lot based on the charts posted earlier.
EDIT 2: Results over short backtesting periods are also not meaningful for predictions, because the SOFR futures are affected by changes in expected volatilities, which are not directly observable.

June 2023 /ZT future, time period 02/24/2023 16:00 to 05/24/2023 16:00 :

Code: Select all

~ZT 2023-06 emulated 1: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + ("SOFR3 DEC'24 @CME" / 90 * 102)
~ZT 2023-06 emulated 2: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + "SOFR3 DEC'24 @CME" + ("SOFR3 MAR'25 @CME" / 92 * 90)

ZT 02/24/2023 16:00 (6 mo. chart - trades) 101'260
ZT 05/24/2023 16:00 (6 mo. chart - trades) 102'102
Performance if /ZT (not annualized): (102 + 102.5/320) / (101 + 260/320) -> 1.0049877

SOFR3 Dec 2022 02/24/2023 16:00 (3 mo. chart - trades) 95.555
SOFR3 Dec 2022 03/14/2023 16:00 (3 mo. chart - trades) 95.5525
SOFR3 strip 1 02/24/2023 16:00 (6 mo. chart - midpoints) 774.345
SOFR3 strip 1 05/24/2023 16:00 (6 mo. chart - midpoints) 777.7032
Performance of emulation of /ZT with SOFR strip 1 (not annualized): (777.7032 + 95.5525) / (774.345 + 95.555) -> 1.0038576
SOFR3 strip 2 02/24/2023 16:00 (6 mo. chart - midpoints) 855.7364
SOFR3 strip 2 05/24/2023 16:00 (6 mo. chart - midpoints) 859.5594
Performance of emulation of /ZT with SOFR strip 2 (not annualized): (859.5594 + 95.5525) / (855.7364 + 95.555) -> 1.0040161
March 2023 /ZT future, time period 11/22/2022 EOD to 02/24/2023 EOD :

Code: Select all

~ZT 2023-03 emulated: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + ("SOFR3 SEP'24 @CME" / 91 * 104)

ZT 11/22/2022 EOD (6 mo. chart - trades) 102'132
ZT 02/24/2023 EOD (6 mo. chart - trades) 102'200
Performance of /ZT (not annualized): (102 + 200/320) / (102 + 132.5/320) -> 1.0020596

SOFR3 Sep 2022 11/22/2022 EOD (6 mo. chart - trades) 96.5175
SOFR3 Sep 2022 12/21/2022 EOD (6 mo. chart - trades) 96.5275
SOFR3 Dec 2022 11/22/2022 EOD (6 mo. chart - trades) 95.42
SOFR3 Dec 2022 02/24/2023 EOD (6 mo. chart - trades) 95.555
SOFR3 strip 11/22/2022 EOD (1y chart - midpoints) 682.7425
SOFR3 strip 02/24/2023 EOD (1y chart - midpoints) 679.0721
Performance of emulation of /ZT with SOFR strip (not annualized): (679.0721 + 96.5275 + 95.555) / (682.7425 + 96.5175 + 95.42) -> 0.9959695
Image

Image

Image

Image

Image

Image
I can't think of anything wrong with your methodology. It looks like you got sofrs lagging ZT by around 1% for the first period and .6% for the second. That's a lot but I also agree initial valuations would matter. I think we would need to sample a dozen or more periods to see if the divergence is persistent. If SOFRs always lag over randomly selected short periods, they must also lag for long term buy and hold.

If you annualize those differences it is 4% and 2.4% which is huge. Although I would expect valuation to matter over short periods I'm still surprised by how much. It makes me think maybe there is something wrong with the method.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

skierincolorado wrote: Thu Aug 24, 2023 11:31 pm I can't think of anything wrong with your methodology. It looks like you got sofrs lagging ZT by around 1% for the first period and .6% for the second. That's a lot but I also agree initial valuations would matter. I think we would need to sample a dozen or more periods to see if the divergence is persistent. If SOFRs always lag over randomly selected short periods, they must also lag for long term buy and hold.

If you annualize those differences it is 4% and 2.4% which is huge. Although I would expect valuation to matter over short periods I'm still surprised by how much. It makes me think maybe there is something wrong with the method.
It's 0.1% for the first and 0.6% for the second period, which would be 0.4% and 2.4% annualized.
You have to be careful drawing conclusions about expected returns even if you were to sample a dozen periods. If you look at the third party charts that I posted in some of my recent comments, there can be regime changes in SOFR swap spreads that persist for years, and the sign can change meaning SOFR futures might provide excess returns when SOFR swap spreads are positive. You would also have to think if rare tail risk events from changes in expected and realized volatilities that affect the SOFR futures are covered by your samples, or adjust the results based on how they would affect the relative performance.
Investing.com viewtopic.php?p=7403241#p7403241 has free treasury futures and SOFR eurodollar futures data for many years if not decades; so we could do a more comprehensive study and compare to the SOFR ED swap spreads as initial conditions from the charts that I posted, to gain insight on expected relative returns based on current swap spreads, or to verify that the initial SOFR ED swap spread controls the relative realized performance.
The treasury futures might also have fluctuating spreads to treasuries, which should theoretically also be predictable - see Physicist's calculations up in this thread.
Another thing we could do is skip the exact duration matching which is a lot of manual labor (unless you somehow automize the matching based on cheapest-to-deliver data), and instead do longer-term portfolio level simulations with treasury futures and SOFR futures data and adjust for realized volatilities - so basically compare realized Sharpe ratios. Probably doesn't make sense because ED behaved differently from SOFR.
Another idea would be to use SOFR strips to target the 12 month period which has the highest Sharpe ratios - and on top a positive swap spread, at least until now.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

skierincolorado wrote: Thu Aug 24, 2023 11:31 pm I can't think of anything wrong with your methodology. It looks like you got sofrs lagging ZT by around 1% for the first period and .6% for the second. That's a lot but I also agree initial valuations would matter. I think we would need to sample a dozen or more periods to see if the divergence is persistent. If SOFRs always lag over randomly selected short periods, they must also lag for long term buy and hold.

If you annualize those differences it is 4% and 2.4% which is huge. Although I would expect valuation to matter over short periods I'm still surprised by how much. It makes me think maybe there is something wrong with the method.
I'm still not entirely sure if the math is 100% accurate. Because of the SOFR futures settlement definition, the SOFR futures have the same infinitesimal interest rate sensitivity (if scaled accordingly) but not the same convexity as a term deposit or a treasury bond convexity, do they? Even compared to a zero coupon T-bill.
Say another Covid happens and the Fed slashes rates from 5% to 0% in an instant. A 1 year T-bill will increase in value from 100 / 1.05 -> 95.238 to 100, a return of 1.05 (5%). A position in a SOFR future (or a futures strip) will increase in value from 95 to 100, a return of 1.0526 (5.26%). A 0.26% difference.
If rates rise from 5% to 10%, the T-bill will decrease in value to 100/1.1 -> 90.91, a return of 90.91 / 95.238 -> 0.955 (-4.5%). The SOFR futures positions will decrease in value to 90, a return of 90/95 -> 0.947 (-5.3%). A solid 0.8% difference.
The SOFR futures position does not have the same nonlinear behavior as a bond. Although it shows in the account as a discounted $250k nominal value of a fictional 1-year duration bond, or a discounted $1M nominal 3-month term deposit, there is actually no bond equivalent.
The fair value of a bond depends on its convexity, and the return depends on the magnitude of interest rate change and on implied volatilities.
Last edited by comeinvest on Fri Aug 25, 2023 1:34 pm, edited 14 times in total.
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

comeinvest wrote: Thu Aug 24, 2023 9:43 am
DMoogle wrote: Thu Aug 24, 2023 9:35 am Is the consensus here still that it's worth it to keep a portion of the portfolio in ITTs, even given that short-term rates exceed long and medium term rates?
Boglehead user Physicist once did a simulation that didn't show convincing benefits of max carry; but I have not reconciled his results with the results from the paper.
The stitched time series were not "return-matched" to some constant duration, so that analysis will have to be redone.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Fri Aug 25, 2023 12:30 pm
comeinvest wrote: Thu Aug 24, 2023 9:43 am
DMoogle wrote: Thu Aug 24, 2023 9:35 am Is the consensus here still that it's worth it to keep a portion of the portfolio in ITTs, even given that short-term rates exceed long and medium term rates?
Boglehead user Physicist once did a simulation that didn't show convincing benefits of max carry; but I have not reconciled his results with the results from the paper.
The stitched time series were not "return-matched" to some constant duration, so that analysis will have to be redone.
That would be fun to see ;)
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

Ok back from SOFR futures to treasury futures - let's see what's happening here, let's do some sanity check. Between Aug 10 and Aug 22, the ZF Sep/Dec calendar spread dropped by ca. 0.4% annualized, and the ZN calendar spread dropped by ca. 0.6% annualized (calculated in my head). The Dec 14 maturity T-bill yield that I would think should theoretically move with the Dec expiration futures financing cost didn't change much in the same time. Nor did the Sep 2023 SOFR futures (expiring in December) - the yield only rose by ca. 0.03% in the same timeframe, if I read the chart right.
I know this is not the entire picture - the underlying CTDs are different; but still, the corresponding "average interest rate forecast periods" are close to each other: To Nov 2027 vs. to Feb 2028 for ZF, and to May 2030 vs. to July 2030 for ZN. I think the calendar spread should be mostly controlled by the financing cost.

Physicist, any chance you can check the absolute implied financing cost of the contracts? The calendar roll ends today / tomorrow.

Image

Image

Image

Image
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Thu Aug 17, 2023 1:36 pm
comeinvest wrote: Tue Aug 15, 2023 4:50 pm
unemployed_pysicist wrote: Tue Aug 15, 2023 3:40 pm Now that the Fed NSS fit to the off-the-run US treasury curve data has been released, I added an additional plot at the bottom of my original post. The figure compares the three zero coupon curves that I have access to - the NSS curve calculated by the Federal Reserve Board (this tries to make a smooth fit to the curve), my analytical bootstrap with 3 day tolerance between coupon payments and already calculated spot rates (which permits idiosyncratic behavior, no smoothing whatsoever), and the zero-coupon curve that I bootstrap from 3mo SOFR futures.

viewtopic.php?p=7408473#p7408473
Great, thanks!
A few questions:

What are the potential effects of the chaotic T-bill dots in the first 9 months on our ultimate goal the financing cost comparison further out the curve?

What is the theoretical benefit of the NSS fit over your "analytical bootstrap"? The NSS curve seems to just simply not mimic the intrinsic curvatures of the actual data in the various maturity regions, and therefore not reflect reality - the interpolation seems to be too rough.

The "SOFR Implied Zero Coupon" curve does not show the 2y anomaly in my spreadsheet and chart. In fact, in your chart the spread between "SOFR Implied Zero Coupon" and treasuries, divided by maturity, seems to be about equal or perhaps higher at 5y than at 2y; whether we compare to the black or green curve, so the treasury version that we take doesn't explain the difference.
The only other difference between your and my data that I can see is yours is based on the convexity adjusted futures and mine on the Chatham SOFR swap yields, right? In your earlier chart that had the Chatham forward rates, the Chatham forward rates match the continuously compounded convexity adjusted SOFR futures forward rates after Jan 2026 with about 10 bps accuracy; but it's not clear at shorter maturities. What's your best explanation of the difference between our results of implied financing at the 2y point?

Should we compare zero coupon curves, or forward rate curves? Which is numerically more accurate? I understand the futures are originally forward rates, while the treasuries are originally zero coupon data based on coupon bond data.
For role of the chaotic T-bill dots as they apply to finding the implied financing, I guess we just have to take the best yield corresponding to the holding period (3 months).

Having thought more about this analytical bootstrap, I think that it is probably the (treasury) yield curve product you were looking for all along. It seems that you want to keep as much fine detail in the zero-coupon curve as possible, whereas the NSS fit gives a broader picture.
There are some benefits of the NSS curve:
- Easy calculation of zero coupon bonds, instantaneous forward rates, or arbitrary n-period rates m-periods forward at arbitrary maturity dates (calculating these rates will be more challenging with the analytical bootstrap, and not really possible to make the calculations at arbitrary maturity dates.)
- Large coverage; the NSS fit is valid out to 30 years (the analytical bootstrap cuts off at 10 years, due to the "missing" bonds between 2033 and 2036 maturity dates.)
- Useful tool for calculating returns where we do not have raw note/bond data, i.e., when we do backtesting. Without the CRSP or other suitable Treasury database, I think this is the best option available.

I think comparing either forward curves or zero coupon curves is fine. I would guess for any of the forward rates coming from rates futures (like SOFR futures), these may be slightly more numerically accurate than zero coupon curve, because the process will have one less calculation. But I don't think it makes much of a difference either way for rates futures. For my analytical bootstrap curve from notes and bonds, the zero-coupon curve will be more accurate because the forward rate will be one more calculation there. I will be limited by the discrete data points when calculating forward rates from the analytical bootstrap. Any interpolation to get specific forward rates at specific spots on the curve will introduce smoothing and possible non-realistic behavior.

I tend to transform the various curves into zero coupon curves to put them all on the same footing for visual comparison, because this feels conceptually easier to me. However, I suspect that comparing forward rates may be more common practice. I think Alan Greenspan was known to parse the yield curve into various forward rates, for example.
Thanks for your input. I too think the "analytical bootstrap" is the way to go for purpose of comparing treasuries with SOFR futures, and by implication treasury futures with SOFR futures, if we compare two points on the curve with (or near) both an actionable treasury and an actionably SOFR future contract - ultimately we are interested in comparing our real life, actionable investment options.
I also like to think in forward rates, as the market-estimated future short-term rate trajectory is perhaps what the yield curve is mostly based on, and what is perhaps most relatable to macroeconomic variables and microeconomic preferences (e.g. inflation; risk-free real yields). The rest is just averaging and term premium estimates. Although I'm sure one can think and derive conclusions the other way, starting with averages.
terminaluniverse
Posts: 7
Joined: Tue Apr 18, 2023 1:12 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by terminaluniverse »

millennialmillions wrote: Tue Aug 08, 2023 10:00 pm
director84 wrote: Tue Aug 08, 2023 12:35 pm Sure, you're currently holding cash as your collateral. Regardless of how you go it (margin loan, box spread, a money tree), it's still just sitting in your commodities segment earning no return. In a taxable account, IBKR allows T-Bills to be used as collateral, in which case you can earn some return on it. IBKR doesn't pay any interest on cash held in the commodities segment.
Thank you for the explanation. This made me realize I didn't fully understand how the interest is charged on cash balances. I have been maintaining an overall cash balance around $0 using box spreads, so I assumed this would mean I'm charged minimal/no interest. But when I created a statement to see the cash balance on which I'm being charged interest, it's about -$10k, which lines up with the collateral for my futures. So the cash I'm holding as collateral isn't "counting" toward my balance to avoid interest charges. And if I want to benefit from that cash, I need to use it to buy T-bills. Makes sense.

Side question - is there an easier way on IB to see the cash balance on which interest is charged? Doesn't seem like it matches any of the cash fields shown in the portfolio details view.

Edit: I found some helpful posts from you and comeinvest figuring this out / explaining it earlier in this thread. This is all making sense now, appreciate the guidance.
About 2 weeks ago I turned my 100% stocks portfolio into simple mHFEA. Just MES/VTI/VXUS and ZF/ZT/ZN/VGIT.

I'm also looking at what to do with the about 14k futures collateral necessary. Following the discussion from the link I see a lot of talk about commodities vs securities segment, cash sweeping between them etc. I'm a client of Interactive Brokers Ireland and this whole commodities vs securities segment / universal account thing seems to just not exist in europe. I just clicked through every single option in my account settings and this cash sweep option is nowhere to be found. I can also find some references to this universal account thing on the .com website, but not on the ireland website. If this distinction is really not a thing for non-US investors, what does this change? I have a portfolio margin account and maybe that means the futures collateral is just considered maintenance margin? How can I test this? You said you generated a statement that shows on what basis you are charged interest, can you explain what report / how you generated it so I can check if it actually works differently here?

For now I kept about 14k in USD cash but if it turns out I don't even need the collateral I can invest it and it doesn't even have to be t-bills.

I just used the web portal to generate a Month to Date Activity Statement and under the Intrest Accruals tab under USD I get:

Code: Select all

Interest Accrued	5.29
A positive number. Since IBKR starts paying interest above 10k USD and I'm getting a positive number it looks like the basis for interest accrual is:
14K cash - 10K
and not
14K cash - futures collateral - 10K

If futures collateral was really in the calculation here I would not have gotten interest right?

Edit: I'm also in the stock yield enhancement program (SYEP), not sure if this is also shown in Interest Accrued, but judging from the Stock Yield Enhancement Program Securities Lent part of the statement the interest accrued is more than what SYEP could explain.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

terminaluniverse wrote: Tue Aug 29, 2023 2:03 pm
millennialmillions wrote: Tue Aug 08, 2023 10:00 pm
director84 wrote: Tue Aug 08, 2023 12:35 pm Sure, you're currently holding cash as your collateral. Regardless of how you go it (margin loan, box spread, a money tree), it's still just sitting in your commodities segment earning no return. In a taxable account, IBKR allows T-Bills to be used as collateral, in which case you can earn some return on it. IBKR doesn't pay any interest on cash held in the commodities segment.
Thank you for the explanation. This made me realize I didn't fully understand how the interest is charged on cash balances. I have been maintaining an overall cash balance around $0 using box spreads, so I assumed this would mean I'm charged minimal/no interest. But when I created a statement to see the cash balance on which I'm being charged interest, it's about -$10k, which lines up with the collateral for my futures. So the cash I'm holding as collateral isn't "counting" toward my balance to avoid interest charges. And if I want to benefit from that cash, I need to use it to buy T-bills. Makes sense.

Side question - is there an easier way on IB to see the cash balance on which interest is charged? Doesn't seem like it matches any of the cash fields shown in the portfolio details view.

Edit: I found some helpful posts from you and comeinvest figuring this out / explaining it earlier in this thread. This is all making sense now, appreciate the guidance.
About 2 weeks ago I turned my 100% stocks portfolio into simple mHFEA. Just MES/VTI/VXUS and ZF/ZT/ZN/VGIT.

I'm also looking at what to do with the about 14k futures collateral necessary. Following the discussion from the link I see a lot of talk about commodities vs securities segment, cash sweeping between them etc. I'm a client of Interactive Brokers Ireland and this whole commodities vs securities segment / universal account thing seems to just not exist in europe. I just clicked through every single option in my account settings and this cash sweep option is nowhere to be found. I can also find some references to this universal account thing on the .com website, but not on the ireland website. If this distinction is really not a thing for non-US investors, what does this change? I have a portfolio margin account and maybe that means the futures collateral is just considered maintenance margin? How can I test this? You said you generated a statement that shows on what basis you are charged interest, can you explain what report / how you generated it so I can check if it actually works differently here?

For now I kept about 14k in USD cash but if it turns out I don't even need the collateral I can invest it and it doesn't even have to be t-bills.

I just used the web portal to generate a Month to Date Activity Statement and under the Intrest Accruals tab under USD I get:

Code: Select all

Interest Accrued	5.29
A positive number. Since IBKR starts paying interest above 10k USD and I'm getting a positive number it looks like the basis for interest accrual is:
14K cash - 10K
and not
14K cash - futures collateral - 10K

If futures collateral was really in the calculation here I would not have gotten interest right?

Edit: I'm also in the stock yield enhancement program (SYEP), not sure if this is also shown in Interest Accrued, but judging from the Stock Yield Enhancement Program Securities Lent part of the statement the interest accrued is more than what SYEP could explain.
I has been noted elsewhere that European IB accounts follow different rules. Then there are different futures exchanges that appear to follow different rules regarding cash collateral and account segments. Unfortunately IB doesn't disclose all their rules for interest calculation - in part it is a black box, and as a result the cash management is a game with a moving or an unknown target. I also feel IB itself doesn't understand all of their own rules. There are blatant bugs and inconsistencies in their futures margin reports. You should push customer service to disclose the full set of rules and update their web site - the more customers push them, the more likely perhaps they update their system. It's like pulling teeth.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

comeinvest wrote: Fri Aug 25, 2023 10:01 am
skierincolorado wrote: Thu Aug 24, 2023 11:31 pm I can't think of anything wrong with your methodology. It looks like you got sofrs lagging ZT by around 1% for the first period and .6% for the second. That's a lot but I also agree initial valuations would matter. I think we would need to sample a dozen or more periods to see if the divergence is persistent. If SOFRs always lag over randomly selected short periods, they must also lag for long term buy and hold.

If you annualize those differences it is 4% and 2.4% which is huge. Although I would expect valuation to matter over short periods I'm still surprised by how much. It makes me think maybe there is something wrong with the method.
It's 0.1% for the first and 0.6% for the second period, which would be 0.4% and 2.4% annualized.
You have to be careful drawing conclusions about expected returns even if you were to sample a dozen periods. If you look at the third party charts that I posted in some of my recent comments, there can be regime changes in SOFR swap spreads that persist for years, and the sign can change meaning SOFR futures might provide excess returns when SOFR swap spreads are positive. You would also have to think if rare tail risk events from changes in expected and realized volatilities that affect the SOFR futures are covered by your samples, or adjust the results based on how they would affect the relative performance.
Investing.com viewtopic.php?p=7403241#p7403241 has free treasury futures and SOFR eurodollar futures data for many years if not decades; so we could do a more comprehensive study and compare to the SOFR ED swap spreads as initial conditions from the charts that I posted, to gain insight on expected relative returns based on current swap spreads, or to verify that the initial SOFR ED swap spread controls the relative realized performance.
The treasury futures might also have fluctuating spreads to treasuries, which should theoretically also be predictable - see Physicist's calculations up in this thread.
Another thing we could do is skip the exact duration matching which is a lot of manual labor (unless you somehow automize the matching based on cheapest-to-deliver data), and instead do longer-term portfolio level simulations with treasury futures and SOFR futures data and adjust for realized volatilities - so basically compare realized Sharpe ratios. Probably doesn't make sense because ED behaved differently from SOFR.
Another idea would be to use SOFR strips to target the 12 month period which has the highest Sharpe ratios - and on top a positive swap spread, at least until now.
Also, we want to get to the grounds of this - either this is not as clear cut and I stick to SOFR futures; or it is, and you'll watch me arbitraging the difference between treasury and SOFR futures or possibly swap futures, for free money that will possibly dwarf the term premium form either LTT ITT or STT, lol ;) not to mention there is no duration risk. Current spread between 30y treasuries vs 30y swaps is ca. 0.7% p.a. I don't know about pensions and institutions; but my account balance sheet is not constrained preventing me from doing this, if I'm not mistaken. Unless you show me how treasury futures "inconvenience" me so much to prevent me from harvesting the 0.7% inconvenience yield. Margin requirements are low. Just got to figure the drawdown risk - the risk of forward spread widening between the two risk-free rates (a bit of an oxymoron in and by itself) - and position size based on some asset allocation model - happy to compare the Sharpe ratio of this pair trade with that of other positions.
The spread widens to a solid 0.7% p.a. at 30y. Originally I was told the presumption was that the risk-free yield curves should be parallel. This is ridiculous.
Or do treasury futures currently have implied financing cost similar to SOFR futures and swaps?
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

Donald van Deventer periodically publishes thoughts and charts on term premia based on a statistical model. I find the forward yield curve quite interesting. My first reaction was that the fluctuations in forward yields are results of numerical errors when deriving the forward yields from the coupon bonds; but then again I would think that the coupon bonds are traded on (zero coupon equivalent) yields in the first place.

If I read the first chart right, it would seem to me that based on this model, the 20y treasuries would currently promise the largest term premium per duration.

The articles:
https://seekingalpha.com/article/463172 ... ry-spreads
https://seekingalpha.com/article/461932 ... ne-30-2023

Image

Image
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Treasury futures vs SOFR futures backtesting

Post by unemployed_pysicist »

comeinvest wrote: Thu Aug 24, 2023 4:38 pm I originally posted this on 06/15 but deleted it because I was not sure if my math was right.

I went through the trouble and tried to compare the performance of the SOFR strips to that of the equivalent treasury futures, with data from IB charts which have a ton of problems, but I have relatively high confidence in them if you carefully compare "apples to apples" data points with the same timestamp, or end-of-day (EOD), or settlement data, and if there is no futures contract stitching involved.

Please let me know if my methodology of selecting "equivalent" SOFR futures and treasury futures makes sense; the methodology is based on my own reasoning. "Equivalent" is based on the arbitrage argument of the expectations hypothesis: The long-term rate is the average of the expected short-term rates between now and the maturity of the long-term bond, and both underlyings are essentially spot quotes of risk-free short-term rates. So both represent an economic exposure to short-term risk-free rates over the contemplated time period (i.e. the time period between now and the maturity of the CTD). Term premia are baked into both the long-term bond yield and the "biased" short-term forward rates expectations, and should mimic each other because both are risk-free term premia.

I'm only interested in the relative performance of a duration exposure, not in absolute dollar gains or losses; therefore I just add the SOFR futures quotes that are part of the strip, both at the beginning and then again at the end of the backtest period; the ratio should be the performance, that is comparable to the performance of equivalent the treasury futures contract.

I ignored the coupon of the treasury and treated the treasury as a zero-coupon bond; the effect should be very small. I also ignored many of the intricacies of treasury futures like the embedded quality option, and various embedded delivery timing options.

I ignored convexity adjustments, because I think they apply to both types of futures, and should result in similar if not equal adjustments.
EDIT: Convexity adjustments need to be applied to the SOFR futures, the fair value of which depends on expected volatilities beyond the end of the backtest period until the expiration of the SOFR futures.

For the June 2023 /ZT future I did the work for both the "last day" (CTD maturing 03/31/2025) and "first day" (CTD maturing 6/15/2025) delivery CTD, to cover all my bases. I crafted 2 SOFR strips: "Strip 1" matches the period between 02/24/2023 and 03/31/2025; "strip 2" matches the period between 02/24/2023 and 06/15/2025. SOFR futures settle to backward looking averages; therefore movements in the soonest expiring SOFR future (the Dec 2022 contract expiring 03/14/2023) should represent changes in expectations for overnight rates between 2/24/2023 and the remaining term of this contract, until the expected rates converge to the realized rates. I also extrapolated the furthest SOFR future (expiring 03/19/2025 and 06/18/2025 respectively) to cover the gap between the expiration of the SOFR future and the maturity of the CTD of the treasury future (03/31/2025 and 06/15/2025 respectively).

Unfortunately IB charts don't allow to chart expired contracts together with active contracts within a virtual security expression; therefore I had to collect the data separately and add them by hand.

Assuming that my methodology makes sense, I'm not happy with the results; but I'm not panicking. Two quarters don't say much, and the successful use of STIR futures for leveraged portfolio duration risk exposure was demonstrated in the papers cited earlier in this thread.
EDIT 1: Like I mentioned in the discussion of the SOFR swap spreads, the backtest results may infer nothing about the future, as we have to adjust for initial valuation conditions (spreads of the yields (swaps) or theoretical implied financing cost / futures yields (futures) of the derivatives vs treasuries or vs each other) which can fluctuate a lot based on the charts posted earlier.
EDIT 2: Results over short backtesting periods are also not meaningful for predictions, because the SOFR futures are affected by changes in expected volatilities, which are not directly observable.

June 2023 /ZT future, time period 02/24/2023 16:00 to 05/24/2023 16:00 :

Code: Select all

~ZT 2023-06 emulated 1: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + ("SOFR3 DEC'24 @CME" / 90 * 102)
~ZT 2023-06 emulated 2: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + "SOFR3 SEP'24 @CME" + "SOFR3 DEC'24 @CME" + ("SOFR3 MAR'25 @CME" / 92 * 90)

ZT 02/24/2023 16:00 (6 mo. chart - trades) 101'260
ZT 05/24/2023 16:00 (6 mo. chart - trades) 102'102
Performance if /ZT (not annualized): (102 + 102.5/320) / (101 + 260/320) -> 1.0049877

SOFR3 Dec 2022 02/24/2023 16:00 (3 mo. chart - trades) 95.555
SOFR3 Dec 2022 03/14/2023 16:00 (3 mo. chart - trades) 95.5525
SOFR3 strip 1 02/24/2023 16:00 (6 mo. chart - midpoints) 774.345
SOFR3 strip 1 05/24/2023 16:00 (6 mo. chart - midpoints) 777.7032
Performance of emulation of /ZT with SOFR strip 1 (not annualized): (777.7032 + 95.5525) / (774.345 + 95.555) -> 1.0038576
SOFR3 strip 2 02/24/2023 16:00 (6 mo. chart - midpoints) 855.7364
SOFR3 strip 2 05/24/2023 16:00 (6 mo. chart - midpoints) 859.5594
Performance of emulation of /ZT with SOFR strip 2 (not annualized): (859.5594 + 95.5525) / (855.7364 + 95.555) -> 1.0040161
March 2023 /ZT future, time period 11/22/2022 EOD to 02/24/2023 EOD :

Code: Select all

~ZT 2023-03 emulated: "SOFR3 MAR'23 @CME" + "SOFR3 JUN'23 @CME" + "SOFR3 SEP'23 @CME" + "SOFR3 DEC'23 @CME" + "SOFR3 MAR'24 @CME" + "SOFR3 JUN'24 @CME" + ("SOFR3 SEP'24 @CME" / 91 * 104)

ZT 11/22/2022 EOD (6 mo. chart - trades) 102'132
ZT 02/24/2023 EOD (6 mo. chart - trades) 102'200
Performance of /ZT (not annualized): (102 + 200/320) / (102 + 132.5/320) -> 1.0020596

SOFR3 Sep 2022 11/22/2022 EOD (6 mo. chart - trades) 96.5175
SOFR3 Sep 2022 12/21/2022 EOD (6 mo. chart - trades) 96.5275
SOFR3 Dec 2022 11/22/2022 EOD (6 mo. chart - trades) 95.42
SOFR3 Dec 2022 02/24/2023 EOD (6 mo. chart - trades) 95.555
SOFR3 strip 11/22/2022 EOD (1y chart - midpoints) 682.7425
SOFR3 strip 02/24/2023 EOD (1y chart - midpoints) 679.0721
Performance of emulation of /ZT with SOFR strip (not annualized): (679.0721 + 96.5275 + 95.555) / (682.7425 + 96.5175 + 95.42) -> 0.9959695
Image

Image

Image

Image

Image

Image

Some thoughts and questions:

I'm not sure that you need to make a convexity adjustment here for the SOFR strip. I think when calculating the returns of the strip, that should already be baked in, so to speak. At 2 years or less, the adjustment should be small, anyway.

I'm not sure about the validity of over/under weighting of the final contract to get the same duration as the shortest and longest maturity note in the delivery basket. But I personally can't think of a better method to match the duration of the 2 year note futures. One quick clarification, did you take the time to maturity for the shortest and longest term treasury in the basket, or did you calculate the cheapest to deliver at the first possible delivery date and the last possible delivery date, and found the time to maturity for both notes in the basket?

What about the return on collateral? I would guess the 2 year note futures contract should be collateralized by Tbills, whereas the SOFR strip would be collateralized by term SOFR.

I suppose you may argue that you could theoretically hold either as collateral in a futures account, so you are indifferent to the term SOFR as collateral for SOFR futures versus Tbills for treasury futures issue. I.e., it doesn't matter to you. But I wonder if this difference in funding will pull the returns of both to be more in line with each other. The treasury futures will be linked up with their risk free rate, and the SOFR strip will be linked up with its respective risk free rate.

Unfortunately, I am missing some of the 3 month SOFR contracts to construct a complete SOFR strip for the dates you have chosen, so I cannot also do the calculation at this time as additional confirmation of your results. But I have 1 year of all current sofr contracts, including the june 2023 contract. This means that I can calculate the return of a SOFR strip starting from any date from the 3rd wednesday of june 2023 forward, assuming I remember to scrape the full price history once per ~3 months. I will probably want to match durations (not treat the 2 year note CTD as a zero coupon bond.) I don't know if it matters much for a ~2 year note. But I should have the duration data for the 2 year note (or other contract) on hand and so I should be able to do this in principle, so why not? :)
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm Some thoughts and questions:

I'm not sure that you need to make a convexity adjustment here for the SOFR strip. I think when calculating the returns of the strip, that should already be baked in, so to speak. At 2 years or less, the adjustment should be small, anyway.
Yes it should be baked in and be a wash when comparing total returns over longer timeframes. But for a single backtest over a 3 months period, the SOFR strip might have been affected by changes in expected volatilities over those 3 months, right? Yes that effect would possibly reverse in the future and average to zero over longer periods, but it might cause a difference in performance over a shorter time frame, right?
Additionally, tail risk that rarely shows up (e.g. spikes in volatility), but would (or should) be baked into the fair valuation of the SOFR futures, might not be represented in backtesting results over time periods where that tail risk didn't show up, right?
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm I'm not sure about the validity of over/under weighting of the final contract to get the same duration as the shortest and longest maturity note in the delivery basket. But I personally can't think of a better method to match the duration of the 2 year note futures. One quick clarification, did you take the time to maturity for the shortest and longest term treasury in the basket, or did you calculate the cheapest to deliver at the first possible delivery date and the last possible delivery date, and found the time to maturity for both notes in the basket?
I took the 2 dates as per https://www.cmegroup.com/tools-informat ... ytics.html . When you click on a contract, on the top you can select "Delivery Date" -> Last Day or First Day. I have no clue which of them is more relevant; therefore I did the math for both, to cover all my bases.

The parts of my virtual security expressions for the interpolation or extrapolation of the last SOFR contracts are:
"SOFR3 DEC'24 @CME" / 90 * 102
"SOFR3 MAR'25 @CME" / 92 * 90
"SOFR3 SEP'24 @CME" / 91 * 104
So we are only talking about a ca. 10% extrapolation, and that is only for the last contract - based on the ca. 2 years total period it's ca. 10 days / 700 days -> ca. 1.5%. The difference in forward rates or SOFR futures quotes between 2 adjacent 3-month periods is small. And on top of it, the movements of "adjacent" forward rates or SOFR futures quotes are usually highly correlated. In relation to the entire period (ca. 2 years) I think the effect of the extrapolation would be minuscule. I could take the weighted average between this and the next contract; but I think it's not worth it.
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm What about the return on collateral? I would guess the 2 year note futures contract should be collateralized by Tbills, whereas the SOFR strip would be collateralized by term SOFR.

I suppose you may argue that you could theoretically hold either as collateral in a futures account, so you are indifferent to the term SOFR as collateral for SOFR futures versus Tbills for treasury futures issue. I.e., it doesn't matter to you. But I wonder if this difference in funding will pull the returns of both to be more in line with each other. The treasury futures will be linked up with their risk free rate, and the SOFR strip will be linked up with its respective risk free rate.
I completely ignored collateral for this experiment. I just look at the performance of the unfunded futures.
Both futures need roughly the same collateral, and it's a low percentage of the equivalent nominal bond exposure. Conceptually it shouldn't matter for this experiment, should it? I could use whatever my brokers allows as collateral - cash, treasuries, equities, the value of my used cars (if my broker allowed this), right?
I think the important fact is that both versions of duration risk exposure are based on futures and as such require no additional funding as overlay in an existing portfolio.
Is there any theoretical or conceptual reason to assume different collaterals and adjust for the possibly different performance, for the different futures, for the sake of this experiment? Let me know; perhaps I'm thinking wrong.
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm Unfortunately, I am missing some of the 3 month SOFR contracts to construct a complete SOFR strip for the dates you have chosen, so I cannot also do the calculation at this time as additional confirmation of your results. But I have 1 year of all current sofr contracts, including the june 2023 contract. This means that I can calculate the return of a SOFR strip starting from any date from the 3rd wednesday of june 2023 forward, assuming I remember to scrape the full price history once per ~3 months. I will probably want to match durations (not treat the 2 year note CTD as a zero coupon bond.) I don't know if it matters much for a ~2 year note. But I should have the duration data for the 2 year note (or other contract) on hand and so I should be able to do this in principle, so why not? :)
If we want to do more historical backtesting further back in time, investing.com viewtopic.php?p=7403241#p7403241 has futures data far back including expired contracts - my links have the eurodollar and treasury futures; but I'm sure they also have the SOFR futures. The problem is SOFR futures are only in existence about 2 years I think, and had low volumes at the beginning.
I personally still don't know a data source that has historical CTD data or treasury futures duration data, therefore my backtesting capabilities are very limited. I was thinking of calculating "implied duration" data based on historical volatilities - infer the historical treasury futures duration from the volatility over a time segment in history.
I also don't have the exact roll periods of the historical treasury futures for splicing the contracts.

I think there is still a design problem with my experiment, or at least a math problem with my calcs - I'm still not sure if using the SOFR futures quotes (100 minus rate) is accurate - I think it's conceptually not 100% correct. I'm trying to wrap my head around this.
2 problems - 1. the (100 minus rate) notation itself - we instead might need to match duration risk accurately and look at the absolute performance difference, then divide by the treasury futures nominal exposure; and 2. the different convexities of the 2 different implementations of duration exposure (*footnote 1) - yes we could take a "black box" approach and say we just look at the end results (portfolio level risk and performance over long time periods); but for comparisons over shorter periods I think we need to adjust for changes in implied and realized volatilities for the results to be comparable and meaningful.

(*footnote 1) Here I mean the ** "bond convexities" (or equivalent) ** of the value of treasuries and the value of SOFR futures based on the (100 - rate) notation in response to changes in rates - the SOFR futures will always have a DV01 of exactly $25, while the DV01 of the treasury futures varies with changes in rates; a concept different from futures convexity (an artifact of futures mark to market cash flows) which has a measurable effect for SOFR futures only.

Looking forward to your verification of my results.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Treasury futures vs SOFR futures backtesting

Post by skierincolorado »

comeinvest wrote: Fri Sep 01, 2023 7:24 pm
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm Some thoughts and questions:

I'm not sure that you need to make a convexity adjustment here for the SOFR strip. I think when calculating the returns of the strip, that should already be baked in, so to speak. At 2 years or less, the adjustment should be small, anyway.
Yes it should be baked in and be a wash when comparing total returns over longer timeframes. But for a single backtest over a 3 months period, the SOFR strip might have been affected by changes in expected volatilities over those 3 months, right? Yes that effect would possibly reverse in the future and average to zero over longer periods, but it might cause a difference in performance over a shorter time frame, right?
Additionally, tail risk that rarely shows up (e.g. spikes in volatility), but would (or should) be baked into the fair valuation of the SOFR futures, might not be represented in backtesting results over time periods where that tail risk didn't show up, right?
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm I'm not sure about the validity of over/under weighting of the final contract to get the same duration as the shortest and longest maturity note in the delivery basket. But I personally can't think of a better method to match the duration of the 2 year note futures. One quick clarification, did you take the time to maturity for the shortest and longest term treasury in the basket, or did you calculate the cheapest to deliver at the first possible delivery date and the last possible delivery date, and found the time to maturity for both notes in the basket?
I took the 2 dates as per https://www.cmegroup.com/tools-informat ... ytics.html . When you click on a contract, on the top you can select "Delivery Date" -> Last Day or First Day. I have no clue which of them is more relevant; therefore I did the math for both, to cover all my bases.

The parts of my virtual security expressions for the interpolation or extrapolation of the last SOFR contracts are:
"SOFR3 DEC'24 @CME" / 90 * 102
"SOFR3 MAR'25 @CME" / 92 * 90
"SOFR3 SEP'24 @CME" / 91 * 104
So we are only talking about a ca. 10% extrapolation, and that is only for the last contract - based on the ca. 2 years total period it's ca. 10 days / 700 days -> ca. 1.5%. The difference in forward rates or SOFR futures quotes between 2 adjacent 3-month periods is small. And on top of it, the movements of "adjacent" forward rates or SOFR futures quotes are usually highly correlated. In relation to the entire period (ca. 2 years) I think the effect of the extrapolation would be minuscule. I could take the weighted average between this and the next contract; but I think it's not worth it.
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm What about the return on collateral? I would guess the 2 year note futures contract should be collateralized by Tbills, whereas the SOFR strip would be collateralized by term SOFR.

I suppose you may argue that you could theoretically hold either as collateral in a futures account, so you are indifferent to the term SOFR as collateral for SOFR futures versus Tbills for treasury futures issue. I.e., it doesn't matter to you. But I wonder if this difference in funding will pull the returns of both to be more in line with each other. The treasury futures will be linked up with their risk free rate, and the SOFR strip will be linked up with its respective risk free rate.
I completely ignored collateral for this experiment. I just look at the performance of the unfunded futures.
Both futures need roughly the same collateral, and it's a low percentage of the equivalent nominal bond exposure. Conceptually it shouldn't matter for this experiment, should it? I could use whatever my brokers allows as collateral - cash, treasuries, equities, the value of my used cars (if my broker allowed this), right?
I think the important fact is that both versions of duration risk exposure are based on futures and as such require no additional funding as overlay in an existing portfolio.
Is there any theoretical or conceptual reason to assume different collaterals and adjust for the possibly different performance, for the different futures, for the sake of this experiment? Let me know; perhaps I'm thinking wrong.
unemployed_pysicist wrote: Fri Sep 01, 2023 5:17 pm Unfortunately, I am missing some of the 3 month SOFR contracts to construct a complete SOFR strip for the dates you have chosen, so I cannot also do the calculation at this time as additional confirmation of your results. But I have 1 year of all current sofr contracts, including the june 2023 contract. This means that I can calculate the return of a SOFR strip starting from any date from the 3rd wednesday of june 2023 forward, assuming I remember to scrape the full price history once per ~3 months. I will probably want to match durations (not treat the 2 year note CTD as a zero coupon bond.) I don't know if it matters much for a ~2 year note. But I should have the duration data for the 2 year note (or other contract) on hand and so I should be able to do this in principle, so why not? :)
If we want to do more historical backtesting further back in time, investing.com viewtopic.php?p=7403241#p7403241 has futures data far back including expired contracts - my links have the eurodollar and treasury futures; but I'm sure they also have the SOFR futures. The problem is SOFR futures are only in existence about 2 years I think, and had low volumes at the beginning.
I personally still don't know a data source that has historical CTD data or treasury futures duration data, therefore my backtesting capabilities are very limited. I was thinking of calculating "implied duration" data based on historical volatilities - infer the historical treasury futures duration from the volatility over a time segment in history.
I also don't have the exact roll periods of the historical treasury futures for splicing the contracts.

I think there is still a design problem with my experiment, or at least a math problem with my calcs - I'm still not sure if using the SOFR futures quotes (100 minus rate) is accurate - I think it's conceptually not 100% correct. I'm trying to wrap my head around this.
2 problems - 1. the (100 minus rate) notation itself - we instead might need to match duration risk accurately and look at the absolute performance difference, then divide by the treasury futures nominal exposure; and 2. the different convexities of the 2 different implementations of duration exposure (*footnote 1) - yes we could take a "black box" approach and say we just look at the end results (portfolio level risk and performance over long time periods); but for comparisons over shorter periods I think we need to adjust for changes in implied and realized volatilities for the results to be comparable and meaningful.

(*footnote 1) Here I mean the ** "bond convexities" (or equivalent) ** of the value of treasuries and the value of SOFR futures based on the (100 - rate) notation in response to changes in rates - the SOFR futures will always have a DV01 of exactly $25, while the DV01 of the treasury futures varies with changes in rates; a concept different from futures convexity (an artifact of futures mark to market cash flows) which has a measurable effect for SOFR futures only.

Looking forward to your verification of my results.
I just did a rough simulation of owning a SOFR strip vs ZT since 9/15/2021. My initial strip was the 8 contracts expiring from Dec 2021 to Sep 2023. Approximately a week before expiration I sold the expiring contract at the price for the last day there is data for it and bought the next contract in the strip. I summed up the realized and unrealized gains/losses through 8/31/2023. I then divided by the sum of the price of the first 8 contracts (not very exact but close enough method). The total change was 4.04%. This means we lost 4.04% of interest per leg of the strip.

I think we need to scale by DV01. SOFRs have DV01 of 25 and ZT has DV01 of $33 currently. We would own 33/25 SOFR contracts per ZT. -4.04%*33/25 = -5.33%

According to SPGlobal ZT has a loss of 2.83% in the same period. But this is fully funded and needs to be converted to the unfunded return. Cash has returned 5% so the total return would be about -7.8% for ZT.

WSJ does unfunded ZT continuous contract. 9/15/2021 $110.125. 8/30/2023 $101.852. -7.5% return.

I think my average duration for the SOFR strip would be about 1.88. It would peak at 2 years when the new contract is added and drop to 1.75 years right before the next contract is added. The average would be about 1.88 which I think is very similar to the duration of ZT.
Last edited by skierincolorado on Sat Sep 02, 2023 2:11 pm, edited 4 times in total.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Treasury futures vs SOFR futures backtesting

Post by skierincolorado »

skierincolorado wrote: Sat Sep 02, 2023 5:06 am

I just did a rough simulation of owning a SOFR strip vs ZT since 9/15/2021. My initial strip was the 8 contracts expiring from Dec 2021 to Sep 2023. Approximately a week before expiration I sold the expiring contract and bought the next contract in the strip. I summed up the realized and unrealized gains/losses through 8/31/2023. I then divided by the sum of the price of the first 8 contracts (not very exact but close enough method). I got a loss of 4.04% interest loss on each leg.

I think we need to scale by DV01. SOFRs have DV01 of 25 and ZT has DV01 of $33 currently. We would own 33/25 SOFR contracts per ZT. -4.04%*33/25 = -5.33%

According to SPGlobal ZT has a loss of 2.83% in the same period. But this is fully funded and needs to be converted to the unfunded return. Cash has returned 5% so the total return would be about -7.8% for ZT.

WSJ does unfunded ZT continuous contract. 9/15/2021 $110.125. 8/30/2023 $101.852. -7.5% return.

I think my average duration for the SOFR strip would be about 1.88. It would peak at 2 years when the new contract is added and drop to 1.75 years right before the next contract is added. The average would be about 1.88 which I think is very similar to the duration of ZT.
I think maybe the duration is a bit shorter than that. CME currently shows 1.91 modified duration for the Dec contract but 1.72 for the Sep contract. I forget the difference between duration and modified duration since I'm fairly certain the duration already includes the coupons. The actual maturity on the Dec CTD is over 2 years away.

But for the moment I'll assume the shorter 'modified' duration is what I want. The average of the two contracts is 1.81 which is a bit shorter than what I've simulated. I cut 2 months off of my simulation to see what the effect would be. When the earliest contract expires it is not replaced until 2 months later. This means most of the time I hold the nearest 7 contracts but 1/3 of the time I hold 8 contracts. The duration would peak at 22 months and fall to 19 average 20.5 months or 1.71 years.

The return atually gets a touch worse to -4.09%. Scaled by DV01 it would be -5.39%. Which is surprising to me givem the shorter duration than my first sim, but very similar overall.
Last edited by skierincolorado on Sat Sep 02, 2023 2:12 pm, edited 3 times in total.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by skierincolorado »

To summarize I'm getting -5.39% for SOFR and -7.5% for ZT from 9/15/2021 to 8/30/2023.

I just did 9/15/2022 to 8/30/2023 to see if the 1 year returns matched more closely.

I get -1.73% for SOFR 20.5 month strip scaled by 33/25 DV01 and -1.49% for ZT.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Treasury futures vs SOFR futures backtesting

Post by skierincolorado »

comeinvest wrote: Fri Sep 01, 2023 7:24 pm

I think there is still a design problem with my experiment, or at least a math problem with my calcs - I'm still not sure if using the SOFR futures quotes (100 minus rate) is accurate - I think it's conceptually not 100% correct. I'm trying to wrap my head around this.
2 problems - 1. the (100 minus rate) notation itself - we instead might need to match duration risk accurately and look at the absolute performance difference, then divide by the treasury futures nominal exposure; and 2. ....
Yes I think we need to scale by the DV01s or volatilities or something similar.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

skierincolorado wrote: Sat Sep 02, 2023 11:32 am
skierincolorado wrote: Sat Sep 02, 2023 5:06 am

I just did a rough simulation of owning a SOFR strip vs ZT since 9/15/2021. My initial strip was the 8 contracts expiring from Dec 2021 to Sep 2023. Approximately a week before expiration I sold the expiring contract and bought the next contract in the strip. I summed up the realized and unrealized gains/losses through 8/31/2023. I then divided by the sum of the price of the first 8 contracts (not very exact but close enough method). I got a loss of 4.04% interest loss on each leg.

I think we need to scale by DV01. SOFRs have DV01 of 25 and ZT has DV01 of $33 currently. We would own 33/25 SOFR contracts per ZT. -4.04%*33/25 = -5.33%

According to SPGlobal ZT has a loss of 2.83% in the same period. But this is fully funded and needs to be converted to the unfunded return. Cash has returned 5% so the total return would be about -7.8% for ZT.

WSJ does unfunded ZT continuous contract. 9/15/2021 $110.125. 8/30/2023 $101.852. -7.5% return.

I think my average duration for the SOFR strip would be about 1.88. It would peak at 2 years when the new contract is added and drop to 1.75 years right before the next contract is added. The average would be about 1.88 which I think is very similar to the duration of ZT.
I think maybe the duration is a bit shorter than that. CME currently shows 1.91 modified duration for the Dec contract but 1.72 for the Sep contract. I forget the difference between duration and modified duration since I'm fairly certain the duration already includes the coupons. The actual maturity on the Dec CTD is over 2 years away.

But for the moment I'll assume the shorter 'modified' duration is what I want. The average of the two contracts is 1.81 which is a bit shorter than what I've simulated. I cut 2 months off of my simulation to see what the effect would be. When the earliest contract expires it is not replaced until 2 months later. This means most of the time I hold the nearest 7 contracts but 1/3 of the time I hold 8 contracts. The duration would peak at 22 months and fall to 19 average 20.5 months or 1.71 years.

The return atually gets a touch worse to -4.09%. Scaled by DV01 it would be -5.39%. Which is surprising to me givem the shorter duration than my first sim, but very similar overall.
No quite surprising that the results are almost identical, because you are already adjusting your results for duration risk exposure, as you "divided by the sum of the price of the first 8 contracts (not very exact but close enough method)." So your second result vs first result difference basically just reflects the fact that interest rates rose more basepoints for shorter expirations on the forward rate yield curve.

Overall I think my method is much more accurate. You don't know what the durations of the ZT contracts were in the past two years; they may have been much different from the last two contracts, and probably were because interest rates rose and durations decrease with increasing interest rates for constant maturity. So your results may be skewed.
Topic Author
skierincolorado
Posts: 2379
Joined: Sat Mar 21, 2020 10:56 am

Re: Treasury futures vs SOFR futures backtesting

Post by skierincolorado »

comeinvest wrote: Mon Sep 04, 2023 4:21 pm
skierincolorado wrote: Sat Sep 02, 2023 11:32 am
skierincolorado wrote: Sat Sep 02, 2023 5:06 am

I just did a rough simulation of owning a SOFR strip vs ZT since 9/15/2021. My initial strip was the 8 contracts expiring from Dec 2021 to Sep 2023. Approximately a week before expiration I sold the expiring contract and bought the next contract in the strip. I summed up the realized and unrealized gains/losses through 8/31/2023. I then divided by the sum of the price of the first 8 contracts (not very exact but close enough method). I got a loss of 4.04% interest loss on each leg.

I think we need to scale by DV01. SOFRs have DV01 of 25 and ZT has DV01 of $33 currently. We would own 33/25 SOFR contracts per ZT. -4.04%*33/25 = -5.33%

According to SPGlobal ZT has a loss of 2.83% in the same period. But this is fully funded and needs to be converted to the unfunded return. Cash has returned 5% so the total return would be about -7.8% for ZT.

WSJ does unfunded ZT continuous contract. 9/15/2021 $110.125. 8/30/2023 $101.852. -7.5% return.

I think my average duration for the SOFR strip would be about 1.88. It would peak at 2 years when the new contract is added and drop to 1.75 years right before the next contract is added. The average would be about 1.88 which I think is very similar to the duration of ZT.
I think maybe the duration is a bit shorter than that. CME currently shows 1.91 modified duration for the Dec contract but 1.72 for the Sep contract. I forget the difference between duration and modified duration since I'm fairly certain the duration already includes the coupons. The actual maturity on the Dec CTD is over 2 years away.

But for the moment I'll assume the shorter 'modified' duration is what I want. The average of the two contracts is 1.81 which is a bit shorter than what I've simulated. I cut 2 months off of my simulation to see what the effect would be. When the earliest contract expires it is not replaced until 2 months later. This means most of the time I hold the nearest 7 contracts but 1/3 of the time I hold 8 contracts. The duration would peak at 22 months and fall to 19 average 20.5 months or 1.71 years.

The return atually gets a touch worse to -4.09%. Scaled by DV01 it would be -5.39%. Which is surprising to me givem the shorter duration than my first sim, but very similar overall.
No quite surprising that the results are almost identical, because you are already adjusting your results for duration risk exposure, as you "divided by the sum of the price of the first 8 contracts (not very exact but close enough method)." So your second result vs first result difference basically just reflects the fact that interest rates rose more basepoints for shorter expirations on the forward rate yield curve.

Overall I think my method is much more accurate. You don't know what the durations of the ZT contracts were in the past two years; they may have been much different from the last two contracts, and probably were because interest rates rose and durations decrease with increasing interest rates for constant maturity. So your results may be skewed.
I was surprised because my guess was that the worst performing part of the curve recently was around the 2y mark and expected shortening the duration to include less of that would improve returns. But now that I think about it I could also see how the worst performing would be 1y or less.

I think my method would be more informative for a few reasons 1) It's literally the implemenation method of using SOFRs instead of ZT, these would be your actual returns had you swapped SOFRs for ZT or vice versa 2) It's over a longer time period and changes in spreads would have less of an effect whereas a 3 month return could be dominated by changes in spreads between different investment vehicles (spreads between treasuries, treasury futures, and SOFRs that are not perfectly and consistently arbitraged. 3) I think you do need to adjust for DV01 or duration. For example say we hold a 2 year strip of SOFRs all with initial pricing of 100. Let's say overnight the price of all 8 contracts drops to 95. You'd say this was a -5% return by your method wouldn't you (by your method of adding up the initial and final values and dividing them)? But the corresponding treasury or treasury future would lose nearly 10%.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

skierincolorado wrote: Mon Sep 04, 2023 6:18 pm 3) I think you do need to adjust for DV01 or duration. For example say we hold a 2 year strip of SOFRs all with initial pricing of 100. Let's say overnight the price of all 8 contracts drops to 95. You'd say this was a -5% return by your method wouldn't you (by your method of adding up the initial and final values and dividing them)? But the corresponding treasury or treasury future would lose nearly 10%.
I don't know what I was thinking. I think I was confused by the "100 minus yield" notation and thought the SOFR futures quote is the discount value of a hypothetical $100 par value zero coupon bond.

Luckily I have screenshots with the treasury futures DV01 from the analytics sites; but only from June 14 2023. So I could reverse-engineer the DV01 at the beginning of my test periods (11/22/2022 and 02/24/2023) and use the appropriate fractional number of SOFR futures. But the problem is the DV01 of the treasury futures contract will constantly change, as the DV01 of the treasury bond will constantly change (usually decrease as it comes closer to maturity). I think the best way is to do my own daily calculation of the DV01 of the CTD bond, and use a different fractional number of SOFR futures every day. The SOFR strip will largely mimic the decreasing DV01, because the "partially consumed" nearest expiration SOFR will continue to be "consumed".
It would also be nice to overlay the two profit/loss curves in one chart.

Is the "futures DV01" from https://www.cmegroup.com/tools-informat ... ytics.html the same (by definition) as the DV01 of the CTD?

Speaking of which. Just for kicks, I tried to do a basic verification and calculated the DV01 of the current 2y treasury futures from the published "futures price" and "modified duration": (102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)
"Future price" seems to be the futures price, not the CTD price, although the notation is that of treasury bonds and not the ' notation of treasury futures? Or perhaps they mean "future CTD price"?
EDIT: I'm definitely not understanding the treasury analytics data. The DV01 for the Sep23, Dec23, and Mar24 expirations are almost the same, although the durations are a lot different.

The duration and CTD changes dramatically with First Day vs. Last Day delivery day. So which one is it?
https://www.cmegroup.com/trading/intere ... _Point.pdf says "Futures DV01 = Cash DV01 / Conversion Factor". But https://quant.stackexchange.com/questio ... v01-of-ctd instructs to use forward DV01. https://quant.stackexchange.com/questio ... acking-ctd points out that the futures DV01 should be a probabilistic mix of the CTD contenders, if I understand it right. That would make the SOFR futures / treasury futures comparison again tricky, because I don't have the historical evolution of the CTD contenders and the resulting futures DV01.

Image

Sep 2023 Last Day:

Image

Sep 2023 First Day:

Image

Dec 2023 Last Day:

Image

Dec 2023 First Day:

Image

Mar 2024 Last Day:

Image

Mar 2024 First Day:

Image
Last edited by comeinvest on Tue Sep 05, 2023 6:35 am, edited 17 times in total.
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

skierincolorado wrote: Mon Sep 04, 2023 6:18 pm
comeinvest wrote: Mon Sep 04, 2023 4:21 pm
skierincolorado wrote: Sat Sep 02, 2023 11:32 am
skierincolorado wrote: Sat Sep 02, 2023 5:06 am

I just did a rough simulation of owning a SOFR strip vs ZT since 9/15/2021. My initial strip was the 8 contracts expiring from Dec 2021 to Sep 2023. Approximately a week before expiration I sold the expiring contract and bought the next contract in the strip. I summed up the realized and unrealized gains/losses through 8/31/2023. I then divided by the sum of the price of the first 8 contracts (not very exact but close enough method). I got a loss of 4.04% interest loss on each leg.

I think we need to scale by DV01. SOFRs have DV01 of 25 and ZT has DV01 of $33 currently. We would own 33/25 SOFR contracts per ZT. -4.04%*33/25 = -5.33%

According to SPGlobal ZT has a loss of 2.83% in the same period. But this is fully funded and needs to be converted to the unfunded return. Cash has returned 5% so the total return would be about -7.8% for ZT.

WSJ does unfunded ZT continuous contract. 9/15/2021 $110.125. 8/30/2023 $101.852. -7.5% return.

I think my average duration for the SOFR strip would be about 1.88. It would peak at 2 years when the new contract is added and drop to 1.75 years right before the next contract is added. The average would be about 1.88 which I think is very similar to the duration of ZT.
I think maybe the duration is a bit shorter than that. CME currently shows 1.91 modified duration for the Dec contract but 1.72 for the Sep contract. I forget the difference between duration and modified duration since I'm fairly certain the duration already includes the coupons. The actual maturity on the Dec CTD is over 2 years away.

But for the moment I'll assume the shorter 'modified' duration is what I want. The average of the two contracts is 1.81 which is a bit shorter than what I've simulated. I cut 2 months off of my simulation to see what the effect would be. When the earliest contract expires it is not replaced until 2 months later. This means most of the time I hold the nearest 7 contracts but 1/3 of the time I hold 8 contracts. The duration would peak at 22 months and fall to 19 average 20.5 months or 1.71 years.

The return atually gets a touch worse to -4.09%. Scaled by DV01 it would be -5.39%. Which is surprising to me givem the shorter duration than my first sim, but very similar overall.
No quite surprising that the results are almost identical, because you are already adjusting your results for duration risk exposure, as you "divided by the sum of the price of the first 8 contracts (not very exact but close enough method)." So your second result vs first result difference basically just reflects the fact that interest rates rose more basepoints for shorter expirations on the forward rate yield curve.

Overall I think my method is much more accurate. You don't know what the durations of the ZT contracts were in the past two years; they may have been much different from the last two contracts, and probably were because interest rates rose and durations decrease with increasing interest rates for constant maturity. So your results may be skewed.
...
I think my method would be more informative for a few reasons 1) It's literally the implemenation method of using SOFRs instead of ZT, these would be your actual returns had you swapped SOFRs for ZT or vice versa 2) It's over a longer time period and changes in spreads would have less of an effect whereas a 3 month return could be dominated by changes in spreads between different investment vehicles (spreads between treasuries, treasury futures, and SOFRs that are not perfectly and consistently arbitraged.
...
I disagree with (1). For simulations for purpose of performance comparison, having an accurate match on the time axis of the forward curve is more important than an accurate replication of the actual SOFR strip used in real life. Because the former will give insight on your comparative risk-adjusted expected returns of your real life SOFR strip, not the latter. We are interested in the risk-adjusted expected returns (in comparison to treasury futures) and in systematic errors; not in the result of the exact exposure which is ok to round up or down and to rebalance periodically.

(2) is true, but my charts on the last few pages showed that the swap spreads and invoice spreads can change in sign and magnitude in one direction over longer time frames of many years. So a backtesting comparison that ignores the initial conditions would only make sense and have meaningful predictive capability if done over decades, and perhaps after adjusting for different initial and ending spread valuations.
Basically the SOFR futures spread curve and the swap spread curves that physicist and myself posted earlier, and the charts that I posted from the third party sources, should uniquely determine the absolute returns of the instruments between now and maturity (or expiration), as well as the differences between the implementations. That's pure mathematics and doesn't need backtesting. If you look at the problem from the perspective of the zero coupon curve, the return of a bond until maturity is always 100% predictable, and so is the implied financing cost of the futures contract or the swaps until maturity, based on the initial valuation, the calculated implied financing cost. If you look at it from the perspective of forward rates, the difference between the forward rates of treasury bonds and SOFR forward rates will 100% predictably control the difference in returns until expiration, adjusted for the "terminal" difference at expiration (spot SOFR vs spot treasury). The empirical backtest is just for verification of those predictable results.

Like I said before, comparing Sharpe ratios instead of absolute performance comparisons might be another option for verification, which would eliminate the problem of matching durations exactly - you would still want to match the exposure on the time axis of the term structure closely, but the error would just be from changes in slope and not from parallel shifts of the yield curve.
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Treasury futures vs SOFR futures backtesting

Post by unemployed_pysicist »

comeinvest wrote: Tue Sep 05, 2023 3:53 am
Is the "futures DV01" from https://www.cmegroup.com/tools-informat ... ytics.html the same (by definition) as the DV01 of the CTD?

Speaking of which. Just for kicks, I tried to do a basic verification and calculated the DV01 of the current 2y treasury futures from the published "futures price" and "modified duration": (102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)
"Future price" seems to be the futures price, not the CTD price, although the notation is that of treasury bonds and not the ' notation of treasury futures? Or perhaps they mean "future CTD price"?
EDIT: I'm definitely not understanding the treasury analytics data. The DV01 for the Sep23, Dec23, and Mar24 expirations are almost the same, although the durations are a lot different.
I think the "futures DV01" is the note or bond DV01 divided by the conversion factor:

91282CFK2 (the ctd) cash dv01: 31.61, CF: 0.9590,

31.61/0.959=32.96, which is what I see listed as the futures dv01 right now on the CME treasury analytics page for the dec two year note futures contract. This is also the same value in the column labelled: Futures DV01
(Cash DV01/TCF)
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Treasury futures vs SOFR futures backtesting

Post by unemployed_pysicist »

skierincolorado wrote: Sat Sep 02, 2023 11:32 am
I think maybe the duration is a bit shorter than that. CME currently shows 1.91 modified duration for the Dec contract but 1.72 for the Sep contract. I forget the difference between duration and modified duration since I'm fairly certain the duration already includes the coupons.
I thought it was just:

Modified duration = (Macaulay duration, or just duration)/(1+yield/200) for semi annual compounding

Using values I see now on the treasury analytics page for duration and yield to maturity I get:
1.9414/(1+4.9353/200)=1.8946, vs 1.8938 as shown on the treasury analytics page; not sure exactly why there is the small 0.0008 discrepancy.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Treasury futures vs SOFR futures backtesting

Post by comeinvest »

unemployed_pysicist wrote: Tue Sep 05, 2023 11:57 am
comeinvest wrote: Tue Sep 05, 2023 3:53 am
Is the "futures DV01" from https://www.cmegroup.com/tools-informat ... ytics.html the same (by definition) as the DV01 of the CTD?

Speaking of which. Just for kicks, I tried to do a basic verification and calculated the DV01 of the current 2y treasury futures from the published "futures price" and "modified duration": (102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)
"Future price" seems to be the futures price, not the CTD price, although the notation is that of treasury bonds and not the ' notation of treasury futures? Or perhaps they mean "future CTD price"?
EDIT: I'm definitely not understanding the treasury analytics data. The DV01 for the Sep23, Dec23, and Mar24 expirations are almost the same, although the durations are a lot different.
I think the "futures DV01" is the note or bond DV01 divided by the conversion factor:

91282CFK2 (the ctd) cash dv01: 31.61, CF: 0.9590,

31.61/0.959=32.96, which is what I see listed as the futures dv01 right now on the CME treasury analytics page for the dec two year note futures contract. This is also the same value in the column labelled: Futures DV01
(Cash DV01/TCF)
I get that; but why is my above simple math using the values for futures off? What is the correct math?

"(102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)"

If it's because of the uncertainty regarding CTD contenders, this should already be reflected in the futures price or not?

I cannot constantly monitor the futures DV01 because I have a full time job (lol), but now I'm curious how it changes over the time when one contract was the front month contract.

Also:
https://www.cmegroup.com/trading/intere ... _Point.pdf says "Futures DV01 = Cash DV01 / Conversion Factor". But https://quant.stackexchange.com/questio ... v01-of-ctd instructs to use forward DV01. https://quant.stackexchange.com/questio ... acking-ctd points out that the futures DV01 should be a probabilistic mix of the CTD contenders, if I understand it right. That would make the SOFR futures / treasury futures comparison again tricky, because I don't have the historical evolution of the CTD contenders and the resulting futures DV01.
Last edited by comeinvest on Tue Sep 05, 2023 4:47 pm, edited 1 time in total.
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Treasury futures vs SOFR futures backtesting

Post by unemployed_pysicist »

comeinvest wrote: Tue Sep 05, 2023 12:59 pm
unemployed_pysicist wrote: Tue Sep 05, 2023 11:57 am
comeinvest wrote: Tue Sep 05, 2023 3:53 am
Is the "futures DV01" from https://www.cmegroup.com/tools-informat ... ytics.html the same (by definition) as the DV01 of the CTD?

Speaking of which. Just for kicks, I tried to do a basic verification and calculated the DV01 of the current 2y treasury futures from the published "futures price" and "modified duration": (102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)
"Future price" seems to be the futures price, not the CTD price, although the notation is that of treasury bonds and not the ' notation of treasury futures? Or perhaps they mean "future CTD price"?
EDIT: I'm definitely not understanding the treasury analytics data. The DV01 for the Sep23, Dec23, and Mar24 expirations are almost the same, although the durations are a lot different.
I think the "futures DV01" is the note or bond DV01 divided by the conversion factor:

91282CFK2 (the ctd) cash dv01: 31.61, CF: 0.9590,

31.61/0.959=32.96, which is what I see listed as the futures dv01 right now on the CME treasury analytics page for the dec two year note futures contract. This is also the same value in the column labelled: Futures DV01
(Cash DV01/TCF)
I get that; but why is my above simple math using the values for futures off? What is the correct math?

"(102+14.75/32) * $2000 * 0.022736 * 0.01 -> $46.5910 which is not quite the same as the published DV01 of $36.65. What am I doing wrong?
(Futures multiplier is $2000; DV01 refers to dollar change with one basepoint change in interest rate i.e. 1/100 of duration, multiplied by the notional value of the bond, or not?)"

If it's because of the uncertainty regarding CTD contenders, this should already be reflected in the futures price or not?

I cannot constantly monitor the futures DV01 because I have a full time job (lol), but now I'm curious how it changes over the time when one contract was the front month contract.

Also:
The duration and CTD changes dramatically with First Day vs. Last Day delivery day. So which one is it?
https://www.cmegroup.com/trading/intere ... _Point.pdf says "Futures DV01 = Cash DV01 / Conversion Factor". But https://quant.stackexchange.com/questio ... v01-of-ctd instructs to use forward DV01. https://quant.stackexchange.com/questio ... acking-ctd points out that the futures DV01 should be a probabilistic mix of the CTD contenders, if I understand it right. That would make the SOFR futures / treasury futures comparison again tricky, because I don't have the historical evolution of the CTD contenders and the resulting futures DV01.
I think you have to calculate the cash DV01 first; I am not sure if you can use the futures price.

Here is my calculation for the cash dv01 of 912810QC5, the ctd for the T bond contract at 2023-09-05 13:49:21.487754 (EST)
-Scraped value of clean bond price: 101.065106, as calculated from the yield found on marketwatch (at my broker, midpoint was 101.078 at 14:25 EST)
-My calculated Modified duration: 11.323282

912810QC5 DV01: 0.01*(11.323282)*(101.065106)*1000*0.01=114.43, reasonably close to the cash DV01: $113.20 (shown below.) Maybe it does not match because of my different values for the cash bond price and modified duration.

Image

(I'm just following the steps from here: https://www.cmegroup.com/trading/intere ... _Dec_4.pdf)

If I try to do the same thing by taking the listed futures price and multiplying by the conversion factor:
0.01*11.3031*0.85*(119+5/32.)*1000*0.01=$114.48, which does not match the $113.2 value shown on the same page with these values. So I don't know if you can do this. Or there is an additional correction as posted in your links that we are missing.

Prices are still moving around a bit, which means that my values for price and modified duration are fluctuating, so they do not match the CME results which are from earlier today. I can check again near market close to see if it's any better (5 pm EST for the cash bond market, I believe.) I will check your links to see if additional steps need to be taken as well.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

Image

If I use the column "full price" here I get close to the DV01:

0.01*1.88*($100.335)*1000*0.01=$18.86298 (should be $18.898)

This seems to be very close for all of the notes shown. But it's annoying that it does not match exactly.

Edit:
Also, it does not really make sense to me; I think full price here is the dirty price. But I don't see how you can multiply the dirty price by the duration, because the interest that has accrued cannot be lost by a change in rates, so it should not enter the DV01 calculation. And Modified duration should also be calculated using the clean price.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

unemployed_pysicist wrote: Tue Sep 05, 2023 2:58 pm Edit:
Also, it does not really make sense to me; I think full price here is the dirty price. But I don't see how you can multiply the dirty price by the duration, because the interest that has accrued cannot be lost by a change in rates, so it should not enter the DV01 calculation. And Modified duration should also be calculated using the clean price.
Reading further, looks like I was mistaken on this point, at least for the values shown in the table I posted above:
Burghardt wrote: One way is to calculate the hedge ratio directly by dividing the dollar value of a basis point of the portfolio by the dollar value of a basis point for one futures contract. The other is to use the durations of the portfolio and the futures contract together with their market or market equivalent values. What allows you to do this is that an issue's or portfolio's DV01 is proportional to the product of its duration and market value divided by 100. In particular,

DV01 = Duration x Market Value/100

where the dividing through by 100 reflects the convention of stating duration as the percent change in value for a 100-basis-point change in the yield. For example, with a full price including accrued interest of $128.9361 and a modified duration of 10.25%, the dollar value of a basis point for $1 million face or par amount of the 9-7/8% of 11/15/15 would be $1321.60.
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

deleted
Last edited by comeinvest on Tue Sep 05, 2023 5:34 pm, edited 1 time in total.
unemployed_pysicist
Posts: 224
Joined: Sat Oct 09, 2021 2:32 pm
Location: Amsterdam

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by unemployed_pysicist »

Price and DV01 checks for 91282CFK2, 3.5%, Maturing on 09/15/2025: (Two year note futures december contract ctd, last delivery date)

Scrape time: 2023-09-05 17:01:18.480308 EST
Scraped Yield: 4.965%
Clean Price calculated from Yield: 97.20294
Dirty Price: 98.866955
(Accrued Interest = Dirty-Clean = 1.664015) <- The small discrepancy between me and my broker comes from T+1 settlement; I think I'm using 175 days instead of 176
Calculated Modified Duration: 1.892707 (slight difference between me and the broker probably comes from my smaller value of the accrued interest and the slightly different clean price, I will look into it)

Calculated cash DV01 (If I follow Burghardt's suggestion)
0.01*1.892707*($98.866955)*2000*0.01=$37.425

From my broker:
Ask Yield: 4.927%
Bid Yield: 4.985%
Ask Price: 97.28125
Bid Price: 97.171875
Mid Price: 97.2265625
176 days Accrued Interest: 1.6739, hence dirty price = 97.2265625+1.6739=98.9004625
Modified Duration: 1.891

Calculated cash DV01 (If I follow Burghardt's suggestion)
0.01*1.891*($98.9004625)*2000*0.01=$37.404

CME screenshot at bond market close:
Image

I haven't even included the conversion factor yet and the DV01s are way off. Using the clean price does not help much:
0.01*1.891*($97.2265625)*2000*0.01=$36.77

And a quick guesstimate for the forward price of the note also does not help:
0.01*1.891*($97.2265625*exp(-0.055*116/365))*2000*0.01=$36.13
This is the lowest bound I can think of.

I don't see how the treasury analytics numbers can be correct for this contract.

Quick calculation for the T bond contract:
912810QC5 (CTD) cash DV01: 0.01*11.293036*($101.065068)*1000*0.01=$114.13 (using clean price)
0.01*11.293036*($101.333919)*1000*0.01=114.44 (using dirty price)

Image

Also does not match, although it is not as bad as for the two year note futures.

I have not tried the probabilistic mix yet. It is not clear to me that the treasury analytics page is doing this. I do agree that you would want to do the probabilistic mix, but I wonder if the ctd is "good enough" for the purposes of comparing SOFR performance to treasury futures performance. I will look into it (unless you solve this issue before then.)
couldn't afford the h | | BUY BONDS | WEAR DIAMONDS
comeinvest
Posts: 2861
Joined: Mon Mar 12, 2012 6:57 pm

Re: Modified versions of HFEA with ITT and Futures / Lifecycle Investing with Modern Portfolio Theory

Post by comeinvest »

unemployed_pysicist wrote: Tue Sep 05, 2023 3:48 pm
unemployed_pysicist wrote: Tue Sep 05, 2023 2:58 pm Edit:
Also, it does not really make sense to me; I think full price here is the dirty price. But I don't see how you can multiply the dirty price by the duration, because the interest that has accrued cannot be lost by a change in rates, so it should not enter the DV01 calculation. And Modified duration should also be calculated using the clean price.
Reading further, looks like I was mistaken on this point, at least for the values shown in the table I posted above:
Burghardt wrote: One way is to calculate the hedge ratio directly by dividing the dollar value of a basis point of the portfolio by the dollar value of a basis point for one futures contract. The other is to use the durations of the portfolio and the futures contract together with their market or market equivalent values. What allows you to do this is that an issue's or portfolio's DV01 is proportional to the product of its duration and market value divided by 100. In particular,

DV01 = Duration x Market Value/100

where the dividing through by 100 reflects the convention of stating duration as the percent change in value for a 100-basis-point change in the yield. For example, with a full price including accrued interest of $128.9361 and a modified duration of 10.25%, the dollar value of a basis point for $1 million face or par amount of the 9-7/8% of 11/15/15 would be $1321.60.
This makes sense to me. It's just a matter of definition. No, the forward interest rate changes don't change the interest already earned. But yes, the current "dirty" market value, whatever it is and whatever its provenance, enters the equation because of the definition of DV01 "modified duration". (DV01 is an absolute dollar value and the difference in DV01 should be the same whether you look at dirty or clean prices.)
Post Reply