热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python是什么(python量化交易框架)

01引言本公众号原名为“CuteHand”(智能助手),后来在Python和金融方面的文章分享多了,就更名为“Python金融量化”,致力于分享Python在金融量化领域的应用,尤


00-1010微信官方账号最初名为“CuteHand”(智能助手),但后来在Python和金融的文章较多时,更名为“Python金融量化”,专门分享Python在金融量化领域的应用,尤其是股票的量化投资。


随着Python编程语言的普及,越来越多的人对如何使用Python做财务数据分析和量化交易产生了兴趣。但很多人对量化投资本身存在一些误解或认识不清,有些人太异想天开,以为躺着就能赚钱(甚至只有海岛老师);有些人墨守成规,认为鸡蛋没有用;有些人盲目追求模型的复杂性,迷失在编程和数学中。


可以理解的是,量化投资是一个利用计算机技术和某些数学模型来实现投资理念和策略的过程(xjfg)。所以,量化投资只是一种工具,只是实践投资理念的一种量化方法,交易的本质并没有改变。量化投资的优势在于提高我们分析的广度和深度,通过历史回溯获得概率优势,通过自动交易过程避免人性中的诸多弱点。随着大数据和人工智能的发展,量化投资将成为市场主流的投资工具,并将与传统的基本面分析和技术分析深度结合。


那么应该如何系统地研究量化投资呢?网上关于Python和Quant(Quant)的资源非常多,很多踏入这个领域的人都不知所措。掌握了Python编程基础的人,不知道如何切入量化的实际场景。但是有一定财务基础和战略思维的人,不知道如何用Python来实现战略。因此,本文主要结合个人经验和网上公开信息来分享Python的学习资源和量化投资。由于精力和注意力有限,供参考,欢迎大家补充分享。




01 引言


量化可以简单地分为三个模块:数据管理、策略分析和策略执行。数据是基础,政策分析是核心。其中,由于政策限制,我国政策自动化(算法交易)的实施较为麻烦。从Python的角度来看,数据层向下分解,要学习的模块主要有Pandas、Numpy、tushare、pandas_datareader和一些爬虫库。策略向下分解,需要掌握的基本工具包括Pandas、matplotlib、scikit-learn、TA-lib、statsmodels等。当然,在学习上述常见的财务量化库之前,有必要对Python编程基础有一个系统的掌握。从战略角度来说,玩Python远远不够。你必须有自己的战略思维和逻辑。那么这个策略的灵感在哪里呢?除了我自己的实践总结之外,各种量化平台、论坛、博客、学术期刊可能会提供一些参考。下面将围绕Python编程、数据源、量化平台、策略来源等分享相关学习资源。


01 Python编程


1.构建Python环境


(1)蟒蛇:


https://www.anaconda.com/


推荐使用。总是用自己的Jupyter Notebook做策略分析,写微信官方账号文章。


(2)Pycharm:很多人用,但个人没用过。


2.学习入门


(1)廖雪峰官网:


https://www.liaoxuefeng.com/wiki/1016959663602400


(2)菜鸟教程:


https://www.runoob.com/python3/python3-basic-syntax.html


(3)GitHub项目:https://github.com/goodchinas/pyquant


一个关于GitHub的项目,笔记本格式,从初学者到退化和练习的numpy、pandas、matplot等库,非常适合初学者。


3.高级学习书籍


(1)Python for Finance,2014,Yves Hilpisch中文版:Python金融大数据分析,人民邮电出版社


(2)掌握金融Python,2015,James Ma伟明


