Skip to content

API for accessing, synchronizing, managing locally and plotting Yahoo financial data

License

Notifications You must be signed in to change notification settings

mosegui/YahooFinanceDashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YahooFinanceDashboard

API for accessing, synchronizing, managing locally and plotting Yahoo financial data.

Description

This Dashboard uses Yahoo ticker symbols for identifying financial securities and fetches the available historical data from Yahoo servers. The downloaded data is returned in the form of a data object wrapping a Pandas DataFrame (Fields: Open, Close, High, Low, Adj_Close, Volume). The downloaded data is stored locally in a series of SQL databases for allowing offline work with known data. When working online with new data flowing in, the Dashboard constantly compares the inbound data with the local copy and keeps updating the SQL databases appending the new points.

The returned data object upon data request offers as well some simple tools/functionalities for requesting filtered data, as well as for rendering different types of financial plots (close, ohlc, candlestick).

The module offers as well a separate basic service for searching and filtering Yahoo ticker symbols by ticker symbol, security name, exchage, type of security, and more. The database of available Yahoo ticker symbols in which the search is carried out gets updated periodically with information of securities in most exchanges worldwide.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development purposes.

Prerequisites

This package works with Python 3 onwards as it uses f-strings

Installing

pip install YahooFinanceDashboard

Basic Usage

Requesting data: Interaction with the data happens mainly over the YahooFinanceDashboard.Historical() object.

import datetime as dt import YahooFinanceDashboard as yfd

yahoo_ticker = 'AAPL'

data = yfd.Historical(yahoo_ticker, start=dt.datetime(2016, 2, 16), end=dt.datetime.today()) print(data.head()) Open High Low Close Adj_Close Volume Date
2016-02-16 95.019997 96.849998 94.610001 96.639999 91.070045 49057900.0 2016-02-17 96.669998 98.209999 96.150002 98.120003 92.464752 44863200.0 2016-02-18 98.839996 98.889999 96.089996 96.260002 90.711960 39021000.0 2016-02-19 96.000000 96.760002 95.800003 96.040001 90.504639 35374200.0 2016-02-22 96.309998 96.900002 95.919998 96.879997 91.296219 34280800.0

Plotting data:

data.plot_prices() data.plot_prices(plot_type='ohlc') data.plot_prices(plot_type='close')

Searching for tickers:

similar = tickers_browser.search_tickers(name='Citi group') print(similar.head()) index Name Exchange exchangeDisplay Type TypeDisplay Ticker
C 10 Citigroup Inc. NYQ NYSE S Equity QNTQF 4527 QinetiQ Group plc PNK OTC Markets S Equity C.BA 13853 Citigroup Inc. BUE Buenos Aires S Equity C.MX 13906 Citigroup Inc. MEX Mexico S Equity MZ4.F 38981 Mitie Group plc FRA Frankfurt S Equity

similar = tickers_browser.search_tickers(name='Citi group', exchange='mexico') print(similar.head()) index Name Exchange exchangeDisplay Type TypeDisplay Ticker
C.MX 13906 Citigroup Inc. MEX Mexico S Equity

Authors

License

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details

About

API for accessing, synchronizing, managing locally and plotting Yahoo financial data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages