Skip to content

Repository files navigation

AlphaPilotArena

AlphaPilotArena 是一个移动端优先的 AlphaPilot 小规模公测站。用户通过邀请码提交白名单化的因子假说或公式挖掘任务,在网页查看进度、标准化回测、研究 ZIP 和排行榜。

管理员可以创建自定义邀请码并设置最多使用人数和有效期。受邀用户只需填写手机号或微信号与昵称即可注册,平台不会要求其设置密码;管理员和旧账号仍使用用户名密码登录。

公网服务器只运行 Caddy、React、FastAPI 与 SQLite,不运行挖掘算法,也不保存 LLM 密钥。计算服务器通过出站 HTTPS 长轮询领取任务,再用隔离的 AlphaPilot Runner 容器执行。

手机浏览器 -> Caddy / FastAPI / SQLite <- HTTPS long poll <- Worker -> Runner container

首版针对少于 100 名用户、约 20 个同时提交进行设计:单 Uvicorn、SQLite WAL、5 秒页面轮询,无 Redis、Celery、WebSocket 或 Kubernetes。

本地开发

python -m venv .venv
.venv/bin/pip install -e '.[api,worker,test]'
ARENA_SECRET_KEY=development-secret .venv/bin/arena-api

cd frontend
npm ci
npm run dev

验证命令:

.venv/bin/ruff format --check src tests
.venv/bin/ruff check src tests
.venv/bin/pytest
cd frontend && npm run build && npm run test:e2e

部署

镜像由 GitHub Actions 构建,服务器只拉取 sha-<git-sha> 标签或 digest:

cp .env.example deploy/.env
cp .env.worker.example deploy/.env.worker
deploy/deploy-public.sh
deploy/deploy-worker.sh

在实际执行前必须填写域名、SSH/端口状态、计算服务器数据卷路径和一次性 Worker 注册码。详细步骤见 部署说明,协议见 Worker 协议,安全边界见 安全说明

本项目仅供研究回测,不构成投资建议,不连接实盘下单。固定成分股快照存在幸存者偏差,历史结果不代表未来收益。

License

MIT

About

Public beta arena and outbound worker service for AlphaPilot research jobs

Resources

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages