如何撈取台美股所有的股號的資料並儲存於SQLite? Part 2

更新於 發佈於 閱讀時間約 7 分鐘

之前在如何撈取台美股所有的股號的資料並儲存於SQLite? Part 1討論到如何使用stocksymbol撈取台美股股票代碼,在這篇我們繼續介紹如何針對我們撈取的股票代碼進行資料撈取。

You can check this for English version!

raw-image



步驟1: 於Colab筆記本中安裝yahooquery。

!pip install yahooquery


步驟2:

  • 首先,先拿高通(QCOM)來了解回傳資料的結構。
  • 我們發現我們要撈取的收盤價、本益比、均值落在list(details.summary_detail.values())[0]
from yahooquery import Ticker

symbols = ['QCOM']

list(details.summary_detail.values())[0]
raw-image

步驟3: 定義函式get_info,使用try-except避免回傳空值中斷流程。

from yahooquery import Ticker

def get_info(tickers):
try:
details = Ticker(tickers)
tickers = list(details.summary_detail)[0]
previousClose = list(details.summary_detail.values())[0].get('previousClose')
dividendYield = list(details.summary_detail.values())[0].get('dividendYield')
trailingPE = list(details.summary_detail.values())[0].get('trailingPE')
forwardPE = list(details.summary_detail.values())[0].get('forwardPE')
priceToSalesTrailing12Months = list(details.summary_detail.values())[0].get('priceToSalesTrailing12Months')
fiftyDayAverage = list(details.summary_detail.values())[0].get('fiftyDayAverage')
twoHundredDayAverage = list(details.summary_detail.values())[0].get('twoHundredDayAverage')
cursor = con.cursor()

con.execute(" INSERT INTO Tickers_Info (tickers , previousClose , dividendYield, trailingPE , forwardPE, priceToSalesTrailing12Months, fiftyDayAverage, twoHundredDayAverage) VALUES (?, ? , ?, ?, ?, ?, ?, ?) ",
(str(tickers),str(previousClose), str(dividendYield) , str(trailingPE) , str(forwardPE ), str(priceToSalesTrailing12Months), str(fiftyDayAverage) , str(twoHundredDayAverage)))

except:
print(tickers)
pass

return


步驟4: 建立SQLite的資料表以儲存剛剛存取的資料。

import sqlite3
con = sqlite3.connect('/content/drive/MyDrive/data/Stock.db')
cursor = con.cursor()
query = """
CREATE TABLE "Tickers_Info"
(
[Tickers] varchar(50) NOT NULL,
[previousClose] float,
[dividendYield] float,
[trailingPE] float,
[forwardPE] float,
[priceToSalesTrailing12Months] float,
[fiftyDayAverage] float,
[twoHundredDayAverage] float,
PRIMARY KEY(Tickers)
)
"""

cursor.execute(query)

con.commit()
cursor.close()


步驟5: 執行

  • 於Part 1建立的股票代碼資料表撈取存成df_Tickers
  • 於每列的股號(row[0])輸入get_info。
import pandas as pd

con = sqlite3.connect('/content/drive/MyDrive/data/Stock.db')
cursor = con.cursor()
con.execute('''DELETE FROM Tickers_Info''')
con.commit()

df_Tickers = pd.read_sql('select distinct symbol from Tickers', con)

for row in df_Tickers.to_records(index=False):
tickers_list = []
tickers_list.append(str(row[0]))
get_info(tickers_list)

con.commit()
con.close()


步驟6: 執行後,我們可以進行簡單的分析,比如找尋PE<10和收盤價低於200天均線的股票。

import sqlite3
import pandas as pd
con = sqlite3.connect('/content/drive/MyDrive/data/Stock.db')
df_data = pd.read_sql('select * from Tickers_Info where forwardPE < 10 and twoHundredDayAverage - previousClose >=0', con)
con.close()
df_data

If you want to support Informula, you can buy us a coffee here :)

𝗕𝘂𝘆 𝗺𝗲 𝗮 𝗰𝗼𝗳𝗳𝗲𝗲

