Python量化金融编程从入门到精通

Python量化金融编程从入门到精通
作者: 丁奉乾
出版社: 北京大学
原售价: 79.00
折扣价: 0.00
折扣购买: Python量化金融编程从入门到精通
ISBN: 9787301317259

作者简介

丁奉乾:CSDN博客专家,博客访问量已过百万,微信公众号“人工智能量化实验室”创始人,目前已发表多篇SCI学术论文,拥有多项国家发明专利和软件著作权。擅长Python编程,专注于人工智能量化领域研究,并有丰富的量化金融项目经验。

内容简介

第1章 初识量化交易 在本章中,我们将初步认识量化交易,对一些常见的术语进行解释和区分,消除初学者对相关概念的一些误区。此外,我们还将对一些常见的量化交易平台和基于Python的量化交易框架进行介绍,从而使读者可以尽快了解量化交易这个领域。 ·了解什么是量化交易。 ·区分量化交易与程序化交易、算法交易及高频交易等概念。 ·了解常见的量化交易平台。 注意:本章内容将带你了解量化交易的基本概念,为后面章节的学习打下基础。 1.1 对量化交易的认识 本节将对量化交易的概念、发展及特点进行介绍,通过本节内容的学习,我们会对量化交易有初步的认识。 1.1.1 什么是量化交易 接触过股票、期货或其他金融衍生品的读者可能会听说过“量化交易”这个概念,乍一听会觉得这是一项高大上的技术,实际上很多普通人通过相关知识的学习,也完全可以将量化交易为自己所用。量化交易是指凭借计算机强大的计算能力,通过对股票、期货、外汇等金融衍生品的历史数据进行分析、建模,以便从历史数据的角度帮助我们进行决策,从而代替人为主观判断的一种交易方式。 一个简单的量化交易的过程如图1.1所示。相比于传统交易者依靠经验定性分析的交易方式,量化交易通过编程建模等方式,利用概率论、统计学等知识从庞大的历史数据中总结规律并建立量化模型,然后凭借计算机强大的计算能力来高效、快速地进行交易决策,因而量化交易属于一种基于定量分析的交易方式。 图1.1 量化交易的过程 1.1.2 量化交易的发展 量化交易在国外已经有30多年的发展历史,但是在国内近十几年才出现,所以在学习量化交易知识时,了解一下量化交易在国内外的发展历史还是很有必要的。 在20世纪70年代,巴克莱国际投资管理公司发布了世界上第一只被动量化基金,随后在1977年又发布了世界上第一只主动量化基金,这也是美国量化投资的开端。20世纪80年代,被称为量化投资之父的詹姆斯·西蒙斯(James Simons)成立了文艺复兴科技公司,作为世界级的数学家,西蒙斯率领了一批优秀的数学家和统计学家开发了许多用于数据分析和量化交易的数学模型。1989年到2009年间,由文艺复兴科技公司管理的大奖章基金的平均年收益率高达35%。用西蒙斯的话来说,他的交易方式就像壁虎捕食一样,平时趴在墙上一动不动,一旦蚊子出现就迅速把它吃掉,然后恢复平静,等待下一个机会,因而西蒙斯的投资方式也称为“壁虎式投资法”。20世纪90年代以来,随着计算机与互联网技术的高速发展,基于计算机的各种量化投资方式逐渐代替了传统的人为分析和交易,华尔街也因此发生了翻天覆地的变化。 相比于国外量化交易的发展,国内量化交易的起步较晚,最早的量化对冲私募基金诞生于2004年,它是由华宝信托发行的“基金优选套利”。在发行之后的那段时间,同期基金指数处于下跌的状态,而该基金却仍然有超过10%的收益率。随着国内股指期货、融资融券、ETF(交易型开放式指数基金)及各种基金的发展,国内真正意义上的量化对冲基金时代始于2011年,这时的量化投资才正式开始发展。2014年,新基金法正式实施,中国证券投资基金业协会发布了《私募投资基金管理人登记和基金备案办法(试行)》,推动了私募基金的全面阳光化。2015年,上证50和中证500股指期货的推出,为量化投资提供了更多交易标的和多样策略的用武之地。接下来从2017年开始,各种云计算、大数据和机器学习等技术的出现,为量化投资提供了更多新技术,推动了科技金融等相关产业的发展,壮大了量化交易的队伍。 相较于占据国外金融市场85%份额的国外量化交易量,国内量化交易量远远不足。所以,量化交易在国内具有很大的发展空间,并且随着计算机数据存储和运算能力的不断增强,以及大数据、云计算和人工智能领域的发展,也为量化交易提供了更多强有力的工具,因而量化交易在国内的发展可以说方兴未艾。 1.1.3 量化交易的特点 传统交易方式都是以人的思维为主体的,所以无论是传统的技术面还是基本面分析都属于定性分析。而只要是人就无法摆脱人性的弱点,如贪婪、恐惧、侥幸等心理,加上市场舆论和虚假消息的环境影响,都会导致人难以理性地进行决策。而通过历史数据建立的量化交易模型则克服了人性的弱点,使得交易决策可以更科学、更理性地执行。 量化交易可以从海量的数据中发掘市场的规律并制定合理的交易决策。试想我国A股市场上就有3000多只股票,光是一些价格、成交量等基本数据就很难人为去整理和筛选,更何况与公司业绩相关的信息还有很多。所以,量化交易通过运用计算机等技术可以高效快速地处理大量数据,并发掘历史数据中的规律,与数据建立联系。 此外,人的脑力和精力都是有限的,人不可能实现24小时盯盘,但是市场机会是稍纵即逝的,而凭借计算机程序的量化交易方式可以实现7×24小时的不间断盯盘,并且可以在极短的时间内做出反应,从而在交易机会出现时能够快速地捕捉。 最后,量化交易并不是通过对历史数据进行建模得到模型后就可以一劳永逸了,因为它是站在历史的角度来对当前的市场情况进行判断,只能说它是以大概率的胜率进行决策。但是,市场是一直在变化的,历史并不一定会重演,所以无论多么高级、复杂的量化模型都不可能是一成不变的。我们只有不断地去学习、更新量化模型,使它不断总结市场的规律并去适应市场的新行情,才能在市场中立于不败之地。 1.1.4 量化交易的方法及应用 量化交易的核心在于交易策略模型的构建,按照不同角度可对交易策略模型进行不同的划分。按照持仓时间的角度来划分,交易策略可以分为低频交易策略、中频交易策略、中高频交易策略及高频交易策略。低频交易持仓时间会比较长,一般有几个月甚至更长时间,这种交易方式更侧重于长远考虑或价值投资,如一些按照季度调仓的多因子策略。中频交易以周为单位。中高频交易策略以天或分钟为单位,如一些日内突破或反转策略。高频交易主要是通过价格的短暂波动获利,价格数据一般是以毫秒甚至更小的单位进行计算,所以高频交易对数据的时延性要求特别高。 按照交易产品的角度来划分,交易策略可以分为股票策略、期货策略、期权策略及基金策略等。这种划分方式根据的是不同交易产品的特征、交易方式及市场情况。 按照盈利模式的角度来划分,交易策略可以分为市场中性策略、套利策略及CTA策略。市场中性策略是指通过构造多空两种方向的投资组合来减少风险暴露的策略,由于其建立了两种方向的头寸,与市场的牛熊市无关,因此称为市场中性策略。常见的市场中性策略有阿尔法策略,即做多证券产品组合,做空指数期货,以实现规避系统性风险。套利策略是指同时对两种不同市场或不同交易期限的品种进行对冲以获取与市场行情无关的交易策略,它的盈利方式主要在于赚取两类品种价格之间的短时偏离所带来的价差,当价格背离时,做多低价的,做空高价的,当未来某时刻它们的背离趋势得到纠正时平仓,所以其核心在于均值回归。常见的套利策略有统计套利策略、期现套利等。CTA策略是一种趋势交易策略,它的主要盈利方式是通过各种技术指标过滤当前市场噪音,寻找当前市场趋势并进行跟踪以赚取单边趋势带来的盈利,即常说的“追涨杀跌”,它主要的研究对象是期货。这种策略适合于牛熊市具有明显的趋势性的时期,而当市场处于长期震荡时则会失效,一些常见的CTA策略有双均线策略、Dual Thrust策略、R-Breaker策略等。 除前面提到的这些量化交易策略模型之外,如今随着机器学习、深度学习等人工智能技术的发展,也有不少研究者和投资机构将这些新兴的技术应用于量化交易当中并且也取得了不错的效果。其中就包括了一些通过强化学习等技术构建自动化交易模型,通过循环神经网络进行价格预测等。感兴趣的读者可以去百度或谷歌学术上搜索相关论文或参考机构的金工研报。总之,在将人工智能等技术应用于量化交易领域中时,不要把它们看作是一种万能的技术,机器学习、深度学习只是一种工具,只有用对了地方才能发挥它们的作用,就像一把螺丝刀被拿来当锤子用,自然不会有什么好的效果。所以,多花点时间去了解它们的原理,找到适合它们的应用场景很重要。 精通Python量化金融编程就这三步: 1.基础:初识量化交易,掌握Python编程语言的基本用法。 2.进阶:结合量化金融实例,进阶掌握数据分析库和量化交易库的基本用法。 3.实战:结合当下热点,引入机器学习与深度学习在量化交易场景下的应用,实战搭建属于自己的量化交易工具库。