债券收益率曲线相关函数
大约 3 分钟
债券收益率曲线相关函数
构建函数
Excel: =McpFixedRateBondCurveData(args1, args2, args3, args4, args5, fmt='VP|HD')
Python: McpFixedRateBondCurveData(*args)
- 功能:构造债券收益率曲线。
- 参数:
args1~args5或*args
:参数组。SettlementDate
:起息日。MaturityDates
:到期日数组。Frequencies
:周期数组。Coupons
:票息数组。YieldsOrDirtyPrice
:收益率或净价数组。DayCounter
:计息规则(枚举值)。IsYield
:是否为收益率(布尔值)。BumpAmounts
:票息调整数组(如0.01
表示所有票息加0.01
)。BUses
:是否使用该行数据(Y
或N
)。Calendar
:节假日对象。fmt
:参数格式(默认VP|HD
),Excel专用参数。
- 返回:债券收益率曲线对象。
Excel: =McpBondCurve(args1, args2, args3, args4, args5, fmt='VP|HD')
Python: McpBondCurve(*args)
- 功能:构造债券收益率曲线。
- 参数:
args1~args5或*args
:参数组,支持以下两种传参方式:- 第一种参数:
SettlementDate
:起息日。Mode
:模式(默认frb
)。InterpolatedVariable
:利息类型(枚举值)。InterpolationMethod
:插值方法(枚举值)。DayCounter
:计息规则(枚举值)。MaturityDates
:到期日数组。Frequencies
:周期数组。Coupons
:票息数组。YieldsOrDirtyPrice
:收益率或净价数组。IsYield
:是否为收益率(布尔值)。BumpAmounts
:票息调整数组。BUses
:是否使用该行数据(Y
或N
)。Calendar
:节假日对象。
- 第二种参数:
SettlementDate
:起息日。CalibrationSet
:用于构建曲线的资产组合(如一组 VanillaSwap 或 Depo)。InterpolatedVariable
:利息类型(枚举值)。InterpolationMethod
:插值方法(枚举值)。DayCounter
:计息规则(枚举值)。
- 第一种参数:
fmt
:参数格式(默认VP|HD
),Excel专用参数。
- 返回:债券收益率曲线对象。
Excel: =McpBondCurve2(args1, args2, args3, args4, args5)
- 功能:构造 BondCurve 对象。
- 参数:
args1~args5
:参数组。SettlementDate
:起息日。InterpolatedVariable
:利息类型(枚举值)。InterpolationMethod
:插值方法(枚举值)。DayCounter
:计息规则(枚举值)。CalibrationSet
:资产组合对象。
- 返回:BondCurve 对象。
Excel: =McpCalibrationSet(args)
- 功能:构造曲线时,用于存放不同产品(如 Depo、Swap、Bond 等)的资产组合。
- 参数:
args
:不同的利率产品。
- 返回:资产组合对象。
参数曲线相关函数
构建函数
Excel: =McpParametricCurve(args1, args2, args3, args4, args5, fmt='VP|HD')
Python: McpParametricCurve(*args)
- 功能:构建 NSS、NS、CIR 等参数曲线。
- 参数:
args1~args5或*args
:参数组,支持以下两种传参方式:- 第一种参数:
ReferenceDate
:交易日。MaturityDates
:到期日数组。Rates
:利率数组。ParamCurveModel
:曲线模型(如NS
、NSS
、CIR
,默认NS
)。DayCounter
:计息规则(默认Act365Fixed
)。
- 第二种参数:
ReferenceDate
:交易日。MaturityDate
:到期日数组。Yield
:利率数组。ParamCurveModel
:曲线模型(如NS
、NSS
、CIR
,默认NS
)。DayCounter
:计息规则(默认Act365Fixed
)。
- 第一种参数:
fmt
:参数格式(默认VP
),Excel专用参数。
- 返回:参数曲线对象。
使用函数
Excel: =YieldCurveZeroRate(Curve, Date)
Python: ZeroRate(endDate)
- 功能:从收益率曲线上获取指定日期的利率。
- 参数:
Curve
:收益率曲线对象,Python Api不需要这个参数。Date
:目标日期。
- 返回:利率值。
Excel: =YieldCurveDiscountFactor(Curve, Date)
Python: DiscountFactor(*args)
- 功能:从收益率曲线上获取指定日期的折现因子。
- 参数:
Curve
:收益率曲线对象。Date
:目标日期。*args
:是一个字典,不需要Curve参数,其他参数同Excel的参数。
- 返回:折现因子。
Excel: =YieldCurveForwardRate(Curve, startDate, endDate, dayCounter=DayCounter.Act365Fixed, compounding=False, frequency=Frequency.NoFrequency)
Python: ForwardRate(startDate, endDate, dayCounter, compounding, frequency)
- 功能:从收益率曲线上获取远期利率。
- 参数:
Curve
:收益率曲线对象,Python Api不需要这个参数。startDate
:开始日期。endDate
:结束日期。dayCounter
:计息规则(默认Act365Fixed
)。compounding
:是否复利(默认False
)。frequency
:复利频率(默认NoFrequency
)。
- 返回:远期利率。
注意事项
- 参数格式:
fmt
参数用于指定参数格式,默认值为VP
或VP|HD
。 - 枚举值:部分参数(如
DayCounter
、ParamCurveModel
)为枚举值,需参考具体定义。 - 默认值:未明确说明的参数通常有默认值,可根据需求调整。