1---2name: atft-research3description: Drive quantitative analysis, factor diagnostics, and reporting for ATFT-GAT-FAN outputs.4---56# ATFT Research Skill78## Mission9- Quantify performance (Sharpe, RankIC, hit ratio) across horizons and cohorts.10- Inspect feature contributions, leakage risks, and stability of graph-based factors.11- Produce stakeholder-ready artifacts (reports, dashboards, notebooks).1213## Engagement Signals14- Requests to “analyze results”, “generate research report”, “compare to baseline”, “explain factor drift”.15- Need to validate new model output or dataset revisions before release.16- Desire for exploratory notebooks, plots, or KPI dashboards.1718## Baseline Workflow191. Confirm availability of latest run: `ls -lt runs | head`.202. Load metrics: `python scripts/research/summarize_run.py --run runs/<timestamp>`.213. Compute comparison vs baseline:22 - `make research-baseline RUN=runs/<timestamp>` — compares to curated benchmark.23 - `make research-plus RUN=runs/<timestamp>` — full bundle (feature importance, turnover, drawdowns).244. Plot diagnostics:25 - `python scripts/research/plot_metrics.py --run runs/<timestamp> --horizons 1 5 10 20`.26 - `python scripts/research/graph_analytics.py --dataset output/ml_dataset_latest_full.parquet`.275. Publish:28 - Output stored in `reports/<timestamp>/`.29 - Update `docs/research/weekly_digest.md`.3031## Specialized Analyses3233### Factor Stability / Drift34- `python scripts/research/factor_drift.py --window 60 --features top50`.35- `python scripts/research/check_leakage.py --dataset output/ml_dataset_latest_full.parquet`.36- Alert when drift Z-score > 2.3 or leakage detection fails; escalate to pipeline skill to rebuild dataset.3738### Regime Segmentation39- `python scripts/research/regime_detector.py --regimes 4 --method gaussian_hmm`.40- `python scripts/research/evaluate_by_regime.py --run runs/<timestamp> --regime-file output/regimes/latest.parquet`.4142### Risk & Compliance43- `python scripts/research/limit_checker.py --run runs/<timestamp>` — verifies VAR, exposure, and shorting constraints.44- `pytest tests/research/test_safety_constraints.py -k exposure` if guard fails.4546## Visualization Arsenal47- `make research-report FACTORS=returns_5d,ret_1d_vs_sec HORIZONS=1,5,10,20`.48- `python scripts/research/notebooks/render.py docs/notebooks/performance_atlas.ipynb`.49- `python tools/chart_creator.py --input reports/<timestamp>/summary.json --output outputs/figures/`.5051## Data Sources52- Primary dataset: `output/ml_dataset_latest_full.parquet`53- Model outputs: `runs/<timestamp>/predictions.parquet`54- Feature metadata: `dataset_features_detail.json`55- Market benchmarks: `data/benchmarks/nikkei225.parquet`5657## Reporting Standards58- Include KPIs: Sharpe, RankIC, Top/Bottom decile returns, MaxDD, Turnover.59- Break out metrics by sector (33 TSE industry codes) and market cap terciles.60- Document experiment context: dataset version hash, training config file, git SHA.61- Archive final report under `docs/research/archive/<YYYY-MM-DD>_run_<timestamp>.md`.6263## Codex Collaboration64- Engage `./tools/codex.sh "Generate new factor hypothesis from latest run"` to synthesize research leads using Codex search + reasoning stack.65- Run `codex exec --model gpt-5-codex "Summarize regime analysis findings in docs/research/weekly_digest.md"` for automated reporting drafts.66- Feed Codex-generated notebooks or scripts back through this skill for validation before sharing with stakeholders.