A Python module to get stock data and news from the UniBit API
UniBit is a free API that provides real time and historical financial data, as well as financial news. This SDK is a client-side implementation of the UniBit API (https://www.unibit.ai) which has Python functions for each available API call. For the UniBit API documentation, visit (https://unibit.ai/docs)
To get started, sign up at (https://unibit.ai/signup) to request a free access key. With a free key, all non-news API features are available with generous rate limits.
The UniBit Stock News API requires a premium account, but in return gives a wealth of news articles on all 8000 US-listed companies. Along with this, UniBit provides analyses on each news article. With deep learning, each article is classified into a comprehensive genre list, and named entities and sentiment are also extracted.
Unibit python SDK is now available for Version2 APIs!
For the API documentation, visit (https://unibit.ai/docs/V2.0/introduction)
For the python SDK for Version2 APIs, go to Version2 APIs example
If there are multiple tickers in your input, please put them into a list, see examples Version2 APIs example
To install UniBit, type:
pip install python-unibit
To install from the source, type:
git clone https://github.com/unibit-api/python-unibit.git
pip install -e python-unibit
Get the real time price of Apple (AAPL)
from unibit_api_v2.stock import StockPrice
sp = StockPrice(key="YOUR_KEY")
aapl_stock = sp.getHistoricalStockPrice(ticker=["AAPL","WORK"],startDate="2019-09-15",endDate="2019-09-20")
Get Apple's Company Profile
from unibit_api_v2.company import CompanyInfo
ci = CompanyInfo(key="YOUR_KEY")
aapl_profile = ci.getCompanyProfile(ticker=["AAPL"])
Get Apple's Stock News
from unibit_api_v2.news import StockNews
sn = StockNews(key = "YOUR_KEY")
aapl_news = sn.getStockNews(ticker = ["AAPL"], startDate = "2019-08-25", endDate = "2019-08-30", startMinute = "10:00:00", endMinute = "11:00:00", genre = "partnership", sector = "technology")
Get Corporate Splits
from unibit_api_v2.corporate import Corporate
corporate = Corporate(key = "YOUR_KEY")
corporate_splits = corporate.getCorporateSplits(ticker = ["all"], startDate="2019-02-01", endDate="2019-02-11")
Get Historical Crypto Price
from unibit_api_v2.crypto import CryptoPrice
cp = CryptoPrice(key = "YOUR_KEY")
historical_crypto_price = cp.getHistoricalCryptoPrice(ticker=["BCH-USD"], startDate = "2019-08-25", endDate = "2019-08-30")
Get Forex Rate
from unibit_api_v2.forex import ForexRate
fr = ForexRate(key = "YOUR_KEY")
realtime_forex = fr.getRealtimeForexRates(base = "usd", foreign = ["cny","eur","inr"], amount = 1, startDate = "2019-08-29", endDate = "2019-08-29", startMinute = "11:00:00", endMinute = "12:00:00")
Get Asset Coverage
from unibit_api_v2.reference import Coverage
c = Coverage(key = "YOUR_KEY")
asset_coverage = c.getAssetCoverage(exchange = "NASDAQ")
The CSV format is supported on many of the UniBit APIs. Requesting a CSV datatype will return a csv.reader()
of the data
from unibit.stockprice import StockPrice
sp = StockPrice(key="YOUR_KEY")
aapl_price_csv = sp.getPricesRealTime("AAPL", size=10, datatype="csv")
Get the real time price of Apple (AAPL)
from unibit_api_v1.stockprice import StockPrice
sp = StockPrice(key="YOUR_KEY")
aapl_price = sp.getPricesRealTime("AAPL")
Get Apple's Company Profile
from unibit_api_v1.companyinfo import CompanyInfo
ci = CompanyInfo(key="YOUR_KEY")
aapl_profile = ci.getCompanyProfile("AAPL")
Get the latest news on Apple
from unibit_api_v1.news import StockNews
sn = StockNews(key="YOUR_KEY")
aapl_news = sn.getLatestStockNews("AAPL")
In the UniBit Python SDK, we not only want to wrap the UniBit API, but open source methods of stock analysis, be it with some fancy quantitative strategy, with graphing, or with machine learning. Propose something in an issue or contact me at stefan@unibit.ai if you want to help!
Detailed documentation on the UniBit API is available at https://unibit.ai/docs/V2.0/introduction
This project is developed under an MIT License.