教程入门:建立一个完全自动化的交易系统本文是针对初学者讲解如何建立一个基于事件驱动的全自动化交易系统。 首先对于量化交易的初学者,建议读读 Ernie P. Chan的书籍:Quantitative Trading: How to build your own algorithmic trading business,这本书是基础。 量化交易系统可以分为半自动化交易和完全自动化交易两种,半自动化系统适合一个星期有几笔交易,推荐使用 Matlab, R语言, 甚至是Excel,具体建议如下:
下图是半自动化交易框架: 对于完全自动化交易系统,适合你实时下单,可以使用C#语言,QuantConnect也是使用C#,QuantStart 和Quantopian 使用的是Python,HFT更喜欢使用C++,当然Java也很流行。
系统架构在课程Executive Program in Algorithmic Trading 中,会告诉你一个全自动化交易系统的架构以及其中每个组件的特点,见下图: 整个架构分三个部分,Application Server和Exchange,核心是复杂的事件处理引擎,市场数据输入到事件处理引擎,由引擎向交易所发出买卖交易。 下图是来自于 “Algorithmic Trading System Architecture” By: Stuart Gordon Reid: 在系统的界面层使用的是MVC模式和观察者模式,业务层分为数据源层 数据预处理层和智能层以及订单处理层,最后是报表分析层。在数据预处理层,可以使用过滤器等模式进行数据的预先处理,业务核心是CEP事件驱动引擎。
开源系统下面介绍几个开源的交易系统: (1)Quantopian:使用易于学习的Python,能够自由访问很多数据集,有大量社区支持,它是这个领域的市场领导者,它的开源项目是Zipline,这是一个开源的引擎,能够引发在IDE中的backtester,其Github仓库按此。有 Google group讨论组支持。 (2) QuantConnect:它提供开源的算法交易引擎,链接见此:link
|
|
来自: 昵称15931909 > 《python》