Returns the modified Macauley duration for a security with an assumed par value of $100.

Namespace: Imsl.Finance
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
public static double Mduration(
	DateTime settlement,
	DateTime maturity,
	double coupon,
	double yield,
	Bond..::.Frequency frequency,
	DayCountBasis basis
)
Visual Basic (Declaration)
Public Shared Function Mduration ( _
	settlement As DateTime, _
	maturity As DateTime, _
	coupon As Double, _
	yield As Double, _
	frequency As Bond..::.Frequency, _
	basis As DayCountBasis _
) As Double
Visual C++
public:
static double Mduration(
	DateTime settlement, 
	DateTime maturity, 
	double coupon, 
	double yield, 
	Bond..::.Frequency frequency, 
	DayCountBasis^ basis
)

Parameters

settlement
Type: System..::.DateTime
The DateTime settlement date of the security.
maturity
Type: System..::.DateTime
The DateTime maturity date of the security.
coupon
Type: System..::.Double
A double which specifies the security's annual coupon rate.
yield
Type: System..::.Double
A double which specifies the security's annual yield.
frequency
Type: Imsl.Finance..::.Bond..::.Frequency
A int which specifies the number of coupon payments per year (1 for annual, 2 for semiannual, 4 for quarterly).
basis
Type: Imsl.Finance..::.DayCountBasis
A DayCountBasis object which contains the type of day count basis to use.

Return Value

A double which specifies the modified Macauley duration for a security with an assumed par value of $100.

Remarks

It is computed using the following:

{\it duration} \over {1 + {{\it yield}
            \over {\it frequency}}}
where {\it duration} is calculated from Mduration.

See Also