Загрузите данные об акциях и опционах с помощью python

Мне нужно загрузить исторические «данные об акциях» и текущие «данные о ценах опционов» для тикера. Может ли кто-нибудь указать мне правильный пакет. Я попробовал пакет yahoo-financial, но он не работает. Может ли кто-нибудь опубликовать фрагмент кода, чтобы загрузить то же самое. Я видел несколько сообщений для загрузки данных об акциях, но ни одной для загрузки данных по опционам. Таким образом, любая помощь в загрузке обоих будет принята с благодарностью.

Вот ссылки на исторические данные и данные по опционам от Yahoo Finance, просто для справки.

https://finance.yahoo.com/quote/MSFT/history?p=MSFT https://finance.yahoo.com/quote/MSFT/options?p=MSFT

Спасибо Рагхава


person Raghava kattamudi    schedule 19.12.2018    source источник
comment
Что не работает в пакете yahoo-finance? Каким образом не работает?   -  person mypetlion    schedule 19.12.2018


Ответы (3)


Вы можете получить текущие данные по опционам и исторические данные о ценах на акции с помощью пакета yahoo_fin (см. Здесь: http://theautomatic.net/yahoo_fin-documentation/). Он поставляется с двумя модулями: stock_info и опциями.

Чтобы получить данные о текущих опциях, вы можете:

from yahoo_fin import options

# gets the data for nearest upcoming expiration date
options.get_option_chain("nflx")

# specific expiration date
options.get_options_chain("nflx", "04/26/2019")


# get call options only
options.get_calls("nflx", "04/26/2019")


# get put options only
options.get_puts("nflx", "04/26/2019")

Для исторических данных о ценах на акции вы можете:

from yahoo_fin import stock_info as si

# pulls historical OHLC data into a pandas data frame
si.get_data("nflx")

# or some other ticker
si.get_data("insert ticker here")
person atreadw    schedule 13.04.2019

Я решил эту проблему с помощью библиотеки python robin_stocks, в которой есть феноменальная документация.

Вызов robin_stocks.options.get_chains('TSLA') вернет словарь с данными общих опций для конкретного тикера. Ключ expiration_dates имеет в качестве значения список дат истечения срока действия опционов.

Примечание. Для доступа к этому вам нужна учетная запись Robinhood.

person Mauro    schedule 03.09.2020

Yahoo Finance изменила многие свои конечные точки API. Из-за этого пакет pandas_datareader отказался от поддержки Yahoo. Сейчас может быть полезно что-то вроде этого: http://www.blackarbs.com/blog/how-to-build-a-sequential-option-scraper-with-python-and-requests/7/8/2017 Это смесь Beautiful Soup и других пакетов для удаления данных из Интернета. Если вы хотите использовать старую версию Pandas, вы можете применить это исправление, но считайте, что это временное решение: https://pypi.org/project/fix-yahoo-finance/ Дирк

person user1653205    schedule 11.02.2019