零基础想系统地学习金融学、量化投资、数据分析、python,需要哪些课程、书籍?有哪些证书可以考?

news/2024/12/23 7:44:49/

曾经我也是零基础小白,题主想走的路,我已经走过啦~作为一名CFA持证人和管理因子投资的量化策略的投资组合经理,我把这些年积累的干货跟大家分享。

量化投资是金融学的一部分,量化投资(跟量化交易的概念有部分重合)需要进行数据分析,而常见的工具是R或者Python。R正在逐渐被Python代替,如果是零基础的同学,建议直接学Python就可以了。

下面我就再用量化投资中最受欢迎的因子投资为例,搭建一个量化投资的框架,哪里需要数据分析、哪里需要金融学、哪里需要Python的知识,希望大家能在框架中找到它们各自的位置。其中,金融学和数据分析的知识是血肉,Python技能是骨架,没有骨架,再好的血肉也是立不起来。因此,Python的学习贯穿量化投资的过程。

因子投资(Factor Investing),也叫做聪明的贝塔(Smart Beta),是量化投资领域非常受欢迎的重要分支。目前,市场上共有1.8万亿美元的资金投资于因子投资的模型中。因子投资用简单的白话说,就是通过找到决定股票收益高低的“因子(因素)”来进行投资。搭建一个因子投资的模型,需要完成以下流程:收集数据——数据分析——模型训练——检验回测业绩——调整模型。

一、收集数据

目前股票市场上提供财务数据的数据库有很多,但最常用的,是针对A股市场的Wind数据库和针对美股市场的Bloomberg数据库。如果我们分析某只股票,可以通过登陆Wind或者Bloomberg终端进行信息检索和数据收集,但量化投资需要海量的财务数据,通过终端查询不可能实现,通过Excel表格的插件,也费事费力。最有效率的获取数据方法,是通过数据库的Python插件。

以Wind为例,在Python中输入以下代码:

import pandas as pd
from WindPy import w
w.start()

使用Python获取数据库的数据比Excel省事很多,不仅速度快,数据分析时也不用再读取Excel文件了。这里的免费课程覆盖了Python的重要语法,在通过案例学习语法的过程中,自然而然的会学习金融、数据分析的知识。大家先领取,再往下看文章。

Python 量化技能入门必备👉语法入门+四大实战案例

¥0.00立即领取

二、数据分析

拿到财务数据后,我们要做的第一步就是进行数据清理,其中包括了缺失值处理、极值处理、数据转换、数据可视化。这些步骤需要处理大量的数据,Python会让我们事半功倍。

1,缺失值处理。 缺失的数据会影响模型的准确度,如果一个指标的缺失数据达到了20%以上,我们就要考虑是否应该将该指标排除在外。比如,我们想要通过学生的模拟考试成绩预测高考成绩,但一半的学生都没有参加模拟考,那还怎么预测呢?一般情况下,缺失值不是太多,我们会替换成平均数或者中位数。

2,极值处理。 极值顾名思义,就是指特别大或者特别小的数,这个数混在数据里,会影响我们对数据情况的判断。比如,一个小公司的员工都只领几千块钱的薪水,而CEO领几千万元的薪水,公司的平均薪资都达到十几万了,显然,平均数不能正确反映员工的工资水平,这时,CEO的薪水就应该作为极值被排除在外。量化投资中,最常用的极值处理方法是Winsorization,这在Python中也很容易实现。

3,数据转换。 我们分析数据的目的,是要获取数据中隐藏的信息,这个过程就像破案一样,要抽丝剥茧。很多时候,数据要符合一定的样子才能吐露信息,比如在线性回归模型中,自变量应该服从正态分布。这时候,我们需要将原始数据变成期望中的样子,这个过程就叫做数据转换。量化投资中,我们会将数据标准化、正态化、取Log等等。

4,数据可视化。 “A picture is like a thousand words",一图顶万言。画图能帮助我们更好的了解手中的数据。Python在数据可视化这方面比R更加灵活、领先,比如Clustering的可视化,关于分布的Histogram图片。

从使用者的角度,Python的语言更直白,图片更好看。如果大家向领导汇报,相信Python会比R更能让领导“赏心悦目”。

三、模型训练

量化投资的模型可以分成两大类:回归类(regression)和分类类(classification) 。这两类都是监督学习的模型,最常见的回归模型就是线性回归,也就是多元一次方程式;最常见的分类模型就是二叉树模型。

因子投资的基础模型是线性回归,我们将收集到的时间序列数据或者横截面数据代入线性回归模型中。

ExpectedReturn=Alpha+Beta1∗Factor1Value+Beta2∗Factor2Value+…Betan∗FactornValue+errorterm

当因子太多,也就是线性回归模型中的自变量太多时,自变量之间可能存在相关关系,互相影响从而降低模型的准确度。这时,我们可以用脊回归模型或者LASSO来进行自变量的权重调整或挑选。这些模型都可以用Python相应的Package完成。

线性回归模型简单且强大。但实际上,市场中很多因素对股价的影响并不是线性的,我们如何能找到非线性的模型呢?答案就是决策树。随着技术的发展,更聪明的模型被引入到量化投资中,除了简单的回归,我们还可以将模型设计成决策树或者神经网络。决策树算法采用树形结构,使用层层推理来实现最终的分类。决策树又叫二叉树,是因为每个推理节点,都会分成“是”和“否”两个分支。比如,银行决定是否向个人发放贷款,简单的决策树模型如下图。

简单的决策树模型虽然没有线性的强制假设,但也不能代表股票市场真实发生的情况,,我们可以将模型变为Random Forest(Bagging)或者Boosting。

