1 Star 0 Fork 99

DEC_LIU / mytrader

forked from 7thtool / mytrader 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
01.md 6.10 KB
一键复制 编辑 原始数据 按行查看 历史
7thtool 提交于 2023-09-08 15:43 . v3.8.0

第 1 章 证券DB技术架构

本章将介绍证券DB技术架构和基于证券DB技术架构的应用场景。

1.1 证券DB技术架构

说明:架构图从左到右,分别是从应用场景(终端)<->证券DB核心库<->行情交易等三方插件模块<->行情交易等三方插件模块后台服务<->交易所。从架构图上我们可以看出证券DB核心库是介于应用场景(终端)和行情交易源之间的处理库,通过内存DB+插件化模块管理+计算引擎等核心技术完成了交易处理、行情处理、计算处理并对外提供Api/Websocket/Http等多种访问方式。

下面我们从右往左来逐一介绍下证券DB核心库做了哪些事:

  1. 证券DB核心库通过插件方式加载客户开发的行情交易模块(动态库),客户开发的行情交易模块直连客户后台服务,客户后台服务最终连接到交易所,这样证券DB核心库就通过客户开发的行情交易模块对接上了客户后台服务;

  2. 客户开发的行情交易模块连上客户后台服务后,再将客户行情交易数据通过API装入证券DB核心库,证券DB核心库通过使用内存DB+零拷贝+无锁化等技术保证了数据的实时高效;

  3. 证券DB核心库通过行情管理、交易管理将客户行情交易数据有序的存入内存DB,这样证券DB核心库就可以实时提供交易持仓/委托/成交数据、行情码表/快照/明细/K线数据等;

  4. 证券DB核心库有了行情交易数据后,核心计算引擎就可以接着实时计算用户的指标,执行用户的策略交易算法等;

    证券DB核心库的核心计算引擎也支持客户开发计算插件,比如开发C/C++计算插件、Python计算插件、麦语言计算插件、Rust/JAVA/JS/MATLAB/Go等各种计算插件。

  5. 证券DB核心库完成了行情交易数据处理和计算,应用场景(终端)就只需关心应用业务本身而不用处理复杂的行情交易数据处理和计算,这样可以大幅提高应用开发和交付效率和质量。

1.2 应用场景

上图列出了证券DB核心库可能的应用场景,实际上证券DB核心库的应用场景要远远大于上面列出的场景。

这里我们就简单介绍下上图证券DB核心库的应用场景:

  1. 行情中台:即整合客户后台行情源、认证中心、以及其他服务对外提供行情码表/快照/明细/K线等数据。使用证券DB核心库的话,客户需开发行情模块对接客户后台行情源,然后基于证券DB核心库开发行情中台业务服务整合行情、认证中心、以及其他服务,并使用证券DB核心库的通讯接口响应用户请求。

  2. 交易中台:即整合客户交易柜台、认证中心、以及其他服务对外提供交易/查询/转账等服务。使用证券DB核心库的话,客户需开发交易模块对接客户交易柜台,然后开发行情中台业务服务整合交易、认证中心、以及其他服务,并使用证券DB核心库的通讯接口响应用户请求。

  3. 云指标:即实现用户通过网络请求MA、MACD等各种指标数据。使用证券DB核心库的话,客户需开发行情模块对接行情源,然后开发云指标服务使用证券DB核心库的核心计算引擎计算指标,并使用证券DB核心库的通讯接口响应用户请求。

  4. 云选股:即实现用户通过网络请求选股。使用证券DB核心库的话,客户需开发行情模块对接行情源,然后开发云选股服务使用证券DB核心库的行情快照/K线/核心计算引擎计算的指标等执行选股算法,并使用证券DB核心库的通讯接口响应用户请求。

  5. 云策略/条件单:即实现将用户的策略/条件单放在服务器运行。使用证券DB核心库的话,客户需开发行情模块对接行情源,如果还需要交易的话则还需要开发交易模块对接交易柜台,然后开发云策略/条件单服务使用证券DB核心库的交易接口/行情快照/K线/核心计算引擎计算的指标等执行策略/条件算法,并使用证券DB核心库的通讯接口响应用户请求。

  6. AI/大数据:AI/大数据的基础就是需要数据,证券DB核心库提供的就是高质量和稳定的行情码表/快照/K线/指标等各种数据,AI/大数据应用使用证券DB核心库的话就不用自己再从各种地方获取这些数据了。

  7. PC行情/交易/量化:PC行情/交易/量化应用最核心功能就是使用行情/交易/指标等数据进行展示/交易/运算等,有了证券DB核心库的话,PC行情/交易/量化应用只需关心应用的功能开发而不用重新开发底层行情/交易/指标等数据和功能了。

  8. App/H5/小程序:App/H5/小程序和PC行情/交易/量化应用一样也是使用行情/交易/指标等数据进行展示/交易等,有了证券DB核心库的话,App/H5/小程序只需关心应用的功能开发而不用重新开发底层行情/交易/指标等数据和功能了。

注意:以上证券DB核心库的应用场景介绍只是简要设计说明,具体实施还需具体情况具体对待。

通过上面的应用场景介绍,大家可以很明显看出来:

  1. 证券DB核心库将和业务无关的行情交易数据和接口以及指标/策略计算抽象成具体接口,并提供通讯/安全等功能接口。
  2. 客户只需开发对接客户行情源和交易通道模块以及业务服务:
    • 行情源和交易通道模块只需开发一次,后续所有业务场景都将共用该模块;
    • 业务服务开发需客户根据业务需求开发具体业务功能,业务开发所需的行情码表/快照/明细/K线、交易账户/持仓/委托/成交、计算指标/策略以及通讯等等证券DB核心库都提供好了。

总而言之,无论是个人还是企业都可以基于证券DB核心库打造属于自己的证券金融系统。

返回目录 | 上一章 | 下一章 证券DB应用开发演示

C++
1
https://gitee.com/saupb/mytrader.git
git@gitee.com:saupb/mytrader.git
saupb
mytrader
mytrader
master

搜索帮助