SOFR Curve Modeling in Findur

by Lucido Group

Market participants that use LIBOR need to work on transitioning their contracts to alternative reference rates. The transition will involve a substantial amount of work for users of LIBOR, both to amend contracts and update systems.

Guy Debelle
Deputy Governor, Reserve Bank of Australia

The Move From LIBOR to OIS

We have been here before. Following the global financial crisis of 2008, and during a time of rapid change in financial markets in the wake of that crisis, pricing of derivatives changed from discounting using LIBOR to discounting using OIS.

In 2010, Findur users started to migrate to OIS discounting, which required a new OIS curve for discounting, an amendment to existing LIBOR curves for projecting and, of course, deal amendments. This paper describes the implementation steps necessary for end-users to migrate now from OIS to SOFR (and equivalent reference rates for other currencies).

Discount Index Modeling

Bloomberg publishes a SOFR curve. Findur users with a Bloomberg license may import the rates. We recommend Market Data Tools because it allows the user to setup the daily rate import using its point-and-click interface.

Findur’s index configuration supports setting up many different types of grid points. Users may be familiar with grid points that accept deposit rates, futures prices and swap rates. A grid point may also be configured to accept a continuously compounded zero rate as its input. The fastest implementation of a SOFR curve would rely on Bloomberg’s leadership for curve construction and import the zero rates.

Projection Index Modeling

Swap points on a projection index, and the projection index itself have a configurable field use in the bootstrapping routine to control the projection index’s discounting index. Prior to 2010, the LIBOR projection index was also used for discounting, so the projection index used itself as the discounting index. From 2010, the LIBOR index that was used as the projection index on swaps was changed to use the OIS curve for discounting. To be explicit, many users named this new projection index something like LIBOR-OIS.USD or LIBOR_ClearedSwap.USD.

Manual Deal Updates: Tedious and Risky

We previously released a paper about SOFR swap payment calculation here. This paper will review the experience Findur users had migrating from LIBOR to OIS, and compare it to the current requirement.

Existing derivatives that have LIBOR legs, and discount using OIS should be updated. We say ‘should’ because there is a workaround, described below under the heading Index Mapping.

Manual deal entry in Findur has convenience features called field triggering that reduces the likelihood of having inconsistencies in your deal, such as having a GBP swap that discounts using a USD reference rate. That field triggering feature, however, wreaks havoc when it is necessary to update the projection or discount index on the swap’s leg. If a user changes the projection index, it can trigger changes to the discount index, the payment period, reset period, compounding, and several other fields.

There is a feature that allows a user to turn off field triggering, but we have had an inconsistent experience, and do not trust it. Some field triggering is suppressed, but we have seen some triggering remain. Changes to fields that are not caught can have a significant impact on a trade.

We do not like manual changes to existing deals. It is risky because there are a lot of fields to get right. Even on a vanilla swap, users make mistakes. Organizations that rely on four-eyes to approve trades still miss these trade entry errors. When you pause to consider that these changes must be entered in a sandbox environment, UAT environment, and finally production, it is easy to see that the complexity and tedium is vulnerable to deal entry error.

For long-term deals that must be amended from LIBOR to a new reference rate, while introducing compounding or averaging, spreads, and more, manual handling is even harder.

Automated Deal Updates: Lower Project Risk

We supported clients in 2010-2011 as they progressively switched to OIS discounting. We used an automated tool to cache the value of fields on the deal legs, update the projection and discounting indices, and then restore the cached fields. It is a relatively simple, mechanical process.

By automating the process, we have greater confidence that the implementation that was executed, and verified in the sandbox will be deployed consistently to the higher environments when the time comes.

The same automation tool may be used across multiple reference rates (SONIA, TONA, etc). A broad set of instrument types will require distinct testing to ensure that all of the fields were cached correctly, including the more obscure parameters on the secondary page of the deal entry screen.

For the long-term LIBOR deals that require fields updates for compounding, spreads, and so on, we can support automation of those updates at a deal-level. For example, deal number 20001 should have daily compounding, pay quarterly, with a spread of 120bps. These details can be stored in a configuration file, and used by the deal update automation engine for sandbox and user acceptance testing, before deployment into production.

