https://github.com/namoshizun/tradepy
Backtesting & Tradebot by the programmer, for the programmer. 一款温柔地对待程序员的量化框架 🤟
https://github.com/namoshizun/tradepy
algotrading fintech quantitative-trading trading
Last synced: 4 months ago
JSON representation
Backtesting & Tradebot by the programmer, for the programmer. 一款温柔地对待程序员的量化框架 🤟
- Host: GitHub
- URL: https://github.com/namoshizun/tradepy
- Owner: namoshizun
- License: mit
- Created: 2023-03-05T08:38:15.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-11T02:47:30.000Z (over 1 year ago)
- Last Synced: 2024-02-11T03:28:24.287Z (over 1 year ago)
- Topics: algotrading, fintech, quantitative-trading, trading
- Language: Python
- Homepage: https://docs.trade-py.com/
- Size: 10.2 MB
- Stars: 25
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TradePy
![]()
![]()
TradePy是一个面向证券交易的量化策略开发 + 实盘交易框架,实现了如下功能:
* **数据下载**
* 通过 [Akshare](https://github.com/akfamily/akshare/) 下载A股股票、ETF和宽基指数的日K,以及后复权因子、解禁日期等数据
* 通过 [XtQuant](http://docs.thinktrader.net/pages/4a989a) 下载日内1分钟K线。
* 数据下载为本地CSV或Pickle文件,不需要安装数据库,下载后即可离线使用
* **策略实现**: 提供声明式API以快速实现策略逻辑,内置多种常用指标,使用 [Numba](https://numba.pydata.org/) 加速耗时操作.* **策略回测**: 日K级别的交易回测,并生成回测报告。可用分钟K线做日内走势回测。
* 可设置 每日最大开仓数量、最低开仓金额、个股最大仓位
* 计算后复权股价,支持多种滑点设置
* 可并行跑多轮回测,观察策略表现的统计特征.* **寻参优化**: 基于网格搜索的参数寻优,并使用 [Dask Distributed](https://distributed.dask.org/) 做并行化。未来将集成更智能的寻参算法,当前也支持使用自定义的寻参算法。
* **实盘交易**: 通过 [XtQuant](http://docs.thinktrader.net/pages/4a989a) 执行实盘交易,并自行统计当日持仓和账户余额等信息,以规避QMT终端的诸多数据反馈不及时问题。
* 每日自动更新日K数据。
* 支持设置委托单过期时间,超时不成交且不在当前买一价,可自动撤单.
* 支持微信推送交易行为和异常状态 (🚧施工中)* **实盘/回测对比**: 读取实盘的交割单PDF,并与同期的回测结果进行比对,以验证回测结果的可信度(🚧施工中)。
**在线文档**: https://docs.trade-py.com
**镜像仓库**: https://gitee.com/dilu3100/TradePy
**TODOs**
- [x] 测试用例
- [ ] 日内交易回测
- [ ] 微信推送交易行为
- [ ] 加载实盘交割单,与回测结果对比
- [ ] 回放回测中的交易行为
- [ ] 优化回测报告
- [ ] 调研在浏览器里使用TradePy回测功能的可行性