返回题库

固收 Dv01 Dollar Value

Fi Dv01 Dollar Value

专题
Algorithmic Programming / 算法编程
难度
L2
来源
MyntBit

题目详情

某债券修正久期为 5,市值为 1000 万美元。计算其 DV01(1 基点美元价值)。

英文原题

A bond has a modified duration of 5 and a market value of 10,000,000 dollars. What is its DV01?

解析

问题分析

A bond has a modified duration of 5 and a market value of 10,000,000 dollars. What is its DV01?

解法

根据题目要求实现相应功能。核心逻辑需要:

// 核心数据结构和方法——根据题目 API 约定实现
// 1. 确定状态表示——选择支持所需操作的数据结构
// 2. 实现核心算法——确保 O(·) 时间复杂度和正确性
// 3. 处理边界条件——空输入、极值参数、并发访问

验证

用具体输入验证:构造已知输入的测试用例,确认输出匹配预期结果。

复杂度与边界

  • 时间复杂度:取决于选用的算法
  • 空间复杂度:取决于数据规模
  • 关键边界条件:空输入、极值参数、并发场景下的正确性保证

英文解析

Analysis

DV01 (Dollar Value of a Basis Point) measures the absolute dollar change in a bond's price for a 1 basis point (0.01%) change in yield. It combines modified duration and market value into a single risk metric.

Formula: DV01 = Modified Duration * Market Value * 0.0001

Solution

Given: Modified Duration = 5, Market Value = $10,000,000

DV01 = 5 * 10,000,000 * 0.0001 = $5,000

def dv01(modified_duration, market_value):
    """Compute DV01: dollar change per 1bp yield move."""
    return modified_duration * market_value * 0.0001

def dv01_numerical(bond_pv_func, market_value, delta_y=0.0001):
    """Compute DV01 by numerical perturbation."""
    P_up = bond_pv_func(delta_y)
    P0 = bond_pv_func(0)
    return (P0 - P_up)  # price change per 1bp

Complexity & Edge Cases

  • Time complexity: O(1) for formula-based; O(N) for numerical if cash flow computation needed
  • Space complexity: O(1)
  • Edge cases: (1) DV01 assumes linear price-yield relationship -- for large rate moves, convexity adjustment needed. (2) DV01 varies with yield level: same bond at different yields has different DV01. (3) For portfolio DV01: sum of individual DV01s (considering long/short signs). (4) DV01 vs. PVBP: same concept, different naming conventions.

Verification

Bond: Modified Duration = 5, Market Value = $10,000,000

  • DV01 = 5 * 10M * 0.0001 = $5,000
  • If yield increases by 1bp: price drops approx $5,000
  • If yield increases by 100bps: price drops approx 5,000100=5,000 * 100 =500,000 (linear approximation)

With convexity adjustment for 100bp move:

  • Actual approx -DV01 * 100 + 0.5 * Convexity * MV * (0.01)^2

Key Considerations

  • DV01 is the standard risk metric for fixed income trading desks -- it enables position comparison across bonds with different durations and face values
  • Portfolio DV01 neutrality: matching DV01 of long and short positions ensures yield-neutral hedging
  • DV01 hedging ratio = DV01(hedge) / DV01(position) determines the hedge size
  • Risk limits expressed in DV01: traders have maximum DV01 exposure limits