OVERVIEW
OIS PRICER
JIBAR CURVE
OIS/JIBAR BASIS
IMPLIED FORWARDS
REPO / SARB
SCENARIO
FRN PRICER
OIS Swap Strip — Fair NACQ vs ZARONIA Daily Compounded, Paid Quarterly
JIBAR Vanilla Swap Strip — Fair NACQ
OIS Fair Rate Curve (%)
JIBAR Fair Rate Curve (%)
OIS/JIBAR Basis Spread (bp)
Implied Forward ZARONIA vs JIBAR (%)
Single Swap Valuation
Rate Sensitivity
Discount Factor — OIS Curve
NPV vs Rate Shift (ZAR m)
Cashflow Profile — Fixed & Float
PV01 / CS01 Attribution by Quarter
Full Cashflow Schedule
| Qtr | Leg | Start | End | DCF | Fwd NACC% | Comp Factor | Cashflow (ZAR) | DF | PV (ZAR) | CS01 |
|---|
JIBAR Discount Factor
JIBAR Zero Rate NACC (%)
JIBAR Forward Rate NACC (%)
JIBAR Bootstrapped Curve — Full Term Structure
| Period | Tenor(y) | Instrument | Mkt Rate% | Fwd NACC% | Zero NACC% | DF | Par Rate% |
|---|
ZARONIA / JIBAR Basis — OIS vs JIBAR Fair NACQ Swap Rates
📐 OIS / IBOR Basis Theory
Post-2008, OIS and IBOR rates diverged due to credit and liquidity risk embedded in panel-bank IBOR fixings (Mercurio, 2009; Bianchetti, 2010). This gave rise to multi-curve pricing. Basis (bp) = Fair_OIS_NACQ − Fair_JIBAR_NACQ) × 100 In ZAR: ZARONIA (risk-free, overnight compounded) trades below JIBAR 3M (credit-risky, term rate) — hence negative basis is normal. The spread represents the JIBAR term/credit premium. Ref: Mercurio (2009) "Interest Rates and the Credit Crunch"; Bianchetti (2010)🔁 QuantLib Multi-Curve Bootstrap
QuantLib separates discounting curve (OIS/CSA) from projection curve (JIBAR): oisCurve → discounts all cashflows via DF_ois(t) jibarCurve → projects JIBAR 3M forwards via DF_jib(t) Fair NACQ rate for OIS tenor T: r_fair = [ N·(1−DF_ois(T)) / (N·Σᵢ DF_ois(tᵢ)) ] × 4 Fair NACQ for JIBAR swap (same formula, JIBAR DFs): r_fair = [ (1−DF_jib(T)) / Σᵢ DF_jib(tᵢ) ] × 4 Ref: QuantLib MakeVanillaSwap; Ametrano & Bianchetti (2013)OIS vs JIBAR Fair Rates (%)
OIS/JIBAR Basis Spread by Tenor (bp) — negative = OIS below JIBAR
Basis Detail Table — All Spreads in Basis Points · bp = (OIS−JIBAR)×100
| Tenor | JIBAR Fair NACQ% | OIS Fair NACQ% | Basis (bp) | JIBAR DF(T) | OIS DF(T) | JIBAR PV01 (ZAR) | OIS PV01 (ZAR) | DF Spread (bp) |
|---|
Implied ZARONIA Forward Rates (3M×3M, NACC%)
Implied JIBAR Forward Rates (3M×3M, NACC%)
Implied SARB Repo Path (NACM→NACC, %)
OIS vs JIBAR vs Repo Forward Comparison
Implied Forward Rate Table — OIS, JIBAR, Repo
| Period | Start(y) | End(y) | OIS Fwd NACC% | OIS Comp Rate% | JIBAR Fwd NACC% | JIBAR Comp Rate% | Repo Implied% | OIS-Repo Spread (bp) | JIBAR-OIS Spread (bp) |
|---|
SARB Repo Analysis — Rate Convention Mathematics
📐 Compounding Convention Theory
All nominal rate conventions are equivalent representations of the same effective annual rate (EAR). The no-arbitrage identity (Hull, 2022; Brigo & Mercurio, 2006): (1 + r_m/m)^m = (1 + r_q/4)^4 = (1 + r_a) = e^(r_c) where m = compounding frequency. SARB quotes repo as NACM (m=12) — monthly. Conversions are exact — no approximation. Ref: SARB Monetary Policy Framework; ISDA 2006 Definitions §6.2🔄 NACM → Other Conventions
Given repo rate r_m (NACM, as quoted by SARB): NACC: r_c = 12 · ln(1 + r_m/12) NACQ: r_q = 4 · (e^(r_c/4) − 1) Eff Ann: r_a = (1 + r_m/12)^12 − 1 Key insight: NACM < NACQ < NACC < Eff Annual for positive rates — higher compounding frequency requires a lower nominal rate to achieve the same effective return. Ref: Fabozzi (2012), Fixed Income Mathematics §2; QuantLib ActualActual📊 Spread to Swap Rates (basis points)
Spread is computed on comparable conventions (NACQ), since swap fixed rates are NACQ: Spread (bp) = (r_swap_NACQ − r_repo_NACQ) × 100 A positive spread means swap rates exceed the repo rate — the market prices credit/liquidity/term premium over the policy rate. The OIS rate should trade above repo by the OIS-repo spread (historically ~15–25bp in ZAR), reflecting the difference between overnight compounding and the monthly repo fixing. Ref: SARB Working Paper WP/23/01; Duffie & Stein (2015)🏦 QuantLib Implementation
In QuantLib, the SARB repo maps to: ql.SimpleQuote(repoNACM) ql.FlatForward(today, repoHandle, ql.Actual365Fixed(), ql.Monthly) The OvernightIndex (ZARONIA) uses: ql.OvernightIndex("ZARONIA", 0, ql.ZARCurrency(), cal, ql.Actual365Fixed()) OIS swap pricing via MakeOIS: ql.MakeOIS(tenor, oisIndex, fixedRate, ql.Period("0D")) Ref: QuantLib docs §InterestRateSwap; Ametrano & Bianchetti (2013)Repo Rate Conversions — All Conventions (%)
Spread of OIS & JIBAR over Repo NACQ across Term (bp)
Repo Rate Convention Table — All Spreads in Basis Points
| Convention | Rate% | Eff Annual% | Spread to OIS 1Y (bp) | Spread to JIBAR 3M (bp) | Mathematical Definition & Notes |
|---|
NPV Heatmap — OIS Swap · Curve Shift (rows) × Fixed Rate (cols) · ZAR m
NPV Sensitivity — OIS Swap (ZAR m)
OIS Fair Rate Sensitivity to Curve Shifts
Scenario Strip
📋 JIBAR FRN Pricing — QuantLib FloatingRateBond Methodology
A JIBAR-linked FRN pays quarterly coupons = (JIBAR₃M_reset + spread) × N × DCF. The current coupon is locked in at the last reset date's JIBAR fixing; future coupons are projected using the JIBAR forward curve. Dirty Price = Σᵢ [ CF_i × DF_jibar(tᵢ) × e^(−dm × τᵢ) ] + N × DF_jibar(T) × e^(−dm × T) where dm = discount margin above JIBAR curve, τᵢ = ACT/365 tenor to payment date. Accrued Interest = (days_since_reset / days_in_period) × coupon_rate × N Clean Price = Dirty Price − Accrued Interest The ZARONIA equivalent note replaces remaining JIBAR-projected coupons with ZARONIA overnight-compounded coupons, using ZARONIA_spread = issue_spread + OIS/JIBAR_basis and OIS discount factors from the ZARONIA curve. Ref: QuantLib FloatingRateBond; Fabozzi (2012) §FRN Valuation; ISDA 2006 §6.2 Reset ConventionBond Terms
Face Value (ZAR)
Issue Date
Maturity Date
Issue Spread
bp
Day Count
Trading / Settlement
Settle Date
Trading Spread
bp
Last Reset JIBAR
%
Last Reset Date
Next Reset Date
ZARONIA Conversion
Conversion Date
OIS/JIBAR Basis
bp
ZARONIA spread = Issue spread + Basis.
Remaining cashflows re-projected on OIS curve.
Equivalent note shows OIS-discounted dirty/clean price.
Remaining cashflows re-projected on OIS curve.
Equivalent note shows OIS-discounted dirty/clean price.
JIBAR FRN — Valuation at Settle Date
ZARONIA Equivalent Note — Valuation from Conversion Date
JIBAR FRN — Projected Coupon Strip (%)
ZARONIA Equiv — Coupon Comparison (bp spread)
Cashflow PV Profile — JIBAR vs ZARONIA Equiv (ZAR)
Clean Price vs Trading Spread Sensitivity
Full Reset Schedule — JIBAR FRN & ZARONIA Equivalent
| Prd | Reset Date | Start Date | Pay Date | DCF | JIBAR Reset% | Cpn Rate% | JIBAR CF (ZAR) | JIBAR DF | JIBAR PV | OIS Equiv% | OIS CF (ZAR) | OIS DF | OIS PV | Status |
|---|