利用Python分析一下最近的股票市场

目录
  • 一、数据获取
  • 二、合并数据
  • 三、绘制股票每日百分比变化
  • 四、箱线图
  • 五、计算月化夏普比率
  • 六、结论

一、数据获取

数据获取范围为2022年一月一日到2022年2月25日,获取的数据为俄罗斯黄金,白银,石油,银行,天然气:

# 导入模块
import numpy as np
import pandas as pd
import yfinance as yf

# GC=F黄金,SI=F白银,ROSN.ME俄罗斯石油,SBER.ME俄罗斯银行,天然气
tickerSymbols = ['GC=F', 'SI=F', 'ROSN.ME', 'SBER.ME','NG=F']

# 获取这些代码的数据
MSFT = yf.Ticker(tickerSymbols[0])
TSLA = yf.Ticker(tickerSymbols[1])
AAPL = yf.Ticker(tickerSymbols[2])
AMZN = yf.Ticker(tickerSymbols[3])
GOOG = yf.Ticker(tickerSymbols[4])

# 获取代码的历史价格
MSFT_df = MSFT.history(period='1d', start='2022-1-1', end='2022-2-25')
TSLA_df = TSLA.history(period='1d', start='2022-1-1', end='2022-1-25')
AAPL_df = AAPL.history(period='1d', start='2022-1-1', end='2022-1-25')
AMZN_df = AMZN.history(period='1d', start='2022-1-1', end='2022-1-25')
GOOG_df = GOOG.history(period='1d', start='2022-1-1', end='2022-1-25')

# 比如天然气
GOOG_df.head()

如下:

二、合并数据

# 将每只股票的收盘列保存到新变量中
MSFT = MSFT_df['Close']
TSLA = TSLA_df['Close']
AAPL = AAPL_df['Close']
AMZN = AMZN_df['Close']
GOOG = GOOG_df['Close']

# Concatenate all stocks close columns into one data frame
stocks_df = pd.concat([MSFT, TSLA, AAPL, AMZN, GOOG], axis='columns', join='inner')

# Rename the data frame columns with their corresponding tickers symbols
stocks_df.columns = ['gold', 'silver', 'oil', 'bank', 'gas']

# Visualize the new data frame
stocks_df.head()

如下:

三、绘制股票每日百分比变化

# 接下来,让我们计算股票每日百分比变化并绘制它们以直观地分析它们在过去一个多月中的变化行为。
# 获取每日百分比变化
stocks_df = stocks_df.pct_change().dropna()

# 可视化新数据框
stocks_df.head()

# 绘制每日百分比变化
stocks_df.plot(figsize=(20, 10), title="Daily Returns");

如下:

从图也可以看出哪个变动大,哪个稳定)自己用眼睛看

四、箱线图

上面的图确实不好看,所以我们画一个箱线图更加直观:

# 箱线图
# 计算累积回报
cumulative_returns = (1 + stocks_df).cumprod()

# 绘制累积回报
cumulative_returns.plot(figsize=(20, 10), title="Cumulative Returns");

# 箱线图直观地显示风险
stocks_df.plot.box(figsize=(20, 10), title="Portfolio Risk");

累计回报图:

箱线图:

显然是天然气收益最高;盒子越宽,晶须越长,股票的波动性就越大。石油最稳定,天然气波动大了点

五、计算月化夏普比率

#计算月化夏普比率
sharpe_ratios = (stocks_df.mean() * 30) / (stocks_df.std() * np.sqrt(30))
sharpe_ratios = sharpe_ratios.sort_values(ascending=False)
sharpe_ratios

如下:

#将夏普比率可视化为条形图
sharpe_ratios.plot(figsize=(20, 10), kind="bar", title="Sharpe Ratios");

如下:

六、结论

根据以上结果,建议购买黄金,其次为白银,天然气,俄罗斯银行和石油不建议购买。注意:以上分析数据为2022年1月1日到2022年2月5日分析图。没有写预测部分,我觉得动荡太多,没必要预测了,买稳定的吧,预测已经没有意义。

以上就是利用Python分析一下最近的股票市场的详细内容,更多关于Python分析股票市场的资料请关注我们其它相关文章!

(0)

