How mcompetitions/m6-methods works
This repository supports the M6 forecasting competition: it provides price-data acquisition, example IR/RPS evaluation, and scripts and data for reproducing the IJF paper’s analyses. The main user-facing workflow is to obtain asset prices, combine historical prices with a submission, and calculate evaluation scores. The paper workflow includes price cleaning and volatility/risk estimation as well as benchmark, hypothesis, forecasting, and submission analyses. Several paper scripts and the R implementations are documented but not sampled, so their internal calls and data wiring are not inferred.
Main entry points: RPS and IR calculation.py IR and RPS calculation · s6_load m6 data clean.py Price cleaning and volatility · s6_factor model2.py Factor risk model · IJF paper Risk model estimates
Components 18
Price data
- Yahoo download (Python)
Download historical data using Yahoo API.py - Yahoo download (R)
Download historical data using Yahoo API.R - M6 asset prices
assets_m6.csv
Competition evaluation
- Submission template
template.csv - IR and RPS calculation
RPS and IR calculation.py - Score example
Evaluation - example.xlsx
Paper data and models
- Competition submissions
IJF paper/submissions.csv - Paper price data
IJF paper/assets_m6.csv - Price cleaning and volatility
IJF paper/s6_load m6 data clean.py - Factor risk model
IJF paper/s6_factor model2.py - Risk model estimates
IJF paper
Paper analyses
- Submission and risk analysis
IJF paper/s6_Submission Analysis.py - Benchmark analyses
IJF paper/Better than the benchmark.R - Hypothesis analyses
IJF paper - Forecasting and investing
IJF paper/forecast-investing connection.R - Submission statistics
IJF paper/submission stats.R
Other components
- Researcher
- Yahoo Finance
Connections 18
- Researcher → Yahoo download (Python): runs download
- Researcher → Yahoo download (R): runs download
- Yahoo Finance → Yahoo download (Python): provides prices
- Yahoo Finance → Yahoo download (R): provides prices
- Researcher → IR and RPS calculation: runs evaluation
- M6 asset prices → IR and RPS calculation: historical prices
- Submission template → IR and RPS calculation: submission weights
- IR and RPS calculation → Score example: illustrates scores
- Researcher → Price cleaning and volatility: runs paper workflow
- Paper price data → Price cleaning and volatility: price history
- Price cleaning and volatility → Factor risk model: cleaned price data
- Factor risk model → Risk model estimates: writes risk estimates
- Risk model estimates → Submission and risk analysis: risk inputs
- Researcher → Submission and risk analysis: runs analysis
- Researcher → Benchmark analyses: runs analysis
- Researcher → Hypothesis analyses: runs analyses
- Researcher → Forecasting and investing: runs analysis
- Researcher → Submission statistics: runs analysis