dolphindb

DolphinDB 时序数据库完整技术文档与最佳实践。包含1490个技术文档 + 3份官方白皮书。涵盖数据库设计、流计算、量化回测、函数查询等全场景。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "dolphindb" with this command: npx skills add zhangxinyu0330/dolphindb-skill

DolphinDB 完整技术文档与实战指南

版本: 2.0.0 (优化版)
文档数量: 1490 个技术文档 + 3 份官方白皮书
DolphinDB版本: 3.00.4
更新时间: 2026-01-22
文档来源: https://docs.dolphindb.cn


📚 核心资源概览

🎯 官方白皮书(深度最佳实践)

提供生产级架构设计和完整工作流程指南:

  1. 数据库白皮书 (1073行)

    • DolphinDB 核心架构与分布式设计
    • TSDB vs OLAP 存储引擎详解
    • 分区策略、高可用、备份恢复
    • SQL优化与库内计算
    • 适用场景: 系统架构设计、性能优化、生产部署
  2. 流数据白皮书 (2279行)

    • 流计算框架与发布订阅机制
    • 7大流计算引擎详解
    • 流批一体架构与历史回放
    • 金融与物联网场景应用
    • 适用场景: 实时计算、CEP、流式ETL
  3. 中高频回测白皮书 (2205行)

    • 完整回测系统架构
    • 数据回放与模拟撮合引擎
    • DolphinScript/Python/C++ 策略开发
    • 量化策略实战案例
    • 适用场景: 量化回测、算法交易、策略研发

📖 在线技术文档(1490篇)

按功能领域分类的完整API参考和操作指南:

分类文档数量说明
函数参考/其他函数1171系统函数、网络函数等
其他97其他技术文档
函数参考/统计函数61相关性、协方差、标准差等统计指标
函数参考/数学函数42基础数学运算、三角函数、对数等
函数参考/SQL函数41查询、关联、聚合等SQL操作
函数参考/时间序列函数26日期时间处理、时序窗口计算
流数据处理22流表、订阅、流计算引擎
数据库核心13存储引擎、分区、事务、高可用
部署与配置9集群部署、参数配置
函数参考/字符串函数5字符串操作、正则表达式
API与连接器1Python、Java、C++ API
运维管理1监控、备份、权限管理
教程与示例1快速入门、场景案例

完整文档索引: 详见 CATALOG.md


🚀 常见问题快速导航

新手入门

数据库设计

流计算开发

量化回测

高级功能


📝 常用代码示例

1. 创建TSDB存储引擎的分区表

// 组合分区: VALUE(日期) + HASH(股票代码)
db_date = database("", VALUE, 2024.01.01..2024.12.31)
db_sym = database("", HASH, [SYMBOL, 10])
db = database("dfs://stock_data", COMPO, [db_date, db_sym])

// TSDB引擎,支持排序列和去重
schemaTable = table(
    1:0,
    `trade_time`symbol`price`volume,
    [TIMESTAMP, SYMBOL, DOUBLE, LONG]
)

pt = db.createPartitionedTable(
    table=schemaTable,
    tableName="stock_tick",
    partitionColumns=`trade_date`symbol,
    sortColumns=`symbol`trade_time,  // 排序键
    keepDuplicates=LAST,  // 去重策略
    engine="TSDB"
)

2. 创建OLAP存储引擎的分区表

// OLAP引擎适合追加式写入和批量分析
db = database("dfs://stock_analysis", VALUE, 2024.01M..2024.12M)

schemaTable = table(
    1:0,
    `trade_date`symbol`open`high`low`close`volume,
    [DATE, SYMBOL, DOUBLE, DOUBLE, DOUBLE, DOUBLE, LONG]
)

pt = db.createPartitionedTable(
    table=schemaTable,
    tableName="daily_kline",
    partitionColumns=`trade_date,
    engine="OLAP"
)

3. 流计算 - 实时K线合成

// 1. 创建流表
share streamTable(1:0, `time`sym`price`vol, [TIMESTAMP, SYMBOL, DOUBLE, INT]) as tickStream
share streamTable(1:0, `time`sym`open`high`low`close`volume, 
                  [TIMESTAMP, SYMBOL, DOUBLE, DOUBLE, DOUBLE, DOUBLE, LONG]) as klineStream

// 2. 创建时序聚合引擎
tsEngine = createTimeSeriesEngine(
    name="kline_1min",
    windowSize=60000,  // 1分钟窗口
    step=60000,
    metrics=<[first(price), max(price), min(price), last(price), sum(vol)]>,
    dummyTable=tickStream,
    outputTable=klineStream,
    timeColumn=`time,
    keyColumn=`sym
)

// 3. 订阅流表
subscribeTable(tableName="tickStream", actionName="kline", handler=append!{tsEngine})

// 4. 插入数据测试
insert into tickStream values(2024.01.01T09:30:00.000, `600000, 10.5, 1000)

4. 中高频回测完整流程

// 1. 清理环境
try{ unsubscribeTable(tableName="replayStream", actionName="backtest") }catch(ex){}
try{ dropStreamEngine("backtestEngine") }catch(ex){}

// 2. 创建回放流表
share streamTable(1:0, `time`sym`price`vol, [TIMESTAMP, SYMBOL, DOUBLE, INT]) as replayStream

// 3. 创建回测引擎(需要加载回测插件)
loadPlugin("/path/to/backtest_plugin.so")
backtestEngine = createBacktestEngine(
    name="my_strategy",
    initialCapital=10000000,
    commission=0.0003
)

