Python package containing several classes and data for extracting and manipulating market and trading data.
Project description
BTG Solutions - Data Service
Python library to get Brazilian Financial Market Data.
Installation
pip3 install btgsolutions-dataservices-python-client
Example - WebSocket Books
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', data_type='books', instruments=['PETR4', 'VALE3'])
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
## Another examples
# ws.available_to_subscribe()
Example - WebSocket Trades Delayed
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', data_type='trades', stream_type='delayed', instruments=['PETR4', 'VALE3'])
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
## Another examples
# ws.available_to_subscribe()
Example - WebSocket Trades with 1 second throttle
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', data_type='trades', stream_type='throttle', instruments=['PETR4', 'VALE3'])
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
## Another examples
# ws.available_to_subscribe()
Example - WebSocket Securities (Derivatives)
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', data_type='securities', data_subtype='derivatives')
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
Example - WebSocket Candles 1S
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', data_type='candles-1S', stream_type='realtime')
ws.run(on_message=lambda message: print(message))
ws.candle_subscribe(list_instruments=['PETR4','VALE3'], candle_type='partial')
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
## Another examples
# ws.candle_subscribe(list_instruments=['PRIO3'], candle_type='closed')
# ws.candle_subscribe(list_instruments=['WEGE3'], candle_type='all')
# ws.candle_unsubscribe(list_instruments=['PRIO3', 'PETR4'], candle_type='all')
Example - WebSocket BMV Trades
import btgsolutions_dataservices as btg
ws = btg.MarketDataWebSocketClient(api_key='YOUR_API_KEY', exchange='bmv', data_type='trades')
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
Example - WebSocket High Frequency News
import btgsolutions_dataservices as btg
ws = btg.HFNWebSocketClient(api_key='YOUR_API_KEY', country='brazil')
ws.run(on_message=lambda message: print(message))
## The following is optional to keep the program running in a .py file:
# from time import sleep
# while True:
# sleep(1)
Example - IntradayCandles
import btgsolutions_dataservices as btg
int_candles = btg.IntradayCandles(api_key='YOUR_API_KEY')
int_candles.get_intraday_candles(market_type='stocks', tickers=['PETR4', 'VALE3'], candle_period='1m', mode='relative', raw_data=True)
Example - Get Interday History Candles
import btgsolutions_dataservices as btg
hist_candles = btg.HistoricalCandles(api_key='YOUR_API_KEY')
hist_candles.get_interday_history_candles(ticker='PETR4', market_type='stocks', corporate_events_adj=True, start_date='2023-10-01', end_date='2023-10-13', rmv_after_market=True, timezone='UTC', raw_data=False)
Example - Get Intraday History Candles
import btgsolutions_dataservices as btg
hist_candles = btg.HistoricalCandles(api_key='YOUR_API_KEY')
hist_candles.get_intraday_history_candles(ticker='PETR4', market_type='stocks', corporate_events_adj=True, date='2023-10-06', candle='1m', rmv_after_market=True, timezone='UTC', raw_data=False)
Example - Plot History Candles
import btgsolutions_dataservices as btg
hist_candles = btg.HistoricalCandles(api_key='YOUR_API_KEY')
hist_candles.get_intraday_history_candles(ticker='PETR4', market_type='stocks', corporate_events_adj=True, date='2023-10-06', candle='1m', rmv_after_market=True, timezone='UTC', raw_data=False).plot(x='candle_time', y='close_price', kind='scatter')
Example - Quotes
import btgsolutions_dataservices as btg
quotes = btg.Quotes(api_key='YOUR_API_KEY')
quotes.get_quote(market_type = 'stocks', tickers = ['PETR4', 'VALE3'])
Example BulkData - Available Tickers
import btgsolutions_dataservices as btg
bulk_data = btg.BulkData(api_key='YOUR_API_KEY')
bulk_data.get_available_tickers(date='2023-07-03', data_type='trades', prefix='PETR')
Example BulkData - Get Data
import btgsolutions_dataservices as btg
bulk_data = btg.BulkData(api_key='YOUR_API_KEY')
bulk_data.get_data(ticker='PETR4', date='2023-07-03', data_type='trades')
# bulk_data.get_data(ticker='PETR4', date='2024-01-22', data_type='book-events')
Example BulkData - Get Compressed Data
import btgsolutions_dataservices as btg
bulk_data = btg.BulkData(api_key='YOUR_API_KEY')
bulk_data.get_compressed_data(channel='001', date='2024-01-03', data_type='instruments')
# bulk_data.get_compressed_data(channel='053', date='2023-01-03', data_type='incremental')
# bulk_data.get_compressed_data(channel='051', date='2023-01-03', data_type='snapshot')
Example - Intraday Tick Data
import btgsolutions_dataservices as btg
intra_tickdata = btg.IntradayTickData(api_key='YOUR_API_KEY')
intra_tickdata.get_trades(ticker='PETR4')
Example - HighFrequencyNews
import btgsolutions_dataservices as btg
hfn = btg.HighFrequencyNews(api_key='YOUR_API_KEY')
hfn.latest_news()
Documentation
The official documentation is hosted at https://python-client-docs.dataservices.btgpactualsolutions.com/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for btgsolutions-dataservices-python-client-1.0.6.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61b9c841f22bddde17785c27f2041a42dabb85ba207e21997e106098ec74f9c4 |
|
MD5 | 5e5e8a482c51800343700f676fcc8c6d |
|
BLAKE2b-256 | 076c75c1ce5a452d3c5c9233f5117a58f6ca1326ea753ca8e123f62dd57d2900 |