Добрый день,
Мне необходимо загрузить исторические котировки (дневки) по большому списку акций. Например, все по площадке NASDAQ. Вид результата:
TICKER |
DATE |
TIME |
HIGH |
OPEN |
LOW |
CLOSE |
VOLUME |
AAPL |
21.07.2022 |
|
|
|
|
|
|
AAPL |
22.07.2022 |
|
|
|
|
|
|
GOOG |
21.07.2022 |
|
|
|
|
|
|
GOOG |
22.07.2022 |
|
|
|
|
|
|
NFLX |
21.07.2022 |
|
|
|
|
|
|
NFLX |
22.07.2022 |
|
|
|
|
|
|
… |
|
|
|
|
|
|
|
Зачем так — хочу сделать нечто вроде скринера.
Нужна помощь, не знаю, как это осуществить. Втч за разумное вознаграждение
Благодарю заранее
И цена вопроса?
Login1,
!conda install yfinance
!conda install pandas
from time import sleep
import yfinance as yf
import pandas as pd
tickers = ['MSFT', 'AAPL']
pauseSeconds = 0.5
for ticker in tickers:
ticker_ = yf.Ticker(ticker)
df = ticker_.history(period=«max»)
df.drop(columns=['Dividends', 'Stock Splits'], inplace=True)
df.to_csv(f'{ticker}.csv')
print(f'{ticker} — DONE')
sleep(pauseSeconds)
Replikant_mih, Первые две строчки — если через Jupyter запускать чтобы пакеты установить. Запускать через Jupyter или как обычный python код.
Если тебе эти слова ни о чем не говорят)), то надо поставить Miniconda или Anaconda.
Login1, Ожидаемо)).
import requests
import io
from time import sleep
import yfinance as yf
import pandas as pd
url=«pkgstore.datahub.io/core/nasdaq-listings/nasdaq-listed_csv/data/7665719fb51081ba0bd834fde71ce822/nasdaq-listed_csv.csv»
s = requests.get(url).content
tickers = pd.read_csv(io.StringIO(s.decode('utf-8')))['Symbol'].unique()
pauseSeconds = 0.5
for ticker in tickers:
try:
ticker_ = yf.Ticker(ticker)
df = ticker_.history(period=«max»)
df.drop(columns=['Dividends', 'Stock Splits'], inplace=True)
df.to_csv(f'{ticker}.csv')
print(f'{ticker} — DONE')
sleep(pauseSeconds)
except:
print(f'{ticker} — ERROR')
Replikant_mih, а в чем проблема Yahoo finance? Задержка?
В скором времени планирую решать схожую задачу. Нужны данные по фьючам и без задержек, запросы раз в минуту, например, не подскажите откуда легче вязть?