GitHub精选 | 开源量化交易平台开发框架

GitHub精选 | 开源量化交易平台开发框架

《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个开源量化交易平台开发框架——vnpy。

vn.py是一套基于Python的开源量化交易系统开发框架,它通过一套标准化的交易平台体系,对接国内诸多不同类型的金融市场:证券、期货、期权、外汇、数字货币等,并且使用经过充分实盘检验的量化策略引擎,来完成从数据维护、策略开发、回测研究到实盘自动交易的整个业务流程。

特点:

基于Python开发,充分利用Python社区强大的数据研究和机器学习生态对接了国内外所有交易品种的交易接口满足个性化的交易需求,支持对平台进行各种定制扩展节约为量化交易平台付出的资金成本

使用场景:

专业个人投资者:使用VN Trader直连期货公司的CTP期货柜台,实现从策略开发到全实盘自动交易的完整CTA业务流程创业型私募:基于RpcService构建服务器端的统一报盘通道,允许交易员在自己的本地电脑自行开发各类交易策略应用券商资管部门:对接证券公司统一部署的O32资管系统,基于事件驱动引擎定制开发多策略复杂系统币圈Token Fund:使用VN Trader同时连接多个币圈交易所,通过AlgoTrading算法交易模块实现自动化委托执行,降低冲击成本

通用组件:

vnpy.api,Python交易API接口封装,提供上述交易接口的底层对接实现。vnpy.event,简洁易用的事件驱动引擎,作为事件驱动型交易程序的核心。vnpy.rpc,跨进程通讯标准组件,用于实现分布式部署的复杂交易系统。vnpy.chart,Python高性能K线图表,支持大数据量图表显示以及实时数据更新功能。

安装使用:

环境准备推荐使用vn.py团队为量化交易专门打造的Python发行版VNStudio-2.5.0,内置了最新版的vn.py框架以及VN Station量化管理平台,无需手动安装 支持的系统版本:Windows 7以上/Windows Server 2008以上/Ubuntu 18.04 LTS 支持的Python版本:Python 3.7 64位(注意必须是Python 3.7 64位版本)安装从https://github.com/vnpy/vnpy/releases下载安装包并解压 Windows:install.bat Ubuntu:bash install.sh MacOS:bash install_osx.sh使用

1、在SimNow注册CTP仿真账号,并获取经纪商代码以及交易行情服务器地址。

2、在vn.py社区论坛注册获得VN Station账号密码并启动VN Station

3、点击底部的VN Trader Lite按钮即可开始

脚本运行

除了基于VN Station的图形化启动方式外,也可以在任意目录下创建run.py

from vnpy.event import EventEngine from vnpy.trader.engine import MainEngine from vnpy.trader.ui import MainWindow, create_qapp from vnpy.gateway.ctp import CtpGateway from vnpy.app.cta_strategy import CtaStrategyApp from vnpy.app.cta_backtester import CtaBacktesterApp def main(): “””Start VN Trader””” qapp = create_qapp() event_engine = EventEngine() main_engine = MainEngine(event_engine) main_engine.add_gateway(CtpGateway) main_engine.add_app(CtaStrategyApp) main_engine.add_app(CtaBacktesterApp) main_window = MainWindow(main_engine, event_engine) main_window.showMaximized() qapp.exec() if __name__ == “__main__”: main()

运行

python run.py

量化策略应用:

更多内容请大家自行前往阅读。

GitHub:https://github.com/vnpy/vnpy

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Proudly powered by WordPress | Theme: HoneyWaves by SpiceThemes