让 Agent 搭建行情中心:DolphinX 数据接入自动化实践

在量化投研中,行情数据接入看似只是基础工作,却往往是最容易消耗工程资源的一环。

研究员一句"帮我导入 2025 年全年沪深 Level-2 逐笔数据,我想测个因子",落到工程侧,往往意味着一长串事情:数据格式解析与标准化、库表与分区设计、流引擎配置、数据订阅与落库,还要考虑大规模并行加载和后续增量更新。换一套数据源,或者从历史切到实时,又得重新配一套流程。

在 DolphinX 中,我们把这套行情接入经验封装成了可复用的 Skills。Agent 不只是理解"我要什么数据",还能进一步完成建库建表、流引擎配置、数据订阅与落库等具体操作。

本文以历史行情导入和 CTP 实时行情接入两个场景为例,拆解 DolphinX 行情中心 Agent 的架构设计与实战流程,看它如何把数据工程从写代码调试变成自然语言交互。

一、DolphinX 行情中心 Agent 架构设计

DolphinX 行情中心 Agent 采用三层架构设计,将用户的自然语言需求自动转化为可执行的数据库作业:

  1. 感知交互层

感知交互层负责接收用户的自然语言指令,如"帮我完成 ctp 实时数据接收落库的完整流程"。DolphinX 内配置的大模型(如 DeepSeek / GLM 等)负责初始意图识别与后续的参数提取,将模糊的自然语言转化为结构化的任务描述。

  1. Skill 编排层

Skill 编排层是 Agent 的决策中枢,根据解析后的任务类型自动匹配并调用相应的 DolphinX Skills,并从中提取完整的工作流待办清单。目前平台已沉淀了覆盖主流行情数据源的标准化 Skills:

  • dolphindb-datayes-import:自动导入通联历史数据,经处理后落盘至 DolphinDB 分布式库表内。
  • dolphindb-csmar-import:自动导入 csmar 历史数据,经处理后落盘至 DolphinDB 分布式库表内。
  • dolphindb-csm-realtime-import:实时接收 csm 行情数据,自动化创建原始、标准化流表以及分布式库表,同步建立 RSE 快照引擎及标准化订阅链,最终完成沪深 Level-2 实时行情经标准化处理后落库以及定时任务配置。
  • dolphindb-ctp-realtime-import:实时接收 ctp 行情数据,自动化创建原始、标准化流表以及分布式库表,最终完成 ctp 期货实时行情数据经标准化处理后订阅落库以及定时任务配置。

用户只需明确数据源和需求,底层配置均由编排层自动完成。

  1. 底座执行层

将编排层生成的 DolphinDB 脚本通过 API 提交至 DolphinDB 高可用集群执行,集群利用多核并行、内存计算与列式存储实现极速处理,并将执行状态与结果返回给用户。

二、三步构建行情中心 Agent

在 DolphinX 框架下,构建一个完整的行情中心 Agent 只需遵循以下三个步骤:

  1. 完成模型配置

进入 DolphinDB Web 页面后依次点击创建 AI 会话 --AI 设置 --模****型配置 ,单击新建 Provider ,输入模型提供商的名称、Base URL、API Key,选择适配器类型,单击创建

完成上一步后,在同页面单击新增模型 ,根据模型能力配置模型信息,单击保存

模型配置完成。

  1. 注册行情中心 Agent

依次单击Agent 管理 --新建 Agent ,依次填写 Agent 名称、描述、系统提示词后,单击创建并激活

描述和系统提示词可根据实际的业务需求进行修改。参考示例如下:

bash 复制代码
### Agent名称
AI行情中心
### 描述
智能行情数据接入与处理自动化Agent
### 系统提示词
你是专业的AI行情中心Agent,精通DolphinDB代码编写,具备从需求理解、复杂脚本生成、性能调优到集群部署的全栈技术能力,能独立完成高并发实时流、海量历史数据接入等复杂场景下的代码开发与问题诊断。
对于每一项任务,能执行就直接执行,尽量把工作推进到可用结果,而不是只给建议。回答要直接、可靠、便于复查;信息不足时只问必要问题,不臆造表结构、接口或运行结果。
硬性原则:
1.如果遇到 is not a valid identifier报错,直接用excute分步手动执行。
2.关键风险(如删表操作)需加粗警告。
3.遇到需求先匹配skill。匹配上才能进行下一步。严格按照skill工作流程执行。
4.禁止做重复的检查验证工作,一次插件/模块验证已存在即可。
  1. 注册绑定需要的技能