但有的时候,市场不是只有“是”和“否”两个答案。如果再引入更加聪明的模型,我们可以用神经网络模型(nerual network)。神经网络是模拟人类大脑处理信息方式的简化模型,它通过模拟大脑的多层感知,对输入信息的反馈过程决进行隐藏层,每个信息对最终预测结果的影响都是多元化的。

这些模型的搭建工具是Python,各个模型对应的Package都可以在网上搜索到。

四、检测回测业绩和调整模型

当我们训练出一个模型后,需要用真实的历史数据检测该模型在历史上是否有效。回测结果非常重要,如果回测结果不好,那这个模型基本要被推翻重建;如果回测结果好,我们也不能掉以轻心,因为回测的结果好,不代表现在用着也好。有很多模型放到真实世界里就失效了。要搭建一个有效的量化投资模型,需要我们不停的检测、调整。

检测模型是否有效,还需要分析一些统计学指标,比如R Square,T-Statistic。我们还可以用一些统计学方法来检测每个自变量(我们向模型输入的能影响股票价格的指标)的重要性,从而决定是否要放弃某些指标,或者寻找其他类似指标。如果是回归模型,可以使用Stepwise Selection,如果是决策树模型,可以使用Feature Selection方法。

工欲善其事,必先利其器。Python等编程语言是量化投资的工具,如果不会使用工具,再好的策略也只是纸上谈兵,落不到实处。因此,掌握Python是量化投资的基础,下面的课程会系统的帮助我们了解Python在量化投资中的应用,最重要的是,它免费,感兴趣的朋友赶紧薅羊毛薅起来吧!

结语

当然,好的模型不仅在于“型”,更在于输入的数据是什么。如果我们对股票市场缺乏了解,不知道什么因素能影响股票的价格,那么再好的模型也无法预测未来的股票收益,因为你让模型吃进去的全是噪音数据,模型无法提取到信息,正所谓“Garbage In,Garbage Out”。金融知识在这里就展示出了它的重要性。量化投资的重点仍然在“投资”,量化只是实现投资的方式,领域知识非常重要。毕竟,我们的目标是成为会写程序的投资者,而不是只会写程序的门外汉。

如果你对Python感兴趣的话,可以试试我整理的这份Python全套学习资料,微信扫描下方二维码免费领取

包括:Python永久使用安装包、Python web开发,Python,Python数据分析,人工智能、机器学习等学习教程。带你从零基础系统性的学好Python!
在这里插入图片描述

零基础Python学习资源介绍

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python学习软件

工欲善其事,必先利其器。学习Python常用的开发软件都在这里了!
在这里插入图片描述

三、Python入门学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

四、Python练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

五、Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。这份资料也包含在内的哈~在这里插入图片描述

六、Python面试资料

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

七、资料领取

上述完整版Python全套学习资料已经上传CSDN官方,需要的小伙伴可自行微信扫描下方CSDN官方认证二维码输入“领取资料”免费领取!!
在这里插入图片描述


http://www.ppmy.cn/news/1231007.html

相关文章

基于STM32设计的(无人)智慧超市-2023改进版

改进的内容: 增加了一个智慧超市登录入口,整个上位机只有一个APP文件。 可以选择顾客或者管理员的身份进去。优化了界面的显示。 一、项目背景 智慧超市是一种新型的零售形式,它将人工智能、物联网、云计算等技术应用到超市运营中,为消费者提供更加便捷、快捷、个性化的购…

ITIL® 4 Foundation​,即将开课~想了解点击查看

ITIL 4 Foundation 即将开课~ 想报名的必须提前预约啦 👇👇👇 2 0 23 年 培训地点: 远程直播:线上平台学习 开课时间: 周末班:11月25日、26日; 什么是ITIL? 信息技…

JVM入门

1. JVM简介 * JVM是Java虚拟机,是Java应用程序运行的平台。 * JVM可以跨平台运行,因为Java源代码会被编译成平台无关的字节码。 * JVM由Java虚拟机规范(Java Virtual Machine Specification)定义。 2. JVM架构 * JV…

亚马逊出口电热毯日本PSE认证需要什么资料解析

电热毯出口日本需要办理PSE认证,电热毯,又名电褥,是一种接触式电暖器具。 PSE认证介绍是日本强制性认证,包含安全及EMI,用以证明电子电气等产品符合日期电气用品安全法或国际IEC标准的要求。日本电气用品安全法规定&am…

数据结构之栈的讲解

💕" 春宵一刻值千金,花有清香月有阴。 "💕 作者:Mylvzi 文章主要内容:leetcode刷题之哈希表的应用(1) 1.栈的概念 栈是一种只允许在一端(栈顶)进行数据操作的数据结构,具…

TensorFlow实战教程(三十五)-VS Code配置Python编程和Keras环境及手写数字识别(基础篇)

从本专栏开始,作者正式研究Python深度学习、神经网络及人工智能相关知识。前一篇文章利用Keras构建无监督学习Autoencoder模型并实现聚类分析。这篇文章将介绍基础知识,因为很多读者咨询我如何用VS Code配置Keras深度学习环境,并对比常用的深度学习框架,最后普及手写数字识…

[java进阶]——泛型类、泛型方法、泛型接口、泛型的通配符

🌈键盘敲烂,年薪30万🌈 目录 泛型的基础知识: ♥A 泛型的好处: ♠A 泛型擦除: ♣A 泛型的小细节: 泛型的使用: ①泛型类: ②⭐泛型接口: ③泛型方法&…

【Unity3D】自动构建Android包时指定aab或apk以及设置sdk版本

EditorUserBuildSettings.buildAppBundle true; 为true打出Android App bunle文件(.aab) 默认为false打出apk文件 PlayerSettings.Android.targetSdkVersion (AndroidSdkVersions)33; 设置指定目标SDK版本 PlayerSettings.Android.minSdkVersion AndroidSdkVersions.Andro…