Finance
YieldFromDirtyPrice
calculate the yield of a bond given its dirty price
Calling Sequence
Parameters
Options
Description
Examples
Compatibility
YieldFromDirtyPrice(bond, price, compounding, opts)
bond
-
fixed- or floating-rate bond data structure; bond
price
non-negative constant; bond's dirty price
compounding
Simple, Continuous, Compounded, or SimpleThenCompounded; the underlying compounding type
opts
equations of the form option = value where option is one of accuracy, iterations, or evaluationdate; specify options for the YieldFromDirtyPrice command
accuracy = positive -- This option specifies the desired accuracy of the result. The default value is 1e-9.
evaluationdate = a string containing a date specification in a format recognized by ParseDate or a Date data structure -- This option specifies the evaluation date. By default this is set to the global evaluation date (see EvaluationDate).
iterations = posint -- This option specifies the maximum number of iterations. The default value is 100000.
The YieldFromDirtyPrice command calculates a bond's yield based on the specified dirty price.
The parameter bond can be either a fixed-rate bond or a floating-rate bond.
The parameter price is the desired dirty price.
The (optional) parameter compounding specifies what type of compounding will be used to calculate the yield. By default Continuous compounding is assumed.
with⁡Finance:
SetEvaluationDate⁡November 25, 2006:
EvaluationDate⁡
November 25, 2006
Settings⁡daycounter=Historical,settlementdays=0,businessdayconvention=Unadjusted,compounding=Continuous
daycounter=Historical,settlementdays=0,businessdayconvention=Unadjusted,compounding=Continuous
Consider a zero-coupon bond with a face value of 100 maturing in five years.
bond1≔ZeroCouponBond⁡100,5,Years:
price1≔DirtyPrice⁡bond1,0.05,Compounded
price1≔78.35261665
yield1≔YieldFromDirtyPrice⁡bond1,price1
yield1≔0.04879016417
EquivalentRate⁡yield1,Continuous,Annual
0.05000000000
yield1≔YieldFromDirtyPrice⁡bond1,price1,Compounded
yield1≔0.05000000006
Consider a 3-year bond with a face value of 100 that pays a fixed coupon of 3% issued on March 15, 2005.
Settings⁡daycounter=Thirty360European:
Settings⁡daycounter
Thirty360European
principal2≔100:
coupon2≔0.03:
rate2≔0.05:
bond2≔FixedCouponBond⁡principal2,3,Years,coupon2,issuedate=March 17, 2005:
Calculate the bond's dirty price given its yield and vice-versa.
yield2≔YieldFromDirtyPrice⁡bond2,100,Compounded
yield2≔0.04649381416
dirtyprice2≔DirtyPrice⁡bond2,yield2,Compounded
dirtyprice2≔100.0000000
YieldFromDirtyPrice⁡bond2,dirtyprice2
0.04544535191
dirtyprice2≔DirtyPrice⁡bond2,rate2
dirtyprice2≔99.41803696
0.05000000002
Consider the same bond but with semi-annual coupons.
bond3≔FixedCouponBond⁡principal2,3,Years,coupon2,issuedate=March 17, 2005,frequency=Semiannual:
yield3≔YieldFromDirtyPrice⁡bond3,100,Compounded
yield3≔0.03443376844
dirtyprice3≔DirtyPrice⁡bond3,yield3,Compounded
dirtyprice3≔100.0000000
YieldFromDirtyPrice⁡bond3,dirtyprice3
0.03414070640
dirtyprice3≔DirtyPrice⁡bond3,rate2
dirtyprice3≔97.97675295
Note that since the bond has semi-annual coupons, the Compounded yield is based on semi-annual compounding.
dirtyprice3≔DirtyPrice⁡bond3,rate2,Compounded
dirtyprice3≔98.05440635
cashflows3≔CashFlows⁡bond3
cashflows3≔1.500000000 on 'March 17, 2007',1.500000000 on 'September 17, 2007',1.500000000 on 'March 17, 2008',100. on 'March 17, 2008'
add⁡tamount⁢DiscountFactor⁡rate2,tdate,compounding=Semiannual,tincashflows3
98.05440635
The Finance[YieldFromDirtyPrice] command was introduced in Maple 15.
For more information on Maple 15 changes, see Updates in Maple 15.
See Also
Finance[AccruedAmount]
Finance[CleanPrice]
Finance[DayCounter]
Finance[DirtyPrice]
Finance[FixedCouponBond]
Finance[FloatingRateBond]
Finance[FormatDate]
Finance[ParseDate]
Finance[YearFraction]
Finance[YieldFromCleanPrice]
Finance[ZeroCouponBond]
Download Help Document