开源软件名称:FastTrader
开源软件地址:https://gitee.com/mongodb_client/FastTrader
开源软件介绍:
FastTrader交流QQ群:813288738简介开源可拓展的快速量化交易系统平台,目前已用于一些个人或公司的实盘环境,一些实现的过程可以看里面的docx文档和源 - 主要用于实现日内交易策略
- 支持多家API供应商
- 跨平台
- 支持多种技术指标,多周期
- 可以灵活扩展
- 方便运维
- 接口尽量简单容易理解
依赖boost 1.60+ 版本 spdlog 日志采用了异步模式 tinyxml 配置文件解析 Qt 可选的,用于支持带界面的策略 python 2/3 可选的,用于支持导出python调用的接口,可以配合flask搭建运维平台 sqlite3 用来存行情数据 FastTrader分为以下几个基本模块- common和sdk目录为平台定义的数据结构,包括Tick,Order,Trade,KData这些
- FacilityBaseLib 提供基础数据结构的容器和包装
- TechLib 技术指标库(MA,MACD,BOLL,BIAS...)
- ServiceLib 交易和行情接口的抽象层,及用户账户的管理
- SimpleStrategyLib 策略接口的抽像层,及策略基本功能的封装,每个策略的逻辑运行在自己的线程里
- DataStoreLib 数据接收,过滤,存储层
- ConfigLib 配置文件解析库
- FastTrader 主程序,用于启动交易平台
- FastMarket 主程序,用于启动行情接收器
- DualMA 一个双增均线策略的使用示例,后续会添加更多示例
- 一个简单的套利策略 SimpleArbitrageStrategy
说明整个系统综合考虑了一些情况,做了折衷处理 比如,行情数据存储用sqlite数据库,考虑几点,1、方便查看,2、出错了方便纠正,3、方便与其他格式的数据互相转换,此外,可以用其他格式的数据接入到DataStoreLib里面,实现自己的存储器 每个策略一个线程,这样策略在进行一些操作的时候,就不用每次进行加锁,风控,报单,撤单的逻辑,可全部由策略接管所有细节,如果需要更简洁的接口,比如CTA那种,可以自己进行封装,这样对于各种需求的策略都可以实现和集成在本系统中了 |
请发表评论