QuantDinger V3.1.0

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:

Linux / macOS
Windows PowerShell
bash
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 层的变量,如端口映射和镜像源前缀:

.env
FRONTEND_PORT=8888
BACKEND_PORT=5000
IMAGE_PREFIX=docker.m.daocloud.io/library/

配置概述

在 QuantDinger量化丁格 中,绝大多数运行时行为由 backend_api_python/.env 控制。包括数据库连接、管理员凭据、LLM 密钥等。修改该文件后通常需要重启 backend 容器以使配置生效。

验证 (Authentication)

在 QuantDinger量化丁格 中配置管理员账号和 SECRET_KEYSECRET_KEY 用于加密存储您的交易所 API 密钥。

.env
ADMIN_USER=quantdinger
ADMIN_PASSWORD=your_password
SECRET_KEY=your_random_string

数据库配置

QuantDinger量化丁格 默认使用 PostgreSQL。在 .env 中配置连接字符串:

.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
Google GEMINI_API_KEY 双子座 1.5 / 2.0
DeepSeek DEEPSEEK_API_KEY 成本效益推理
xAI GROK_API_KEY Grok 家族

Google / GitHub OAuth

支持第三方快捷登录。需要在对应的开发者平台创建应用并配置回调地址:

.env
# 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量化丁格 配置文件中添加:

.env
TURNSTILE_SITE_KEY=xxxx
TURNSTILE_SECRET_KEY=xxxx

账单和会员资格

针对团队或商业运营,QuantDinger量化丁格 可以启用计费、积分和会员系统。您可以在 .env 中配置定价策略和计费周期。

商业化提示 如果您计划对外提供量化跟单服务,可以利用内置的会员系统进行用户分层管理。

USDT 支付

QuantDinger量化丁格 支持通过波场 (Tron) 网络接收 USDT TRC20 支付。配置如下:

.env
USDT_TRC20_ADDRESS=Txxxx...your_address
TRON_API_KEY=your_trongrid_key

通知配置

QuantDinger量化丁格 支持多种告警通道。以 Telegram 为例:

.env
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量化丁格 中,这是最适合指标研究和参数调优的模式。示例结构:

python
# @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量化丁格 的实盘执行:

python
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 自动生成配置界面:

python
# @param period int 14 "RSI 周期"
# @param threshold float 30.5 "超卖阈值"
# @param mode string [EMA, SMA] "均线模式"

回测 (Backtest)

QuantDinger量化丁格 提供高性能回测引擎:

  • 矢量回测:适用于 IndicatorStrategy,快速验证海量参数。
  • 逐笔/逐 K 回测:适用于 ScriptStrategy,还原真实盘口细节。

市场状态识别 (Market Regime)

QuantDinger量化丁格 内置 AI 引擎,可自动识别当前市场状态(如牛市、熊市、震荡、高波动等),并输出推荐的策略族。

json
{
  "market": "Crypto",
  "symbol": "BTC/USDT",
  "timeframe": "1D"
}

实验管线 (Pipeline)

QuantDinger量化丁格 支持全自动化的实验流程:状态识别 -> 批量生成 -> 自动回测 -> 统一评分 -> 参数进化 -> 输出最优候选

AI 进化 系统会自动基于参数空间生成多个变体,通过遗传算法或网格搜索寻找最优参数组合。

多因子评分 (Scoring)

QuantDinger量化丁格 采用多维度评分体系,不仅仅关注收益率,更关注策略的稳健性:

维度 关键指标
收益性能 总收益、年化收益、胜率
风险控制 最大回撤、夏普比率、索提诺比率
执行效率 盈亏比、平均持仓时间、交易频率
稳定性 收益波动率、稳定性得分

机器人概述

QuantDinger量化丁格内置多种经典的自动化交易机器人,开箱即用。它们封装了复杂的订单管理逻辑,您只需关注参数设置。

网格 (Grid)

QuantDinger量化丁格 内置经典的网格交易算法。支持等差网格和等比网格,具备自动平衡和重启恢复能力。

python
# 示例:网格策略配置
grid_config = {
    "type": "arithmetic",
    "grids": 10,
    "lower": 60000,
    "upper": 75000
}

马丁格尔 (Martingale)

在 QuantDinger量化丁格 中支持分批补仓、阶梯加仓。通过 multiplier 参数控制加仓倍数:

python
# 加仓倍数 2.0,补仓间距 5%
martingale_params = {
    "multiplier": 2.0,
    "step_pct": 0.05
}

趋势 (Trend)

QuantDinger量化丁格 支持多种趋势指标过滤(如 SuperTrend, Donchian Channels)。它可以自动识别支撑位和压力位并执行突破交易。

定投 (DCA)

定期定额买入,QuantDinger量化丁格 支持基于 AI 信号的智能补仓逻辑,帮助您在波动市场中摊平持仓成本。

加密货币交易所

QuantDinger量化丁格 支持 10+ 主流交易所。您可以在 .env 中配置多交易所密钥:

.env
BINANCE_API_KEY=xxx
BINANCE_API_SECRET=yyy
OKX_API_KEY=aaa
OKX_API_SECRET=bbb
OKX_PASSPHRASE=ccc

美国股票 (IBKR)

QuantDinger量化丁格 通过 ib_insync 库连接盈透证券。支持股票、期权、期货的实时行情和交易执行。

环境要求 需要运行 TWS (Trader Workstation) 或 IB Gateway,并开启 API 访问端口(默认 7497 或 4002)。

外汇交易 (MT5)

QuantDinger量化丁格 支持通过 MetaTrader 5 进行外汇实盘交易。

python
import MetaTrader5 as mt5
if not mt5.initialize():
    print("initialize() failed")
部署建议 推荐在 Windows 环境下原生运行后端,以确保能直接调用 MT5 终端。

预测市场 (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 配置片段:

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量化丁格 推荐反向代理配置:

nginx
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/ 目录: