VeighNa简介
VeighNa是一套基于Python的开源量化交易系统开发框架,由国内期权交易员团队于2015年在上海创立。经过多年发展,VeighNa已经成长为功能丰富、接口全面的量化交易平台,吸引了众多来自金融机构和相关领域的用户,包括私募基金、证券公司、期货公司等。
VeighNa的主要特点包括:
- 完全开源,代码托管在GitHub上
- 使用Python语言开发,易于学习和扩展
- 拥有超过5000人的活跃社区
- 支持接入多种交易接口,覆盖国内外主流市场
- 提供丰富的量化策略开发工具和应用
- 具有高性能的事件驱动引擎
- 支持对接多种数据库和数据服务
VeighNa的设计理念是"By Traders, For Traders",即由交易员开发、服务于交易员。它旨在为量化交易人员提供一个灵活、强大的开发框架,让使用者能够快速构建自己的量化交易系统。
功能特点
VeighNa框架提供了以下主要功能模块:
-
多功能量化交易平台(trader):整合了多种交易接口,并提供简洁易用的API,用于快速构建量化交易应用。
-
丰富的交易接口(gateway):覆盖国内外主要交易品种,包括:
- 国内市场:CTP、飞马、易盛等接口,支持期货、期权、股票等品种
- 海外市场:Interactive Brokers、易盛9.0外盘等接口
- 特殊应用:RQData、迅投研等行情数据接口
-
多种量化策略应用(app):
- CTA策略引擎:支持CTA类策略的开发和回测
- 价差交易:支持自定义价差和价差策略
- 期权交易:针对国内期权市场设计,支持波动率交易等
- 组合策略:支持多合约量化策略的开发
- 算法交易:提供多种智能交易算法
- 本地仿真:支持纯本地化的模拟交易
-
Python交易API接口封装:提供底层API的Python封装
-
事件驱动引擎:高效的事件处理机制
-
数据库适配器:支持SQL和NoSQL多种数据库
-
数据服务接口:对接主流金融数据服务商
-
跨进程通讯组件:用于构建分布式交易系统
-
Python版K线图表:支持大数据量展示和实时更新
此外,VeighNa还提供了详细的项目文档和社区论坛,方便用户学习和交流。
环境要求与安装
VeighNa支持Windows、Linux和macOS等主流操作系统,推荐使用Python 3.10及以上版本。
安装VeighNa非常简单,只需从GitHub下载最新发布版本,解压后运行安装命令即可:
pip install -r requirements.txt
python setup.py install
VeighNa团队还提供了VeighNa Studio集成开发环境,内置了VeighNa框架和VeighNa Station量化管理平台,无需手动安装,适合新手用户快速上手。
快速入门
以下是使用VeighNa进行量化交易的基本步骤:
-
在SimNow注册CTP仿真账号
-
在VeighNa社区论坛注册账号
-
启动VeighNa Station,使用论坛账号登录
-
点击"VeighNa Trader"按钮,开始交易!
VeighNa还支持通过Python脚本启动,示例代码如下:
from vnpy.event import EventEngine
from vnpy.trader.engine import MainEngine
from vnpy.trader.ui import MainWindow, create_qapp
from vnpy_ctp import CtpGateway
from vnpy_ctastrategy import CtaStrategyApp
from vnpy_ctabacktester import CtaBacktesterApp
def main():
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()
社区生态
VeighNa拥有活跃的开发者社区,用户可以通过以下渠道参与交流:
- GitHub项目主页:提交Issue、PR等
- 社区论坛:讨论使用心得、寻求帮助
- 知乎专栏:了解最新动态
- QQ群:262656087
VeighNa欢迎社区贡献,如果您有好的想法或改进,可以提交Pull Request。在提交代码时,请使用flake8检查代码质量。
结语
VeighNa作为一个强大而灵活的量化交易开发框架,为广大交易员和研究人员提供了便利的工具。无论您是想开发自己的交易策略,还是构建完整的量化交易系统,VeighNa都能满足您的需求。欢迎加入VeighNa社区,一起探索量化交易的无限可能!