20230403-如何用python分析股票

一个基本的股市分析项目,旨在了解金融市场 python编程的一些基本知识,让你5分钟上手股票可视化分析,

导入必要的模块

我们导入numpy pandas 和用于作图的matplotlib 库

第一部分

从雅虎财经获取特斯拉 通用和福特的每日收盘价数据

第二部分 可视化数据,并对有趣的事情进行可视化检查,在本节中,我们还将从头开始教你怎样画蜡烛图

在同一张图中画出特斯拉 通用和福特股票的开盘价曲线

每只股票的最大成交量是在哪一天

从开盘价格的时间序列可视化来看,似乎特斯拉的股价一直都要比通用和福特的股价更有高,但至于为什么特斯拉的股价一直高于其他两支股票,这个问题的答案不是单由股价决定,我们还需要考虑公司的总市值,尽管我们目前的数据并没有关于目前股票总单位的信息,但是,我们可以做一个简单的计算,在这里我们假设总的交易金额将是成交量列乘以开盘价格,这只是对市值的粗略估计而不是真实的市场价值,我们只是使用时间序列来直观地表示交易的总金额

为每个dataframe 创建一个名为总交易量新的一列,及开盘价格与成交量的乘积

第三部分,通过计算和比较每日收益来进行基本财务分析,并绘制每只股票的每日收益分布图来识别三者之间的关系

每日百分比可以通过下面的公式计算所得

从收盘价 列计算收益

同时我们用一些box plot 来比较三只股票的收益范围

比较股票的日收益

我们绘制散点矩阵图,以查看每个股票日收益率之间的相关性

从上面的scatter 矩阵图 ,我们可以看出只有通用和特斯拉汇报率关系图和其他4对关系图看起来不一样,所以我们可以推断特斯拉和通用确实有某种关系

累积日收益

日收益 是指股票价格相对于前一日的损益

累积回报 累积回报是相对于投资计算的,如果累计回报超过一,你就是在盈利,否则就是亏损

累积日收益的公式为

df[daily_cumulative_return] = ( 1+df[pct_daily_return] ).cumprod()

假设我们从2012年1月3日开始买入这三支股票并一直持有,则我们的累积日均收益为

下面我们来可视化一下三支股票的累计收益率,可以发现购入特斯拉后,它的价格涨了14倍

使用python实时监控股票,并且持续扫描大盘

使用python 实现监控股票并持续扫描大盘,可以通过以下步骤来完成

  1. 安装必要的库,需要安装 pandas numpy requests matplotlib 等库,可以通过pip 命令进行安装

获取数据 可以通过python来获取股票实时数据和历史数据

可以使用pandas 库来处理数据

数据分析,可以通过pandas 和numpy 库来进行数据分析,可以进行技术分析,例如移动平均线 MACD RSI 等,也可以进行基本面分析,例如 市盈率 市净率 ROE 等

可视化 可以使用matplotlib 库来可视化数据,例如 绘制K线图,交易量图,技术指标图等

持续扫描,可以使用python 的time 或schedule 模块来进行定时任务,例如每隔10秒钟获取一次股票数据

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2015-2024 TeX_baitu
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~