请选择 进入手机版 | 继续访问电脑版
楼主: wdd3
27521 16

[分布式系统架构] VNPY官方量化交易视频课程和CTP接口视频课程,VNPY性能架构日臻完善程序化交易框架 [分享]

  • 0关注
  • 1粉丝

高中生

40%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0.0646
学术水平
0 点
热心指数
4 点
信用等级
0 点
经验
296 点
帖子
21
精华
0
在线时间
16 小时
注册时间
2014-1-1
最后登录
2021-1-19

wdd3 发表于 2017-12-24 10:12:03 |显示全部楼层
VNPY经过几年的迭代,已经日臻完善,并不断扩大产品系列。
近期VNPY正在录制一批量化交易课程的内容,欢迎大家观看和指正。
VNPYWEB2.png


第1课
https://v.youku.com/v_show/id_XNTA2NzQzMjU4OA==.html

C1.png



第2课
https://v.youku.com/v_show/id_XNTA2NzQ0NzQ0NA==.html

C2.png



第3课
https://v.youku.com/v_show/id_XNTA2NzQ1MjU4MA==.html
C3.png


第4课
https://v.youku.com/v_show/id_XNTA2NzQ2MDIxNg==.html
C4.png



第5课
https://v.youku.com/v_show/id_XNTA2NzQ2MzI3Mg==.html
C5.png



第6课
https://v.youku.com/v_show/id_XNTA2NzQ2NzUwNA==.html

C6.png


第7课
https://v.youku.com/v_show/id_XNTA2NzQ3MzkyMA==.html

c7.png



第8课
c8.png


第9课
C9.png



第10课

c10.png



第11课

c11.png


第12课
C12.png



第13课
C13.png



第14课

C14.png


第15课

C15.png



第16课
c16.png


本章《期货CTP接口概述》是《期货CTP接口开发&量化交易快速入门课程》的第一章内容。
我们以上海期货信息技术有限公司CTP接口为例,
讲解实现国内期货市场程序化交易的整个流程。
因为CTP原生接口就是C++,所以C++用的是最多的,
同时也因为最近几年拍僧比较热门,也会有不少人选用拍僧框架,本次课程是以C++为讲解内容。

1.1b
后续章节内容还包括:CTP接口开发、编程范例、回测、高频交易、算法交易、职业发展等内容。
我们先从本章CTP接口的概述说起。
CTP接口是上海期货交易所所属子公司上海期货信息技术有限公司开发的一套期货程序化交易接口。。
可支持中国证监会管辖下五家交易所上海期货交易所、大连期货交易所、郑州期货交易所、中国金融期货交易所、上海国际能源交易中心。

1.1c
说到CTP接口,这套接口其实是中国金融行业一套标准API架构封装标准 ,CTP接口 支持证监会管辖下的五大期货交易所,支持证监会管辖下的149家期货公司。
CTP接口支持商品期货、股指期货、商品期权、股指期权合约的订阅和程序化交易。
很多券商和软件服务商都采用CTP方式封装接口。


比如像华宝证券的LTS Level兔接口的技术人员也是来自于上期CTP开发团队,需要LTS接口的,对深圳市场股票可以还原全档盘口。
LTS的接入要求是不少于3000万的基金产品户,必须具备私募基金牌照,个人是被拒绝接入的,达到接入条件并需要LTS接口的基金公司,可根据 官网上公示的华宝证券联系方式对接。


还有券商开发的接口不仅采用CTP架构,连命名方式也是以CTP方式命名的。
所以说,学会了CTP接口的开发,就具备了国内很多券商接口的开发能力。


1.2
1.2a
        CTP接口包含了行情接口和交易接口两部分。
        其中实时行情接口的作用是:提供实时行情,包括商品期货、股指期货、商品期权、股指期权 这四类合约行情的自由订阅。
        但需要注意的是交易所是不提供历史数据的,
        历史数据则需要自己自己这个通过接收实时行情后进行存储和维护。

1.2b
        当然有人会问,那些商业软件都有历史数据啊,
        那是因为软件服务商会自己维护一套历史数据给自己的客户调用。
        关于维护历史数据内容,我们会再后面的章节进行讲解。

1.2c
交易接口的作用是:登录交易账户可做各种交易指令的操作,
比如查询投资者结算结果,查询资金账户、查询持仓明细,查询交易所保证金率,查询报单手续费,成交通知,报单通知等。
交易接口的实盘接入还需要实盘开户,通过技术开发测试,证明CTP开发能力后,才可获得实盘账户的穿透式监管授权码。


1.2d
        此外, CTP接口是基于C++的原生api,而对JAVA、Python、C#等语言可封装成CTP框架,
        但这些编程语言的框架的本质还是通过调用原生C++ api。
        这些框架都不是由上期提供的,而是第三方封装的。

1.2e
        图中是CTP接口的架构图。
        从图中看有点复杂,  对我们普通的交易爱好者而言,  一般采用的是CTP的直连模式,  而不是中继模式。
        所以不管是在后面章节介绍的申请穿透式授权码部分内容,还是开发程序化部分内容都按直连模式来处理。
        所谓直连模式,就是直接连接期货公司的CTP服务器。对软件商而言可以选择直连模式也可以选择中继模式。




2.1
   我们再来谈一下:通过开发CTP接口实现程序化交易 ,需要包含以下部分工作:
   步骤1 CTP编程功能调试。
   步骤2 历史数据采集存储、清洗。
   步骤3 策略研发、回测。
   步骤4 量化策略实盘运行。
   步骤5 维护策略启动、关闭、运行、参数更新、节假日平仓。
   步骤6 采用减小滑点的措施。
   步骤7 策略组合、业绩归因。
2.2
   虽然存在步骤编号,但同时需要注意,以上步骤并不是严格按顺序完成的,而是一个循序渐进、交叉改进的过程。

   下面我们来依次详细解释一下各个步骤吧。
步骤1, CTP编程功能调试。 第一步就是选择合适的编程语言和CTP框架,来实现基本的功能搭建。

2.3
功能搭建过程中,可采用上期的仿真账户进行功能测试,网址是www.simnow.com.cn,需要注意的是, 只能在工作日白天才可访问。
注册账户后,可使用CTP接口登录该仿真账户进行模拟交易,仿真账户和实盘交易交易时间一致。
SIMNOW提供各种交易软件,比如快期等等,方便登录模拟账户对程序化交易产生的持仓和交易记录结果进行查看。
上期的官网也和SIMNOW是同样的情况,只能在工作日白天才可访问

2.4
比如说,如何连接CTP服务器,如何订阅行情,如何通过穿透式认证,如何登陆交易账户,如何报单,如何查询交易账户可用资金,
如何查询持仓,如何区分今仓昨仓,如何做资金管理,如何调用策略模块,如何解决多策略的各自仓位的区分,如何存储历史数据,
这些都属于功能开发调试部分的内容。


2.5
步骤2,历史数据采集存储和清洗
需要在量化回测之前准备好历史数据, 工作内容包括数据采集存储、清洗。
这里推荐一款免费的CTP TICK数据采集软件,可以从 下载,这款软件提供了CTP TICK数据的采集功能,可以自行部署采集服务,可以将全市场的TICK数据采集至本地硬盘。同时网站还提供了过去几年的历史数据通过网盘下载。
数据存储采用格式是后缀为.csv文本格式。

2.6
为什么不采用数据库存储TICK数据呢?
这是由于普通的关系型数据库以及内存数据库都不是为存储时间序列数据设计的,像行情这种数据一般是一次性写入,不会再插入新的数据,所以需要比数据库更紧凑的保存在硬盘上。而一般关系型数据库和内存数据库为了方便插入记录,存储数据内部有大量冗余空间,而且不连续。那么读取的IO性能不高,存储空间占用很大。

