Finance & Business · Treasury, Fixed Income & Financial Risk · Interest-rate swap cash-flow valuation and sensitivity

Interest Rate Swap Valuation DV01 Calculator

Values synthetic fixed and floating coupon legs on an entered discount curve, routes floating coupons through entered forwards or discount-factor-implied forwards, and computes par rate, coupon DV01, and a parallel market-curve bump.

Last updated
Diagnostic Analytics

Calculator overview

Inputs and outputs

This summary comes from the calculator's published input and output contract.

Inputs

SWP Forward Rate Mode
About this input

Uses entered forwards plus a visible spread or derives each forward from adjacent discount factors.

Default Derive from discount factors Allowed Enter forward rates, Derive from discount factors
SWP Position
About this input

Sets the sign of net present value and bumped net present value.

Default Pay fixed / receive floating Allowed Pay fixed / receive floating, Receive fixed / pay floating
SWP Notional
About this input

Reference notional multiplied by each period's notional factor.

Unit user currency Default 10000000 Range 0.01 to 1000000000
SWP Fixed Rate
About this input

Annual fixed coupon rate applied to every active accrual period.

Unit fraction/year Default 0.05 Range -1 to 1
SWP Active Term Periods
About this input

Number of leading grid rows included in both legs.

Unit periods Default 5 Range 1 to 10
SWP Manual Forward Spread Conditional
About this input

Added to every entered forward only in Enter forward rates mode.

Unit fraction/year Default 0 Range -1 to 1
Ten periods - forward-rate column is shown but ignored
About this input

Submit exactly ten complete ordered rows; rows after the active term are validated but numerically inert.

Default 10 rows
ColumnRange or allowed values
Payment label Not declared
Period 1 to 10
Accrual fraction 0.01 to 2
Entered forward rate -1 to 1
Discount factor 1E-06 to 2
Notional factor 0 to 1

Outputs

SWP Fixed Leg PV
About this output

Present value of active fixed coupons before position sign.

Unit user currency
SWP Floating Leg PV
About this output

Present value of active forward-based floating coupons before position sign.

Unit user currency
SWP Net Present Value
About this output

Signed fixed-minus-floating or floating-minus-fixed value according to the selected position.

Unit user currency
SWP Par Swap Rate
About this output

Fixed rate that equates coupon-leg present values on the entered schedule.

Unit fraction/year
SWP Weighted Annuity
About this output

Sum of notional factor times accrual fraction times discount factor.

Unit discounted years
SWP Coupon DV01
About this output

Notional times weighted annuity times one basis point.

Unit user currency per basis point
SWP Market DV01
About this output

Absolute change in signed net PV under the transparent forward-and-discount-factor bump.

Unit user currency per basis-point scenario
SWP Bumped Net Present Value
About this output

Signed net PV after the one-basis-point parallel scenario.

Unit user currency
SWP Active Periods
About this output

Leading grid rows included in valuation.

Unit periods
SWP Position Used
About this output

Selected pay-fixed or receive-fixed position.

No unit declared
Model Status
About this output

OK identifies a finite active schedule; CHECK flags increasing discount factors; NOT VALID identifies intake or arithmetic failure.

No unit declared

Methodology

Purpose and model boundary

This model values fixed and floating coupon legs on a user-entered ten-period discount schedule. Floating coupons use entered forward rates plus a spread or forwards implied from adjacent discount factors. The workbook reports leg present values, signed swap value, par rate, coupon DV01, and a transparent parallel market-curve bump. It is not a dealer mark, collateral valuation, hedge-accounting result, or regulatory capital model.

Inputs and units

The scalar inputs select the forward-rate route and the pay-fixed or receive-fixed position. Notional is a positive user-currency amount, fixed rate and optional manual spread are annual fractions, and active term is from one through ten periods. The spread is active only in Enter forward rates mode.

The fixed six-column grid contains exactly ten rows: text payment label, ordered period number, accrual fraction, entered forward rate, discount factor, and notional factor. Accrual fractions are years, entered forwards are annual fractions, discount factors are present value per unit, and notional factors scale the reference notional. Rows after the active term are still checked but do not affect the calculation.

Governing relationships

For active period i, let N be notional, n_i notional factor, a_i accrual fraction, D_i discount factor, r_f fixed coupon rate, and F_i active forward rate. With D_0 = 1:

F_i = entered forward_i + manual spread in entered-forward mode

F_i = (D_(i-1)/D_i - 1) / a_i in discount-factor-derived mode

The discounted annuity weight and coupon present values are:

w_i = n_i × a_i × D_i

PV_fixed,i = N × r_f × w_i