// 4. 订阅回放数据
subscribeTable(tableName="replayStream", actionName="backtest", handler=backtestEngine)

// 5. 数据回放
histData = loadTable("dfs://stock_data", "stock_tick")
ds = replayDS(sqlObj=<select * from histData where trade_date=2024.01.01>, 
              dateColumn=`trade_date, 
              timeColumn=`trade_time)
replay(inputTables=ds, outputTables=replayStream, dateColumn=`trade_date, 
       timeColumn=`trade_time, replayRate=1000)

// 6. 获取回测结果
backtestEngine.getPositions()  // 持仓
backtestEngine.getOrders()     // 订单
backtestEngine.getTrades()     // 成交
backtestEngine.getMetrics()    // 绩效指标

5. 高级SQL示例

// Context By - 组内窗口计算
select 
    trade_date, symbol, close,
    movingAvg(close, 5) as ma5,
    movingAvg(close, 20) as ma20
from loadTable("dfs://stock", "daily")
context by symbol

// Pivot By - 数据透视
select close 
from loadTable("dfs://stock", "daily")
where symbol in `600000`600001`600002
pivot by trade_date, symbol

// Asof Join - 时序非精确关联
select * 
from tick_data aj snapshot_data 
on tick_data.time = snapshot_data.time and tick_data.symbol = snapshot_data.symbol

💡 最佳实践工作流

1. 数据库设计流程

需求分析 → 存储引擎选择 → 分区策略设计 → 性能测试 → 生产部署
    ↓            ↓              ↓             ↓          ↓
  数据特征    TSDB/OLAP    COMPO分区      压力测试    高可用配置

决策要点:

  • 高频写入 + 点查 → TSDB引擎 + sortColumns
  • 批量分析 → OLAP引擎
  • 时序数据 → VALUE(日期) + HASH(Symbol) 组合分区
  • 查询优化 → 合理使用分区裁剪、并行计算

参考文档: 数据库白皮书 第2-4章

2. 流计算开发流程

数据源接入 → 流表设计 → 引擎选择 → 订阅处理 → 结果输出
    ↓           ↓          ↓          ↓         ↓
  Kafka等   streamTable  7种引擎  subscribeTable  入库/推送

引擎选择:

  • 滑动窗口聚合 (K线合成) → TimeSeriesEngine
  • 横截面计算 (全市场排名) → CrossSectionalEngine
  • 复杂状态逻辑 (多因子计算) → ReactiveStateEngine
  • 异常检测 → AnomalyDetectionEngine

参考文档: 流数据白皮书 第3章

3. 量化回测完整流程

数据准备 → 历史回放 → 模拟撮合 → 策略执行 → 绩效分析
   ↓         ↓          ↓          ↓         ↓
 分区表    replay    Exchange   BacktestEngine  Sharpe/回撤

核心技术点:

  • 使用 replayreplayDS 严格按时序回放
  • createExchange 实现"价格优先、时间优先"撮合
  • 支持逐笔、快照、分钟频等多种数据源
  • C++插件可提升10倍以上性能

参考文档: 回测白皮书 完整内容


🔍 如何使用本Skill

按场景查找

  1. 我是新手,想快速上手

  2. 我要设计生产数据库

  3. 我要开发实时计算应用

  4. 我要搭建量化回测系统

  5. 我要查特定函数用法

    • 使用: CATALOG.md 按分类查找
    • 或在 references/ 目录搜索关键词

按角色查找

角色推荐阅读路径
架构师数据库白皮书 → 分布式架构 → 高可用方案
DBA数据库白皮书 → 运维章节 → 备份恢复
后端开发流数据白皮书 → API文档 → 代码示例
量化研究员回测白皮书 → 策略开发 → 绩效分析
数据分析师SQL函数参考 → Context By → Pivot By

📊 版本信息

  • Skill版本: 2.0.0 (相比1.x版本的改进)

    • ✅ 新增完整文档索引 (CATALOG.md)
    • ✅ 新增常见问题快速导航
    • ✅ 新增5大类代码示例
    • ✅ 优化文档分类 (14个细分类别)
    • ✅ 明确DolphinDB版本对应关系
  • DolphinDB版本: 3.00.4

  • 文档同步时间: 2026-01-20

  • 维护策略: 季度更新 / 重大版本发布时同步


🔗 相关资源


Generated by Skill Creator v2.0 | 优化时间: 2026-01-22

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

DolphinDB 流式计算技能

提供基于DolphinDB的金融场景流式计算能力,支持实时行情、因子计算、风控及订单簿等实时数据流处理。

Registry SourceRecently Updated
1730Profile unavailable
General

DolphinDB 基础操作技能

支持DolphinDB数据库的基本创建、插入、查询、更新和删除操作,涵盖分布式和内存表管理。

Registry SourceRecently Updated
1660Profile unavailable
Coding

Dolphindb Skills

提供 DolphinDB 数据库基础操作、量化金融、流式计算及 Python 集成四大模块,支持建库建表、因子计算、实时处理及事件研究。

Registry SourceRecently Updated
2690Profile unavailable
General

DBCheck 数据库巡检

执行 MySQL、PostgreSQL、Oracle、SQL Server、DM8、TiDB 数据库健康巡检,内置 130+ 条增强风险分析规则 + 慢查询深度分析引擎 + 本地 Ollama AI 大模型诊断建议,一键生成专业 Word 巡检报告。适用于 DBA 和运维人员快速掌握数据库运行状况、排查风险。项目...

Registry SourceRecently Updated
2920Profile unavailable