← Back to Discount Rates – Saudi Arabia
Table of Contents
Key Principle: Transparency Over Opacity
We believe transparency is essential for audit and IFRS compliance purposes. This page explains exactly how our Saudi curve is constructed, including our handling of thin trading and the short end of the curve.
1. Overview
Numerica constructs a zero-coupon Saudi government yield curve each trading day from government bond and sukuk trades on the Saudi Exchange. The methodology is designed for a market where not every bond trades every day and where volumes can be modest. It addresses this through historical aggregation when trades are few, volume-weighted curve fitting, a short-rate anchor from the SAMA reverse repo rate, and temporal smoothing whose strength depends on how much the day’s data can be trusted. The result on each day is a set of annually compounded spot rates by maturity, which is what discounting under IAS 19 requires.
The same methodology, with its own parameters, produces our Indian curve.
2. Data Collection
2.1 Data Source
Primary Source: Saudi Exchange (Tadawul) Sukuk Market Watch page
Collection Frequency: Daily at 5:00 PM KSA (after market close at 3:00 PM KSA), with a second attempt at 7:00 PM if the first fails
Instruments: Government bonds and sukuk only (corporate bonds excluded from curve construction)
Policy rate: SAMA reverse repo rate, collected daily
Market holidays follow the exchange’s calendar. A collection that finds the page stamped with a different date than the one requested is treated as a failure, never as that day’s data.
2.2 Trade Validation
A bond is considered “traded” only if it passes a two-step validation process:
| Step | Validation Criteria | Purpose |
|---|---|---|
| Step 1 Main Page Check |
• Last traded price is not null • Bid yield is not null • Ask yield is not null |
Candidate identification |
| Step 2 Detail Page Verification |
• Last traded nominal > 0 • Last trade date = curve date |
Confirm an actual transaction occurred today |
This two-step process prevents stale quotes or indicative prices from being treated as actual trades.
2.3 Bond Selection
Included:
- Saudi government bonds and sukuk
- Fixed-rate coupon instruments only
- Valid maturity dates
Excluded:
- Corporate bonds (collected for reference but not used)
- Floating-rate instruments
- Bonds with missing or invalid data
3. Data Validation and the SAMA Anchor
3.1 Outlier Detection
Yields are validated using both hard limits and a statistical filter:
Hard Limits: 0.0% ≤ Yield ≤ 20.0%
Statistical Filter: yields beyond 2 standard deviations from the day’s mean are excluded
Outliers are typically caused by data entry errors, stale quotes, or illiquid bonds with wide bid-ask spreads.
3.2 SAMA Short-Rate Anchor (Soft Anchor with Hard Floor)
Few bonds trade with less than a year to maturity, so the short end of the curve would otherwise be an extrapolation. We incorporate the SAMA reverse repo rate as a soft anchor with a hard floor:
| Property | Value | Notes |
|---|---|---|
| Tenor | 0.1 years (~36 days) | Short-end anchor point |
| Rate | SAMA + 10 bps | Soft target (e.g. 3.85% if SAMA = 3.75%) |
| Weight | 0.25 | Soft influence on the fit |
| Floor | SAMA rate | Hard constraint (e.g. 3.75%) |
Why Soft Anchor + Hard Floor?
- Soft Anchor: the anchor rate influences the fit with a fixed weight but does not force the curve through it, so short-dated trades still move the curve when they exist.
- Hard Floor: the fitted short rate cannot fall below the SAMA reverse repo rate; government bonds should not yield less than the policy rate. The floor is an exact constraint, imposed only when the unconstrained fit would breach it.
Adaptive Behavior: on low-volume days the anchor may carry the highest relative weight and stabilises the curve; on high-volume days it is marginal and market data dominates.
4. Historical Aggregation for Thin Trading
4.1 The Challenge
On any given day only a handful of government bonds typically trade out of 50+ outstanding issues. With so few observations a parametric curve fit would be unreliable, so recent history is aggregated when needed.
4.2 Aggregation Logic
IF traded_bonds_today < 3:
days_back = 0
WHILE total_bonds < 3 AND days_back < 7:
days_back += 1
Fetch bonds from (today - days_back)
Add bonds with unique ISINs
IF total_bonds >= 3:
BREAK
Key Features:
- Aggregates only when necessary (fewer than 3 bonds today)
- Adds earlier days one at a time and stops as soon as 3 bonds are reached
- Maximum lookback: 7 calendar days
- Unique ISINs only, each at its most recent trade
- The chart marks bonds carried from earlier days and names the dates used
Trade-off: Staleness vs. Robustness
Aggregating historical trades introduces staleness (older yields may not reflect current conditions) but gains robustness (more data points produce more stable fits). Volume weighting mitigates staleness by giving higher weight to large trades, and the smoothing in section 6 gives a lookback-heavy day less influence.
5. Curve Fitting: Nelson-Siegel Model
5.1 Bootstrapping Zero-Coupon Spot Rates
Traded bonds are coupon-bearing, and a yield to maturity is not a discount rate. Before fitting, each bond’s cash flows are laid out under the market convention (semi-annual coupons on a 30/360 basis, with accrued interest on the traded price) and zero-coupon spot rates are bootstrapped from the shortest maturity outwards: each bond’s coupons are discounted at the spot rates already found and its own maturity’s spot rate is solved from its price. The first node is solved from price as well, so the short end is consistent with the rest of the curve. IAS 19 requires discount rates based on spot rates, not yields to maturity, which makes this step essential.
The output is a set of annually compounded spot rates on an ACT/365.25 basis. That is the convention of every rate we publish.
5.2 Nelson-Siegel
The bootstrapped spot rates are then fitted with the Nelson-Siegel model, used by central banks and financial institutions for yield curve construction. It provides smooth, economically sensible curves with four parameters:
Where:
y(τ)= spot rate at maturity τβ₀= long-term level (as τ → ∞)β₁= short-term component (decays quickly)β₂= medium-term component (hump)λ= decay parameter controlling where the hump sits
5.3 Estimation
For a given λ the model is linear in the three β parameters, so they are estimated by weighted least squares in closed form, with the objective measured in basis points; there is no iterative optimiser to under-converge. λ is held fixed at 1.2 years, following the practice recommended by Diebold and Li: with a dozen or fewer bonds a day a freely fitted λ can jump between days, and the smoothing would then blend curves of different shapes. The value was calibrated on 144 days of Saudi history, where the total weighted error is flat between 1.1 and 1.3 years and rises steadily either side.
5.4 Volume-Weighted Fitting
Not all trades are equally informative. Large trades in liquid bonds provide more reliable price signals than small trades in illiquid bonds. Each observation is weighted by its traded value:
| Data Point Type | Weight | Notes |
|---|---|---|
| Bonds with traded value | value traded / largest value traded that day | Normalised to [0, 1] |
| SAMA anchor | 0.25 | Soft anchor; the floor is enforced separately |
| Bonds without traded value | 0.5 | Neutral default |
| Statistical outliers | weight × 0.5 | Penalty applied after volume weighting |
The estimation minimises the weighted sum of squared errors:
6. Temporal Smoothing
6.1 The Need for Smoothing
Day-to-day movements in fitted curves can be large in thin markets even when nothing fundamental has changed; a single large trade can shift the whole curve. Temporal smoothing blends today’s fitted parameters with the previous day’s.
6.2 Alpha: The Confidence Score
The smoothing parameter α determines how much weight today’s data receives against the previous curve:
Smoothed Curve = α · Today’s Curve + (1 – α) · Previous Curve
α ∈ [0.0, 1.0]
Alpha Calculation: α is a weighted score of five factors, each between 0 and 1:
| Component | Weight | What It Measures |
|---|---|---|
| Bond Count | 20% | Number of bonds in the fit, scored on a smooth curve centred at 6 bonds |
| Volume | 50% | Total value traded, on a log scale, against a threshold of SAR 25 million a day |
| Liquidity | 15% | Bid-ask spreads: narrow spreads score higher |
| Quality | 10% | Goodness of fit (R²) |
| Coverage | 5% | Maturity range covered and its spread across the curve |
6.3 Interpreting Alpha
| Alpha Range | Interpretation | Typical Scenario |
|---|---|---|
| α > 0.8 | High confidence | 10+ bonds traded with high volume |
| 0.5 < α < 0.8 | Moderate confidence | 5-10 bonds, decent volume: the usual Saudi day |
| 0.2 < α < 0.5 | Low confidence | 3-5 bonds, thin volume, lookback used |
| α = 0.0 | No confidence | No trades within the lookback: the previous curve is carried forward and the chart says so |
Each published curve shows its α, R² and fit error on the chart, so a reader can judge how much of the day’s curve is new information.
7. Long-End Extrapolation
Curves are published to 50 years, well beyond the longest traded maturity. Beyond 30 years (or the longest observed maturity, if later) the curve’s slope decays by 10% per year, so the curve continues in its direction and flattens towards a stable level without overshooting. Rates beyond the last traded maturity are an extrapolation and should be read as such.
8. Parameters in Force
| Parameter | Value |
|---|---|
| Currency | SAR |
| Trade source | Saudi Exchange (Tadawul) Sukuk Market Watch, 5:00 PM KSA |
| Instruments | Fixed-coupon Saudi government bonds and sukuk |
| Cash-flow convention | Semi-annual coupons, 30/360 |
| Yield limits and outlier filter | 0-20%; 2 standard deviations |
| Minimum bonds and lookback | 3 bonds; up to 7 days |
| Short-rate anchor | SAMA reverse repo + 10 bps at 0.1 years, weight 0.25, floor at the SAMA rate |
| Fit weighting | Value traded |
| Nelson-Siegel λ | 1.2 years, fixed; calibrated on 144 days of history |
| Smoothing volume threshold | SAR 25 million a day |
| Long-end extrapolation | Beyond 30 years, slope decay 10% a year, to 50 years |
| Published compounding | Annual, ACT/365.25 |
| Constructed since | December 2025 |
9. Versioning and Change Control
Every published curve records the method version it was built with and the version of the market’s parameters, and both are visible on request. A change to the mathematics is a new method version; a change to a parameter is a new parameter version with an effective date; earlier curves are never rebuilt silently under a later version. Changes are recorded in a numbered design log with the reason for each. No published reference curve exists for the Saudi market, so the guards on each day’s result are the smoothing above and alerts on any build that fails.
10. Limitations and Appropriate Use
10.1 Market Structure Limitations
The Saudi government bond market has structural characteristics that affect curve reliability:
- Thin Trading: many bonds do not trade daily, requiring historical aggregation
- Buy-and-Hold Bias: Saudi banks hold bonds to maturity, reducing secondary market activity
- Limited Maturity Range: most trades are in bonds maturing within 15 years; rates beyond the last traded maturity are extrapolated
- Sukuk vs. Bonds: treated identically for curve purposes, though their structures differ
10.2 Model Limitations
- Nelson-Siegel assumes a smooth curve and may miss local anomalies
- It cannot capture market segmentation or arbitrage opportunities
- A fixed λ trades some day-to-day fit for stability of shape
10.3 Appropriate Use Cases
Recommended Uses
Use professional judgement before using for the following purposes:
- IAS 19 discount rate determination for employee benefits
- DCF valuations requiring SAR-denominated discount rates
- Benchmarking corporate borrowing costs
- Academic research on Saudi fixed income markets
- Economic analysis of sovereign yield curve movements
Not Recommended Uses
- High-frequency trading or arbitrage strategies
- Pricing exotic derivatives requiring precise curve calibration
- Regulatory capital calculations requiring approved vendor data
- Any use case requiring intraday or real-time pricing
- Anything else not listed as a recommended use case above
10.4 Professional Judgment Required
These curves should be one input among several in your decision-making process:
- For Auditors: verify the methodology is appropriate for the client’s circumstances, check α and the fit statistics for data quality, and consider whether adjustments are needed
- For Finance Teams: cross-reference with other market indicators, understand the confidence level (α), and maintain internal documentation
References
- Nelson, C. R., & Siegel, A. F. (1987). “Parsimonious Modeling of Yield Curves”. Journal of Business, 60(4), 473-489.
- Diebold, F. X., & Li, C. (2006). “Forecasting the term structure of government bond yields”. Journal of Econometrics, 130(2), 337-364.
- Svensson, L. E. (1994). “Estimating and Interpreting Forward Interest Rates: Sweden 1992-1994”. NBER Working Paper No. 4871.
- Saudi Exchange (Tadawul) – Sukuk Market Watch: https://www.saudiexchange.sa
- International Accounting Standards Board (IASB). IAS 19 Employee Benefits.