2.7
根据测试,文本方式存储占用存储空间只有关系型数据库的1/5,如果设置为Windows系统下NTFS文件夹压缩属性的话,文本方式存储CTP行情数据占用存储空间只有关系型数据库的1/25左右。
在单机环境下测试,从文本文件读取行情速度比从关系型数据库读取高出2个数量级。
用文件存储是一个更好的选择,事实上很多知名的股票软件公司都采用文件存储行情数据的。

2.8
采用文本格式存储行情数据,不仅实现了更小的磁盘空间占用, 还降低了读写数据时IOPS的占用,而且提高了读取性能 ,也同时降低了因为磁盘故障导致数据错误的可能。
在金融量化交易行业,除了采用csv这种文本文件存储行情数据,还常采用HDF5格式存储行情数据。

2.9
步骤3 策略研发、量化回测。
量化回测是指以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略,极大地减少了投资者情绪波动的影响,避免在市场极度狂热或悲观的情况下作出非理性的投资决策。

2.10a
步骤4 量化策略实盘运行。

2.10b
步骤5 维护策略启动、关闭、运行、参数更新、节假日平仓。
交易系统应用的有效性受到后期维护工作质量的影响。朋友们都知道,市场是一直都在发生变化的,并且这种变化存在着很大的不稳定性。但是程序化交易系统是着眼于当下的市场行情设立的交易准则。所以当市场行情发生波动较大的状况的时候就会造成系统失效。所以需要维护人员在判断策略失效时停用策略或参数更新的工作,遇到节假日还需要做人工清盘的工作。

2.11
步骤6 采用减小滑点的措施。
具体到实际的交易中如何减小程序化交易滑点的影响?主要有3类优化方向:增大交易周期、算法交易、即日内择时、降低网络延迟。
首先,各位可以加大程序化交易的级别。如果一个大级别的模型是平均盈利70点,平均亏损40点,而小级别是平均盈利5点,平均亏损2点,在实际交易中前者一定比后者有效的多,因为滑点的尺度,和平均盈亏点数,不在一个数量级。

2.12
此外,还要想尽一切办法,尽可能降低网络延时。 市场行情的波动我们是无法左右的,但是我们能把控网络延迟时间。交易者一定要清楚,在电脑上看到的行情,是重播而不是直播,而程序根据这一行情下发的指令,中间也需要传递的时间,才能生效。所以行情波动速度大以及网络延迟严重,会加大滑点的影响。而这一影响,其实对小周期交易级别甚至会产生颠覆性的结果。

2.13
最后一个减小程序化交易滑点影响的有效措施是,避免在行情波动大的时间点做单,即日内择时。此外在节假日 ,还要回避特定事件。在重大事件发布前后,最好不要做单。很多交易者在数据公布前15分钟全部清仓。 各位交易者惹不起可以躲得起, 只要不持仓,那么行情波动再大也是毫无影响的。


2.14
步骤7 策略组合和业绩归因
在收益相同的情况下,回撤越小,则盈利能力越强,剩下的只是杠杆的不同。多策略组合通过降低回测,可以大幅提升盈利能力。
即使风格相似、收益表现相似的组合,其收益来源也可能不尽相同,通过业绩归因,能够更加清楚组合的收益究竟来源于什么,进而知道这种获取超额收益的能力是否能够持续,也能够明白组合发生剧烈波动的原因,从而改进策略。



5.8
SimNow仿真账户和实盘账户成交机制的区别。
1. 成交机制不同。
模拟账户采用对手价成交,实盘在盘中撮合成交。
2.模拟行情比实盘行情慢几十秒,因采用模拟行情同时采用模拟交易,所以对信号和盈亏不会产生实质影响。

5.9
3.资金容量对滑点的影响。
模拟账户成交不需要考虑资金容量导致的滑点,实盘账户在交易时因为会影响盘口,可能会导致滑点产生。
4.模拟行情除了和实盘一致的行情服务以外,还提供了24小时服务器进行测试,但不提供结算,适合用作CTP开发时的功能测试。





C15.png
C14.png
VNPYWEB1.png
VNPYWEB2.png
已有 2 人评分热心指数 收起 理由
dennis8797 + 1 观点有启发
我的素质低 + 3 精彩帖子

总评分: 热心指数 + 4   查看全部评分

stata SPSS
wdgwz 在职认证  发表于 2018-7-2 13:59:54 |显示全部楼层



目前国内量化系统还不成熟,和国外的系统还差很远,国内的平台还有很大提升空间,如果都像某NPY那样,用谎言低于新的东西被攻击和封杀,那样有悖于开源精神, 如果整个量化行业都是这个风气,大家也就别希望有更好的产品出现了。

没有争论,就没有提高,但是争论的前提不能像之前vnpy那样那样做人身攻击,也不能而已误导和诽谤。

我们看看2017年4月份左右VN.PY作者为攻击比自己性能更好QUICKLIB说出了6个谎言 https://zhuanlan.zhihu.com/p/27243838

既然VNPY能捏造6个谎言攻击Quicklib 的产品和恶意诽谤Quicklib作者 ,那么Quicklib就能说清楚事实,说VNPY架构的缺陷的道理,对VNPY是害处还是好处,取决于VNPY对缺陷的处理态度。如果VNPY是正视,那么我就是在帮VNPY,如果VNPY不正视,那是它自己不负责任。

下面只看架构理论上的道理,不用关注VNPY原始作者个人对错


选VNPY的逻辑, python较为容易学习嘛,python初学者一看,原来python也可以搞底层 这门选修课成了加分项?完全可以用 C++搞底层 吧?是不是有点违背选python的初衷呢?

在这个行业,相信大家不止一个人也不止一次的说过类似的话:"一个成熟的系统不会是由一门语言去包打天下的”。

python不适合开发大项目,C++可以开发大项目。你拿PYTHON做什么大型交易系统嘛。

VNPY 是把python缺点美化成了优点。

为什么说纯python框架搞底层性能不行?


VNPY 量化交易上的性能对比分析​
https://zhuanlan.zhihu.com/p/27243838

2.长久以来,Quicklib大量发文也只是阐述事情经过的事实。

3.基于VN.PY作者所说,Quicklib蹭VNPY热度的说法,我想说的是目前Quicklib几个群达到2500人,根本不需要蹭任何产品的热度;

4.既然VN.PY认为Quicklib不足为惧,蹭了它的热度,那VNPY为何要首先攻击Quicklib在先?

5.本次只是从理论的高度去阐述VNPY不适合生产环境,并非对VNPY作者进行人身攻击。

因为合理的技术探讨会促使开发出更好的产品。

和VNPY比起来,为什么有其它的程序化交易框架架构可以做到了底层C++驱动的性能,不仅可以实现绕过GIL全局锁,甚至在底层还可以实现C++无锁队列,并在python应用层调用较为简单,性能更好很多。

这不是PYTHON本身的问题,而是VNPY的python框架架构的问题!

Quicklib秉承的是底层用C++驱动,采用C++封装好方法,并提供给python调用,采用异步IO, 通过底层驱动,用较短的代码路径迅速进入数据高效处理环节。

http://www.pythonpai.com


期货,A股等API程序化量化开发技术交流​
www.pythonpai.com图标


农夫由于付不起养骡子的成本,于是决定用狗拉磨,于是狗变成了神狗,不仅要看家,还要拉磨。

农夫于是对对周围的邻居们夸耀说自己养了一条神狗。有邻居l前来询问如何培养神狗,于是农夫写了一本厚厚的小册子,教学各种培训神狗的方法。甚至开了LIVE讲座,收取350元培训费用。

有人开始用这小册子开班授课教大家如何培育,既可以看门,又可以拉磨的神狗。




由于大家都在讲如何培育神狗,渐渐的趋之若鹜。

很多做神狗培育课程的培训师还赚了一笔小钱,这样大家都赚了小钱。

但大家都没有用神狗拉磨提高正常的生产效率而赚钱!

