Python机器学习与量化交易

1. 量化交易简介
1.1 量化交易的历史

➢ 全球量化交易的发展历史:

  • 量化投资的产生(60年代):1969年,爱德华·索普利用他发明的“科学股票市场系统”(实际上是一种股票权证定价模型),成立了第一个量化投资基金。索普也被称之为量化投资的鼻祖。
  • 量化投资的兴起(70~80年代):1988年,詹姆斯·西蒙斯成立了大奖章基金,从事高频交易和多策略交易。基金成立20多年来收益率达到了年化70%左右,除去报酬后达到40%以上。西蒙斯也因此被称为"量化对冲之王"。[计算机、金融专业和数学等专业]
  • 量化交易的繁荣(90年代):991年,彼得·穆勒发明了alpha系统策略等,开始用计算机+金融数据来设计模型,构建组合。

➢ 国内量化交易的发展历史:

  • 量化投资元年:2010年,沪深300股指期货上市,此时的量化基金终于具备了可行的对冲工具,各种量化投资策略如alpha策略、股指期货套利策略才真正有了大展拳脚的空间,可以说2010年是中国量化投资元年。
  • 量化投资高速发展、多元化发展:2013-2015年股指新政之前可以说是国内量化基金有史以来最风光的一段时期。国内量化投资机构成批涌现,国内量化投资高速发展。

2012年到2016年量化对冲策略管理的资金规模增长了20倍,管理期货策略更是增长了30倍,增长的速度是所有策略中最快的。相比美国量化基金发展历程,中国现在基本处于美国90年代至21世纪之间的阶段。

1.2 什么是量化交易

量化交易(量化投资)是借助现代统计学和数学(机器学习)的方法,利用计算机技术来进行交易的证券投资方式。学习量化交易,我们需要掌握:金融策略、挖掘技术和计算机技术。

量化交易从庞大的历史数据中海选能够带来超额收益的多种“大概率”事件以指定策略,用数量模型验证及固化这些规律和策略,然后严格执行已固化的策略来指导,以求获得可持续的、稳定且高于平均收益的超额回报。

1.3 量化交易分类

Python机器学习与量化交易

  • 趋势性交易:适合一些主观交易的高手,用技术指标作为辅助工具在市场中如鱼得水的,但如果只用各种技术指标或指标组合作为核心算法构建模型,从未见过能长期盈利的。一般也会做一些量化分析操作,使用编程如 Python/matlab 。适合金融专业出生的,对财务、金融市场非常了解,如交易员、基金经理等。
  • 市场中性: 在任何市场环境下风险更低,收益稳定性更高,资金容量更大。适合一些量化交易者,发现市场中的alpha因子赚取额外收益,例如股票与股指期货的对冲策略等。会做一些量化分析操作,使用编程如 Python/matlab。适合计算机出生,擅长编程、机器学习、数据挖掘技术(量化分析),真正的量化交易人员
  • 高频交易:在极短的时间内频繁买进卖出,完成多次大量的交易,此类交易方式对硬件系统以及市场环境的要求极高,所以只有在成熟市场中的专业机构才会得到应用。适合一些算法高手,使用C/C++ 编程语言去进行算法交易,对软硬件条件要求比较高
1.4 金融产品及衍生品的投资策略
  • 股票:市场中性投资占大多数、涉及少量的趋势性交易
  • 期货:趋势性策略占大多数(期货不属于金融产品)
1.5 量化交易的优势
  • 严格的纪律性
  • 完备的系统性:首先表现在多层次,包括在大类资产配置、行业选择、精选个股三个层次上我们都有模型;其次是多角度,量化交易的核心投资思想包括宏观周期、市场结构、估值、成长、盈利质量、分析师盈利预测、市场情绪等多个角度;再者就是多数据,就是海量数据的处理。人脑处理信息的能力是有限的,当一个资本市场只有100只股票,这对定性投资基金经理是有优势的,他可以深刻分析这100家公司。但在一个很大的资本市场,比如有成千上万只股票的时候,强大的定量化交易的信息处理能力能反映它的优势,能捕捉更多的投资机会,拓展更大的投资机会。
  • 数学模型取胜:股票实际操作过程中,运用概率分析,提高买卖成功的概率
  • 股票的量化投资可以说是一种价值投资(价值投资是很多量化公司、基金公司所推崇的),我们所做的也是去挖掘市场中的价值股票,而并非去预测股票涨跌来进行投资等等(至少目前机构不会采取这种方式指导投资),这需要大家明确的一个问题。其实,由于中国散户太多,有些公司本身公司不怎么样,但股票也涨得很厉害。美国的量化投资稳定一些,主要是因为美国几乎没有什么个人投资者,他们都是找一些基金公司代理去做投资。
  • 最终量化分析是众多投资机构的工具、分析手段而已。
1.6 如何做量化交易项目

量化投资涵盖整个交易流程,需要一个完整的作为研究的量化回测框架和实盘交易系统作为支撑。

➢ 量化交易研究流程

量化回测框架提供完整的数据,以及回测机制进行策略评估研究,并能够实时进行模拟交易,为实盘交易提供选择,我们的研究一般在回测平台中做。

  • 获取数据:行情数据、基本面数据
  • 数据挖掘:这部分很重要,大多数在公司会做这个部分。需要用到机器学习算法、特征工程等来分析结果,指导我们的策略。
  • 构建策略
  • 策略回测
  • 策略分析:策略不是一直有效的,基金公司频繁去分析数据、挖掘数据,更新策略。
  • 模拟交易
  • 实盘交易

➢ 什么是策略

量化策略是指使用计算机作为工具,通过一套固定的逻辑来分析、判断和决策。 量化策略既可以自动执行,也可以人工执行。其实策略也可以理解为,分析数据之后,决策买什么以及交易时间。

➢ 流程包含的内容

  • 获取数据:公司财务、新闻数据;基本行情数据。
  • 数据分析与挖掘:传统分析方法、机器学习,数据挖掘方法;数据处理,标准化,去极值,中性化分组回测,行业分布。
  • 构建策略:获取历史行情,历史持仓信息,调仓记录等;止盈止损单,限价单,市价单。
  • 回测:股票涨跌停、停复牌处理;市场冲击,交易滑点,手续费。
  • 策略分析:订单分析,成交分析,持仓分析。
  • 模拟交易:接入实时行情,实时获取成交回报;实时监控,实时归因分析。
  • 实盘交易:接入真实券商账户。

➢ 量化开发和研究岗位要求

  • 基于交易市场数据,研究、开发交易策略,进行基础建模
  • 负责对交易策略进行回测、跟踪、分析、优化
  • 定期对交易策略的运行结果进行总结,给出分析报告,评估市场适用度
  • 负责数据挖掘、处理,数据统计分析,从数据中发现规律,为量化分析提供支持,开发量化模型策略
  • 与基金经理合作跟踪优化股票市场量化策略在实盘的表现