参考资料
环境与上手
环境搭建、依赖安装、环境变量配置与每日流水线运行指南。
前提
代码仓库 alpha-online 为私有。本页命令供已获授权者内部对照,路径与密钥按实际替换。需要一个 Alpaca 账户(先用 Paper Trading)。
环境要求
- Python 3.13+(通过
uv管理) - SQLite(系统自带)
- Alpaca API 密钥(申请地址)
安装
git clone git@github.com:kuhung/alpha-online.git
cd alpha-online
uv venv --python 3.13
source .venv/bin/activate
uv pip install -r requirements.txt环境变量
敏感信息一律走环境变量,不进代码、不进 git。最少需要:
# .env
APCA_API_KEY_ID=...
APCA_API_SECRET_KEY=...
TRADING_MODE=paper
DB_PATH=data/finance_data.db切实盘时将 TRADING_MODE 改为 live,并填实盘密钥;API base URL 由 TradingMode 在配置层映射。完整参数见 配置项全集。
跑通每日流水线
./run_daily_pipeline.sh它串起 6 步:数据接入 → 预处理 → 数据质量审计(DQC)→ 因子计算 → 信号生成 & 模拟交易 → 漂移监控。挂上 Cron 即可每日无人值守运行:
# 北京 05:30(夏令时 = 美东 17:30 / 冬令时 = 美东 16:30,均在收盘后)
30 5 * * 2-6 cd /path/to/alpha-online && ./run_daily_pipeline.sh >> logs/pipeline.log 2>&1注意别在美股盘中手动跑:data_loader 以运行时刻为拉取截止,盘中跑会拉到不完整的当日 K 线。
单独跑回测
python -m src.backtest.run_backtest参数(TOP_N / REBALANCE_FREQ / METHOD / INITIAL_CAPITAL)全部走环境变量,保证回测与实盘同参。
切实盘前的硬门槛
模拟盘须在无人值守、零报错的情况下连跑 ≥ 4 周,再考虑切实盘。原因见 周频换手把摩擦放大数倍与 重启后持仓状态丢失。