(Python个人金融,2018,Max Humber


(4)金融Python,2017,闫宇星


(Python衍生工具分析,2015年,伊夫希尔皮施


(6)量子经济学讲座,2019年,托马斯J萨金特和约翰斯塔休斯基


(7)以Python为工具的量化投资,2017,友好蚂蚁方


(8) Python大数据与量化交易从零起点,2017,nrdbm(9) Python对于量化交易

做股票量化分析,2017,活力的芹菜

02量化数据源

金融量化数据源主要有三种:一是大数据网站,通常都是收费的,一般只有日线级数据;二是专业金融数据公司,如通联,万德,收费价格高但比较稳定;三是开源数据模块库,如Tushare,pandas-datareader,ccxt数字货币等,github上还有很多不一一列举。

Python开源数据

(1)TuShare pro :

中文财经数据接口包,有积分限制。

需注册获取token:https://tushare.pro/register?reg=218422

(2)BaoStock :

与tushare类似,主要提供国内股票行情数据、公司基本面和宏观数据

(3)Quandl :https://www.quandl.com/

国际金融和经济数据。

(4)pandas_datareader:

从pandas中独立出来的数据开源库,丰富的数据源,包括美股、A股、宏观数据等

(5)yfinance:https://pypi.org/project/yfinance/

雅虎财经数据api的修复。

(6)ccxt:https://github.com/ccxt/ccxt

python数字货币开源接口

其他数据源

(1)通达信 (免费)

(2)聚宽:jqdatasdk(免费)

(3)新浪、雅虎、东方财富网(免费)

(4)Wind资讯-经济数据库(收费)

(5)东方财富 Choice金融数据研究终端(收费)

(6)同花顺金融数据终端 (大部分可以免费导出)

03 在线量化平台和开源框架

平台之间大同小异,可以重点关注各大平台的策略大赛(练手)、社区(借鉴参考优秀项目)和学院(系统学习量化知识框架)板块。

国内平台(排名不分先后)

(1)BigQuant :https://bigquant.com/

主打人工智能量化平台,社区和学院提供了较丰富的资源。

(2)聚宽 :https://www.joinquant.com/

免费量化数据、投研工具、量化学习体系

(3)优矿 :https://uqer.io/

主打大数据时代的智能量化平台,特色是深度报告、量化学堂和量化社区

(4)万矿 :https://www.windquant.com/

金融大数据、策略研究和数据可视化,网站的社区、学院和案例提供了丰富的学习资源

(5)Ricequant :https://www.ricequant.com/welcome/

涵盖金融数据、投资组合管理与风险分析、量化投研交易模块

(6)掘金量化 :https://www.myquant.cn/

(7)Factors :http://factors.chinascope.com/ 专注于多因子分析,界面操作,黑盒子。

国外量化平台:

国外量化平台非常多,只列两个。

(1)Quantopian :https://www.quantopian.com/posts

比较知名的平台,旗下有量化三大件:pyFolio,zipline,alphalens

(2)Quantstart:https://www.quantstart.com/

平台文章提供了构建自己量化交易系统的思路框架

开源框架(实现本地化)

一般是直接在终端(cmd)上使用pip install xxx(库名)进行安装,有些可能需要下载安装包离线安装。(1)Zipline - 一个Python的回测框架(很难安装)(2)vnpy - 基于python的开源交易平台开发框架(3)easytrader - 进行自动的程序化股票交易

(4)pyalgotrade - 一个Python的事件驱动回测框架(5)quantmod - 量化金融建模

(6)backtrader -Python量化回测框架

04 策略来源

(一)量化投资专业网站、博客、论坛

(1)ARQ: https://www.aqr.com/

(2)Quantivity:https://quantivity.wordpress.com/page/2/

(3)QuantLib:http://www.implementingquantlib.com/

(4)NuclearPhynance: http://www.nuclearphynance.com/

(5)QuantNet Community:https://quantnet.com/

(6)Udacity :https://www.udacity.com/course/machine-learning-for-trading--ud501

(7)Quant At Risk :http://www.quantatrisk.com/

(8)经管之家量化投资板块:https://bbs.pinggu.org/forum-2166-1.html

(9)知乎 - 宽客(Quant):https://bbs.pinggu.org/forum-2166-1.html

(10)知乎 - 量化交易:

https://www.zhihu.com/topic/19815465/hot

(11)GitHub : https://github.com/

(12)FMZ发明者量化交易平台: https://www.fmz.com/bbs

(二)量化投资书籍:

如果完全不懂金融投资理论,就谈量化投资,很容易流于形式,画出来漂亮的图表和策略,也就能忽悠一下外行而已。一直强调Python只是工具,不要舍本逐末,量化投资核心是策略和思路,而策略的来源需要一定的统计和投资学的积累与沉淀。

(1)打好经济学基础,推荐教材:mldz的宏微观经济学、米什金的《货币金融学》、罗斯《公司理财》、博迪的《投资学》和《金融工程》。《投资学》介绍了一些投资学上的基础知识和基本模型。现代投资学框架,包括资产组合理论(均值-方差模型)、资本资产定价模型(CAPM)、套利定价理论(APT)、行为金融学等(除了正规教材外,推荐索罗斯的《金融炼金术》)。

(2)计量经济学,主要学习时间序列分析、多元统计线性回归,可参考《计量经济学导论:现代观点》,结合Python的statsmodels、scipy、sklearn模块进行学习。

(3)多因子模型:首先应该阅读砝码三因子的PAPER,公众号也有两篇推文。此外,Barra风险模型(多因子模型扩展)是现在非常主流的量化模型,有很多可以参考的资料,如《Barra Risk Model Handbook(US)》。

(4)投资相关书籍

《打开量化投资的黑箱》 勤劳的月亮《宽客》[美] 朴实的冰淇淋(Scott Patterson)

《解读量化投资:西蒙斯用公式打败市场的故事》 朴实的手机《漫步华尔街》麦基尔

《海龟交易法则》hmdz

《交易策略评估与最佳化》飘逸的发夹

《统计套利》 听话的裙子

《信号与噪声》dqdlq

《量化投资—策略与技术》 xjfg

《量化投资策略:如何实现超额收益Alpha》 魔幻的猎豹

《以交易为生》 swdzc

《高级技术分析》jddpj

《积极型投资组合管理》格里纳德,卡恩

《金融计量学:从初级到高级建模技术》 zlddh洛扎

《量化交易如何建立自己的算法交易事业》wsdzt/p>

《聪明的投资者》 飘逸的饼干

《期权、期货和其他衍生品》 约翰·赫尔

注:金融投资书籍及金融史,可在公众号里分别回复“金融书籍”、“金融历史”获取。

(三)学术期刊

国外期刊金融三大顶级期刊(需要理论功底比较强,不然看起来很费力):

Journal of Finance、

Journal of Financial Economics、

Review of Financial Studies

其他金融投资期刊:

Journal of Accounting and Economics、Journal of Financial and Quantitative Analysis、Financial Analysts 、Journal Financial Management、Journal of Empirical Finance、Quantitative Finance、Journal of Alternative Investments、Journal of Fixed Income、Journal of Investing、Journal of Portfolio Management、Journal of Trading、Review of Asset Pricing Studies

国内期刊:国内专门讨论量化投资的学术文章比较少,可关注经济研究、经济学(季刊)、金融研究、管理世界、会计研究、投资研究。

(四)微信公众号资源

微信公众号也提供了很多量化资源可供学习参考,下面分享几个自己关注的,排名不分先后。

03 结语

量化只是一种工具或手段,量化投资则是目前比较流行的一种交易分析框架,需要掌握的知识体系还真比较庞杂。值得关注的是,证券投资的专业性远没有工科类的专业性那么可靠。比如说,你拥有制造汽车的专业技能,就能造出一部汽车;但伶俐的小兔子掌握了证券投资的专业知识,却不一定能在股票市场上赚到钱。一个不难观察到的现象是,很多金融专业人士在股票投资这个领域不一定能干出好的成绩,而一些非金融背景的人却表现优异。这可能与证券投资的非逻辑性(艺术而不是科学)有关,交易市场的本质是零和博弈(不考虑手续费等),尤其是期货交易。但是不得不说这已经是个对专业要求越来越高的行当,因为在高收入的引诱下,各种高精尖人才都挤破脑袋往这个行业里钻。尤其是近几年,大型券商和基金招人连清北复交也不怎么鸟了,指定北美前五十高校,玩的模型和技术也越来越花了。尽管专业的金融背景只是投资成功的必要条件(非充分条件),但是如果连基本的经济金融基础也没有,要想与市场上的其他人玩,成为韭菜的概率就更高了。

参考资料

知乎:守株待兔《史上最全Quant资源整理》:

https://zhuanlan.zhihu.com/p/26179943

关于Python金融量化

专注于分享Python在金融量化领域的应用。加入知识星球,可以免费获取30多g的量化投资视频资料、量化金融相关PDF资料、公众号文章Python完整源码、量化投资前沿分析框架,与博主直接交流、结识mmddd朋友等。


推荐阅读
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 也就是|小窗_卷积的特征提取与参数计算
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了卷积的特征提取与参数计算相关的知识,希望对你有一定的参考价值。Dense和Conv2D根本区别在于,Den ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
    本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 【爬虫】关于企业信用信息公示系统加速乐最新反爬虫机制
    ( ̄▽ ̄)~又得半夜修仙了,作为一个爬虫小白,花了3天时间写好的程序,才跑了一个月目标网站就更新了,是有点悲催,还是要只有一天的时间重构。升级后网站的层次结构并没有太多变化,表面上 ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 本人学习笔记,知识点均摘自于网络,用于学习和交流(如未注明出处,请提醒,将及时更正,谢谢)OS:我学习是为了上 ... [详细]
author-avatar
头都大了66
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有