Knock Out Swap

Table of Contents

A knock out swap terminates when a floating index fixing crosses a barrier level. The swap is otherwise a vanilla fixed-versus-floating swap. ORE models it with the trade type KnockOutSwap. This note records the domain grounding, as ORE documents it in its product catalogue.

1. Identifiers

What a trader books it as, and what to grep for. The codes are the trade type catalogue's, which is what the database enforces.

Field Value
Full name Knock Out Swap
Short name Knock Out Swap
ORE Studio product code KnockOutSwap
Asset class rates
Family Swap
ORE trade data node KnockOutSwapData
ORE documentation knockoutswap.tex

2. Summary

A knock out swap is a vanilla fixed-versus-floating interest rate swap. It terminates when the float index fixing is above an up-and- out barrier or below a down-and-out barrier. The barrier is monitored on all floating leg fixing dates on or after the barrier start date. ORE requires exactly one BarrierData node and exactly two legs, one fixed and one floating.

3. Detail

3.1. What it is

ORE defines the product as follows:

A Knock Out Swap refers to a vanilla fixed vs. float Interest Rate Swap that terminates when the float index fixing is above ("up and out") or below ("down and out") a given barrier level.

Source: ORE User Guide, Products catalogue, knockoutswap.tex.

ORE states the mechanics as follows:

A Knock Out Swap is a Swap with one Fixed and one Floating leg, where the Swap is terminated if the Floating leg Index hits a barrier. The barrier is monitored on all floating leg fixing dates after the BarrierStartDate.

Source: ORE User Guide, Products catalogue, knockoutswap.tex.

3.2. In plain terms

A knock out swap is a normal swap with a tripwire. If the floating rate fixing crosses the barrier on a fixing date, the swap ends. The tripwire removes all remaining payments. Otherwise the swap runs to maturity like any other.

3.3. How it works in ORE

A knock out swap uses the trade type KnockOutSwap and a KnockOutSwapData block. It must have one BarrierData node and two legs, one fixed and one floating. The BarrierData node carries a Type of UpAndOut or DownAndOut. Levels holds exactly one barrier level. The optional StrictComparison element takes 0 or 1 and defaults to 0. The value 0 checks out-barriers with < and >. The value 1 checks out-barriers with strict < and >. BarrierStartDate names the date from which the barrier is monitored. The barrier is monitored on all floating leg fixing dates that fall on or after that date.

3.4. Mathematical notes

The product is a vanilla swap with a barrier condition. The value is the swap value minus the value of the remaining payments in the states where the barrier is hit. Each floating fixing date is a test once monitoring has started. For an up-and-out swap, a fixing above the level ends the trade. For a down-and-out swap, a fixing below the level ends it. The strictness of the comparison decides whether a fixing exactly at the level counts.

3.5. What moves its value (static sensitivities)

  • The level of the floating index against the barrier.
  • The swap rate levels of the fixed and floating legs.
  • The volatility of the floating index. It drives the chance of breach.
  • The barrier level and the strictness of the comparison.
  • The barrier start date and the fixing schedule.

The chance of breach rises as the index fixing nears the barrier. Close to the level the trade is most sensitive to the index and to volatility.

3.6. How the profile ages (dynamic sensitivities)

The swap runs like a vanilla swap before the barrier start date. From that date each floating fixing is a test. A breach ends the swap at once. No further payments occur after the breach. If no fixing breaches, the swap runs to maturity and ages like a plain vanilla swap.

3.7. Why a customer would want it

A customer can cap the life of a swap with a knock out feature. An up-and-out swap suits a view that rates stay below the level. If rates spike, the swap ends and the exposure with it. The barrier feature can also cheapen the swap against a vanilla one. In ORE Studio a customer books knock out swaps to value them and run sensitivities on the ORE engine.

3.8. Example

ORE's catalogue shows an up-and-out knock out swap. The trade ends when a floating fixing rises above 5 percent:

<Trade id="194837232">
  <TradeType>KnockOutSwap</TradeType>
  <Envelope>...</Envelope>
  <KnockOutSwapData>
    <!-- BarrierData and BarrierStartDate specify the knock out terms -->
    <BarrierData>
      <Type>UpAndOut</Type>
      <Levels>
        <Level>0.05</Level>
      </Levels>
    </BarrierData>
    <BarrierStartDate>2024-10-01</BarrierStartDate>
    <!-- we require exactly one Floating and one Fixed Leg -->
    <LegData>
      <LegType>Floating</LegType>
      ...
    </LegData>
    <LegData>
      <LegType>Fixed</LegType>
      ...
    </LegData>
  </KnockOutSwapData>
</Trade>

Source: ORE User Guide, Products catalogue, knockoutswap.tex, listing Knock Out Swap.

4. See also

Emacs 29.3 (Org mode 9.6.15)