突然有人问农夫:你为什么不养一头骡子?

这真是狗的悲哀。

222.jpg


在量化行业,这几年的风向在vnpy的引领下都是去养“神狗”,既要搞底层,还要搞策略。运行效率降低10倍以上,导致大家花了大量时间最后发现根本不适合生产环境。

有人安慰自己,本来python效率就不高嘛。 这说法只是横向对比,狗和骡子比起来确实不适合拉磨。

但请注意,因为这个神狗长期疲惫,积劳成疾,既不能拉磨也不能看门了。连普通狗都不如了 (纵向对比)。



这是python的悲哀,也是量化人的悲哀!

当然python做策略开发部分是非常适合的,调用各种C++开发的库做i数据分析和数据处理,一点也不低效,但做底层那就效率低效了。

所以最好的方式是: 用python做策略,用C++开发底层。

养一头骡子拉磨,养一条狗看门。对测量师来说,不用把职业生涯精力浪费在底层处理上。

****把量化交易中最后一环(策略开发)交给python,这需要C++的异步驱动支持python的策略开发。

关于C++开发底层异步IO驱动python

量化林:Quicklib采用的异步IO架构的特点​
zhuanlan.zhihu.com图标

当然也有人说, VN.PY至少在开源和推动python量化做了贡献啊!

开源和不开源都是为了利益,开源可能是因为为了普及,也可能是为了向赚培训的钱和LIVE的钱。

需求引导技术,需求的出现是必然的,而用哪一种技术,哪一种语言,哪一种框架实现量化确实不确定的。

没有python,也会有xython出现,zython出现。

没有ANPY,也会有BNPY,也会有CNPY出现。

你认为VN.PY贡献就是普及了python还是普及了量化?

可能有一点用,但最重要的原因是因为你为了学习量化付出了时间,无论是你看视频,还是看书,都会有收获的,而不是因为任何语言或者任何框架。
111.jpg
回复

使用道具 举报

wdgwz 在职认证  发表于 2018-7-2 14:00:30 |显示全部楼层
当然Quicklib还有一系列工具,比如资金曲线分时图工具,按每10秒取样一次,绘制资金曲线分时图,可以很方便来进行交易策略的调整,还有全市场行情采集工具,以及回播行情API,接入分布式计算可以实现TICK基本的高效回测,并支持实盘的数据和历史数据的结合。

1是可以用来尽心基于TICK的回测,2是可以用来进行降低交易系统的初始化时间,本地局域网维护行情历史数据,非常简单便利。

CTP账户资金曲线工具使用说明 一、本工具用于绘制资金曲线分时图。 每10s查询一次账户的动态权益,可用资金,静态权益(前一天结算权益,当天不会变化) 盈亏比例计算公式为: 盈亏比例 = 100*(动态权益-静态权益)/静态权益)% 二、 通过修改配置文件setting.ini信息,运行后自动按配置文件中的账户登录,并保持资金变化信息到Data\日期\账户.csv 文件中; 双击列表中的账户,可以打开当天资金曲线分时图。 三、设置您的CTP账户,可支持模拟和实盘账户,目前只支持1个账户,未来会支持多账户资金曲线数据存储和绘制。

以下是Quicklib资金曲线工具,对高频交易的资金曲线进行测试https://pic4.zhimg.com/v2-ae0a0dfb1892d17b4fb6bfc250f71e97_b.jpg

CTP账户资金曲线工具 下载 http://www.quicklib.cn/download/Quicklib_AcountCurve_windows.rar

Quicklib CTP 期货行情库交易库下载 http://www.quicklib.cn/download/Quicklib_ctp_furure_windows.rar

Quicklib CTP2 A股行情库 http://www.quicklib.cn/download/Quicklib_ctp2_Ashare_windows.rar

Quicklib MOM模式 博易资管交易库 http://www.quicklib.cn/download/Quicklib_BoyiMom_furure_windows.rar

