Cap - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Finance

  

Cap

  

create new interest rate cap

 

Calling Sequence

Parameters

Description

Examples

References

Compatibility

Calling Sequence

Cap(floatingleg, exerciserates)

Parameters

floatingleg

-

list of floating-rate coupons; floating leg

exerciserates

-

non-negative number or a list of non-negative numbers; exercise rates

Description

• 

The Cap command creates a new interest rate cap instrument with the specified parameters. This instrument can be viewed as a payer interest rate swap where each exchange payment is executed only if it has positive value. (see Brigo and Mercurio (2001) for more details).

• 

Assume that we have a set of coupon payments to occur at the times T1, T2, ..., Tn. At each time instance Ti the cap pays

NdTiPTiKi`+`

where

– 

N is the nominal value,

– 

dTi is the year fraction between dates Ti1 and Ti,

– 

PTi is a coupon payment at the time Ti,

– 

Ki is the fixed rate at time Ti.

• 

The parameter floatingleg defines floating-rate coupon payments. The parameter exerciserates defines the corresponding fixed rates. The first exercise rate corresponds to the first floating rate coupon, the second exercise rate corresponds to the second floating rate coupon, etc. If the size of the exerciserates list is smaller than the size of the floatingleg list then the last exercise rate will be used for all the remaining coupons.

• 

The LatticePrice command can be used to price an interest rate cap using any given binomial or trinomial tree. The BlackPrice command will compute the price of an interest rate cap using the Black model.

Examples

withFinance:

Set the global evaluation date. This date is taken as the reference date for all yield curves and benchmark rates unless another date is specified explicitly.

SetEvaluationDateNovember 17, 2006:

EvaluationDate

November 17, 2006

(1)

The nominal amount is 100.

nominal100

nominal100

(2)

Create a 6-month EURIBOR benchmark rate with forecasted rate of 5%. No history is available for this rate.

benchmarkBenchmarkRate6,Months,EURIBOR,0.05

benchmarkmoduleend module

(3)

Construct a discount interest rate curve.

discount_curveForwardCurve0.05,daycounter=Actual360

discount_curvemoduleend module

(4)

Construct floating leg payments.

start_dateAdvanceDate2,Days

start_dateNovember 19, 2006

(5)

end_dateAdvanceDatestart_date,20,Years,convention=ModifiedFollowing

end_dateNovember 19, 2026

(6)

coupon_datesseqAdvanceDatestart_date,6i,Months,i=0..40:

floating_legseqParCouponnominal,discount_curve,coupon_datesi,coupon_datesi+1,i=1..40:

Construct an interest rate cap with a fixed cap rate of 7% for all payments in the floating leg.

ir_capCapfloating_leg,0.07

ir_capmoduleend module

(7)

Price this instrument using the Black model with a discount rate of 5% and a volatility of 20%.

BlackPriceir_cap,0.05,0.2

6.832847321

(8)

References

  

Brigo, D., Mercurio, F., Interest Rate Models: Theory and Practice. New York: Springer-Verlag, 2001.

  

Glasserman, P., Monte Carlo Methods in Financial Engineering. New York: Springer-Verlag, 2004.

  

Hull, J., Options, Futures, and Other Derivatives, 5th. edition. Upper Saddle River, New Jersey: Prentice Hall, 2003.

Compatibility

• 

The Finance[Cap] command was introduced in Maple 15.

• 

For more information on Maple 15 changes, see Updates in Maple 15.

See Also

Finance[BlackPrice]

Finance[Collar]

Finance[FixedRateCoupon]

Finance[Floor]

Finance[InArrearIndexedCoupon]

Finance[InterestRateSwap]

Finance[LatticePrice]

Finance[ParCoupon]

Finance[SimpleCashFlow]

Finance[UpFrontIndexedCoupon]