2
3

Python株価分析でNo timezone foundとなってしまうエラー対処法

Posted at

エラー内容

「 xxxx 」の部分は企業のティッカー(証券コード)が入ります


1 Failed download:
['xxxxx']: Exception('%ticker%: No timezone found, symbol may be delisted')

問題のコード

書いたコードは下記の通り

#ダウンロードに必要なモジュールをインストール


from yahoo_fin import stock_info
import yfinance as yf
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import datetime

import pickle

import matplotlib.pyplot as plt

start_date = '2015-01-01'
end_date = '2023-12-28'

# Define the tickers
tickers = ["xxxxx", "xxxxx","xxxxx"]

# Download the data
data = yf.download(tickers, period="max", group_by='ticker')

# Check the columns in the downloaded data--
print(data.columns)

# Plot the adjusted close of the tickers
data["Adj Close"].plot(figsize=(10, 7))


原因

よく確認したら、DLできなかった企業は特定の時期より上場から非上場に以前よりなっていました。(つまり公開株ではなくなったので、株価データがない)
そのため、

end_date = '2023-12-28'

のところで引っかかったんですね。
私の場合はEnd Dateでしたが、Startdateのところでエラーが出ていたら開始年に何か問題があるはず。

Yahoo Financeや他の金融データ提供元は、廃止された企業の株価データを提供することは通常ありません。廃止や上場廃止となった企業の株式は、一般的に金融データベースから削除されるらしい。

解決方法

いつの間にか非上場になっている企業はしょうがないですが比較対象から外しましょう

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3