<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

yfinance:獲取數據的Python第三方模塊

對面小姐姐 ? 來源:Python實用寶典 ? 作者:Python實用寶典 ? 2023-10-21 14:32 ? 次閱讀

yfinance 是一個使用 Yahoo! 獲取數據的 Python 第三方模塊。它支持獲取最細到1分鐘級的歷史數據及股票基本面數據,是免費獲得美股分鐘級及以上粒度數據的不二之選。

1.準備

開始之前,你要確保Python和pip已經成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。

**(可選1) **如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優點:Python 編程的最好搭檔—VSCode 詳細指南。

請選擇以下任一種方式輸入命令安裝依賴

  1. Windows 環境 打開 Cmd (開始-運行-CMD)。
  2. MacOS 環境 打開 Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install yfinance

2.yfinance 基本使用

通過yfinance你可以使用一樣命令下載任意美股股票的數據,比如:

import yfinance as yf

# 單股
data = yf.download("AAPL", start="2017-01-01", end="2017-04-30")
# Open High Low Close Adj Close Volume
# Date
# 2017-01-03 28.950001 29.082500 28.690001 29.037500 27.257641 115127600
# 2017-01-04 28.962500 29.127501 28.937500 29.004999 27.227135 84472400
# 2017-01-05 28.980000 29.215000 28.952499 29.152500 27.365593 88774400
# 2017-01-06 29.195000 29.540001 29.117500 29.477501 27.670671 127007600
# 2017-01-09 29.487499 29.857500 29.485001 29.747499 27.924126 134247600
# ......

# 多股
data = yf.download("SPY AAPL", start="2017-01-01", end="2017-04-30",
                   group_by="ticker")
# AAPL ... SPY
# Open High Low Close ... Low Close Adj Close Volume
# Date ...
# 2017-01-03 28.950001 29.082500 28.690001 29.037500 ... 223.880005 225.240005 205.509079 91366500
# 2017-01-04 28.962500 29.127501 28.937500 29.004999 ... 225.610001 226.580002 206.731735 78744400
# 2017-01-05 28.980000 29.215000 28.952499 29.152500 ... 225.479996 226.399994 206.567459 78379000
# 2017-01-06 29.195000 29.540001 29.117500 29.477501 ... 225.899994 227.210007 207.306549 71559900
# ......

默認是獲取天級別的數據,如果你需要獲取分鐘級的,只需要添加interval參數

import yfinance as yf

# 單股
data = yf.download("AAPL", start="2022-05-18", end="2022-05-23", interval="1m")
print(data)

# Open High Low Close Adj Close Volume
# Datetime
# 2022-05-17 12:00:00-04:00 148.000000 148.050003 147.839996 147.865005 147.865005 0
# 2022-05-17 12:01:00-04:00 147.869507 147.919998 147.779999 147.889893 147.889893 123746
# 2022-05-17 12:02:00-04:00 147.889999 147.929993 147.750000 147.907394 147.907394 92847
# 2022-05-17 12:03:00-04:00 147.904999 147.929993 147.785004 147.839996 147.839996 79266
# 2022-05-17 12:04:00-04:00 147.839996 147.895004 147.779999 147.860001 147.860001 58905
# ......

它支持的分鐘級參數有:1m,2m,5m,15m,30m,60m,90m 等等。

此外還支持小時級和天線、周線、月線級別:1h,1d,5d,1wk,1mo,3mo 等等。

獲取到的數據類型就是Dataframe,因此你還可以直接保存為csv文件:

# 公眾號:Python 實用寶典
import yfinance as yf

data = yf.download("AAPL", start="2022-05-18", end="2022-05-23", interval="1m")
data.to_csv("aapl_20220518_20220523.csv")
# 保存到本地,命名為 aapl_20220518_20220523.csv

3.通過yfinance獲取股票基本數據

如果你需要獲取一只股票的基本數據,如市值、市盈率、股息等,你可以通過定義一只股票的Ticker,利用其info屬性獲?。?/p>

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
print(aapl.info)
# {'zip': '95014', 'sector': 'Technology', 'fullTimeEmployees': 154000, 'longBusinessSummary': 'Apple ......

這個字典比較長,這里省略顯示了,里面包含了比如市盈率(PE)等信息

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
aapl.info['forwardPE']
# 20.974085

你還可以獲取每次派息數據:

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
print(aapl.dividends)
# Date
# 1987-05-11 0.000536
# 1987-08-10 0.000536
# 1987-11-17 0.000714
# 1988-02-12 0.000714
# 1988-05-16 0.000714
# ...
# 2021-05-07 0.220000
# ... ...

獲取資產負債表:

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
print(aapl.balancesheet)
# 2021-09-25 2020-09-26 2019-09-28 2018-09-29
# Total Liab 2.879120e+11 2.585490e+11 2.480280e+11 2.585780e+11
# Total Stockholder Equity 6.309000e+10 6.533900e+10 9.048800e+10 1.071470e+11
# Other Current Liab 5.357700e+10 4.786700e+10 4.324200e+10 3.929300e+10
# Total Assets 3.510020e+11 3.238880e+11 3.385160e+11 3.657250e+11
# Common Stock 5.736500e+10 5.077900e+10 4.517400e+10 4.020100e+10
# ......

