个人合法的程序化量化交易有哪些?

发布于: 修改于:雪球转发:8回复:20喜欢:85

自从2015年股灾期间,证监会限制了个人使用程序化下单后,市场上合法的程序化下单的接口或者软件基本消失了,其门槛提升都合格投资者。当然现在涌现了很多入金1-2w就可以开通的券商。

然后流行部分破解通达信DLL的下单的外挂tradeX, 模拟键盘操作的easytrader,还有破解券商网页版交易接口API等等。

但这类方法稳定性有一定的限制,行情获取也慢,且不合法。但由于没有其他正规渠道,很多人只好忍受着种种的缺陷,依然可以完成大部分的自动化交易的任务。

条件单(渣渣入门级)

最近几年,条件单兴起,解放了不人的双手。可以不再盯盘,就可以让券商软件app在券商服务器按照设定的条件自动交易。最初的华宝证券,到后来基本是券商必备的功能。

也从最初的固定价格,网格,按照涨跌幅等条件,升级到现在的回落卖出,拐点卖出等更为高级的功能。

但可自定义的参数,条件非常少,并且很多不同 品种有其特定的因子,比如ETF,LOF有溢价率这样的数据,可转债有YTM,溢价率,规模等更多种参数,条件单显然满足不够来了。

Ptrade, QMT

这两个软件是由第三方的企业开发,券商采购接入其交易系统,提供给满足条件的个人投资者使用。Ptrade是由恒生电子开发,接口文档(网页链接),而QMT则由迅投开发。二者均支持python语言,QMT则可以多一个选项,使用VB语言编写策略,不过VB策略下只能买卖单股标的。

Ptrade和QMT还是有很大的区别,其中一个是Ptrade是运行在券商服务器,个人用户只是在软件上面编写程序,最后程序是加密上传到券商服务器,然后在券商服务器进行运算,获取行情,下单。

而QMT则是地地道道的在你的电脑上运行,他从券商服务器或者迅投服务器拉取行情到本地,然后你的程序进行分析,下单,把下单指令再发到券商服务器。

计算机基础的同学一定知道,目前计算机系统的IO的速度要远远低于CPU的执行频率,所以才有了一级缓存,二级缓存,内存,SSD硬盘,其速度呈几何递减。然后数据经过网络IO这个媒介进行不同计算机的通信,在整个传输链条里面,最拖后腿的就是网络IO了,一般ms级别的传输级已经是相当快的了,但计算机CPU的速度已经是到了纳秒级的了。

所以在本地获取行情的整体方案,交易速度要比从券商服务器直接拉取行情要慢一些的。以至于有些极致的交易机构把机房设置交易所机房附近的线路上。

实际运行框架,或者说模式,Ptrade和QMT都非常类似,不同的是接口函数。

Ptrade API接口文档:

笔者实盘运行的小市值策略:

QMT API 接口文档

QMT编写策略界面

Ptrade编写策略界面

并且Ptrade和QMT都支持回测,最小可以到分钟级别的。并且实盘的话,它们支持tick秒级别的下单。

回测和实盘交易的品种都有股票,ETF LOF 基金,可转债,逆回购等。

默认情况下,ptrade和qmt获取的行情是Level1的,也就是每3秒更新一次行情。 假如你在1-3秒中间内不断去拉去行情,实际行情数据都是一样,下一次数据要等3s后才会更新一次。

需要更细粒度的数据, 需要Level2的支持,目前笔者接触的券商Ptrade均不支持Level2, QMT里面只有个别几家才支持Level2, 有了Level2 就有逐笔交易订阅事件,只要成交事件触发了,就会主动调用你的程序,不用等到3s后,你去拉取数据。Leve2的逐笔事件订阅是主动通知并回调你的函数。不过由于这个数据耗费极大,目前QMT支持的订阅股票数上限是500只。

除了上述的主要编写代码的量化策略功能外,Ptrade和QMT也提供了一些比较傻瓜式的高级操作。

比如Ptrade的追涨停打板,可转债套利

而QMT这些小功能就比较少。

因为Ptrade是在券商机房,所以正常而言,它是无法访问外部数据,也就是只能使用它内置的数据;而且不能安装python第三方的库(pip install xxxxx), 只能使用它内置的库和固定的版本。

而QMT在本地电脑,所以无论安装python第三方库,还是访问各种数据库,都是极为的方便的。比如你本地或者云服务器部署了MySQL,MongoDB,存储了各种财经股票数据,QMT就可以很方便无阻地访问,或者只是你准备的一个excel文件,你的QMT程序也可以很方便地读取。

目前对于开通Ptrade和QMT的量化交易实盘的门槛,普遍已经降到很低了,甚至可以直接开户就可以开通量化功能。但一些大的头部券商可能还是会有硬性限制,比如要求开通者需要有合格投资者证等。

目前有不少可以开通的券商,入金1-2w就可以的开通的了。

后续发布的相关文章:

券商量化交易接口 QMT, iQuant, miniQMT的区别

@今日话题 $沪深300(SZ399300)$ $上证指数(SH000001)$ $创业板指(SZ399006)$ 

转载前请联系,雪球版权所有。

全部讨论

谢啦

2023-11-11 11:18

您好,请问哪个券商的qmt门槛比较低,交易稳定

2023-05-11 22:26

都是用券商的量化程序策略么?有自己编程做策略的了。

2023-04-04 08:55

好文

兄台可知道哪个券商支持level2?国金我试过了不支持

2023-02-10 12:48

mark

2023-02-07 11:34

你好,请问一下,什么券商可以开户就可以开通量化功能

2023-02-07 07:01

马克

2023-02-07 01:24

兄台你用Ptrader还是QMT?你是怎么选的?