# 金融函数 - 债券 / 债券敏感性指标 ## 函数 ### `bondConvexity(settlement_date, option)` 指定日债券的凸性。在不设置数据供应商的情况下,默认先调用中证数据,没有值时再调用TS算法处理。若直接调用TS算法,设置供应商pn\_ bonddataprovider()为2. | 参数 | 类型 | 说明 | | ----------------- | -------- | -------- | | `settlement_date` | datetime | 结算日期 | | `option` | any | 是否行权 | 返回:float ### `bondConvexity1(settlementdate, cashflow, y)` 最后付息周期、到期一次还本付息、零息债券的凸性指标 | 参数 | 类型 | 说明 | | ---------------- | -------- | -------------- | | `settlementdate` | datetime | 结算日期 | | `cashflow` | array | 债券现金流 | | `y` | float | 债券到期收益率 | 返回:float ### `bondConvexity2(endt, cash_f_low, pv, f, y)` 规则付息且非最后付息周期债券的凸性底层算法函数 | 参数 | 类型 | 说明 | | ------------ | -------- | ---------- | | `endt` | datetime | 指定日期 | | `cash_f_low` | array | 现金流数据 | | `pv` | float | 现值 | | `f` | any | 频率 | | `y` | float | 到期收益率 | 返回:float ### `bondBasisPointValue(settlement_date, market_value, option)` 指定日期的债券基点价值 久期的另外一个理解:当到期收益率变化100个bps的时候,久期大致等于债券价格的百分比变化。假设:久期=7.2,表示当到期收益率变化100个bps的时候,债券价格大致变化7.2%。 基点价值,是指利率变动一个基点(1bps)债券价格的变动情况。即:指到期收益率每变化一个基点时引起的债券价格的绝对变动额,也就是0.01个百分点(1个bps)时,债券价格的变动值 其中: Duration:债券Macauley久期 MV: 债券市值 要说明的是:此方法是一种近似算法。稍微准确点算法,应该是按照债券久期计算方法: 按照债券全价PV0、票面利率、剩余期限等,计算债券到期收益率y 假设y+0.01%,计算债券全价PV+和债券价格变动 假设y-0.01%,计算债券全价PV-和债券价格变动 一般而言,当y+/-0.01%时,债券的全价变化不大,且。近似可取 按照基点价值的定义 | 参数 | 类型 | 说明 | | ----------------- | -------- | -------------- | | `settlement_date` | datetime | 日期,结算日 | | `market_value` | float | 实数,债券市值 | | `option` | any | 是否行权 | 返回:float|datetime ### `bondMacaulayDuration1(settlement_date)` 到期一次还本付息、零息或者最后付息周期的麦考利久期 | 参数 | 类型 | 说明 | | ----------------- | -------- | ------------------------------------------------- | | `settlement_date` | datetime | 结算日期;CashFLow:债券现金流,字段见现金流返回值 | 返回:float ### `bondModifiedConvexity(settlement_date, option)` 修正凸性,和BondConvexity处理一样,很多函数调用当前这个函数接口,所以保存两个凸性函数。 类似于修正久期计算方法,修正凸性 其中: f: 年付息频率 y : 到期收益率 :凸性 | 参数 | 类型 | 说明 | | ----------------- | -------- | -------- | | `settlement_date` | datetime | 结算日 | | `option` | any | 是否行权 | 返回:float ### `bondModifiedDuration(settlementdate, option)` 指定日债券的修正久期。在不设置数据供应商的情况下,默认先调用中证数据,没有值时再调用TS算法处理。若直接调用TS算法,设置供应商pn\_ bonddataprovider()为2。 | 参数 | 类型 | 说明 | | ---------------- | -------- | -------- | | `settlementdate` | datetime | 结算日 | | `option` | any | 是否行权 | 返回:float