Skip to content

Latest commit

 

History

History
846 lines (620 loc) · 41.1 KB

File metadata and controls

846 lines (620 loc) · 41.1 KB
QuantDinger Logo

QuantDinger

你的私有化 AI 量化操作系统

图表研究、AI 市场分析、Python 指标与策略、回测与实盘执行,一套可部署栈全搞定——跑在你自己的机器上,用你自己的 API 密钥。

可自托管量化平台:从想法与 AI 辅助写码,到回测与接交易所的实盘;可选多用户、积分与计费能力,方便团队运营落地。

English · 简体中文

SaaS  ·  视频演示  ·  官网  ·  AWS Marketplace

Telegram   Discord   YouTube   X

License Version Python Docker Frontend Stars

通过 AWS Marketplace 部署(ThinkCloud CentOS 9 AMI)

oosmetrics — Training 类第 7 名(2026-04-25)

QuantDinger — 本地优先的开源 AI 量化工作台 | Product Hunt


QuantDinger 是可自托管、本地优先的量化平台:把 AI 辅助研究Python 原生策略回测实盘(加密货币、IBKR 美股、MT5 外汇)放在同一套产品里,而不是图表、脚本、机器人和面板各自为政。

QuantDinger 系统架构:行情数据 → 指标 / 信号 / 策略 / 回测 / AI 分析五层引擎 → 实盘执行,并闭合「想法 → 指标 → 策略 → 回测 → 优化 → 执行 → 监控」的量化工作流

端到端架构:行情数据驱动五层引擎并对接实盘执行,从想法到监控闭环整套量化工作流。

两分钟试用

前置条件: 已安装带 Compose 的 Docker(Windows/macOS 用 Docker Desktop,Linux 用 Docker Engine + Compose 插件)以及 Git不需要安装 Node.js(仓库已含 frontend/dist 预构建前端)。

macOS / Linux(Bash)

一行命令(也可拆成多步执行):

git clone https://github.com/brokermr810/QuantDinger.git && cd QuantDinger && cp backend_api_python/env.example backend_api_python/.env && chmod +x scripts/generate-secret-key.sh && ./scripts/generate-secret-key.sh && docker-compose up -d --build

若提示脚本不可执行,先执行 chmod +x scripts/generate-secret-key.sh 再重试。若系统没有 docker-compose 命令,可尝试 docker compose(Compose V2)。

Windows(PowerShell)

请在 PowerShell(不要用 CMD)中操作,并先启动 Docker Desktop(建议开启 WSL2 后端)。

git clone https://github.com/brokermr810/QuantDinger.git
Set-Location QuantDinger
Copy-Item backend_api_python\env.example -Destination backend_api_python\.env
$key = & python -c "import secrets; print(secrets.token_hex(32))" 2>$null
if (-not $key) { $key = & py -c "import secrets; print(secrets.token_hex(32))" 2>$null }
if (-not $key) { $key = & python3 -c "import secrets; print(secrets.token_hex(32))" 2>$null }
if (-not $key) { Write-Error "请安装 Python 3(安装时勾选 Add to PATH),或安装 Git for Windows 后使用下方 Git Bash + macOS/Linux 命令。" }
(Get-Content backend_api_python\.env) -replace '^SECRET_KEY=.*$', "SECRET_KEY=$key" | Set-Content backend_api_python\.env -Encoding utf8
docker-compose up -d --build

若提示找不到 docker-compose,请改用 docker compose(中间为空格)。若未安装 Git,请安装 Git for Windows

Windows 备选:Git Bash

若已安装 Git for Windows,打开 Git Bash,可直接复制上方 macOS / Linux 的 Bash 一行命令(含 ./scripts/generate-secret-key.sh),无需手写 PowerShell。


启动后打开 http://localhost:8888,使用 quantdinger / 123456 登录,并在任何真实业务前修改默认管理员密码。环境要求、逐项配置、首次自检与排错,请继续阅读下文 安装与首次运行

给 AI Agent 用(Cursor / Claude Code / Codex / MCP)

QuantDinger 自带 Agent Gateway/api/agent/v1)和一个轻量 MCP 服务器,把行情、策略、回测、纸面交易这些能力以 Model Context Protocol 工具的形式暴露给 AI 客户端。管理员签一个 token 之后,Cursor / Claude Code / Codex / OpenClaw / NanoBot 这类 Agent 就能直接用 QuantDinger 做研究、跑回测、管理策略——完全看不到你的交易所密钥和管理员 JWT

两条永远不退让的安全红线:每一次 Agent 调用都会写入审计日志;交易类(T)token 默认仅纸面,需要服务器端 AGENT_LIVE_TRADING_ENABLED=true 与 token 上 paper_only=false 同时满足才可能走真实交易所。

第 1 步 — 拿一个 Agent token(两条路自选)

第 2 步的 MCP 接入和后续提示词两条路完全一样,只有 QUANTDINGER_BASE_URL 的值不同。

路线 A · 云端 SaaS(ai.quantdinger.com),30 秒上手。 注册后打开 侧栏 → Agent Tokens签发。SaaS 实例强制锁死 paper_only=true,并在签发环节拒绝任何带 T(Trading)scope 的 token——Agent 可以读行情、在你自己的租户内管理策略、跑回测,但永远不会触达真实交易所QUANTDINGER_BASE_URL=https://ai.quantdinger.com。适合:在 Cursor / Claude Code 里 0 安装试 QuantDinger;写文章 / 做演示;用共享数据集做研究。

路线 B · 自托管(本仓库),生产 / 私有数据 / 实盘。 先按上面 两分钟试用 跑起来,用管理员登录,打开 侧栏 → Agent Tokens(或直接 http://localhost:8888/#/agent-tokens)。你自己决定 scopes(含 T)、市场/品种白名单、速率限制、要不要把 AGENT_LIVE_TRADING_ENABLED=true 打开。QUANTDINGER_BASE_URL=http://localhost:8888(或你局域网 URL)。适合:有自己交易所 Key 的;有私有策略/数据的;VPN 后面的团队;以及任何最终想做实盘的人。

不管走哪条:

  1. 签发 → 起个名字(cursor-mcpclaude-research……)。
  2. 选 scope —— 从 R + B(读 + 回测)起步;让 Agent 能创建/修改策略再加 W
  3. 立刻复制 token —— 完整字符串只显示一次,库里只存 SHA-256 哈希,丢了只能撤销重签。

更喜欢命令行?看 docs/agent/AGENT_QUICKSTART.md 里的等价 curl 示例。

第 2 步 — 把 MCP 服务器接到你的 AI 客户端

MCP 服务器在 mcp_server/,提供两种 transport,覆盖几乎所有客户端:

A. 本地 stdio(Cursor、Claude Code、Codex 桌面端等) —— MCP 服务器已发布到 PyPI(quantdinger-mcp)。把下面这段写到 .cursor/mcp.json~/.config/claude/claude_desktop_config.json 或对应客户端的配置文件(直接复制模板:docs/agent/cursor-mcp.example.json):

{
  "mcpServers": {
    "quantdinger": {
      "command": "uvx",
      "args": ["quantdinger-mcp"],
      "env": {
        "QUANTDINGER_BASE_URL":    "http://localhost:8888",
        "QUANTDINGER_AGENT_TOKEN": "qd_agent_xxxxxxxx"
      }
    }
  }
}

uvx安装 uv)首次运行会自动下载并缓存包,无需自己管理虚拟环境。如果习惯 pip:

pip install quantdinger-mcp
# 然后改成 {"command": "quantdinger-mcp", "args": []}

Claude Code 命令行一键写入:

claude mcp add quantdinger \
  --env QUANTDINGER_BASE_URL=http://localhost:8888 \
  --env QUANTDINGER_AGENT_TOKEN=qd_agent_xxxxxxxx \
  -- uvx quantdinger-mcp

B. 远程 HTTP(OpenClaw / NanoBot 这类云端 Agent、浏览器 IDE、所有不能 spawn 子进程的客户端) —— 把 MCP 当长服务跑起来,客户端按 URL 接:

QUANTDINGER_BASE_URL=https://your-host \
QUANTDINGER_AGENT_TOKEN=qd_agent_xxxxxxxx \
QUANTDINGER_MCP_TRANSPORT=streamable-http \
QUANTDINGER_MCP_HOST=0.0.0.0 \
QUANTDINGER_MCP_PORT=7800 \
quantdinger-mcp
# 客户端连 http://your-host:7800

只支持旧版 SSE 协议的客户端把 transport 改成 sse 即可。生产环境务必前置反向代理做 TLS + IP 白名单,只让带 Agent token 的客户端进来

第 3 步 — 直接在 Agent 里下指令

重启 IDE,然后试着说:

  • "给我拉 BTC/USDT 最近 90 根日线,跑一下 regime detector,告诉我现在是哪种行情。"
  • "在 2024-01-01 到 2024-06-30 区间,用 4h 周期回测 20/60 SMA 金叉策略,边跑边把结果流给我看。"
  • "建一个叫 eth-trend-bot 的策略,用我刚刚写的指标,先保持 stopped 状态。"

长任务(/api/agent/v1/jobs/{id}/stream)走 SSE,Agent 不需要轮询就能拿到每一轮回测的中间结果。所有调用都会出现在 Agent Tokens → Audit log:路由、scope 类别、状态码、耗时一目了然。

用 QuantDinger 做 写代码 的 Agent 上下文?

如果你拿 Cursor / Claude Code / Codex 来改这个仓库,仓库里也准备了 .cursor/skills/quantdinger-agent-workflow/SKILL.md,把 Agent Gateway 的内部结构、红线(不准提交密钥、默认纸面)、改动后怎么验证都讲清楚了;完整的「三层契约」模型见 docs/agent/AGENT_ENVIRONMENT_DESIGN.md

更深入:AI 集成设计 · curl 快速开始 · OpenAPI 3.0 契约 · MCP 服务器 README

QuantDinger 是什么?

适合希望用一套可控环境替代「图表 + Jupyter + 机器人 + 通知」拼装的团队与个人:

  • 研究:AI 市场分析、自选与多市场上下文(加密、权益、外汇;可选预测类研究工作流)。
  • 构建IndicatorStrategy(表格式信号)与 ScriptStrategy(事件驱动);可用自然语言生成代码草稿后再用 Python 精修。
  • 验证:服务端回测、指标与资金曲线,与你在界面里迭代的策略模型一致。
  • 运营:实盘策略、快速交易、通知与各交易所适配层;凭证落在 你的 PostgreSQL 与 .env 中。
  • 扩展(可选):多用户、积分、会员、USDT 计费等运营向能力。

若你在找的是开源量化底座可自托管的 AI 交易工作台,或 自然语言 → Python 策略 且带产品化界面与运维面,本仓库即是集成入口。

为什么选择 QuantDinger?AI 驱动的量化交易与回测平台

  • 默认可自托管:密钥、策略代码、交易流程和业务数据都掌握在你自己手里。
  • 研究到执行一体化:AI 分析、图表、策略、回测、快速交易和实盘运营在同一条产品链路里。
  • Python 原生 + AI 辅助:既能直接写 Python,也能让 AI 加速策略草拟和迭代。
  • 面向运营落地,而不是只做演示:Docker Compose、PostgreSQL、Redis、Nginx、健康检查、工作进程开关和环境变量配置都已经成型。
  • 天然支持商业化:会员、积分、后台管理和 USDT 支付能力都在同一套系统内。

核心承诺

QuantDinger 真正想提供的,不只是一个“量化工具”,而是:

  • 一套系统替代五六个零散工具
  • AI 直接嵌入研究和交易流程,而不是挂在旁边
  • 既保留 Python 灵活性,也保留产品化体验
  • 既支持私有化部署,也支持后续运营和增长

QuantDinger 和拼装式方案有什么区别

常见拼装方式 QuantDinger
AI 聊天工具和真实策略流程割裂 AI 分析、AI 生成代码、回测反馈、执行流程在同一产品里闭环
图表、脚本、机器人、通知系统各自分散 一套可部署平台统一承载图表、策略、运行时、通知和运营
SaaS 工具方便但对密钥、alpha 和数据控制有限 可自托管架构,基础设施、密钥和业务数据都在你自己手里
只有研究工具,没有运营层 内置多用户、权限、积分、计费、后台管理和部署能力

适合谁用

  • 交易员和量化研究者:希望使用 AI 做市场研究,但又不想放弃对数据和基础设施的控制权。
  • Python 策略开发者:希望在同一个环境里完成图表、策略开发、回测与实盘。
  • 小团队和工作室:需要搭建私有研究平台或内部交易工具。
  • 运营方和创业团队:需要一个可部署、带用户体系和计费能力的量化产品底座。

典型使用场景

  • AI 辅助市场研究:覆盖加密货币、美股、外汇和跨市场研究流程
  • Python 原生策略开发:适合量化交易与算法交易团队
  • 回测与参数迭代:适合信号策略、已保存策略和执行假设验证
  • 私有化交易基础设施:适合重视可自托管与隐私优先的团队
  • 商业化量化产品:适合需要用户、计费、积分和后台控制的运营方

视觉导览

产品演示视频
▶ 观看产品演示视频
点击上方预览卡片,即可跳转到完整视频讲解。
Indicator IDE
指标 IDE、图表研究、回测与快速交易
AI Asset Analysis
AI 资产分析与机会雷达
Trading Bots
交易机器人工作台与自动化模板
Strategy Live
策略实盘运营、绩效与监控

用 QuantDinger 可以做什么

AI 研究与决策支持

  • 用 AI 快速分析价格行为、K 线结构、宏观/新闻背景和其他外部输入。
  • 存储分析历史和记忆,方便复盘、对比和后续校准。
  • 通过环境变量接入 OpenRouter、OpenAI、Gemini、DeepSeek 等多种 LLM。
  • 可选启用多模型协同、结果校准等机制,提高 AI 输出稳定性。

指标与策略开发

  • 使用 IndicatorStrategy 开发基于数据表的信号、叠加指标和图表回测。
  • 使用 ScriptStrategy 开发有状态、可显式控制下单动作的运行时策略。
  • 用自然语言生成指标代码或策略代码,再继续用 Python 深度修改。
  • 在专业 K 线界面里直接查看指标、买卖点和策略输出。

回测与策略迭代

  • 运行历史回测,查看交易明细、指标结果和资金曲线。
  • 同时支持指标驱动型回测和已保存策略驱动型回测。
  • 持久化策略快照和历史运行结果,方便复现与审计。
  • 结合 AI 做回测后的参数建议、风控调整和策略迭代。

实盘与运营

  • 通过统一执行层连接多家加密货币交易所。
  • 使用快速交易链路,从分析结果直接进入交易动作。
  • 查看持仓、交易历史,并在平台内执行平仓。
  • 用运行时服务和后台工作进程支撑半自动或自动化策略运营。

多市场覆盖

  • 加密货币现货与衍生品
  • 通过 IBKR 接入美股
  • 通过 MT5 接入外汇
  • 通过 Polymarket 工作流做预测市场研究

多用户、通知与计费

  • 基于 PostgreSQL 的多用户体系和角色权限模型。
  • 支持 Google、GitHub OAuth 登录。
  • 支持 Telegram、Email、SMS、Discord、Webhook 等通知方式。
  • 支持会员、积分、USDT TRC20 支付和后台计费管理。

AI 能力

QuantDinger 不是简单地“在交易软件里加了个 LLM 聊天框”,而是把 AI 放进了真正的研究、策略和迭代流程里。

快速分析

  • 结构化的 AI 市场分析流程
  • 比旧式多跳编排更轻、更快
  • 适合日常复盘、交易计划和机会筛选

AI 指标与策略生成

  • 自然语言生成 Python 指标代码
  • 自然语言生成策略代码和配置骨架
  • 更适合“我知道想做什么,但不想从零搭代码”的交易者

分析记忆与历史回顾

  • 保存历史分析结果
  • 提高复盘一致性和可比性
  • 为后续校准与反思链路打基础

多模型协同、校准与反思

  • 可选多模型协同配置
  • 支持置信度校准与反思式工作进程
  • 更适合追求稳定输出和长期运营的团队

AI 辅助回测反馈

  • 回测结果可以喂给 AI 生成建议
  • 适用于参数调优、风险调整和更快迭代

Polymarket 与跨市场研究

  • 把预测市场作为研究型工作流接入
  • 对比 AI 观点与市场隐含概率
  • 输出分歧分析和机会评分

它和普通交易工具有什么不同

很多交易系统只能解决其中一两段链路,但 QuantDinger 试图给你一整套“量化操作系统”:

  1. 可自托管基础设施
  2. AI 研究工作流
  3. Python 策略开发
  4. 回测
  5. 实盘执行
  6. 组合与通知运营
  7. 商业化底层能力

这套组合,本身就是它最核心的差异化。

为什么它比普通交易工具更容易打动用户

  • 对交易员:它缩短了从交易想法到交易动作的距离。
  • 对量化开发者:它把 Python 和策略控制权放在核心位置。
  • 对运营方:它补上了很多开源交易项目缺失的用户、计费、角色和部署能力。
  • 对 AI 工作流:它让分析结果变得可执行、可复盘、可逐步自动化。

它是怎么工作的

从系统层面看,QuantDinger 是一套可自托管应用栈:

  • 预构建 Vue 前端,由 Nginx 托管
  • Flask API 后端,承载 Python 服务层
  • PostgreSQL 存储用户、策略、历史和业务状态
  • Redis 提供后台工作进程支撑和运行时协调
  • 外部通过交易所、经纪商、AI、支付、通知等适配器接入

架构摘要

层级 技术
前端 预构建 Vue 应用,由 Nginx 托管
后端 Flask API、Python 服务层、策略运行时
存储 PostgreSQL 16
缓存 / 后台工作进程支撑 Redis 7
交易层 多交易所适配、IBKR、MT5
AI 层 LLM 接入、记忆、校准、可选后台工作进程
计费层 会员、积分、USDT TRC20 支付
部署 带健康检查的 Docker Compose

执行模型

  • 行情通过可插拔数据层拉取。
  • 回测在服务端策略引擎中执行,并支持策略快照。
  • 实盘策略由运行时服务生成下单意图。
  • 待执行订单再交给交易所专用执行适配器处理。
  • 加密货币实盘执行与行情采集是刻意分层的。

系统架构图

flowchart LR
    U[交易员 / 运营者 / 研究员]

    subgraph FE[前端层]
        WEB[Vue Web App]
        NG[Nginx 交付层]
    end

    subgraph BE[应用层]
        API[Flask API 网关]
        AI[AI 分析服务]
        STRAT[策略与回测引擎]
        EXEC[交易执行与快速交易]
        BILL[计费与会员]
    end

    subgraph DATA[状态层]
        PG[(PostgreSQL 16)]
        REDIS[(Redis 7)]
        FILES[日志与运行时数据]
    end

    subgraph EXT[外部集成]
        LLM[LLM 提供商]
        EXCH[加密货币交易所]
        BROKER[IBKR / MT5]
        MARKET[行情 / 新闻]
        PAY[TronGrid / USDT 支付]
        NOTIFY[Telegram / Email / SMS / Webhook]
    end

    U --> WEB
    WEB --> NG --> API
    API --> AI
    API --> STRAT
    API --> EXEC
    API --> BILL

    AI --> PG
    STRAT --> PG
    EXEC --> PG
    BILL --> PG
    API --> REDIS
    API --> FILES

    AI --> LLM
    AI --> MARKET
    EXEC --> EXCH
    EXEC --> BROKER
    BILL --> PAY
    API --> NOTIFY
Loading

安装与首次运行

下文对应常见「本地部署」顺序:准备宿主机 → 拉代码 → 配密钥 → 起栈 → 自检 → 加固 → 可选接入大模型不需要 Node.js:前端已预构建在 frontend/dist,由 frontend 容器内 Nginx 提供。

环境准备

项目 说明
Docker + Compose v2 用于 Postgres、Redis、API 与静态站点。
git 克隆本仓库。
默认端口 8888(Web)、5000(API,默认绑定 127.0.0.1)、5432 / 6379(数据库与 Redis,默认回环)。若冲突可在仓库根目录 .env 中按 docker-compose.yml 调整。
磁盘 数据库卷会随用户、策略与日志增长,正式使用建议预留数 GB 以上。

1)克隆仓库

git clone https://github.com/brokermr810/QuantDinger.git
cd QuantDinger

2)创建后端配置(必做)

cp backend_api_python/env.example backend_api_python/.env

