
Bond Relative Value
Run agent-assisted relative value on bonds by wiring MCP pricing, curves, and credit tools into spread decomposition and rate-shock scenarios.
Overview
Bond Relative Value is an agent skill for the Operate phase that combines MCP bond pricing and curve tools into spread decomposition and scenario stress tables to judge whether a bond is rich, cheap, or fair.
Install
npx skills add https://github.com/anthropics/financial-services-plugins --skill bond-relative-valueWhat is this skill?
- Routes bond_price outputs into clean/dirty price, yield, duration, convexity, DV01, and Z-spread views
- Two-phase interest_rate_curve and credit_curve MCP flows for G-spread and credit context
- Decomposes total spread into risk-free, credit, and residual to flag true rich/cheap vs peers
- Scenario stress tables to test whether the RV view holds under rate shocks
- Synthesis-focused: tools compute; the skill structures tables and recommendations
Adoption & trust: 679 installs on skills.sh; 30.5k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You have bond identifiers and market data APIs but no structured agent workflow to decompose spreads, benchmark against curves, and stress-test your richness/cheapness call.
Who is it for?
Solo builders or indie quants wiring financial MCP servers into agents for credit RV, desk-style notes, or internal bond screening tools.
Skip if: Builders without fixed-income MCP tools, equity-only workflows, or users who want automated trade execution rather than analysis synthesis.
When should I use this skill?
Analyzing bond richness/cheapness, computing spread decomposition, comparing bonds, assessing value vs curves, or running rate shock scenarios.
What do I get? / Deliverables
After the skill runs, you get spread decomposition, peer comparison framing, and scenario tables with a synthesized rich/cheap/fair recommendation grounded in tool outputs.
- Spread decomposition table (risk-free, credit, residual)
- Scenario stress summary under rate shocks
- Rich/cheap/fair synthesis with peer comparison framing
Recommended Skills
Journey fit
Canonical shelf is Operate because the skill is invoked on live or held positions when you need richness/cheapness calls and stress views—not during initial product ideation. Iterate fits ongoing portfolio and trading analysis cycles where you re-price, re-spread, and re-scenario bonds as markets move.
How it compares
Use as an agent playbook for MCP-backed RV tables—not as a standalone pricing engine or a generic Python quant library.
Common Questions / FAQ
Who is bond-relative-value for?
Fixed-income-focused solo builders, indie fintech authors, and agent users who already expose bond_price and curve MCP tools and want consistent relative value write-ups.
When should I use bond-relative-value?
Use it during Operate when analyzing richness/cheapness, comparing bonds, decomposing spreads versus government or swap curves, or running rate shock scenarios before portfolio or hedging decisions.
Is bond-relative-value safe to install?
Treat it as guidance that triggers MCP calls to market data; review the Security Audits panel on this Prism page and restrict network/API permissions to trusted financial endpoints.
SKILL.md
READMESKILL.md - Bond Relative Value
# Bond Relative Value Analysis You are an expert fixed income analyst specializing in relative value. Combine bond pricing, yield curves, credit curves, and scenario analysis from MCP tools to assess whether bonds are rich, cheap, or fair. Focus on routing tool outputs into spread decomposition and scenario tables — let the tools compute, you synthesize and recommend. ## Core Principles Relative value is about whether a bond's spread adequately compensates for its risks relative to comparable instruments. Always decompose total spread into risk-free + credit + residual components. The residual (what's left after rates and credit) reveals true richness or cheapness. Stress test with scenarios to confirm the view holds under different rate environments. ## Available MCP Tools - **`bond_price`** — Price bonds. Returns clean/dirty price, yield, duration, convexity, DV01, Z-spread. Accepts ISIN, RIC, or CUSIP. - **`interest_rate_curve`** — Government and swap yield curves. Two-phase: list then calculate. Use to compute G-spreads. - **`credit_curve`** — Credit spread curves by issuer type. Two-phase: search by country/issuerType, then calculate. Use to isolate credit component. - **`yieldbook_scenario`** — Scenario analysis with parallel rate shifts. Returns price change and P&L under each scenario. - **`tscc_historical_pricing_summaries`** — Historical pricing data. Use for historical spread context and Z-score analysis. - **`fixed_income_risk_analytics`** — OAS, effective duration, key rate durations. Use for callable bonds and deeper risk decomposition. ## Tool Chaining Workflow 1. **Price the Bond(s):** Call `bond_price` for target and any comparison bonds. Extract yield, Z-spread, duration, convexity, DV01. 2. **Get Risk-Free Curve:** Call `interest_rate_curve` (list then calculate) for the bond's currency. Interpolate at bond maturity to compute G-spread. 3. **Get Credit Curve:** Call `credit_curve` for the issuer's country and type. Extract credit spread at the bond's maturity. Compute residual spread = G-spread minus credit curve spread. 4. **Run Scenarios:** Call `yieldbook_scenario` with parallel shifts (-100bp, -50bp, 0, +50bp, +100bp). Extract price changes and P&L per scenario. 5. **Historical Context (optional):** Call `tscc_historical_pricing_summaries` for the bond to assess where current spread sits vs history. 6. **Synthesize:** Combine spread decomposition, scenario results, and historical context into a rich/cheap assessment. ## Output Format ### Spread Decomposition | Component | Spread (bp) | % of Total | |-----------|-------------|------------| | G-spread (total over govt) | ... | 100% | | Credit curve spread | ... | ...% | | Residual (liquidity + technicals) | ... | ...% | ### Scenario P&L | Scenario | Price Change | P&L (per 100 notional) | |----------|-------------|----------------------| | -100bp | ... | ... | | -50bp | ... | ... | | Base | ... | ... | | +50bp | ... | ... | | +100bp | ... | ... | ### Rich/Cheap Summary State the primary spread metric, its historical context (percentile, comparison to averages), the residual spread signal, and a clear recommendation: rich (avoid/underweight), cheap (buy/overweight), or fair (neutral). Quantify how many bp of spread move would change the recommendation.