有没有大神用python开发或quickfix协议的

Python07

有没有大神用python开发或quickfix协议的,第1张

QuickFIX/J 是实现了FIX协议所有版本及其功能的开源软件,100%使用JAVA实现。[2]

QuickFixJ代码功能主要有两大部分,一部分是Fix协议数据的解析,另外一部分是客户端跟服务器端建立连接并维持回话,传输数据。

QuickFix/J传输功能部分

QuickFix/J的连接管理和传输功能是基于MINA[3] 框架实现的。MINA是Apache旗下的一个网络应用框架,能够帮助大家轻松的开发高性能、高扩展性的网络程序。它使用NIO在传输协议(比如TCP/IP,UDP/IP)之上提供了抽象的、事件驱动的、异步处理的API。

1. 如果还需要Deep Learning方面的东西的话,可以考虑Theano或者Keras。这两个东西可能会用在分析新闻数据方面。不过不是很推荐使用这类方法去做量化模型,因为计算量实在是太大,成本很高。

2. 交易框架方面,除了vn.py,还推荐PyAlgoTrade框架,github上可以搜到。私以为这个框架比vn.py牛逼太多了,毕竟是一个在金融IT领域混迹近20年的老妖的作品,架构设计不是一般的优秀。

3. 国内的话,ricequant是个不错的选择,虽然使用的是Java,但是团队我见过,都是做金融IT出身的,基本上都有7、8年以上经验,底层功底非常扎实,做事情都很靠谱。现在他们也在考虑把SDK扩展到Python这边。

4. 国内的行情和交易接口,使用的是自己的协议(比如CTP接口使用的是FTD协议),而不是国际上广泛使用的FIX协议,并且都不开源。如果需要连接行情,还需要考虑将接口SDK为python封装一下。(修改:评论中有人提到很多券商也开放了FIX接口,不过似乎是在内网使用)

5. 有人谈到数据库了,这里我也说一下,对于高频tick级别的数据,其量级可以达到每天TB级别,普通的关系数据库是扛不住的。如果试图使用传统的关系数据库,比如Oracle之类的可以省省了。对付这种级别的数据,采用文件系统+内存索引会更好。不过这种场景,一般也就是机构里面能碰到了,个人quant可以不用考虑。

import random

count = input("Ask a question:")

if count == 1:

    print("It is certain")

if count == 2:

    print("It is decidedly so")

if count == 3:

    print("Without a doubt")

    

if count == 4:

    print("Yes fefinitely")

if count == 5:

    print("You may rely on it")

if count == 6:

    print("As i see it, yes")

if count == 7:

    print("Most likely")

if count == 8:

    print("Outlook good")

if count == 9:

    print("Yes")

if count == 10:

    print("Signs point to yes")

if count == 11:

    print("Reply hazy try again")

if count == 12:

    print("Ask again later")

if count == 13:

    print("Better not tell you now")

if count == 14:

    print("Cannot predict now")

if count == 15:

    print("Concentrate and ask again")

if count == 16:

    print("Don't count on it")

if count == 17:

    print("My reply is no")

if count == 18:

     print("My sources say no")

     

if count == 19:

    print("Outlook not so good")

if count == 20:

    print("Very doubtful")

count=input("press enter to exit")