# 量化交易

传统交易软件的作用是,展示行情(报价列表、图表等)、报送订单、接收订单状态变化信息、查询信息、接收查询结果。

一般情况,投机交易都是由行情驱动的。也就是说,我们通过解读交易软件展示的行情决定如何交易,进而通过交易软件的下单功能,将交易标的、买卖方向、数量、价格等意向信息报送到交易所。交易所以时间优先、价格优先为原则集中撮合所有订单信息。我们可以在交易软件上实时看到订单状态的变化,例如订单部分成交、全部成交等。订单成交价格是交易所布的行情依据。

传统主观交易的决策过程是独立于交易软件的。所以主观交易软件的核心功能就是报撤单和展示,包括行情展示和交易信息展示。

量化交易的不同在于强化了产生交易决策过程的逻辑性,弱化人类视觉、思维的实时参与度。所以,以交易决策为目的的展示功能就显得没有那么重要了,以风控为目的的展示另当别论,但是维护信息的能力则变得更重要了。

交易所不接受普通交易者的直接报单,需要期货公司提供通道。所以,我们的交易程序直接打交道的对象其实是期货公司的业务系统。目前,国内四家期货交易都为期货公司提供业务系统,例如上期所的CTP、大商所的飞创、郑商所的易盛、中金所的飞马。其中,使用最广泛是上期CTP。AlgoPlus对接的就是CTP。

上期CTP的官方API使用的是C++语言,对非专业程序员而言开发难度比较大,并不是很友好。Python语言因学习门槛低、开发效率高等特点,在许多领域被广泛的应用,自然也是量化交易员的首选。

让交易员用Python开发量化交易策略,无需关心如何编写C++代码,就是AlgoPlus诞生的意义。

因为使用Cython、ctypes技术,AlgoPlus即满足了低延时要求,又能兼容python的易用性。