3.1 绑定模型

Agent 创建成功后首先需要绑定模型,选择需要的已配置模型绑定即可。

3.2 注册技能

由于实时数据接入系列技能暂未发布,用户可自行下载附件中的压缩包文件注册技能,步骤如下:

单击技能管理 --注册技能 ,选择上传对应的 zip 文件,依次填写名称、显示名称、描述后单击注册即可。

CSM 实时数据接入技能注册页面及填写参考内容如下:

bash 复制代码
### 名称&显示名称
dolphindb-csm-realtime-import
### 描述
通过 CSM 插件接入沪深 Level-2 实时行情,经标准化处理后落盘到分布式数据库,并支持定时任务每日自动重建接收流程。

CTP 实时数据接入技能注册页面及填写参考内容如下:

bash 复制代码
### 名称&显示名称
dolphindb-ctp-realtime-import
### 描述
通过 DolphinDB CTP 插件接入国内期货实时行情(Tick),经标准化处理后落盘到分布式数据库,并支持定时任务每日自动重建接收流程。

3.3 绑定技能

完成技能注册后,单击技能绑定,启用以下技能。

bash 复制代码
### 前置准备类
dolphindb-basic-syntax-programming       #辅助生成dolphindb脚本
dolphindb-functional-programming         #辅助生成dolphindb脚本
dolphindb-hfdataimport-check-env         #检查插件模块是否已加载
dolphindb-rag                            #检索dolphindb内部文档
dolphindb-sql-programming                #辅助生成dolphindb脚本
dolphindb-vectorization-programming      #辅助生成dolphindb脚本

### 数据导入类
dolphindb-datayes-import         #通联历史数据导入
dolphindb-csmar-import           #csmar历史数据导入
dolphindb-csm-realtime-import    #csm实时数据接入
dolphindb-ctp-realtime-import    #ctp实时数据接入

行情中心 Agent 构建完成。

三、实战场景一:历史数据导入

通联沪深 Level-2 历史数据自动化入库

某券商自营量化团队计划上线一批基于盘口微观结构的高频因子策略,需将通联数据提供的沪深 Level-2 历史行情数据(包含逐笔成交、逐笔委托、盘口十档快照等)批量导入 DolphinDB 分布式数据库,用于因子回测与模型训练。原始数据为 zip 文件,单交易日数据量可达千万行至数亿级。

传统方式可能面临的核心痛点:业务员需要系统学习 DolphinDB 的编程语言,才能使用数据导入模块编写数据导入脚本,时间成本高。分区设计不合理造成数据倾斜和查询性能瓶颈等。

使用 DolphinX 行情中心Agent:可自动完成文件格式智能识别、Level2数据标准化映射、分区方案优化、创建分布式库表,并通过并行加载实现高效落盘,同时支持增量补充导入,将整个历史数据上线周期压缩。

历史数据导入 skill 的工作流程如下图:

历史数据导入 skill 工作流程示意图

完整使用教程如下:

STEP 01进入 DolphinX 交互界面,用自然语言提出需求

首先登入 DolphinDB Web 端界面,点击右上角【创建 AI 会话】,即可进入 DolphinX 交互界面。在对话框输入"我要导入通联历史数据",发送。平台会自动检索已绑定的 skill dolphindb-datayes-import,从中提取数据导入完整工作流程并自动执行。

这一步 skill 会完成以下工作:

  • 自动调用内置环境检查模块(dolphindb-hfdataimport-check-env)确认数据导入所需的 zip 插件和 easy_datayes 模块是否已经上传,如果没有则自动上传,无需用户手动操作。
  • 收集机器信息,综合考虑内存和并发约束推荐数据导入并行度。
  • 向用户收集数据导入参数,必填参数包括文件保存路径、要导入的数据类型、导入的日期范围,可选参数包括数据库名称和数据表名称。

STEP 02按参考格式要求输入数据导入参数

比如数据保存在 /hdd/hdd0/tldata 路径下,想要同时导入快照数据(tl_snapshot)和逐笔成交数据(tl_trade),日期是 2023.02.01 一天,库名为 TL_Level2,表名都使用默认参数,示例输入如下:

bash 复制代码
文件路径:/hdd/hdd0/tldata 
数据类型:tl_snapshot,tl_trade 
开始时间:2023.02.01 
结束时间:2023.02.01
数据库名:TL_Level2

这一步可以根据用户实际情况进行自定义配置:

  • 文件路径是指原始数据保存在服务器上的绝对路径,通联历史数据文件储存结构可参考官方文档【easyTLDataImport 通联历史数据自动化导入功能模块】
  • 数据类型有以下五种:tl_trade(逐笔成交数据)、tl_entrust(逐笔委托数据)、tl_snapshot(快照行情数据)、tl_orderqueue(委托队列数据)、tl_tick(逐笔合并数据),可以一次选择其中一个或多个。
  • 通过给定开始时间和结束时间可以实现批量数据导入。建议先导入一天测试流程,跑通后再批量导入。
  • 默认的表名分别为:trade、entrust、snapshot、orderqueue、tick。

STEP 03确认导入参数无误,导入任务开始执行

这一步向用户提供多种选择,如果确认参数无误,可直接输入确认。若发现之前输入的参数有问题或者想要自定义并行度,可以在这一步告诉 AI 助手,无需终止数据导入流程。

确认后 AI 助手将根据已确认参数自行修改数据导入脚本,并将任务提交到 DolphinDB 后台运行。最后 skill 会向用户展示本次任务的全部信息,方便用户查看。

到这里历史数据导入流程已结束,提交的任务会在后台运行,用户可随时询问任务导入进度,agent 会返回本次任务导入进度。

四、实战场景二:实时数据接入

CTP 期货实时行情流式落库

某期货资产管理部需要将国内期货交易所的实时 Tick 行情通过 CTP 接口接入落库至 DolphinDB,用于高频策略的实时风控和 Tick 级因子计算。团队期望通过 DolphinDB 的流计算引擎实现原始 Tick 的标准化清洗,并创建流表和分布式表,实时持久化。同时要求每日定时自动重建流订阅任务,无需人工介入。

传统方式可能面临的核心痛点:团队对 DolphinDB 流表和订阅机制不熟悉,手动配置极易出错。

使用 DolphinX 行情中心 Agent:自动生成完整流处理脚本,并配置每日定时任务,确保实时行情从接入到落盘的全链路自动化、高可用。

实时数据接入 skill 的工作流程如下图:

CTP 实时数据接入 skill 工作流程示意图

完整使用教程如下:

STEP 01进入 DolphinX 交互界面,用自然语言提出需求

首先登入 DolphinDB Web 端界面,点击右上角【创建 AI 会话】,即可进入 DolphinX 交互界面。在对话框输入"帮我接 ctp 实时数据",发送。平台会自动检索已绑定的 skill:dolphindb-ctp-realtime-import,从中提取数据导入完整工作流程并自动执行。

流程第一步,检查实时数据接入所需 ctp 插件是否已经安装加载,如果没有则自动下载,无需用户手动操作。

流程第二步,向用户收集实时数据接入参数,必填参数包括 ctp 连接账号信息、合约获取方式、DolphinDB 节点信息。选填参数包括落库的库表名称、定时任务配置参数。

STEP 02按参考格式要求输入实时数据接入参数

必填参数如下:

CTP 连接配置参数:参数包括 CTP 行情服务器 IP、CTP 端口、用户名、密码。