PV_float,i = N × F_i × w_i

A = sum(w_i)

PV_fixed = sum(PV_fixed,i) and PV_float = sum(PV_float,i)

Net present value is PV_float - PV_fixed for pay-fixed/receive-floating and the opposite sign for receive-fixed/pay-floating. Par rate and fixed-coupon DV01 are:

Par rate = PV_float / (N × A)

Coupon DV01 = N × A × 0.0001

For the market bump, cumulative time is t_i = sum(a_j, j = 1...i). The workbook applies:

D_i,bump = D_i / 1.0001^(t_i)

F_i,bump = F_i + 0.0001

Both legs are repriced with those values. Market DV01 is the absolute difference between bumped and original signed net PV.

Calculation sequence

  1. Validate route, position, scalar values, and all ten complete curve rows.
  2. Mark the leading active-term rows. Later rows remain present but contribute zero.
  3. Select entered-plus-spread or discount-implied forward for each active row.
  4. Calculate annuity weights and discounted fixed and floating coupon values, then sum both legs.
  5. Apply the selected position sign, solve par rate, and calculate coupon DV01.
  6. Accumulate period time, apply the one-basis-point forward and discount-factor bump, reprice both legs, and calculate market DV01.
  7. Build the fixed-versus-floating coupon chart from active workbook rows and evaluate discount-factor monotonicity.

Outputs and interpretation

Fixed-leg and floating-leg PV are unsigned coupon-leg totals. Net present value follows the selected position. Par swap rate is the fixed rate that equalizes the modeled coupon-leg values. Weighted annuity is the discounted time/notional-factor basis. Coupon DV01 changes only the fixed coupon; market DV01 reprices both legs under the workbook's stated parallel scenario. Bumped net PV exposes that scenario result, and active periods and position used make the calculation basis explicit.

The chart compares discounted fixed and floating coupons by discrete payment period. No principal exchange is included.

Validation and status logic

The workbook evaluates status in this order:

Condition Returned status
A selector, scalar, text label, ordered period, or complete ten-row curve rule fails NOT VALID: correct swap selectors, scalars, or all ten complete ordered curve rows
The active annuity is nonpositive or an active price/bump array is nonnumeric NOT VALID: active swap schedule produces a nonfinite annuity, price, or bump result
An active discount factor exceeds its predecessor by more than 0.000000000001, with D_0 = 1 CHECK: active discount factors are not nonincreasing
None of the preceding conditions applies OK

Input and derived failures take precedence over the monotonicity check. An increasing discount-factor segment remains calculable and may imply a negative forward, so it returns CHECK rather than being overwritten.

Assumptions and limitations

  • The swap exchanges coupons only; no principal exchange is modeled.
  • Discount factors and accrual fractions are positive; bounded negative fixed and forward rates are allowed.
  • Implied forwards assume each row spans its entered accrual from the previous node.
  • The market bump is a transparent parallel scenario, not a calibrated key-rate shock.
  • There is no calendar, generated day count, reset lag, fixing, compounding-in-arrears, collateral, multi-curve, credit, funding, settlement, or counterparty adjustment.
  • DV01 does not capture optionality, basis, volatility, or large-shock nonlinearity.

Restrictions and non-computing states

The request must retain ten complete six-column rows. Payment labels must be nonblank text of at most 40 characters. Period numbers must equal their row positions 1 through 10. Accrual fraction must be 0.01 through 2, entered forward and active manual spread -1 through 1, discount factor 0.000001 through 2, and notional factor 0 through 1. Notional must be 0.01 through 1,000,000,000. A zero or underflowed active weighted annuity prevents a result even when individual inputs passed their bounds.

Errors and warnings

This calculator refuses unknown options, malformed grid shape, blank cells, quoted numerics, and values outside their allowed ranges before calculation. Workbook NOT VALID separates intake failure from an unusable active annuity or bump. Workbook CHECK preserves a computable nonmonotonic discount schedule. A connection or calculation-service failure is not a zero-valued swap and must be reported separately.

References

Swap, notional, fixed/floating obligation, and derivatives-risk context follows the CFTC Glossary. Present-value and fixed-versus-floating valuation context follows the BIS paper The Valuation of US Dollar Interest Rate Swaps. The workbook independently implements the stated identities and embeds no live curve or transaction data.

This page is provided by LogicCommons for informational purposes only. Results are analysis outputs computed from the inputs you supply and are not engineering advice, a design, or a substitute for review by a licensed professional under the codes adopted where the work is built. Verify all inputs and results independently.

LogicCommons is in beta. If a result, label, or reference looks wrong, tell us here; we read every message.