現金流數據:

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
print(aapl.cashflow)
# 2021-09-25 2020-09-26 2019-09-28 2018-09-29
# Investments -2.819000e+09 5.335000e+09 5.809300e+10 3.084500e+10
# Change To Liabilities 1.400200e+10 -1.981000e+09 -2.548000e+09 9.172000e+09
# Total Cashflows From Investing Activities -1.454500e+10 -4.289000e+09 4.589600e+10 1.606600e+10
# ......

新聞數據:

# 公眾號:Python 實用寶典
import yfinance as yf

aapl = yf.Ticker("aapl")
print(aapl.news)
# [{'uuid': '476a41c6-c6dc-3050-9b8f-c3777c8485b2', 'title': "Dow Jones Futures Rise After 'Hard' Reality Hits Market; What To Do Now", 'publisher': "Investor's Business Daily",
# 'link': 'https://finance.yahoo.com/m/476a41c6-c6dc-3050-9b8f-c3777c8485b2/dow-jones-futures-rise-after.html',
# 'providerPublishTime': 1653305573, 'type': 'STORY'}, {'uuid': '721d466d-5394-3f3c-a9c3-b0920d44c7f3' ......

總之,有了yfinance這個神器,除了高頻數據你無法獲取之外,其他的美股數據你都能獲取得到,有需要的小伙伴可以試試,非常好用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模塊
    +關注

    關注

    7

    文章

    2520

    瀏覽量

    46712
  • 數據
    +關注

    關注

    8

    文章

    6542

    瀏覽量

    87806
  • python
    +關注

    關注

    52

    文章

    4698

    瀏覽量

    83611
收藏 人收藏

    評論

    相關推薦

    Labview如何內嵌操作第三方EXE程序!

    自己在網上搜了下相關資料,能把第三方EXE內嵌進入容器里,但是有個問題,這個第三方軟件必須手動拖到容器正中間,手動最大化。請問有什么方法可以自動實現嗎? 下圖是我內嵌的POLL 軟件。如圖!
    發表于 04-18 14:26

    如何打開第三方軟件

    請問大神們 誰知道如何在Labview中 打開第三方軟件,我現在想打開工程后 自動打開USB視頻采集卡,然后就直接顯示出采集卡采集到的圖像了請問如何打開在這先謝過了
    發表于 09-11 16:26

    如何把第三方庫加到PROTEUS中?

    新手求教,弱弱的問下,下了一個第三方庫,說是要先安裝,再添加路徑,可是我下來的第三方庫沒有看到安裝文件啊。還望指教如何添加!
    發表于 06-15 22:32

    Proteus 第三方元件庫

    第三方元件庫,基本包含大部分常用元件的,分享給大家。
    發表于 04-16 22:06

    第三方dll調用問題?。?!

    第三方dll,沒有.h,labview怎么實現調用,dll可以用VS打開,類庫說明也有
    發表于 05-11 09:14

    LabVIEW與第三方軟件交互問題

    現在做一個軟件,就是通過LabVIEW去與第三方軟件進行交互操作!已經通過百度找到了利用user32.dll調用FindWindowA與PostMessage去實現對計算器,找了多方資料也沒有找到解決辦法。想做一個軟件就是對圖片2中第三方軟件中控件進行控制的方法謝謝各位幫
    發表于 12-26 17:13

    proteus第三方元件庫

    proteus第三方元件庫
    發表于 05-26 10:44

    下載python第三方

    python第三方庫的下載
    發表于 07-02 13:12

    國內知名第三方檢測認證機構排名

    第三方檢測機構國內起步的很晚,基本是2000年以后的事情,進入改革開放以來,特別是新世紀以來,國家對第三方機構的政策越來越放開了,很多職能部門都逐步下放到第三方機構來做。為了保證產品品質,就有
    發表于 07-19 16:57

    Detectron訓練第三方數據集測試

    從零開始使用Detectron訓練第三方數據集是什么體驗(六)
    發表于 04-14 11:44

    Python入門之36常用第三方模塊獲取系統信息psutil

    Python入門】36常用第三方模塊獲取系統信息psutil
    發表于 07-16 06:31

    關于LabVIEW調用第三方exe,如何去控制第三方exe按鈕的問題

    我想調用第三方的exe,但并沒有給出任何接口,就單單一個exe程序,通過查資料得出可以用window自帶的user32.dll可以控制第三方的軟件,通過FindWindowA函數找到該軟件句柄,通過
    發表于 08-12 16:37

    請問第三方平臺授權如何實現?

    第三方平臺授權如何實現
    發表于 11-10 07:27

    頭文件中包含第三方文件

    macrocmake如果源文件(例如 CPP)中包含第三方頭文件,但是頭文件(例如 hpp)中不包含該第三方文件頭,采用 PRIVATE。如果源文件和頭文件中都包含該第三方文件頭,采用 PUBLIC
    發表于 08-18 08:10

    第三方APP如何獲取HDMI IN畫面和聲音

    問題描述及復現步驟:官方提供了一個Live TV能夠預覽HDMI IN的畫面, 第三方應用如何獲取HDMI IN的畫面和聲音??是否提供著這樣的獲取接口供第三方APP調用?
    發表于 09-08 16:34
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>