This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Price swap given swap rate


Price = liborprice(ThreeMonthRates,Settle,Tenor,SwapRate)
Price = liborprice(___,StartDate,Interpolation,ConvexAdj,RateParam,InArrears,Sigma,FixedCompound,FixedBasis)



Price = liborprice(ThreeMonthRates,Settle,Tenor,SwapRate) computes the price per $100 notional value of a swap given the swap rate. A positive result indicates that fixed side is more valuable than the floating side.


Price = liborprice(___,StartDate,Interpolation,ConvexAdj,RateParam,InArrears,Sigma,FixedCompound,FixedBasis) specifies options using one or more optional arguments in addition to the input arguments in the previous syntax.


collapse all

This example shows that a swap paying the par swap rate has a value of 0.

% load the input data  
[EDFutData, textdata] = xlsread('EDdata.xls');
Settle = datenum('15-Oct-2002');
Tenor = 2;

% compute the fixed rate from the Eurodollar data
FixedSpec = liborfloat2fixed(EDFutData(:,1:3), Settle, Tenor)
FixedSpec = struct with fields:
      Coupon: 0.0222
      Settle: '16-Oct-2002'
    Maturity: '16-Oct-2004'
      Period: 4
       Basis: 1

% compute the price of a par swap
Price = liborprice(EDFutData(:,1:3), Settle, Tenor, FixedSpec.Coupon)
Price = 2.7756e-15

Price is effectively equal to 0.

Input Arguments

collapse all

Three-month Eurodollar futures data or forward rate agreement data, specified as an N-by-3 matrix in the form of [month year IMMQuote]. A forward rate agreement stipulates that a certain interest rate applies to a certain principal amount for a given future time period. The floating rate is assumed to compound quarterly and to accrue on an actual/360 basis.

Data Types: double

Settlement date of fixed-rate of swap, specified as a scalar numeric using serial date numbers.

Data Types: double

Life of the swap contract, specified as a scalar integer.

Data Types: double

Swap rate, specified as a scalar decimal.

Data Types: double

(Optional) Reference date for valuation of forward swap, specified as a scalar numeric using serial date numbers. This in effect allows forward swap valuation.

Data Types: double

(Optional) Interpolation method to determine applicable forward rate for months when no Eurodollar data is available, specified as a scalar numeric with values of:

  • 0 is 'nearest'

  • 1 is 'linear'

  • 2 is 'cubic'


Data Types: double

(Optional) Indicates whether futures/forward convexity adjustment is required, specified as a scalar logical. Use ConvexAdj for forward rate adjustments when those rates are taken from Eurodollar futures data.

Data Types: logical

(Optional) Short-rate model's parameters (Hull-White), specified a 1-by-2 vector to denote the parameters [a S], where the short-rate process is:

Data Types: double

(Optional) Indicates whether the swap is in arrears, specified as a scalar logical.

Data Types: logical

(Optional) Overall annual volatility of caplets, specified as a scalar numeric.

Data Types: double

(Optional) Compounding or frequency of payment on the fixed side, specified as a scalar numeric with one of the following possible values:

  • 1 is annual

  • 2 is semiannual

  • 4 is quarterly

  • 12 is monthly

Data Types: double

(Optional) Basis of the fixed side, specified as a scalar numeric using one of the supported values:.

  • 0 = actual/actual (default)

  • 1 = 30/360 (SIA)

  • 2 = actual/360

  • 3 = actual/365

  • 4 = 30/360 (BMA)

  • 5 = 30/360 (ISDA)

  • 6 = 30/360 (European)

  • 7 = actual/365 (Japanese)

  • 8 = actual/actual (ICMA)

  • 9 = actual/360 (ICMA)

  • 10 = actual/365 (ICMA)

  • 11 = 30/360E (ICMA)

  • 12 = actual/365 (ISDA)

For more information, see basis.

Data Types: double

Output Arguments

collapse all

Present value of the difference between floating and fixed-rate sides of the swap per $100 notional, returned as a numeric value.

Introduced before R2006a