选择合约获取方式:

  • 通过 CTP 交易账号查询可订阅合约(参数包括 CTP 交易服务器 IP、CTP 交易端口、用户代码 userID、登录密码 password、经纪公司代码 brokerID、客户端认证的 AppID、客户端认证请求的 authCode)
  • 从分布式合约信息表读取(参数包括数据库名称和表名,表至少包含 trade_codeexchange 两列)。

DolphinDB 节点信息:输入节点地址、用户名及密码,格式 "ip:port:user:password"。

选填参数如下:

数据落库配置:分布式数据库名称(默认:dfs://level1_ctp_db)、落库表名(默认:snapshot)。

定时任务默认配置:每日执行时间(默认:20:40 每日 20:40 自动重建接收流程)、是否只在交易日执行(默认:true)。

收集完参数之后,AI 助手立即修改生成各实时数据接入脚本,包括自动化创建原始流表、标准化流表以及分布式库表,ctp 连接订阅,行情数据订阅落库等步骤,并立即进行单次执行验证。

STEP 03按要求上传文件至服务器对应路径后确认

这一步需要手动操作,根据 AI 指令将各文件上传至服务器指定路径。如果之前上传过,建议删除之前上传的 scripts 文件夹之后再上传新的脚本。

完成上传后发送"已上传",AI 将自动完成定时任务部署。

定时任务注册成功后,AI 助手会将整个任务的结果汇总输出,ctp 实时数据接入任务完成。对于本场景,AI 行情中心 Agent 能够迅速理解任务需求,并调用对应的 skill。短短几分钟,订阅落库链路即可跑通,并可直接应用于后续的因子计算及策略研究。

五、总结与展望

从历史行情导入到实时 Tick 接入,DolphinX 行情中心 Agent 带来的变化,不只是减少代码编写工作,更重要的是将行情数据接入过程中积累的工程实践沉淀为可复用的 Skills。

研究员或业务人员只需要描述数据需求,Agent 即可理解任务、匹配相应 Skill,并完成数据导入、建库建表、流引擎配置、数据订阅等操作。经过验证的工程流程因此能够被更低门槛地复用,也减少了对人工开发和重复配置的依赖。

随着更多 Skills 持续沉淀,Agent 能够覆盖的任务范围也将从行情数据接入进一步延伸至量化投研的其他环节。未来,DolphinX 将继续探索 Agent 在因子计算与评估、策略回测等场景中的应用,逐步连接数据准备、计算分析和策略研究流程。从行情数据接入开始,AI 正在进一步进入量化投研的实际工作流。

资源获取

本文涉及的全部 Skill 与历史数据压缩包已开放获取,点击https://dolphindb-marketplace.oss-cn-hangzhou.aliyuncs.com/20260914-DolphinX.zip即可领取。

想要体验 DolphinX 的完整能力?欢迎登录 DolphinDB 官网下载体验。

相关推荐
知孤云出岫6 小时前
深扒:DolphinDB,为什么它正在成为工业物联网实时计算的新底座?
物联网·数据·工业·dolphindb·计算
正在走向自律6 小时前
时序大模型 TimechoAI 深度实践:从“数据存而不用“到工业级时序智能分析
时序数据库·时序大模型·timechoai·清华团队研发·生成式预测·多模态协变量支·自动适配
姜穆澜2 天前
时序数据库三国杀:QuestDB / InfluxDB 3 / TimescaleDB 深度横评
时序数据库
TDengine (老段)2 天前
TDengine 常见问题 TOP2
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
物联网IoT小易2 天前
物联网设备数据异常怎么处理?重复、乱序、断点续传与脏数据治理
物联网·mqtt·数据治理·时序数据库·物联网设备·物联网设备接入·物联网设备连接
涛思数据(TDengine)3 天前
从“极速算“到“知识沉淀“:工业 AI 实战直播(十三、十四期)
人工智能·时序数据库·tdengine·工业互联网·工业ai
姜穆澜3 天前
QuestDB完全学习指南
时序数据库
姜穆澜3 天前
InfluxDB3完全学习指南
时序数据库
TDengine (老段)4 天前
TDgpt 使用 — 部署、SQL、算法
大数据·数据库·sql·算法·时序数据库·tdengine·涛思数据