基于Python的量化分析平台及数据接口

Discussion in 'Python & Quantopian' started by Wenyan, Jan 19, 2016.

  1. 国际的,目前知名度最大的是Quantopian,国内三家或多或少承袭于它。
     
  2. 鉴于Quantopian影响较大,在本版版面名称里加上它。恒生量化赢家紧接着来。
     
  3. 不建议这么做,Quantopian开始往以色列扩张,并没有想往中国走的意思,所以我的建议就是我们中国这几家最好,也最合适~
     
  4. 这家我之前有提过,后面关掉了,中国人在开源这两个字面前的做法的确有点令人汗颜,据开发者说很多人都是直接吃现成而没有人去一起做,这让他感觉有点不爽。。
     
  5. 关于版面名称加上Quantopian的考虑:一是IB盈透的客户不少对它比较熟悉,因为它的下单是接盈透的,海洋这里至少有几百位在盈透开过户吧,其中曾为海洋贡献推介费的有200多位(这意味着他们不仅开户时填了海洋的推介号,而且已达到一定数量的交易门槛),所以说在国内有可能讨论起来Quantopian的地方非海洋莫属;二是它的发展模式很有特色,而海洋的管理团队在07年左右曾探讨过类似的想法,包括竞赛、托管、代码和资金双面众筹(那时街面上还没有croud funding、croud sourcing这些词)、走进校园等等,后来个别成员还分别做过一些实践,如neo_cn的竞赛、kuhasu的小机构扶持计划、盈透的校园计划等,因此我们也想继续跟进看看Quantopian后面怎么玩;三是近两年国内冒出来的Python平台风起云涌,而标杆就是Quantopian,对于平台开发者以至普通用户来说,不同程度地了解一下Quantopian应是很有益处的。基于以上三方面的考虑,所以在版面名称里加上它,希望引起海友们更多的关注,也让搜索引擎更多收录和提升有关关键词排名。
     
  6. 分享几个对Quantopian的信息:
    1 Quantopian 能提供给投资者管理的资金规模挺小的。
    2 Quantopian 往以色列扩张
    3 Quantopian B轮融资之后没有声音,目前比较新锐的对手是Quantiacs ,但Quantiacs是直接上传交易系统。
    4 Quantopian是纯python的平台,国内三家新锐Uqer, Joinquant, Ricequant,都是用python,这没错,但是显然底层没有加速在实际回测速度方面是很难满意。
    5 Quantopian 在美国的知名度并不是很大,最近开始做一些线下的workshop, 比如在纽约,波士顿等地,和系列讲座,其实最终目的还是要营建一个社区,这和国内的氛围,有一定的不同,国内氛围最好的,我现在认为,还是海洋。
    6 Quantopian 即便到现在也依然有各种各样的BUG,其实我个人把它玩坏过很多次,个人观点,quantopian没有中国的数据,这种平台的学习成本其实还是有的,按照kuhasu大侠的说法,还是专注策略吧。
     
  7. 谢谢分享!
    看来似乎回测功能是Python类平台的一个硬伤
    而未经严谨回测的系统谁敢用呢?
     
  8. 云回测可行否?
     
  9. 一起来侃一下“硬伤”:)

    先从传统量化平台的两大类别说起:
    第一类,专为交易而设计的平台,通常是商业软件,譬如:TradeStation, AmiBroker, Wealth-Lab, TradeBlazer等
    第二类,成熟的科学计算(包括统计分析)环境,有商业的也有开源免费的:譬如:Matlab, R, SciPy(基于Python)等

    成熟的科学计算环境通常有以下共通之处:
    - 交互式编程环境
    - 绘图功能
    - 快速矩阵运算(向量化运算)
    - 能方便地使用科学计算及统计分析中的常用模型
    - 完备的编程语言(能访问IO,有高级编程语言特性等)

    另外补充一下Python与SciPy的区别和联系:
    - Python是一门通用编程语言,与Java, C#, C++, Haskell等属同一范畴。Python本身不是一个科学计算环境,这方面与Matlab、R之类的平台是完全不同的。
    - SciPy是基于Python的一个科学计算环境,由一些核心工具和库程序构成,如IPython,NumPy,Matplotlib,pandas等。SciPy这一整套东西所搭建出来的环境与Matlab、R之类的平台就类似很多了。

    说完传统量化平台的两大类别后,再来看Quantopian等平台,它们其实是把这两种类型融合起来了,其主要特点是:
    - 专为交易而设计的(具有第一类平台的特征)
    - 策略开发语言为Python,可以使用SciPy中的各种工具包(具有第二类平台的特征)
    - 与传统的两类平台相比,它们是Web-based而非Desktop,说得时髦点,是基于“云计算”的,数据和模型都在云端(“云回测”),还可以玩玩社交之类的

    最后,回到类Quantopian平台的“硬伤”:
    - 作为新事物,稳定性及可靠性不足(Bug多,速度慢等)。这点倒是有可能随着时间的推移,用户的增多,而逐渐改善的。所以这个可以不叫“硬伤”,算是目前阶段的“软肋”吧。
    - 云计算虽有种种好处,但模型放在别人的服务器上,总是不太放心。在知识产权无法受到良好保护的社会环境里,问题就更大一些。再者,会不会平台稍微做了点名堂出来后,树大招风,被人黑了,云里所有模型被一锅端,那也是一种顾虑。

    当然,软肋也好,硬伤也罢,毕竟还是给量化交易者们多了一些选择。用不用、怎么用大家可以自主选择嘛:)
     
    liu2728 likes this.
  10. 1 核心就是安全,我写的策略代码不好就罢了,好了怎么办?如果Quantopian是国外的企业可能还有一定的商业道德可以相信,那么国内的呢?
    2 平台的鲁棒性其实是比较难搞定的,以后跑实盘实际上对基础设施要求很高。
    3 维护大量的不同类型的数据需要付出大量的精力和人力,这点只有踩过坑才知道,另外就是还有很多意想不到的问题,比如网页前端可能也会出问题。
    基于这几点的情况就可能是这样一个结论: 一般或者还不错的策略会放上去跑,很好的策略和想法基本是不会放在云平台上公测?如果有信心宁愿自己花钱在部署一个私有云,但就我所知,目前能提供私有云部署服务的好像还只有Ricequant.

    Python 的大优势就在于它是一个很好的胶水,黏合了其他很多东西,实际上处理非结构化数据这方面,我相信matlab是直接跪的,R的话毕竟更多用于研究,而不是用于实战,因为没有Python那么强的灵活性。Pandas 这个包是由大名鼎鼎的AQR里的人开发的,这也奠定了未来python 在金融行业崛起的重要基础,没有pandas,其实很多类excel操作就无法完成,而类excel操作一旦能够完成,又能凭借强大的兼容性去拓展延伸,作为初期prototype 不断迭代开发将会有很惊人的效率。

    多交流
     
  11. 感谢!正在尝试基于python的数据统计测试。