(用于接入资管投顾系统,MOM模式可实现私募进行投顾的选拔考核,并通过自己的风控系统接入实盘)

期货全品种行情收集工具下载 http://www.quicklib.cn/download/Quicklib_DataCollect_Windows.rar 期货行情重播API作为回测客户端(对应本地的期货全品种行情收集工具作为服务器)

https://pic3.zhimg.com/v2-d3c7328a598a68c4100a2d18c02d6952_b.jpg

分布式计算例子,可用于回测 http://www.quicklib.cn/download/DistributedComputing

Quicklib 监控器库(预警、监控、交易信号数据复制、跟单) http://www.quicklib.cn/download/Quicklib_Monitor&CtpExample_windows

http://www.quicklib.cn/download/Quicklib_Monitor_windows.rar


这是我作为Quicklib作者开发的产品

http://www.kucps.com

程序主界面,基于C++开发的,并封装了子账户API接口
回复

使用道具 举报

wdgwz 在职认证  发表于 2018-7-2 14:00:47 |显示全部楼层
回复

使用道具 举报

wdd3 发表于 2018-10-4 10:05:46 |显示全部楼层
根据金融圈的网友反馈,这个说法在网络并得到至少超过5名金融行业网友认可,原来知乎VNPY和Quicklib对怂事件是VNPY的阴谋!!Quicklib是受害者。

事实是,2017.4的事件不仅得的VNPY作者团队支持,而且大量转发这个不实的文章,VNPY作者用不实的谎言亲自发文攻击Quicklib。
按VNPY作者说的什么需要去蹭热度,这也是大家普遍观点,事实上,这本就是VNPY的谎言之一,网络上已经有人证明了,这是VN.PY策划的阴谋。
我后来看到群友的说法的时候,倒吸了一口凉气,并心里暗暗的骂了一声无耻!

看这篇文章,这是VNPY作者在社区和知乎多次发表10篇以上文章对Quicklib产品和Quicklib原始作者进行人身攻击

这次VNPY一遍用至少6个谎言继续攻击,将攻击Quicklib产品以及对Quicklib原始作者的谎言的文章放在网上,一边装的若无其事,如图:

这是VNPY作者一边心口不一,一边将文章挂在百度第一页对Quicklib产品用6个谎言进行攻击,并对Quicklib进行挖苦和贬低 诽谤长达数千字的文章。

搞Quicklib是因为同属PYTHON ,又是后来者,性能对VNPY有明显优势,扩展性也会好, 有威胁;VNPY捧TUSHARE等,可能是VNPY暂时做不了全部环节, 还要沾别的产品的光。VNPY的文章从来就不是公道的 。
但无论如何,VN.PY不该用下三滥手段用6个谎言攻击Quicklib和作者本人。
刚看到,原来是VN.PY的阴谋,我刚刚明白为什么有人说Quicklib是VN.PY炒作的影子,炒完了,再厚颜无耻的说Quicklib在碰瓷?
让我想起了,在南京大屠杀几十年后,日本人曾经不承认南京大屠杀的事实。
圈里人都知道金融民工和VNPY作者关系很熟,这个文章包括金融民工在VNPY社区撰写,并且得到VNPY作者转发到知乎就是一场VNPY的阴谋!!!!!反过来却说Quicklib在碰瓷?
对VNPY作者我像说的是,一边不声不响的用谎言黑产品,黑作者,一边说不理会了,做**还要立牌坊。
真是让我想起了道貌岸然这个词!!
据知情人说,VNPY名气大适合培训教学,因为坑太多了。
回复

使用道具 举报

wdgwz 在职认证  发表于 2018-10-16 09:31:33 |显示全部楼层
定量投资和传统的定性投资本质上来说是相同的,二者都是基于市场非有效或弱有效的理论基础。两者的区别在于定量投资管理是“定性思想的量化应用”,更加强调数据。量化交易具有以下几个方面的特点:
1、纪律性。根据模型的运行结果进行决策,而不是凭感觉。纪律性既可以克制人性中贪婪、恐惧和侥幸心理等弱点,也可以克服认知偏差,且可跟踪。
2、系统性。具体表现为“三多”。一是多层次,包括在大类资产配置、行业选择、精选具体资产三个层次上都有模型;二是多角度,定量投资的核心思想包括宏观周期、市场结构、估值、成长、盈利质量、分析师盈利预测、市场情绪等多个角度;三是多数据,即对海量数据的处理。
3、套利思想。定量投资通过全面、系统性的扫描捕捉错误定价、错误估值带来的机会,从而发现估值洼地,并通过买入低估资产、卖出高估资产而获利。
4、概率取胜。一是定量投资不断从历史数据中挖掘有望重复的规律并加以利用;二是依靠组合资产取胜,而不是单个资产取胜。
回复

使用道具 举报

wdgwz 在职认证  发表于 2018-10-16 09:32:14 |显示全部楼层
wdgwz 发表于 2018-10-16 09:31
定量投资和传统的定性投资本质上来说是相同的,二者都是基于市场非有效或弱有效的理论基础。两者的区别在于 ...
量化交易是指以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略,极大地减少了投资者情绪波动的影响,避免在市场极度狂热或悲观的情况下作出非理性的投资决策 。
回复

使用道具 举报

wdgwz 在职认证  发表于 2018-10-16 09:33:39 |显示全部楼层
看起和AlgoTrader基本没差太多对吧? 但是呢仔细看一下, 还是有一些区别的, 在vnpy里面:

    VNPY界面与逻辑耦合到一起
     VNPYIO(数据落地的mango db)和逻辑耦合到一起

这两点异同其实是会照成 VNPY比较大的性能问题的 ,

经过实测,几个朋友都发现VNPY不适合实盘交易的

回复

使用道具 举报

wdgwz 在职认证  发表于 2018-10-23 15:15:31 |显示全部楼层
VNNPY适合培训,不适合实盘
性能架构有缺陷

用python搞底层是比较讨好而已,但只搞python的人,并不知道性能为何物。

误导PYTHON的方向

农夫由于付不起养骡子的成本,于是决定用狗拉磨,于是狗变成了神狗,不仅要看家,还要拉磨。 农夫于是对对周围的邻居们夸耀说自己养了一条神狗。有邻居l前来询问如何培养神狗,于是农夫写了一本厚厚的小册子,教学各种培训神狗的方法。甚至开了LIVE讲座,收取350元培训费用。 有人开始用这小册子开班授课教大家如何培育,既可以看门,又可以拉磨的神狗。 由于大家都在讲如何培育神狗,渐渐的趋之若鹜。 很多做神狗培育课程的培训师还赚了一笔小钱,这样大家都赚了小钱。 但大家都没有用神狗拉磨提高正常的生产效率而赚钱! 突然有人问农夫:你为什么不养一头骡子? 这真是狗的悲哀。 在量化行业,这几年的风向在vnpy的引领下都是去养“神狗”,既要搞底层,还要搞策略。运行效率降低10倍以上,导致大家花了大量时间最后发现根本不适合生产环境。 有人安慰自己,本来python效率就不高嘛。 这说法只是横向对比,狗和骡子比起来确实不适合拉磨。 但请注意,因为这个神狗长期疲惫,积劳成疾,既不能拉磨也不能看门了。连普通狗都不如了 (纵向对比)。 这是python的悲哀,也是量化人的悲哀! 当然python做策略开发部分是非常适合的,调用各种C++开发的库做i数据分析和数据处理,一点也不低效,但做底层那就效率低效了。 所以最好的方式是: 用python做策略,用C++开发底层。 养一头骡子拉磨,养一条狗看门。 对策略师来说,不应该把职业生涯精力浪费在底层处理上。 把量化交易中最后一环(策略开发)交给python,这需要C++的异步驱动支持python的策略开发。
回复

使用道具 举报

wangyong8935 发表于 2018-10-26 13:02:56 |显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2021-4-20 03:57