risk-metrics-calculation
Calculate portfolio risk metrics including VaR, CVaR, Sharpe, Sortino, and drawdown analysis. Use when measuring portfolio risk, implementing risk limits, or building risk monitoring systems.
Profile →npx skills add majiayu000/claude-skill-registry --skill risk-metrics-calculation-ccf-claude-code-ccf-mark --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Calculates a suite of portfolio risk metrics such as VaR, CVaR, drawdowns, and risk-adjusted performance measures. Provides class-based implementations for core metrics, portfolio-level risk, rolling risk analytics, and stress testing utilities.
How it works
- Pattern 1: Core Risk Metrics defines a RiskMetrics class that takes a series of returns and computes:
- Volatility, downside deviation, beta against market, historical/parametric/Cornish-Fisher VaR variants, CVaR, drawdown series, max/average drawdown, drawdown duration stats, Sharpe/Sortino/Calmar/Omega ratios, and distribution moments (skewness/kurtosis).
- A summary() method aggregates many metrics into a single dictionary.
- Pattern 2: Portfolio Risk provides a PortfolioRisk class that operates on a DataFrame of asset returns and optional weights to compute:
- Portfolio return and volatility, marginal and component risk contributions, risk-parity weighting, correlation matrix, diversification ratio, tracking error, and conditional correlation under stress.
- Pattern 3: Rolling Risk Metrics offers RollingRiskMetrics for rolling window calculations of volatility, Sharpe, VaR, max drawdown, beta, and volatility regime classification.
- Pattern 4: Stress Testing introduces StressTester with historical crisis scenarios and a method historical_stress_test to evaluate a portfolio against a specified crisis window using crisis returns and optional weights.
When to use it
Use when measuring portfolio risk, implementing risk limits, building risk dashboards, calculating risk-adjusted returns, setting position sizes, or regulatory reporting.
What it can touch
Tools and code sections include: import statements, class definitions RiskMetrics, PortfolioRisk, RollingRiskMetrics, StressTester, and methods such as var_historical, var_parametric, cvar, drawdowns, sharpe_ratio, sortino_ratio, calmar_ratio, omega_ratio, portfolio_return, portfolio_volatility, diversification_ratio, tracking_error, rolling_volatility, rolling_var, historical_stress_test. The implementation relies on numpy, pandas, scipy.stats, and scipy.optimize, and uses standard file naming like Skill classes and method names as shown in the patterns.
Caveats
License is MIT. The skill defines numerical calculations that depend on input data quality (returns series, benchmark series, and crisis data). No stated guarantees on accuracy beyond standard statistical formulas; behavior may vary with extreme inputs (e.g., infinite or NaN values) unless inputs are cleaned. No explicit handling of non-trading days beyond typical annual factor assumptions (252).
# Risk Metrics Calculation Comprehensive risk measurement toolkit for portfolio management, including Value at Risk, Expected Shortfall, and drawdown analysis. ## When to Use This Skill - Measuring portfolio risk - Implementing risk limits - Building risk dashboards - Calculating risk-adjusted returns - Setting position sizes - Regulatory reporting ## Core Concepts ### 1. Risk Metric Categories | Category | Metrics | Use Case | | ----------------- | --------------- | -------------------- | | **Volatility** | Std Dev, Beta | General risk | | **Tail Risk** | VaR, CVaR | Extreme losses | | **Drawdown** | Max DD, Calmar | Capital preservation | | **Risk-Adjusted** | Sharpe, Sortino | Performance | ### 2. Time Horizons ``` Intraday: Minute/hourly VaR for day traders Daily: Standard risk reporting Weekly: Rebalancing decisions Monthly: Performance attribution Annual: Strategic allocation ``` ## Implementation ### Pattern 1: Core Risk Metrics ```python import numpy as np import pandas as pd from scipy import stats from typing import Dict, Optional, Tuple class RiskMetrics: """Core risk metric calculations.""" def __init__(self, returns: pd.Series, rf_rate: float = 0.02): """ Args: returns
- When to Use This Skill
- Core Concepts
- 1. Risk Metric Categories
- 2. Time Horizons
- Implementation
- Pattern 1: Core Risk Metrics
- Pattern 2: Portfolio Risk
- Pattern 3: Rolling Risk Metrics
- Pattern 4: Stress Testing
- Quick Reference
- Best Practices
- Do's
- Don'ts
- Resources
What does the risk-metrics-calculation skill do?
Calculate portfolio risk metrics including VaR, CVaR, Sharpe, Sortino, and drawdown analysis. Use when measuring portfolio risk, implementing risk limits, or building risk monitoring systems.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill risk-metrics-calculation-ccf-claude-code-ccf-mark --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.