QuantDinger量化丁格 文档
QuantDinger量化丁格是一个自托管式 AI 交易平台,用于量化研究、Python 策略开发、回测和实盘执行。一套技术栈即可实现 AI 分析、图表绘制、策略代码编写、回测、快速交易和实时操作——所有基础设施均由您完全掌控。
优先使用 Docker 安装
一条命令即可启动完整的后端,包括 PostgreSQL、Redis 和由 Nginx 服务的前端。
Python 原生
使用 pandas 数据帧或事件驱动的 on_bar 脚本编写策略。
内置于循环中的人工智能
OpenAI、Claude、Gemini、DeepSeek、Grok — 分析、生成、集成、校准。
移动端 + Web 端 + 原生应用
完整的移动版 H5、Android Capacitor 构建版、Vue 桌面版——它们都使用同一个 API。
介绍
QuantDinger 是一个自托管的量化交易和算法交易平台,用于人工智能辅助研究、Python 策略开发、回测和实盘执行。您的凭证、策略代码、市场工作流程和运营数据始终由您掌控。
功能包括:
- AI 市场分析 —— 结构化、低延迟分析,支持内存、集成投票和置信度校准,涵盖 OpenAI、Claude、Gemini、DeepSeek、Grok 等平台。
- Python 策略开发 —— 基于数据帧
IndicatorStrategy或事件驱动ScriptStrategy。人工智能可以提供一个起点,您始终掌控代码。
架构
QuantDinger 作为自托管应用程序堆栈运行:
| 层 | 技术 |
|---|---|
| 前端 | 由 Nginx 提供服务的预构建 Vue 应用程序 |
| 后端 | Flask API、Python 服务、策略运行时 |
| 存储 | PostgreSQL 16 |
| 缓存/工作线程支持 | Redis 7 |
| 交易层 | Exchange 适配器、IBKR、MT5 |
| 人工智能层 | LLM提供商集成、内存、校准、可选工作人员 |
| 账单 | 会员资格、积分、USDT TRC20 支付流程 |
| 部署 | Docker Compose 的健康检查 |
快速入门
在本地快速试用 QuantDinger 的方法——所有操作都在 Docker 中运行,无需 Node.js:
git clone https://github.com/brokermr810/QuantDinger.git
cd QuantDinger
cp backend_api_python/env.example backend_api_python/.env
./scripts/generate-secret-key.sh
docker-compose up -d --build
启动后:
- 前端:
http://localhost:8888 - 后端健康检查:
http://localhost:5000/api/health - 默认登录名:
quantdinger/123456
生产前
如果 后端容器仍使用默认值,则无法启动 SECRET_KEY。在将服务暴露给互联网之前,务必重新生成后端容器并更改管理员密码。
Docker Compose
默认堆栈包括 frontend 、、和, backend 它们通过健康检查连接在一起。主应用程序配置位于 postgres redis backend_api_python/.env
旋转起来
docker-compose up -d --build
停止并移除
docker-compose down
# keep data (Postgres/Redis volumes); pass -v to wipe volumes
docker-compose down -v
常用命令
在 QuantDinger量化丁格 中管理容器的常用命令:
# 查看运行状态
docker-compose ps
# 查看后端日志
docker-compose logs -f backend
# 重启所有服务
docker-compose restart
# 更新版本
git pull && docker-compose up -d --build
可选的根目录 .env
QuantDinger量化丁格 项目根目录下的 .env 文件主要用于控制 Compose 层的变量,如端口映射和镜像源前缀:
FRONTEND_PORT=8888
BACKEND_PORT=5000
IMAGE_PREFIX=docker.m.daocloud.io/library/
配置概述
在 QuantDinger量化丁格 中,绝大多数运行时行为由 backend_api_python/.env 控制。包括数据库连接、管理员凭据、LLM 密钥等。修改该文件后通常需要重启 backend 容器以使配置生效。
验证 (Authentication)
在 QuantDinger量化丁格 中配置管理员账号和 SECRET_KEY。 SECRET_KEY 用于加密存储您的交易所 API 密钥。
ADMIN_USER=quantdinger
ADMIN_PASSWORD=your_password
SECRET_KEY=your_random_string
数据库配置
QuantDinger量化丁格 默认使用 PostgreSQL。在 .env 中配置连接字符串:
DATABASE_URL=postgresql://user:password@postgres:5432/quantdinger
人工智能提供商
QuantDinger量化丁格 提供适用于多种 LLM 提供商的适配器。您可以根据预算和合规要求选择合适的适配器组合。
| 提供者 | 密钥 (Key) | 典型用途 |
|---|---|---|
| OpenRouter | OPENROUTER_API_KEY |
聚合器——最佳首选 |
| OpenAI | OPENAI_API_KEY |
GPT-4o / GPT-5 系列 |
| Anthropic | CLAUDE_API_KEY |
Claude 3.x / 4.x |
GEMINI_API_KEY |
双子座 1.5 / 2.0 | |
| DeepSeek | DEEPSEEK_API_KEY |
成本效益推理 |
| xAI | GROK_API_KEY |
Grok 家族 |
Google / GitHub OAuth
支持第三方快捷登录。需要在对应的开发者平台创建应用并配置回调地址:
# Google OAuth 示例
GOOGLE_CLIENT_ID=your_id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your_secret
GOOGLE_REDIRECT_URI=https://yourdomain.com/api/auth/oauth/google/callback
Cloudflare Turnstile
用于登录页面的防机器人验证,隐私友好且免费。在 QuantDinger量化丁格 配置文件中添加:
TURNSTILE_SITE_KEY=xxxx
TURNSTILE_SECRET_KEY=xxxx
账单和会员资格
针对团队或商业运营,QuantDinger量化丁格 可以启用计费、积分和会员系统。您可以在 .env 中配置定价策略和计费周期。
USDT 支付
QuantDinger量化丁格 支持通过波场 (Tron) 网络接收 USDT TRC20 支付。配置如下:
USDT_TRC20_ADDRESS=Txxxx...your_address
TRON_API_KEY=your_trongrid_key
通知配置
QuantDinger量化丁格 支持多种告警通道。以 Telegram 为例:
TELEGRAM_BOT_TOKEN=xxxx:yyyy
TELEGRAM_CHAT_ID=-100123456789
工人 (Worker) 切换
在 QuantDinger量化丁格 中,可以按需开启或关闭后台任务进程:
ENABLE_TICK_COLLECTOR=true:开启实时行情采集。ENABLE_PORTFOLIO_MONITOR=true:开启组合风险监控。ENABLE_EVOLUTION=false:关闭策略进化/参数自适应。
两种创作模式
QuantDinger量化丁格支持两条 Python 开发路径:
- IndicatorStrategy:基于
df的指标/信号脚本,用于图表渲染和信号型回测。 - ScriptStrategy:基于
on_init / on_bar的事件驱动脚本,用于复杂逻辑和实盘执行。
指标策略 (IndicatorStrategy)
在 QuantDinger量化丁格 中,这是最适合指标研究和参数调优的模式。示例结构:
# @param fast_len int 20
# @param slow_len int 50
# @strategy stopLossPct 0.03
df = df.copy()
ema_fast = df['close'].ewm(span=params.get('fast_len')).mean()
df['buy'] = (ema_fast > ema_slow) & (ema_fast.shift(1) <= ema_slow.shift(1))
output = { "name": "EMA Cross", "signals": [...] }
脚本策略 (ScriptStrategy)
基于事件驱动的开发模式,适合复杂交易逻辑和 QuantDinger量化丁格 的实盘执行:
def on_bar(ctx, bar):
if ctx.position == 0 and bar.close > ma:
ctx.buy(volume=0.1)
elif ctx.position > 0 and bar.close < ma:
ctx.close_position()
声明参数
QuantDinger量化丁格 支持通过特殊的注释格式 # @param 向 UI 自动生成配置界面:
# @param period int 14 "RSI 周期"
# @param threshold float 30.5 "超卖阈值"
# @param mode string [EMA, SMA] "均线模式"
回测 (Backtest)
QuantDinger量化丁格 提供高性能回测引擎:
- 矢量回测:适用于
IndicatorStrategy,快速验证海量参数。 - 逐笔/逐 K 回测:适用于
ScriptStrategy,还原真实盘口细节。
市场状态识别 (Market Regime)
QuantDinger量化丁格 内置 AI 引擎,可自动识别当前市场状态(如牛市、熊市、震荡、高波动等),并输出推荐的策略族。
{
"market": "Crypto",
"symbol": "BTC/USDT",
"timeframe": "1D"
}
实验管线 (Pipeline)
QuantDinger量化丁格 支持全自动化的实验流程:状态识别 -> 批量生成 -> 自动回测 -> 统一评分 -> 参数进化 -> 输出最优候选。
多因子评分 (Scoring)
QuantDinger量化丁格 采用多维度评分体系,不仅仅关注收益率,更关注策略的稳健性:
| 维度 | 关键指标 |
|---|---|
| 收益性能 | 总收益、年化收益、胜率 |
| 风险控制 | 最大回撤、夏普比率、索提诺比率 |
| 执行效率 | 盈亏比、平均持仓时间、交易频率 |
| 稳定性 | 收益波动率、稳定性得分 |
机器人概述
QuantDinger量化丁格内置多种经典的自动化交易机器人,开箱即用。它们封装了复杂的订单管理逻辑,您只需关注参数设置。
网格 (Grid)
QuantDinger量化丁格 内置经典的网格交易算法。支持等差网格和等比网格,具备自动平衡和重启恢复能力。
# 示例:网格策略配置
grid_config = {
"type": "arithmetic",
"grids": 10,
"lower": 60000,
"upper": 75000
}
马丁格尔 (Martingale)
在 QuantDinger量化丁格 中支持分批补仓、阶梯加仓。通过 multiplier 参数控制加仓倍数:
# 加仓倍数 2.0,补仓间距 5%
martingale_params = {
"multiplier": 2.0,
"step_pct": 0.05
}
趋势 (Trend)
QuantDinger量化丁格 支持多种趋势指标过滤(如 SuperTrend, Donchian Channels)。它可以自动识别支撑位和压力位并执行突破交易。
定投 (DCA)
定期定额买入,QuantDinger量化丁格 支持基于 AI 信号的智能补仓逻辑,帮助您在波动市场中摊平持仓成本。
加密货币交易所
QuantDinger量化丁格 支持 10+ 主流交易所。您可以在 .env 中配置多交易所密钥:
BINANCE_API_KEY=xxx
BINANCE_API_SECRET=yyy
OKX_API_KEY=aaa
OKX_API_SECRET=bbb
OKX_PASSPHRASE=ccc
美国股票 (IBKR)
QuantDinger量化丁格 通过 ib_insync 库连接盈透证券。支持股票、期权、期货的实时行情和交易执行。
外汇交易 (MT5)
QuantDinger量化丁格 支持通过 MetaTrader 5 进行外汇实盘交易。
import MetaTrader5 as mt5
if not mt5.initialize():
print("initialize() failed")
预测市场 (Polymarket)
QuantDinger量化丁格 集成 Polymarket 行情数据。支持基于 Polygon 链的预测市场自动化交易。
移动网页 (H5)
QuantDinger量化丁格 采用现代响应式框架(Vue 3 + Tailwind CSS),自动适配各种屏幕尺寸。支持 PWA,可添加到桌面作为独立应用运行。
Android APK 构建
在 QuantDinger量化丁格 中提供完整的 Android 构建脚本:
cd mobile_app
npm install
npx cap add android
npx cap build android
移动端 Nginx 配置
针对移动端优化的 Nginx 配置片段:
location /m/ {
alias /app/mobile_dist/;
index index.html;
try_files $uri $uri/ /m/index.html;
}
生产检查清单
在将 QuantDinger量化丁格 投入生产前,请务必核对以下事项:
| 检查项 | 操作建议 |
|---|---|
| 管理员密码 | 通过 UI 或命令行修改默认密码 |
| SECRET_KEY | 必须是高强度的随机字符串 |
| 数据库访问 | 仅限容器网络内部访问,禁用 5432 端口外漏 |
| SSL 证书 | 使用 Let's Encrypt 免费证书 |
PC 网站 Nginx
QuantDinger量化丁格 推荐反向代理配置:
server {
listen 443 ssl;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:8888;
}
location /api/ {
proxy_pass http://localhost:5000;
}
}
SSL/HTTPS
QuantDinger量化丁格 生产环境务必使用 HTTPS。推荐使用 Certbot:
sudo certbot --nginx -d yourdomain.com
OAuth 允许重定向
在 Google Cloud Console 或 GitHub Settings 中,将 QuantDinger量化丁格 的正式域名添加到 Authorized redirect URIs。
本地文档引用
已从 GitHub 提取以下中文文档到 docs_content/ 目录: