利率互换相关函数
大约 9 分钟
利率互换相关函数
构建函数
Excel: =McpVanillaSwap(args1, args2, args3, args4, args5, fmt='VP')
Python: McpVanillaSwap(*args)
- 功能:构造利率互换(IRS)对象。
- 参数:
args1~args5或*args
:参数组,支持以下两种传参方式:- 第一种参数:
ReferenceDate
:交易日或估值日。StartDate
:开始日期(根据起息日规则计算)。EndDate
:结束日期(根据开始日期及期限计算)。RollDate
:滚动日期(默认等于开始日期)。FixedPayReceive
:固定端收付方向(默认Pay
)。Notional
:本金(默认1000000
)。Coupon
:固定利率。Margin
:浮动端点差(默认0.0
)。PaymentCalendar
:节假日对象(默认空对象)。FixedDiscountCurve
:固定端贴现曲线。FixedPaymentFrequency
:固定端支付周期(默认Quarterly
)。FixedPaymentDateAdjuster
:固定端日期调整规则(默认Following
)。FixedPaymentDayCounter
:固定端计息规则(默认Act365Fixed
)。FloatPaymentFrequency
:浮动端支付周期(默认Quarterly
)。FloatPaymentDateAdjuster
:浮动端日期调整规则(默认Following
)。FloatPaymentDayCounter
:浮动端计息规则(默认Act360
)。FloatEstimationCurve
:浮动端估值曲线。FloatDiscountCurve
:浮动端贴现曲线。FixingCalendar
:定息节假日(默认空对象)。FixInAdvance
:是否提前定息(默认True
)。FixDaysBackward
:定息前置天数(默认2
)。FixingRateMethod
:定息计算方法(默认RESETRATE_MAX
)。HistoryFixingDates
:历史定息日期数组。HistoryFixingRates
:历史定息利率数组。FixedExchangeNotional
:固定端本金交换方式(默认NOEXCHANGE
)。FixedResidual
:固定端摊销本金剩余(默认0
)。FixedResidualType
:固定端摊销本金剩余类型(默认AbsoluteValue
)。FixedFirstAmortDate
:固定端第一次摊销日期。FixedAmortisationType
:固定端本金摊销方式(默认AMRT_NONE
)。FloatExchangeNotional
:浮动端本金交换方式(默认NOEXCHANGE
)。FloatResidual
:浮动端摊销本金剩余(默认0
)。FloatResidualType
:浮动端摊销本金剩余类型(默认AbsoluteValue
)。FloatFirstAmortDate
:浮动端第一次摊销日期。FloatAmortisationType
:浮动端本金摊销方式(默认AMRT_NONE
)。
- 第二种参数:
SettlementDate
:交易日或估值日。StartDate
:开始日期。EndDate
:结束日期。Coupon
:固定利率。PaymentCalendar
:节假日对象(默认空对象)。FixedFrequency
:固定端支付周期(默认Annual
)。FixedDayCounter
:固定端计息规则(默认Act365Fixed
)。FloatingFrequency
:浮动端支付周期(默认Annual
)。FloatingDayCounter
:浮动端计息规则(默认Act365Fixed
)。FixedEstimationCurve
:固定端估值曲线。FixedDiscountCurve
:固定端贴现曲线。FloatingEstimationCurve
:浮动端估值曲线。FloatingDiscountCurve
:浮动端贴现曲线。FloatingCalendar
:节假日对象(默认空对象)。FirstFixing
:第一次定息利率。SecondFixing
:第二次定息利率。EomRule
:月末规则(默认1
)。CompoundingFrequency
:复利频率(默认0
)。Notional
:本金(默认1000000
)。CsaId
:CSA ID。SwapStartLag
:起息日调整(默认2
)。Margin
:浮动端点差。FixedAdjusterRule
:固定端调整规则(默认ModifiedFollowing
)。FloatAdjusterRule
:浮动端调整规则(默认ModifiedFollowing
)。FixedLastOpenday
:固定端最后一个开放日(默认False
)。FloatLastOpenday
:浮动端最后一个开放日(默认False
)。FixedLegPayReceive
:固定端收付方向(默认Pay
)。FixInAdvance
:是否提前定息(默认True
)。FixDaysBackward
:定息前置天数(默认2
)。FixDaysForward
:定息后置天数(默认2
)。EndStub
:是否启用末段残端(默认False
)。FixedPayType
:固定端支付类型(默认InArrears
)。FloatPayType
:浮动端支付类型(默认InArrears
)。
- 第一种参数:
fmt
:参数格式(默认VP
),Excel专用参数。
- 返回:利率互换对象。
Excel: =McpXCurrencySwap(args1, args2, args3, args4, args5, fmt='VP')
Python: McpXCurrencySwap(*args)
- 功能:构造交叉货币互换对象。
- 参数:
args1~args5或*args
:参数组,支持以下传参方式:- 第一种参数:
ReferenceDate
:交易日或估值日。StartDate
:开始日期。EndDate
:结束日期。RollDate
:滚动日期。Notional
:本金(默认1000000
)。BaseSwapLeg
:基础货币互换端对象。TermSwapLeg
:目标货币互换端对象。BasePayReceive
:基础货币端收付方向(默认Pay
)。FxRate
:汇率。HasInitialExchange
:是否进行初始本金交换(默认False
)。HasFinalExchange
:是否进行最终本金交换(默认False
)。FinalFxRate
:最终汇率(默认0
)。
- 第二种参数:
- 类似第一种,但增加
FXForwardPointsCurve
对象。
- 类似第一种,但增加
- 第一种参数:
fmt
:参数格式(默认VP
),Excel专用参数。
- 返回:交叉货币互换对象。
使用函数
Excel: =SwapFixedLegNPV(vanillaSwap)
Python: FixedLegNPV()
- 功能:计算固定端净现值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端净现值。
Excel: =SwapFloatingLegNPV(vanillaSwap)
Python: FloatingLegNPV()
- 功能:计算浮动端净现值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端净现值。
Excel: =SwapFixedLegDuration(vanillaSwap)
Python: FixedLegDuration()
- 功能:计算固定端久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端久期。
Excel: =SwapFloatingLegDuration(vanillaSwap)
Python: FloatingLegDuration()
- 功能:计算浮动端久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端久期。
Excel: =SwapFixedLegMDuration(vanillaSwap)
Python: FixedLegMDuration()
- 功能:计算固定端修正久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端修正久期。
Excel: =SwapFloatingLegMDuration(vanillaSwap)
Python: FloatingLegMDuration()
- 功能:计算浮动端修正久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端修正久期。
Excel: =SwapFixedLegAnnuity(vanillaSwap)
Python: FixedLegAnnuity()
- 功能:计算固定端年金。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端年金。
Excel: =SwapFloatingLegAnnuity(vanillaSwap)
Python: FloatingLegAnnuity()
- 功能:计算浮动端年金。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端年金。
Excel: =SwapFixedLegDV01(vanillaSwap)
Python: FixedLegDV01()
- 功能:计算固定端 DV01。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端 DV01。
Excel: =SwapFloatingLegDV01(vanillaSwap)
Python: FloatingLegDV01()
- 功能:计算浮动端 DV01。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端 DV01。
Excel: =SwapFixedLegAccrued(vanillaSwap)
Python: FixedLegAccrued()
- 功能:计算固定端应计利息。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端应计利息。
Excel: =SwapFloatingLegAccrued(vanillaSwap)
Python: FloatingLegAccrued()
- 功能:计算浮动端应计利息。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端应计利息。
Excel: =SwapFixedLegPremium(vanillaSwap)
Python: FixedLegPremium()
- 功能:计算固定端费率。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端费率。
Excel: =SwapFloatingLegPremium(vanillaSwap)
Python: FloatingLegPremium()
- 功能:计算浮动端费率。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端费率。
Excel: =SwapFixedLegMarketValue(vanillaSwap)
Python: FixedLegMarketValue()
- 功能:计算固定端市场价值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端市场价值。
Excel: =SwapFloatingLegMarketValue(vanillaSwap)
Python: FloatingLegMarketValue()
- 功能:计算浮动端市场价值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端市场价值。
Excel: =SwapFixedLegCumPV(vanillaSwap)
Python: FixedLegCumPV()
- 功能:计算固定端累计现值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端累计现值。
Excel: =SwapFloatingLegCumPV(vanillaSwap)
Python: FloatingLegCumPV()
- 功能:计算浮动端累计现值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端累计现值。
Excel: =SwapFixedLegCumCF(vanillaSwap)
Python: FixedLegCumCF()
- 功能:计算固定端累计现金流。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:固定端累计现金流。
Excel: =SwapFloatingLegCumCF(vanillaSwap)
Python: FloatingLegCumCF()
- 功能:计算浮动端累计现金流。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:浮动端累计现金流。
Excel: =SwapNPV(vanillaSwap)
Python: NPV()
- 功能:计算互换结果的净现值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的净现值。
Excel: =SwapMarketParRate(vanillaSwap)
Python: MarketParRate()
- 功能:计算互换结果的 Par Rate。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的 Par Rate。
Excel: =SwapDuration(vanillaSwap)
Python: Duration()
- 功能:计算互换结果的久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的久期。
Excel: =SwapMDuration(vanillaSwap)
Python: MDuration()
- 功能:计算互换结果的修正久期。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的修正久期。
*Excel: =SwapPV01(vanillaSwap)
Python: PV01()
- 功能:计算互换结果的 PV01。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的 PV01。
Excel: =SwapDV01(vanillaSwap)
Python: DV01()
- 功能:计算互换结果的 DV01。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的 DV01。
Excel: =SwapCF(vanillaSwap)
Python: CF()
- 功能:计算互换结果的现金流。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的现金流。
Excel: =SwapValuationDayCF(vanillaSwap)
Python: ValuationDayCF()
- 功能:计算估值日现金流。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的估值日现金流。
Excel: =SwapMarketValue(vanillaSwap)
Python: MarketValue()
- 功能:计算互换结果的市场价值。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的市场价值。
Excel: =SwapAccrued(vanillaSwap)
Python: Accrued()
- 功能:计算互换结果的应计利息。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。
- 返回:互换结果的应计利息。
Excel: =SwapPNL(vanillaSwap, start, end)
Python: PNL(start, end)
- 功能:计算互换结果的 PNL。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。start
:开始日期。end
:结束日期。
- 返回:互换结果的 PNL。
Excel: =SwapCalculateSwapRateFromNPV(vanillaSwap, npv)
Python: CalculateSwapRateFromNPV(npv)
- 功能:通过 NPV 推算固定端利率。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。npv
:净现值。
- 返回:固定端利率。
Excel: =SwapCalculateFloatingMarginFromNPV(vanillaSwap, npv)
Python: CalculateFloatingMarginFromNPV(npv)
- 功能:通过 NPV 推算浮动端点差。
- 参数:
vanillaSwap
:利率互换对象,Python Api不需要这个参数。npv
:净现值。
- 返回:浮动端点差。
Excel: =SwapFixedLegs(vanillaSwap, fields)
- 功能:获取固定端现金流信息。
- 参数:
vanillaSwap
:利率互换对象。fields
:字段数组(如PaymentDate
、AccrStartDate
、AccrEndDate
等)。
- 返回:固定端现金流信息数组。
Excel: =SwapFloatingLegs(vanillaSwap, fields)
- 功能:获取浮动端现金流信息。
- 参数:
vanillaSwap
:利率互换对象。fields
:字段数组(如PaymentDate
、AccrStartDate
、AccrEndDate
等)。
- 返回:浮动端现金流信息数组。
Excel: =SwapFloatingQuotes(vanillaSwap, fields)
- 功能:获取浮动端定息信息。
- 参数:
vanillaSwap
:利率互换对象。fields
:字段数组(如QuoteDate
、QuoteRate
、ResetDate
等)。
- 返回:浮动端定息信息数组。
Excel: =SwapFloatingQuoteLegs(vanillaSwap, fields)
- 功能:获取浮动端定息频率信息。
- 参数:
vanillaSwap
:利率互换对象。fields
:字段数组(如QuoteDate
、QuoteRate
、ResetDate
等)。
- 返回:浮动端定息频率信息数组。
Excel: =SwapFrtbGirrDeltas(swap, ccyLocRate=1.0, fmt="V")
- 功能:计算FRTB敏感性指标。
- 参数:
swap
:McpVanillaSwap对象。ccyLocRate
:本地货币汇率,默认值为1.0。fmt
:参数格式,默认值为"V"。
- 返回:FRTB敏感性指标。
注意事项
- 参数格式:
fmt
参数用于指定参数格式,默认值为VP
。 - 枚举值:部分参数(如
FixedPayReceive
、FixedPaymentFrequency
)为枚举值,需参考具体定义。 - 默认值:未明确说明的参数通常有默认值,可根据需求调整。