Thank you and more to come :)


留言
avatar-img
留言分享你的想法!
avatar-img
Informula 生產力工坊
8會員
23內容數
Informula 致力於提升工作生產力,分享生產力工具使用情境、簡單的程式、資料處理、數據分析、網路爬蟲應用等。 尋求長期的自我成長要求或職場臨時急救包的朋友歡迎一起交流。
2023/10/11
債券是發行者為籌集資金而發行、在約定時間支付一定比例的利息,並在到期時償還本金的一種有價證券。根據不同發行方,可分為政府債券、金融債券以及公司債券。投資者購入債券,就如借出資金予政府、大企業或其他債券發行機構。這三者中政府債券因為有政府稅收作為保障,因而風險最小,但收益也最小。公司債券風險最大,
Thumbnail
2023/10/11
債券是發行者為籌集資金而發行、在約定時間支付一定比例的利息,並在到期時償還本金的一種有價證券。根據不同發行方,可分為政府債券、金融債券以及公司債券。投資者購入債券,就如借出資金予政府、大企業或其他債券發行機構。這三者中政府債券因為有政府稅收作為保障,因而風險最小,但收益也最小。公司債券風險最大,
Thumbnail
2023/08/22
之前在如何計算ETF的PE ratio — 00878?中討論到如何使用計算00878的PE以進行對於此ETF的估值,我們發現關鍵在於如何有效撈取一檔ETF的成分和持有股數和其市值(或發行股數),我們會持續這個系列的原因是每個發行商給的資料略有不同
Thumbnail
2023/08/22
之前在如何計算ETF的PE ratio — 00878?中討論到如何使用計算00878的PE以進行對於此ETF的估值,我們發現關鍵在於如何有效撈取一檔ETF的成分和持有股數和其市值(或發行股數),我們會持續這個系列的原因是每個發行商給的資料略有不同
Thumbnail
2023/08/18
在上一篇如何計算ETF的PE ratio — QQQ?我們討論到如何計算出ETF QQQ的PE,有些朋友詢問為什麼跟有些平台的數字還要低很多?
Thumbnail
2023/08/18
在上一篇如何計算ETF的PE ratio — QQQ?我們討論到如何計算出ETF QQQ的PE,有些朋友詢問為什麼跟有些平台的數字還要低很多?
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
全球科技產業的焦點,AKA 全村的希望 NVIDIA,於五月底正式發布了他們在今年 2025 第一季的財報 (輝達內部財務年度為 2026 Q1,實際日曆期間為今年二到四月),交出了打敗了市場預期的成績單。然而,在銷售持續高速成長的同時,川普政府加大對於中國的晶片管制......
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
重點摘要: 6 月繼續維持基準利率不變,強調維持高利率主因為關稅 點陣圖表現略為鷹派,收斂 2026、2027 年降息預期 SEP 連續 2 季下修 GDP、上修通膨預測值 --- 1.繼續維持利率不變,強調需要維持高利率是因為關稅: 聯準會 (Fed) 召開 6 月利率會議
Thumbnail
對於剛接觸Python程式的使用者來說,要一口氣學會爬蟲可能相對困難,但若想即時且輕鬆獲得台股相關數據,你可以利用證交所所提供的API進行數據蒐集。只需要簡單幾行程式碼,就能輕鬆抓到台股上千支股票的每日資訊,是不是棒呆了!!
Thumbnail
對於剛接觸Python程式的使用者來說,要一口氣學會爬蟲可能相對困難,但若想即時且輕鬆獲得台股相關數據,你可以利用證交所所提供的API進行數據蒐集。只需要簡單幾行程式碼,就能輕鬆抓到台股上千支股票的每日資訊,是不是棒呆了!!
Thumbnail
因為工作的關係,需要在EXCEL產生和台股有關的資訊。 要抓取台股的方式有很多,譬如說用EXCEL 現在的功能從網頁匯入,但是畢竟愛寫程式的人就是因為懶,不想每次都用滑鼠點點點,所以就想要如何用VBA克服。 還好研究了一下,備齊以下幾個工具,就可以了。 (1)要有一個可以解析JSON格式的Li
Thumbnail
因為工作的關係,需要在EXCEL產生和台股有關的資訊。 要抓取台股的方式有很多,譬如說用EXCEL 現在的功能從網頁匯入,但是畢竟愛寫程式的人就是因為懶,不想每次都用滑鼠點點點,所以就想要如何用VBA克服。 還好研究了一下,備齊以下幾個工具,就可以了。 (1)要有一個可以解析JSON格式的Li
Thumbnail
透過證交所提供的臺灣證券交易所發行量加權股價指數成分股暨市值比重,可以知道每一檔股票對指數所呈現的比重為多少。主要內容分享XQ報價源股價抓取、證交所加權股價指數成分股認識、加權指數貢獻點數計算、加權指數貢獻點數總表等,讓您可以瞭解主力的想法與控盤方式。
Thumbnail
透過證交所提供的臺灣證券交易所發行量加權股價指數成分股暨市值比重,可以知道每一檔股票對指數所呈現的比重為多少。主要內容分享XQ報價源股價抓取、證交所加權股價指數成分股認識、加權指數貢獻點數計算、加權指數貢獻點數總表等,讓您可以瞭解主力的想法與控盤方式。
Thumbnail
善用工具,可以讓大家功課做的更快更舒服,我們先複習一下喔。 一、先做出一個所有可轉債的頁面及Excel,方法如下: 二、第二個請用做出來的Excel,使用這個公式,提取可轉債的前四碼並且加上.TW,=LEFT(A2,4)&".TW",如下圖 三、提期出來的文字複製到一個全新的
Thumbnail
善用工具,可以讓大家功課做的更快更舒服,我們先複習一下喔。 一、先做出一個所有可轉債的頁面及Excel,方法如下: 二、第二個請用做出來的Excel,使用這個公式,提取可轉債的前四碼並且加上.TW,=LEFT(A2,4)&".TW",如下圖 三、提期出來的文字複製到一個全新的
Thumbnail
之前在如何撈取台美股所有的股號的資料並儲存於SQLite? Part 1討論到如何使用stocksymbol撈取台美股股票代碼,在這篇我們繼續介紹如何針對我們撈取的股票代碼進行資料撈取。
Thumbnail
之前在如何撈取台美股所有的股號的資料並儲存於SQLite? Part 1討論到如何使用stocksymbol撈取台美股股票代碼,在這篇我們繼續介紹如何針對我們撈取的股票代碼進行資料撈取。
Thumbnail
之前在如何撈取台美股所有的股號的資料並儲存於SQLite? Part 1討論到如何使用stocksymbol撈取台美股股票代碼,在這篇我們介紹另一種方法撈取清單。
Thumbnail
之前在如何撈取台美股所有的股號的資料並儲存於SQLite? Part 1討論到如何使用stocksymbol撈取台美股股票代碼,在這篇我們介紹另一種方法撈取清單。
Thumbnail
在此系列文章,我們將討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。在此篇文章中,我們先來探討如何獲取所有的股票代碼。 步驟1 於stocksymbol註冊帳號並獲取API金鑰。 於Colab筆記本中安
Thumbnail
在此系列文章,我們將討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。在此篇文章中,我們先來探討如何獲取所有的股票代碼。 步驟1 於stocksymbol註冊帳號並獲取API金鑰。 於Colab筆記本中安
Thumbnail
In this series of article, we will discuss how to pull stock detailed information for All Tickers in the US and TW Market.
Thumbnail
In this series of article, we will discuss how to pull stock detailed information for All Tickers in the US and TW Market.
Thumbnail
我用 GOOGLEFINANCE 做了樣版,可以讓你抓股價、找匯率資訊、翻出股票過往的歷史資料,歡迎來看看!
Thumbnail
我用 GOOGLEFINANCE 做了樣版,可以讓你抓股價、找匯率資訊、翻出股票過往的歷史資料,歡迎來看看!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News