GNU General Public License v3.0

技术解读

以下内容由 GitRead 中文社区 编辑团队基于项目 README 与官方资料整理, 结合中文开发者的常见使用场景补充技术选型建议。具体以项目官方文档为准。

深度技术分析:国内领先的基于JAVA的AI开源量化交易平台——dromara/northstar

项目背景与痛点

在量化交易领域,国内市场一直缺乏一款具备全方位功能的交易系统。文华、MC、金字塔等商业软件虽然在市场上占有一席之地,但成本高昂且功能不够灵活。针对这一痛点,dromara/northstar 应运而生。它基于JAVA打造,集历史回放、策略研发、模拟交易、实盘交易于一身,并适用于全自动与半自动的使用场景。dromara/northstar 旨在为金融从业者提供一个高效、灵活且成本低廉的平台。

核心技术揭秘

dromara/northstar 在设计和技术实现方面有着自身独特的思考。从总体架构到核心技术堆栈,无不体现出设计者的匠心独运。为更直观地理解,我们借助 Mermaid 图表展示了平台的核心数据流。

graph TD A[用户登录] --> B[调用 Account Manager] B --> C{"权限校验"} C -->|"通过"| D[认证并获取额度] C -->|"失败"| E{"提示并退出"} D --> F{"策略选择"} F -->|"回放"| G[历史数据加载] F -->|"研发"| H[策略编辑器] F -->|"模拟交易"| I[模拟市场] F -->|"实盘交易"| J[真实行情] G --> K[回放验证] H --> L{"策略类型"} L -->|"量化"| M[数学模型] L -->|"交易"| N[策略引擎] M --> N N --> O{"交易指令"} O -->|"下单"| P[市场订单] O -->|"执行"| Q[订单执行] P --> Q P --> R[订单管理] Q --> S[状态同步] S --> T[通知] T --> U[邮件通知] T --> V[实时告警]

其核心设计理念体现在以下几点:

  1. 权限与验证:在用户登录后,平台通过 Account Manager 对用户进行权限校验,保证操作的安全性。
  2. 策略与回放:历史回放功能借鉴了成熟的量化策略回测机制,通过加载历史数据,验证用户自定义策略的可行性。
  3. 策略研发与执行:策略编辑器提供量化模型与交易策略的融合,用户可将策略编排后,交由策略引擎执行,实现交易指令的下发与订单管理。
  4. 模拟与实盘交易:平台同时支持模拟市场和真实行情,开发者可以最大限度地模拟真实交易场景,更好地掌握交易策略的表现。

功能亮点与差异

与竞品相比,northstar 的独特优势在于其开源性和广泛的适用性。无论是交易新手还是资深从业者,northstar 都提供了足够的灵活性与扩展性,使其在功能上超越了同类产品。特别是历史回放功能,极大地方便了量化策略的研发与验证。

应用场景与落地建议

在生产环境中使用 northstar 时,开发者需要注意以下几个方面:

  1. 安全性:由于平台集成了实盘交易功能,安全性尤为关键。有必要加强用户权限管理和数据加密传输。
  2. 性能调优:模拟和实盘交易涉及高频数据处理,建议针对具体业务需求进行全面性能调优。
  3. 数据安全:数据是量化交易的核心,需要采取措施保护敏感信息,例如使用加密方式存储策略文件。

综合评价

northstar 作为一款强大的量化交易平台,其开源性与全面性无疑给开发者提供了广阔的创新空间。它不仅具备完善的交易功能,还能通过社区资源实现快速迭代。然而,平台在实时性与可操作性方面的优化仍有提升空间。总体而言,northstar 是国内量化交易领域的一款重要开源工具,值得更多开发者关注与尝试。

简要分析

热度分
1009
价值分
419
活跃状态
活跃

语言占比

CSS
HTML
Java
JavaScript
PowerShell
Shell

README

Northstar盈富量化平台

免责声明:
本项目仅属于技术分享,不构成任何交易建议。使用者自身在交易前,需要清楚其可能面对的交易风险与相关法律规定,并为自身行为负责!

多端图表分析

历史回放

自动化

策略监控

产品简介

专业级量化交易软件,用于期货、股票、外汇、炒币等多种交易场景,实现自动交易。
【演示版网站】

已对接的网关示例:

程序化交易
● 模组管理
● 策略编写(JAVA)
● 指标框架
● 运行状态可视化
● 自动风控
● 资金隔离
● 策略绩效
● 策略熔断

模拟账户交易
● 支持实时行情的本地模拟(同时支持手工及程序化交易)
● 支持历史回放的本地模拟(相当于复盘训练)
● 提供账户绩效统计

历史行情回放
● 对接了六大主流交易市场的历史数据(国内期货、A股、港股、美股、币圈、外汇)
● 提供分钟级精度历史行情(需要付费购买)

前端GUI监控台
● 提供单租户的监控台
● 方便配置网关、模组信息
● 提供图表可视化
● 方便日志查询
● 支持中英文切换

AI助手
● 可对接主流的大模型平台API
● 已有Deepseek及Kimi的对接案例

日志分析
● 隔离平台日志与模组日志
● 可通过监控台实时控制日志打印级别

策略回测
● 可实现大规模的批量回测
● 可实现快速回测
● 可实现高精度的回测

图表分析
● 提供多图同列
● 提供多周期联动
● 提供常用指标与画线工具
● 支持自定义指标(Javascript脚本)
● 支持画线下单

报警通知
● 对接了企业微信与邮件通知

自定义网关
● 可扩展自行对接更多交易所

私有化部署

适用人群

专业量化操盘手、全栈技术爱好者、小型私募技术团队

运行环境

建议使用Linux云服务器,或者Windows系统(MAC系统不支持CTP、XTP动态库)

程序架构

  • B/S架构
  • northstar项目为服务端(包含了web网页监控端)
  • 数据库采用H2(历史行情数据主要依赖数据服务,本地仅保存少量账户配置信息)

项目架构采用事件驱动+插件式开发 输入图片说明

技术支持

输入图片说明

注意事项

  • 更多详细文档请加星球获取
  • 项目使用了缓存,最大堆内存不应该小于2G,否则会有OOM
  • 服务器时间校正为北京时间,时间不准会影响行情接收
  • 尽量不要在开市期间重启程序,因为行情是实时接收的,重启会导致当天的K线数据会缺失
  • 编写策略逻辑时如需使用时间属性,务必使用TICK行情自带的时间戳,否则策略回测时会不准确
  • 本项目为技术分享,对交易行为并不负责
  • 使用者需要自行开发交易策略并需要一定的JAVA基础
  • master分支不是一个稳定的版本,稳定的版本请以tag为准

特别鸣谢

redtorch作者,本项目保留了小部分其源码,同时感谢redtorch作者的技术分享。
klinechart作者,提供了优秀的K线前端库,并提供了相关的技术支持。

评论

暂无评论