We always use test automation, which is especially important for critical updates such as these. We gain confidence in our solutions when we know that any enhancement, no matter how small, will not break existing expected behavior. If your existing service provider is not using automated tests, talk to us about a demonstration of how it helps us deliver higher quality solutions.


In Findur, OTC termination events are called buyouts. Be aware of terminations, particularly partial terminations.

Deals that have been terminated, matured, exercised, expired, or otherwise no longer active, should not be processed. If you rely on us to update the trades automatically, we will exclude these trades from the task.

However, deals that have one or more partial terminations, require special attention. Findur has a vulnerability when it comes to deals that already have a partial termination event. A change to any significant field on the deal, such as the discount index, triggers the restoration of the deal’s notional. While the partial termination event remains in the database, its impact on the notional is decoupled from the trade. We have seen this before and lightheartedly call it being Recalled to Life.

The deal needs its partial termination unwound, the amendment to the projection and discounting indices applied, and the partial termination reprocessed. If there is more than one partial termination, the details must be cached, the original deal must be restored, the index amendment applied, and the partial terminations reprocessed.

Leave No Deal Behind

Whether adopting the manual trade amendment method, or our recommendation of automated updates, there is a risk that some deals will be overlooked.

Findur has an easy way to query for trades based on their projection or discounting index. After you have updated the deals, regardless of the method, go to a Trade Listing window and run a Query to query for trades. Review the Ins Detail table and select the original discount index. You should find there are no active deals that use it. Review the projection index as well.

Index Mapping: Pricing Analysis

Findur has a feature in its simulation engine that allows a user to perform a scenario analysis that includes mapping a projection index or a discounting index. For example, you may map the discounting index from LIBOR3M-OIS.USD to LIBOR3M-SOFR.USD and the projection index from OIS.USD to SOFR.USD. This scenario can be setup for ad hoc simulations and the end of day.

This is an excellent feature to quickly review the impact of changes to the portfolio before amending the deals. Most users are familiar with scenario analysis. If you have any questions about how to perform a scenario analysis, reach out and we can jump on a screen share. It will only take a few minutes to show you how it is done.

Index Mapping: Deal Amendment Avoidance Tactic

Some users might consider using the scenario analysis longer term, as an inoculation against permanent amendment to the trades. We caution against this shortcut because it is important to apply the scenario modification to everywhere that a simulation takes place. For some organizations, it might be easy to overlook a place where the scenario must be implemented, which will lead to inaccuracies and mistrust in the derivative pricing.

Since wholesale updates to discount and projection indices are infrequent events, we advise users to update the existing trades, rather than to workaround the implementation. One possible exception to this advice could apply if there is only a very small number of deals that have partial terminations. Users may be willing to settle for the index mapping workaround in a purely pragmatic basis, that we are talking about a small number of trades on a small outstanding notional. Some organizations will tolerate this compromise more than others; organizational culture drives this decision.

Price Alignment Interest

LCH and CME will start to calculate Price Alignment Interest (PAI) on cleared derivatives using SOFR in Q2 to Q3 of 2020. Findur has the ability to calculate PAI on cleared swaps using a reference rate. Updating PAI to use SOFR instead of the Fed Funds Effective Rate is a simple update to the instrument responsible for calculating variation margin and PAI. Not many Findur clients use this feature, and we acknowledge the downsides to its implementation. If you have questions, ask us about it.


Users continue to hold derivatives tied to LIBOR. LCH and CME plan to adopt SOFR for paying PAI on cleared derivatives in Q2 to Q3 of 2020, prior to the phaseout of LIBOR. Users should adopt SOFR discounting to match dealers and clearinghouses, in order to minimize collateral disputes.

The liquidity of LIBOR will decline before it is phased out. The primary reason that LIBOR will be phased out is because of manipulation that has occurred in the rates, a particular risk when liquidity is low. A key feature of the new references rates is that they are based on actual trade activity (although there have already been examples of SOFR having been published using survey data contingency procedures).

As LIBOR trading declines, the rates will be more unreliable. Users should endeavor to migrate away from products tied to LIBOR as soon as technologically feasible. Heed the advice of regulators and industry leaders.