绝大多数运行时行为由 backend_api_python/.env 控制(数据库、管理员、LLM、工作进程、计费等)。仓库根目录下的 .env 仅用于 Compose 级变量(如 端口镜像前缀 IMAGE_PREFIX),与业务配置是两层概念。

3)首次启动前必须设置 SECRET_KEY

SECRET_KEY 仍为 env.example 中的占位值,后端会拒绝启动,以避免误部署到公网却不设密钥。

Linux / macOS(推荐):

./scripts/generate-secret-key.sh

脚本会用 Python secrets 覆盖 backend_api_python/.env 中的 SECRET_KEY= 行。

任意系统:自行生成足够长的随机串(例如 64 位十六进制),写入 backend_api_python/.envSECRET_KEY=

4)启动

docker-compose up -d --build

默认服务:postgresredisbackendfrontend(详见仓库根目录 docker-compose.yml 与健康检查)。

5)验证与登录

检查项 地址 / 命令
Web http://localhost:8888(可用根目录 .envFRONTEND_HOST / FRONTEND_PORT 覆盖)
API 健康 http://localhost:5000/api/health
日志 docker-compose logs -f backend

默认管理员(生产环境请立即修改):

  • 用户名:quantdinger
  • 密码:123456(来自 env.example;也可在首次登录前于 .env 中设置 ADMIN_USER / ADMIN_PASSWORD

请在 backend_api_python/.env 中把 FRONTEND_URL 设为用户实际访问的完整地址(含 https:// 反代场景),以免影响跳转、部分跨域相关逻辑与生成链接。

6)可选:打开 AI 能力

AI 分析、自然语言生成代码等需至少配置一个 LLM 供应商。打开 backend_api_python/env.example 中的 AI / LLM 小节,将对应变量复制到你的 .env(例如 LLM_PROVIDER + OPENROUTER_API_KEY)。修改后需重启 backend 容器

7)Windows 补充说明

请使用 Docker Desktop,并在仓库根目录用 PowerShell 执行与上文「两分钟试用」中 Windows 相同的步骤。若 py 不在 PATH,请改用 pythonpython3 生成密钥;保存 .env 时建议使用 UTF-8,避免编辑器破坏换行。

首次使用建议路径(产品功能)

栈健康后建议顺序:(1)做一次 AI 资产/市场分析,确认 LLM 与数据链路;(2)打开 指标 IDE,选合约/现货,做小区间 信号回测;(3)需要时用 AI 写指标/策略 再手改 Python;(4)再在个人中心绑定 交易所 API,先 测试连接,最后按需使用 实盘策略快速交易 并选对执行模式。这样能在上真实资金前尽早暴露配置问题。

常见问题(首次启动)

现象 排查
backend 立刻退出 SECRET_KEY 仍为默认值,或 .env 语法错误;查看 docker-compose logs backend
浏览器打不开或 API 报错 FRONTEND_URL / 访问域名不一致;本机防火墙或未映射端口。
端口被占用 本机已有其他 Postgres/Redis/5000/8888 服务;调整根目录 .env 中对应变量。
大量实盘策略提示无法启动 提高 backend_api_python/.envSTRATEGY_MAX_THREADS 并重启 API(见 env.example 注释)。

常用 Docker 命令

docker-compose ps
docker-compose logs -f backend
docker-compose restart backend
docker-compose up -d --build
docker-compose down

可选:仓库根目录 .env(仅 Compose)

用于自定义端口拉取基础镜像过慢时设置镜像前缀,在docker-compose.yml 同级的目录创建 .env

FRONTEND_PORT=3000
BACKEND_PORT=127.0.0.1:5001
IMAGE_PREFIX=docker.m.daocloud.io/library/

域名、HTTPS 与反向代理等生产向部署见 云服务器部署文档

最小示例:Python 指标策略

下面这种 Python 风格,就是 QuantDinger 的典型策略开发方式:

# @param sma_short int 14 短期均线周期
# @param sma_long int 28 长期均线周期

sma_short_period = params.get('sma_short', 14)
sma_long_period = params.get('sma_long', 28)

my_indicator_name = "双均线策略"
my_indicator_description = f"短期{sma_short_period}/长期{sma_long_period}均线交叉策略"

