analyzing-backtests
Analyzes algorithmic trading backtest results from Jupyter notebooks and generates summary reports. Use when the user wants to analyze or summarize backtest notebooks.
When & Why to Use This Skill
This Claude skill automates the evaluation of algorithmic trading strategies by analyzing Jupyter notebook backtest results. It extracts critical performance data—including Sharpe ratios, drawdowns, and returns—and correlates them with Git version control metadata to provide a comprehensive, reproducible summary of trading experiments.
Use Cases
- Quantitative Strategy Auditing: Automatically generate structured reports from complex trading notebooks to quickly assess the viability of new algorithmic strategies.
- Performance Benchmarking: Compare strategy returns and risk metrics against benchmarks to identify alpha generation and volatility profiles.
- Reproducibility Tracking: Link specific backtest results to Git commit hashes, ensuring that performance metrics are tied to the exact version of the code used.
- Risk Management Review: Extract and visualize key risk indicators like Max Drawdown and Beta to ensure strategies align with institutional risk tolerances.
| name | analyzing-backtests |
|---|---|
| description | Analyzes algorithmic trading backtest results from Jupyter notebooks and generates summary reports. Use when the user wants to analyze or summarize backtest notebooks. |
| allowed-tools | Read, Bash, Glob, Grep |
Backtest Analysis Skill
Analyze a Jupyter notebook containing algorithmic trading backtest results and generate a comprehensive summary report.
Analysis Steps
Version Control Information
- Run
git statusto check current state - Run
git log -1 --format="%H %ci"for latest commit hash and date - Note any uncommitted changes
- Run
Read the Notebook
- Use Read tool to load the specified .ipynb file
- Parse cells for code, markdown, and outputs
Extract Key Information
Model/Strategy Details:
- Strategy name, type, and configuration
- Key hyperparameters
- Training and testing period information
Date Coverage:
- Backtest period (start, end, duration)
Performance Metrics:
- Monetary results: returns, capital, drawdowns, trade statistics
- Statistical analysis: risk metrics, benchmark comparisons, distributions
- Extract whatever metrics are available in the notebook
Generate Report
Output a structured markdown report:
# Backtest Analysis Report
**Notebook:** [filename]
**Generated:** [date]
**Git Commit:** [hash] ([date])
**Uncommitted Changes:** [yes/no]
## Strategy
[Name and brief description]
**Configuration:**
- [Key parameters]
## Period
- **Dates:** [start] to [end] ([duration])
## Performance
| Metric | Value | Benchmark |
|--------|-------|-----------|
| Total Return | X% | X% |
| Annualized Return | X% | X% |
| Max Drawdown | X% | X% |
| Sharpe Ratio | X.XX | X.XX |
| Win Rate | X% | - |
| Total Trades | X | - |
## Risk Metrics
| Metric | Value |
|--------|-------|
| Volatility | X% |
| Alpha | X% |
| Beta | X.XX |
## Key Findings
- [Notable observations]
- [Strengths and weaknesses]
## Concerns/Recommendations
- [Any issues or suggestions]
Instructions
- Extract all available metrics from the notebook
- Mark unavailable metrics as "N/A"
- Provide brief analysis, not just data
- Flag unusual results or potential issues
- Keep report concise but comprehensive