Reproducible quant research portfolio workspace focused on tested Python research utilities, cautious empirical evaluation, and transparent reporting.
This repository is a research lab, not a live trading system. It contains code, tests, scripts, reports, reviews, and derived research artifacts for learning and portfolio construction. It does not contain broker integrations, exchange keys, order execution, live trading workflows, or active job-search tracking.
The repository currently contains three preliminary research artifacts:
projects/01_backtest_basics/- baseline backtesting workflow.projects/02_crypto_forecasting/- daily crypto forecasting workflow.projects/03_cross_sectional_alpha/- cross-sectional ETF factor workflow.
All three are process artifacts. They demonstrate reproducible evaluation workflows and research discipline, but they do not support claims of alpha, forecast usefulness, profitability, robustness, trading usefulness, production readiness, or job readiness.
- uv-based Python project setup with pinned project metadata.
- Reusable research package under
src/qclab/. - Unit-tested utilities for market data validation, backtest metrics, transaction costs, signal generation, chronological splits, forecasting evaluation, and cross-sectional factor analysis.
- Reproducible scripts for public-data experiments.
- Markdown reports and integrity reviews that document assumptions, limitations, and unsupported claims.
- Explicit separation between research evidence and trading or career claims.
quant-career-lab/
src/qclab/ Reusable research package
backtest/ Metrics, costs, and signal utilities
data/ Market-data loading and validation
evaluation/ Multi-asset, walk-forward, cost, and factor evaluation
forecasting/ Targets, features, baselines, metrics, and models
tests/ Shared unit test suite
scripts/ Root-level reproducible experiment scripts
projects/
01_backtest_basics/ Phase 1 backtest-basics artifact
02_crypto_forecasting/ Phase 2 forecasting artifact
03_cross_sectional_alpha/ Phase 3 cross-sectional factor artifact
reports/ Root-level research outputs, if needed
notes/ Study notes supporting research work
AGENTS.md Agent operating instructions
OPERATING_MANUAL.md Long-term project manual
STATUS.md Current dashboard
TODO.md Actionable task queue
WEEKLY_LOG.md Progress log
Generated result CSVs under project results/ directories are derived outputs
and may be ignored by Git. Raw downloaded market data is not committed.
The project uses Python 3.12 and uv.
Install or sync the environment:
uv syncRun the full test suite:
uv run pytestRun linting:
uv run ruff check .Phase 1 backtest-basics outputs:
uv run python scripts/run_multi_asset_evaluation.py
uv run python scripts/run_walk_forward_evaluation.py
uv run python scripts/run_cost_sensitivity.pyPhase 2 crypto forecasting outputs:
uv run python projects/02_crypto_forecasting/scripts/run_baseline_vs_model_evaluation.py
uv run python projects/02_crypto_forecasting/scripts/run_public_data_evaluation.pyPhase 3 cross-sectional factor outputs:
uv run python projects/03_cross_sectional_alpha/scripts/run_public_data_evaluation.pyPublic-data scripts depend on Yahoo Finance data through yfinance. Re-running
them can produce different derived outputs if vendor data is revised.
Purpose: implement a minimal research loop from data loading through signals, positions, costs, backtest metrics, train/test evaluation, walk-forward evaluation, and reporting.
Implemented strategy baselines:
- SMA crossover.
- Momentum lookback.
- Z-score mean reversion.
Key artifacts:
- Report:
projects/01_backtest_basics/reports/backtest_basics_report.md - Integrity review:
projects/01_backtest_basics/reviews/phase1_report_integrity_review.md - Main derived outputs:
projects/01_backtest_basics/results/
Current interpretation: Phase 1 demonstrates a reproducible baseline evaluation process. The evidence remains preliminary and inconclusive, and direct buy-and-hold benchmark artifacts remain future work.
Purpose: evaluate a cautious daily forecasting workflow for BTC-USD and
ETH-USD using leakage-aware features, simple baselines, fixed model workflows,
and chronological train/validation/test splits.
Implemented components:
- Next-day return and direction targets.
- Lagged return, rolling return, volatility, volume, trend, and momentum features.
- Zero-return, neutral direction, historical mean, and simple momentum baselines.
- Fixed linear/ridge regression and logistic regression workflows with train-only preprocessing.
Key artifacts:
- Preliminary note:
projects/02_crypto_forecasting/reports/crypto_forecasting_preliminary_note.md - Integrity review:
projects/02_crypto_forecasting/reviews/public_data_evaluation_review.md - Main derived outputs:
projects/02_crypto_forecasting/results/
Current interpretation: Phase 2 demonstrates forecasting pipeline mechanics and validation hygiene. It does not establish forecast usefulness, crypto predictability, or trading value.
Purpose: document a reproducible cross-sectional factor evaluation workflow on a fixed 12-ETF universe using Rank IC, IC decay summaries, two-quantile portfolio construction, turnover measurement, and simplified proportional transaction-cost assumptions.
Fixed universe:
SPY, QQQ, IWM, EFA, EEM, TLT, IEF, GLD, SLV, USO, VNQ, HYG
Implemented v1 factors:
12_1_momentumshort_term_reversalneg_21d_realized_volatility
Key artifacts:
- Plan:
projects/03_cross_sectional_alpha/PLAN.md - Report:
projects/03_cross_sectional_alpha/reports/cross_sectional_alpha_report.md - Integrity review:
projects/03_cross_sectional_alpha/reviews/cross_sectional_alpha_integrity_review.md - Runner:
projects/03_cross_sectional_alpha/scripts/run_public_data_evaluation.py - Main derived outputs:
projects/03_cross_sectional_alpha/results/
Current interpretation: Phase 3 is a preliminary descriptive process artifact. It does not select a best factor, horizon, portfolio, or cost assumption, and it does not support alpha or trading claims.
Results should not be treated as meaningful until they have been checked against relevant constraints such as:
- Transaction costs and slippage assumptions.
- Buy-and-hold or other suitable benchmarks.
- Maximum drawdown and risk-adjusted metrics.
- Turnover or trade count.
- Chronological train/test splits and walk-forward validation.
- Leakage, look-ahead, survivorship, and overfitting risks.
- Sensitivity to parameters, assets, data conventions, and regimes.
When those checks are incomplete, the repository states that limitation explicitly.
- No validated trading strategy exists in this repository.
- No validated alpha finding exists in this repository.
- Phase 1 still lacks a direct buy-and-hold benchmark artifact.
- Phase 2 does not include walk-forward validation or trading interpretation.
- Phase 3 is descriptive and does not include train/test validation, neutralization, raw-vs-adjusted comparison, or broader universe robustness.
- Public-data outputs may change if Yahoo Finance revises historical data.
- Generated result files are derived artifacts; raw downloaded market data is not stored in the repository.
This repository is for research, learning, and portfolio construction only. It does not include live trading code, broker connections, exchange keys, API secrets, real-money execution flows, or trading recommendations.
Resume bullets, cover letters, job applications, recruiter notes, interview logs, and application tracking are outside the active scope of this repository.