如何使用Python进行投资收益和风险分析
如何投资是现代企业、个人投资者所面临的实际问题,投资的目标是收益尽可能大,但是投资往往伴随着风险,如果在保证收益最大化的情况下,风险最小;或是风险相同的情况下,如何实现收益的最大化;通过本实训,可以使学生了解投资收益的来源,如何去识别、区分风险类型,通过模型测算投资组合的风险和收益大小,从而灵活调整投资组合,制定并实施投资决策。
项目开发流程分以下四步:
数据收集 (爬取证券市场数据)
数据清洗(得到训练数据)
模型使用(得到推荐结果)
结果评估(推荐结果评估)
具体描述如下:
- 使用python爬取新浪财经等网站中的股票交易数据。数据包括了交易日期、开盘价、最高价、最低价、收盘价、调整后的收盘价以及成交量。其中调整后的收盘价最为重要,它对股票分割、股息和其他公司行为进行了标准化,能真实地反映股票随时间的回报。
- 将爬取的数据进行清洗,得到结构化的数据,并存储到MySQL中。
收益计算:
3. 使用pandas的.pct_change()方法来计算收益率。绘制股票历史每日收益随时间变化的图。

- 使用numpy包中的mean()函数计算股票历史收益的均值(日平均收益)。
- 根据日平均收益计算平均年化收益。
- 使用matplotlib绘图包中的hist()函数绘制收益直方图,了解收益分布情况及收益中的异常值。

风险计算:
7. 使用numpy包中的std()函数计算收益的方差,并转为年化方差。投资回报中较高的标准差意味着较高的风险。

使用scipy.stats提供的skew()函数计算收益分布的偏度。在金融领域,人们更倾向于正的偏度,因为这意味着高盈利的概率更大。

使用scipy.stats提供的 kurtosis() 函数计算收益分布的超值峰度。大部分金融收益都具有正的超值峰度。

使用scipy.stats提供的shapiro()函数判断收益分布的正态性。
如何使用Python进行投资收益和风险分析的更多相关文章
- 目前比较流行的Python量化开源框架汇总(交易+风险分析工具)
注:点击框架名称通往Github talib talib的简称是Technical Analysis Library,主要功能是计算行情数据的技术分析指标 numpy 介绍:一个用python实现的 ...
- 注册会计师带你用Python进行探索性风险分析(一)
https://blog.csdn.net/BF02jgtRS00XKtCx/article/details/78519378
- Python数据分析入门与实践 ✌✌
Python数据分析入门与实践 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 这是一个数据驱动的时代,想要从事机器学习.人工智能.数据挖掘等前沿技术,都离不开 ...
- 《自动化平台测试开发-Python测试开发实战》新书出版了
首先 第一本书,当初在百度阅读初步写了个电子版,刚一上线不久即收到了数百位读者朋友阅读收藏购买,于是顺利成章就出版了纸质书. <软件自动化测试开发>认真看过的读者应该都知道,介绍的主要是自 ...
- 数据科学中的常见的6种概率分布(Python实现)
作者:Pier Paolo Ippolito@南安普敦大学 编译:机器学习算法与Python实战(微信公众号:tjxj666) 原文:https://towardsdatascience.com/pr ...
- python中文语料分词处理,按字或者词cut_sentence
cut_sentence.py import string import jieba import jieba.posseg as psg import logging #关闭jieba日制 jieb ...
- Python小白的数学建模课-05.0-1规划
0-1 规划不仅是数模竞赛中的常见题型,也具有重要的现实意义. 双十一促销中网购平台要求二选一,就是互斥的决策问题,可以用 0-1规划建模. 小白学习 0-1 规划,首先要学会识别 0-1规划,学习将 ...
- Python 常用笔记
记录 http://blog.sina.com.cn/s/blog_73b339390102yoio.html PE:市盈率 = 股价 / 每股盈利 PEG:(市盈率相对盈利增长比率/市盈增长比率) ...
- Python基于粒子群优化的投资组合优化研究|附代码数据
全文链接:http://tecdat.cn/?p=6811 最近我们被客户要求撰写关于粒子群优化的研究报告,包括一些图形和统计输出. 我今年的研究课题是使用粒子群优化(PSO)的货币进位交易组合优化. ...
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
随机推荐
- 牧云 • 主机管理助手|正式开放应用市场,梦幻联动雷池WAF等多款开源软件
0x00 前言 上个月,我司长亭开源了雷池WAF,不到三天就吸引了超过上千个师傅使用,几个交流群里,师傅们讨论的热火朝天,其中两个话题引起了我们牧云 • 主机管理助手 ( Collie ) 团队的关注 ...
- Firefox Quantum 向左,Google Chrome 向右
今天,又重新安装了一下 Firefox Quantum-68.0 (64 位),不同的是这一次安装的是国际中文版,而不是北京谋智火狐的版本. 北京谋智火狐 国际中文版 总的来说,有几点体验: 在 ht ...
- 【Python&RS】遥感影像的像素坐标转地理坐标(仿射变换)
GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库.它利用抽象数据模型来表达所支持的各种文件格式 ...
- CentOS7 配置本地yum源软件仓库
CentOS7 配置本地yum源软件仓库 前言 配置本地yum源软件仓库可以离线状态下安装本地已有的软件 先连接虚拟光驱,对应的光驱iso文件 查看磁盘分区状态 可以看到sr0 未挂载 [root@l ...
- C++面试八股文:什么是RAII?
某日二师兄参加XXX科技公司的C++工程师开发岗位第13面: 面试官:什么是RAII? 二师兄:RAII是Resource Acquisition Is Initialization的缩写.翻译成中文 ...
- 2. IOC
对于 IOC 的理解 : 在 Spring 框架中,IOC(Inversion of Control,控制反转)是一个重要的概念,它是框架实现松耦合的一种方式.在传统的程序设计中,应用程序会主动创 ...
- 【神经网络】基于GAN的生成对抗网络
目录 [神经网络]基于GAN的生成对抗网络 随着深度学习的快速发展,神经网络逐渐成为人工智能领域的热点话题.神经网络是一种模仿人脑计算方式的算法,其通过大量数据和复杂的计算模型,能够实现复杂的任务和预 ...
- 为控制器生成OpenAPI注释
非常喜欢. NET 的 /// 注释,写代码的时候就顺道完成写文档的过程,简直不要太爽了. ASP. NET CORE 也是一样的,通过 Swagger 工具,可以自动生成 API 的接口文档(Ope ...
- Cisco命令中login和login local的区别
login是开启远程登录密码验证,login local不但要求密码,还要求提供用户名 如果同时设置login和login local,login local有效 (config-line)#line ...
- React中编写操作树形数据的自定义Hook
什么是 Hook hook 即为钩子,是一种特殊的函数,它可以让你在函数式组件中使用一些 react 特性,目前在 react 中常用的 hook 有以下几类 useState: 用于在函数组件中定义 ...