相关推荐

  • python 简单的股票基金爬虫

    项目地址 https://github.com/aliyoge/fund_crawler_py 所用到的技术 IP代理池 多线程 爬虫 sql 开始编写爬虫 1.首先,开始分析天天基金网的一些数据.经过抓包分析,可知: ./fundcode_search.js包含所有基金代码的数据. 2.根据基金代码,访问地址: fundgz.1234567.com.cn/js/ + 基金代码 + .js可以获取基金实时净值和估值信息. 3.根据基金代码,访问地址: fundf10.eastmoney.com/

  • python用线性回归预测股票价格的实现代码

    线性回归在整个财务中广泛应用于众多应用程序中.在之前的教程中,我们使用普通最小二乘法(OLS)计算了公司的beta与相对索引的比较.现在,我们将使用线性回归来估计股票价格. 线性回归是一种用于模拟因变量(y)和自变量(x)之间关系的方法.通过简单的线性回归,只有一个自变量x.可能有许多独立变量属于多元线性回归的范畴.在这种情况下,我们只有一个自变量即日期.对于第一个日期上升到日期向量长度的整数,该日期将由1开始的整数表示,该日期可以根据时间序列数据而变化.当然,我们的因变量将是股票的价格.为了理

  • Python爬取股票信息,并可视化数据的示例

    前言 截止2019年年底我国股票投资者数量为15975.24万户, 如此多的股民热衷于炒股,首先抛开炒股技术不说, 那么多股票数据是不是非常难找, 找到之后是不是看着密密麻麻的数据是不是头都大了? 今天带大家爬取雪球平台的股票数据, 并且实现数据可视化 先看下效果图 基本环境配置 python 3.6 pycharm requests csv time 目标地址 https://xueqiu.com/hq 爬虫代码 请求网页 import requests url = 'https://xueq

  • 基于Python实现股票数据分析的可视化

    目录 一.简介 二.代码 1.主文件 2.数据库使用文件 3.ui设计模块 4.数据处理模块 三.数据样例的展示 四.效果展示 一.简介 我们知道在购买股票的时候,可以使用历史数据来对当前的股票的走势进行预测,这就需要对股票的数据进行获取并且进行一定的分析,当然了,人们是比较喜欢图形化的界面的,因此,我们在这里采用一种可视化的方法来实现股票数据的分析. 二.代码 1.主文件 from work1 import get_data from work1 import read_data from w

  • python实现股票历史数据可视化分析案例

    投资有风险,选择需谨慎. 股票交易数据分析可直观股市走向,对于如何把握股票行情,快速解读股票交易数据有不可替代的作用! 1 数据预处理 1.1 股票历史数据csv文件读取 import pandas as pd import csv df = pd.read_csv("/home/kesci/input/maotai4154/maotai.csv") 1.2 关键数据--在csv文件中选择性提取"列" df_high_low = df[['date','high',

  • python基于机器学习预测股票交易信号

    引言 近年来,随着技术的发展,机器学习和深度学习在金融资产量化研究上的应用越来越广泛和深入.目前,大量数据科学家在Kaggle网站上发布了使用机器学习/深度学习模型对股票.期货.比特币等金融资产做预测和分析的文章.从金融投资的角度看,这些文章可能缺乏一定的理论基础支撑(或交易思维),大都是基于数据挖掘.但从量化的角度看,有很多值得我们学习参考的地方,尤其是Pyhton的深入应用.数据可视化和机器学习模型的评估与优化等.下面借鉴Kaggle上的一篇文章<Building an Asset Trad

  • 利用Python分析一下最近的股票市场

    目录 一.数据获取 二.合并数据 三.绘制股票每日百分比变化 四.箱线图 五.计算月化夏普比率 六.结论 一.数据获取 数据获取范围为2022年一月一日到2022年2月25日,获取的数据为俄罗斯黄金,白银,石油,银行,天然气: # 导入模块 import numpy as np import pandas as pd import yfinance as yf # GC=F黄金,SI=F白银,ROSN.ME俄罗斯石油,SBER.ME俄罗斯银行,天然气 tickerSymbols = ['GC=F

  • 利用python分析access日志的方法

    前言 WAF上线之后,处理最多的是误报消除. 产生误报有多种原因,比如web应用源码编写时允许客户端提交过多的cookie:比如单个参数提交的数值太大. 把误报降低到了可接受的范围后,还要关注漏报.WAF不是神,任何WAF都可能被绕过.所以还需要定位漏过的攻击,明确漏报的原因,才能update WAF的策略. 要定位漏报,就必须分析Web应用的访问日志了.一个站点,每天产生的access日志大概接近1GB,显然靠肉眼看是不现实的.这就需要用python帮助自动分析. 实现思路 拿我司某Web系统

  • 如何利用Python分析出微信朋友男女统计图

    写在前面 现在人人都有微信,一句"咱们加个微信呗"搭载了你我之间的友谊桥梁,浑然不知自己的微信朋友已经四五百了,甚至上千,几千的都有:然而那个是那个,谁是谁,是男是女都分不清楚了,今天咱们就来统计一下你微信朋友的男女比例,来看你平常喜欢加男性朋友还是女性朋友,哈哈,暴露了吧. 下面话不多说了,来一起看看详细的介绍吧 环境安装 有一个挺有意思的库是itchat,它是一个开源的微信个人接口,咱们就用itchat来统计自己微信朋友的性别比例,并且用柱状图呈现出来,使自己一目了然. (1)首先

  • 利用Python中的pandas库对cdn日志进行分析详解

    前言 最近工作工作中遇到一个需求,是要根据CDN日志过滤一些数据,例如流量.状态码统计,TOP IP.URL.UA.Referer等.以前都是用 bash shell 实现的,但是当日志量较大,日志文件数G.行数达数千万亿级时,通过 shell 处理有些力不从心,处理时间过长.于是研究了下Python pandas这个数据处理库的使用.一千万行日志,处理完成在40s左右. 代码 #!/usr/bin/python # -*- coding: utf-8 -*- # sudo pip instal

  • 利用python调用摄像头的实例分析

    这篇文章主要介绍了python调用摄像头的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下 一.打开摄像头 import cv2 import numpy as np def video_demo(): capture = cv2.VideoCapture(0)#0为电脑内置摄像头 while(True): ret, frame = capture.read()#摄像头读取,ret为是否成功打开摄像头,true,false. frame为视频的每一帧图像 frame = c

  • python利用pandas分析学生期末成绩实例代码

    安装Pandas Pandas是构建在Python编程语言之上的一个快速.强大.灵活且易于使用的开源数据分析和操作工具.Pandas是基于Numpy的专业数据分析工具,可以灵活高效的处理各种数据集. 我们使用pip进行安装(如果没有可自行查询如何安装pip)安装panda最简单的方法是将其作为Anaconda的一部分安装,Anaconda主要用于数据分析和科学计算.还提供源代码.PyPI.ActivePython.各种Linux发行版或开发版本进行安装的说明. 当然,最为基础的Python环境还

  • 如何利用Python实现简单C++程序范围分析

    目录 1.实验说明 2.项目使用 3.算法原理 3.1构建CFG 3.2构建ConstraintGraph 3.3构建E-SSAConstraintGraph 3.4三步法 3.4.1Widen 3.4.2FutureResolution& Narrow 4.实验结果 5.总结 1. 实验说明 问题要求:针对静态单赋值(SSA)形式的函数中间代码输入,输出函数返回值的范围 实现思路: 基本根据 2013年在CGO会议上提出的“三步法”范围分析法加以实现[3],求得各个变量的范围 算法优势:空间复

  • 利用Python对中国500强排行榜数据进行可视化分析

    目录 一.前言 二.数据采集 1.开始爬取 获取企业列表 获取企业对应url 获取每一个企业相关数据 2.保存到Excel 三.可视化分析 1.省份分布 导入相关可视化库 统计数据 地图可视化 2.营业收入年增率 3.营业收入年减率 4.利润年增率 5.利润年减率 6.排名上升最快20家企业 7.排名下降最快20家企业 8.资产区间分布 9.市值区间分布 10.营业收入区间分布 11.利润区间分布 12.中国500强企业-排名前10营业收入.利润.资产.市值.股东权益 四.总结 一.前言 今天来

  • 利用python实现简单的情感分析实例教程

    目录 1 数据导入及预处理 1.1 数据导入 1.2 数据描述 1.3 数据预处理 2 情感分析 2.1 情感分 2.2 情感分直方图 2.3 词云图 2.4 关键词提取 3 积极评论与消极评论 3.1 积极评论与消极评论占比 3.2 消极评论分析 总结 python实现简单的情感分析 1 数据导入及预处理 1.1 数据导入 # 数据导入 import pandas as pd data = pd.read_csv('../data/京东评论数据.csv') data.head() 1.2 数据

  • 利用Python爬虫爬取金融期货数据的案例分析

    目录 任务简介 解决步骤 代码实现 总结 大家好 我是政胤今天教大家爬取金融期货数据 任务简介 首先,客户原需求是获取https://hq.smm.cn/copper网站上的价格数据(注:获取的是网站上的公开数据),如下图所示: 如果以该网站为目标,则需要解决的问题是“登录”用户,再将价格解析为表格进行输出即可.但是,实际上客户核心目标是获取“沪铜CU2206”的历史价格,虽然该网站也有提供数据,但是需要“会员”才可以访问,而会员需要氪金...... 数据的价值!!! 鉴于,客户需求仅仅是“沪铜

随机推荐