# ql-floor (3) - Linux Manuals

## ql-floor: Capped and/or floored floating-rate coupon.

## NAME

QuantLib::CappedFlooredCoupon - Capped and/or floored floating-rate coupon.

## SYNOPSIS

#include <ql/cashflows/capflooredcoupon.hpp>

Inherits **QuantLib::FloatingRateCoupon**.

Inherited by CappedFlooredCmsCoupon, and CappedFlooredIborCoupon.

### Public Member Functions

**CappedFlooredCoupon** (const boost::shared_ptr< **FloatingRateCoupon** > &underlying, **Rate** cap=**Null**< **Rate** >(), **Rate** floor=**Null**< **Rate** >())

**Rate** **cap** () const

*cap *

**Rate** **floor** () const

*floor *

**Rate** **effectiveCap** () const

*effective cap of fixing *

**Rate** **effectiveFloor** () const

*effective floor of fixing *

**Coupon interface**

**Rate** **rate** () const

*accrued rate *

**Rate** **convexityAdjustment** () const

*convexity adjustment *

**Observer interface**

### Visitability

boost::shared_ptr< **FloatingRateCoupon** > **underlying_**

bool **isCapped_**

bool **isFloored_**

**Rate** **cap_**

**Rate** **floor_**

virtual void **accept** (**AcyclicVisitor** &)

bool **isCapped** () const

bool **isFloored** () const

void **setPricer** (const boost::shared_ptr< **FloatingRateCouponPricer** > &pricer)

## Detailed Description

Capped and/or floored floating-rate coupon.

The payoff $ P $ of a capped floating-rate coupon is: [ P = N imes T imes min(a L + b, C). ] The payoff of a floored floating-rate coupon is: [ P = N imes T imes max(a L + b, F). ] The payoff of a collared floating-rate coupon is: [ P = N imes T imes min(max(a L + b, F), C). ]

where $ N $ is the notional, $ T $ is the accrual time, $ L $ is the floating rate, $ a $ is its gearing, $ b $ is the spread, and $ C $ and $ F $ the strikes.

They can be decomposed in the following manner. Decomposition of a capped floating rate coupon: [ R = min(a L + b, C) = (a L + b) + min(C - b - on"

### void update () [virtual]

This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.

Reimplemented from **FloatingRateCoupon**.

## Author

Generated automatically by Doxygen for QuantLib from the source code.