df = df.copy()
sma_short = df["close"].rolling(sma_short_period).mean()
sma_long = df["close"].rolling(sma_long_period).mean()

buy = (sma_short > sma_long) & (sma_short.shift(1) <= sma_long.shift(1))
sell = (sma_short < sma_long) & (sma_short.shift(1) >= sma_long.shift(1))

df["buy"] = buy.fillna(False).astype(bool)
df["sell"] = sell.fillna(False).astype(bool)

完整示例见:

支持的市场、经纪商与交易所

加密货币交易所

平台 覆盖范围
Binance 现货、期货、杠杆
OKX 现货、永续、期权
Bitget 现货、期货、跟单
Bybit 现货、线性期货
Coinbase 现货
Kraken 现货、期货
KuCoin 现货、期货
Gate.io 现货、期货
Deepcoin 衍生品接入
HTX 现货、USDT 本位永续

传统市场

市场 经纪商 / 数据源 执行方式
美股 IBKR、Yahoo Finance、Finnhub 通过 IBKR
外汇 MT5、OANDA 通过 MT5
期货 交易所与数据接入 数据与工作流支持

预测市场

Polymarket 当前定位为研究与分析工作流,不是平台内的直接实盘执行模块。它适合做市场检索、分歧分析、机会评分和 AI 辅助研究。

策略开发模式

QuantDinger 当前支持两种主要策略开发模式:

IndicatorStrategy(指标策略)

  • 基于数据表的 Python 脚本
  • 通过 buy / sell 生成信号
  • 适合图表渲染、信号型回测和指标研究
  • 更适合原型验证和可视化策略开发

ScriptStrategy(脚本策略)

  • 基于 on_init(ctx) / on_bar(ctx, bar) 的事件驱动脚本
  • 通过 ctx.buy()ctx.sell()ctx.close_position() 显式表达交易动作
  • 更适合有状态策略、执行导向逻辑和实盘对齐

完整开发说明见:

示例代码位于 examples/,并已与当前策略开发指南保持同步。

仓库结构

QuantDinger/
├── backend_api_python/      # 开源后端源码
│   ├── app/routes/          # REST 接口
│   ├── app/services/        # AI、交易、计费、回测、集成能力
│   ├── migrations/init.sql  # 数据库初始化
│   ├── env.example          # 主配置模板
│   └── Dockerfile
├── frontend/                # 预构建前端交付包
│   ├── dist/
│   ├── Dockerfile
│   └── nginx.conf
├── docs/                    # 产品、策略与部署文档
├── docker-compose.yml
├── LICENSE
└── TRADEMARKS.md

主要配置域

../backend_api_python/env.example 作为主模板,常见配置包括:

配置域 示例
认证 SECRET_KEYADMIN_USERADMIN_PASSWORD
数据库 DATABASE_URL
LLM / AI LLM_PROVIDEROPENROUTER_API_KEYOPENAI_API_KEY
OAuth GOOGLE_CLIENT_IDGITHUB_CLIENT_ID
安全 TURNSTILE_SITE_KEYENABLE_REGISTRATION
计费 BILLING_ENABLEDBILLING_COST_AI_ANALYSIS
会员 MEMBERSHIP_MONTHLY_PRICE_USDMEMBERSHIP_MONTHLY_CREDITS
USDT 支付 USDT_PAY_ENABLEDUSDT_TRC20_XPUBTRONGRID_API_KEY
代理 PROXY_URL
后台工作进程 ENABLE_PENDING_ORDER_WORKERENABLE_PORTFOLIO_MONITORENABLE_REFLECTION_WORKER
AI 调优 ENABLE_AI_ENSEMBLEENABLE_CONFIDENCE_CALIBRATIONAI_ENSEMBLE_MODELS

文档导航

核心文档

文档 说明
更新日志 版本历史与迁移说明
多用户部署 PostgreSQL 多用户部署说明
云服务器部署 域名、HTTPS、反向代理与云上部署
Multi-agent environment design(英文) Cursor、Claude Code、Codex 等编码 Agent 的仓库约定与分层契约;正文为英文
AI / Agent integration design(英文) 让 QuantDinger 既服务人类交易员,也服务外部 AI Agent:Agent 网关、权限范围、MCP 与交易安全;正文为英文
Agent quickstart(英文) 落地实操:发 token、调 /api/agent/v1、跑纸面交易、接入 MCP
Agent OpenAPI Agent 网关的机器可读契约(OpenAPI 3.0)

策略开发

指南 EN CN TW JA KO
策略开发 EN CN TW JA KO
跨品种策略 EN CN - - -
示例代码 examples - - - -

集成说明

主题 English 中文
IBKR Guide -
MT5 Guide 指南
OAuth Guide 指南

通知配置

渠道 English 中文
Telegram Setup 配置
Email Setup 配置
SMS Setup 配置

常见问题

QuantDinger 真的是可自托管的吗?

是的。默认部署方式就是你自己的 Docker Compose 栈,数据库、Redis、环境变量、API 凭证和业务数据都由你自己控制。

QuantDinger 只适合做加密货币吗?

不是。加密货币是核心场景之一,但平台也支持 IBKR 的美股链路、MT5 的外汇链路,以及 Polymarket 的研究型分析工作流。

我可以直接写 Python 策略吗?

可以。QuantDinger 同时支持基于数据表的 IndicatorStrategy 和事件驱动的 ScriptStrategy。你也可以先让 AI 生成初稿,再自己继续修改。

它到底是研究工具还是实盘交易平台?

两者都是。QuantDinger 想打通的是 AI 研究、图表、策略开发、回测、快速交易和实盘运营,而不是只做其中某一段。

可以商用吗?

后端采用 Apache 2.0,前端源码采用单独的 source-available 授权。可以支持商业化,但你需要仔细阅读仓库内的授权说明;如果涉及前端源码、品牌或商业授权,建议直接联系项目方。

开源仓库入口

仓库 作用
QuantDinger 主仓库:后端、部署栈、文档、预构建前端交付
QuantDinger Frontend Vue 前端源码仓库,适合 UI 开发与定制

交易所合作注册链接

这些链接也可以在应用内通过 个人中心 -> 开户 查看。是否享受手续费返佣,以各交易所规则为准。

交易所 注册链接
Binance 注册开户
Bitget 注册开户
Bybit 注册开户
OKX 注册开户
Gate.io 注册开户
HTX 注册开户

许可与商业说明

  • 后端源代码采用 Apache License 2.0,见 ../LICENSE
  • 当前仓库中的前端以预构建文件形式分发,用于一体化部署。
  • 前端源码单独公开在 QuantDinger Frontend,并适用 QuantDinger Frontend Source-Available License v1.0
  • 根据该前端许可证,非商业用途和符合条件的非营利用途可免费使用;商业用途需另行获得授权。
  • 商标、品牌、署名和水印相关规则单独管理,未经许可不得移除或修改,详见 ../TRADEMARKS.md

如需商业授权、前端源码、品牌授权或部署支持,可联系:

法律声明与合规提示

  • QuantDinger 仅可用于合法的研究、教育、系统开发,以及符合法律法规要求的交易或运营场景。
  • 任何个人或组织不得将本软件、其衍生版本或相关服务用于任何违法、欺诈、滥用、误导、市场操纵、违反制裁、洗钱或其他被禁止的用途。
  • 任何基于 QuantDinger 的商业使用、部署、运营、转售或服务化提供,都必须遵守所在国家或地区的适用法律法规,以及必要的许可、制裁、税务、数据保护、消费者保护、金融监管、市场规则和交易所规则。
  • 用户应自行判断其使用行为是否合法,并自行承担审批、备案、披露、牌照或专业法律/税务/合规意见等责任。
  • QuantDinger 及其版权方、贡献者、许可方、维护者和相关开源参与方,不提供任何法律、税务、投资、合规或监管意见。
  • 在适用法律允许的最大范围内,QuantDinger 及相关权利方和贡献者,对任何因使用或误用本软件导致的违法使用、监管违规、交易损失、服务中断、执法措施或其他后果,不承担责任。

从这里开始

社区与支持

Telegram Discord YouTube

支持项目

0x96fa4962181bea077f8c7240efe46afbe73641a7

Star 趋势

Star History Chart

致谢

QuantDinger 建立在优秀的开源生态之上,特别感谢以下项目:

如果 QuantDinger 对你有帮助,欢迎点一个 GitHub Star。