Reference
Reference for easyib.REST class.
- class easyib.REST(url='https://localhost:5000', ssl=False)
Allows to send REST API requests to Interactive Brokers Client Portal Web API.
- Parameters:
url (str, optional) – Gateway session link, defaults to “https://localhost:5000”
ssl (bool, optional) – Usage of SSL certificate, defaults to False
Account info
- REST.get_accounts() list
Returns account info
- Returns:
list of account info
- Return type:
list
- REST.switch_account(accountId: str) dict
Switch selected account to the input account
- Parameters:
accountId (str) – account ID of the desired account
- Returns:
Response from the server
- Return type:
dict
- REST.get_portfolio() dict
Returns portfolio of the selected account
- Returns:
Portfolio
- Return type:
dict
- REST.get_cash() float
Returns cash balance of the selected account
- Returns:
cash balance
- Return type:
float
- REST.get_netvalue() float
Returns net value of the selected account
- Returns:
Net value in USD
- Return type:
float
Instrument info
- REST.get_conid(symbol: str, instrument_filters: Optional[dict] = None, contract_filters: dict = {'isUS': True}) int
Returns contract id of the given stock instrument
- Parameters:
symbol (str) – Symbol of the stock instrument
instrument_filters (Dict, optional) – Key-value pair of filters to use on the returned instrument data, e.g) {“name”: “ISHARES NATIONAL MUNI BOND E”, “assetClass”: “STK”}
contract_filters (Dict, optional) – Key-value pair of filters to use on the returned contract data, e.g) {“isUS”: True, “exchange”: “ARCA”}
- Returns:
contract id
- Return type:
int
- REST.get_fut_conids(symbol: str) list
Returns list of contract id objects of a future instrument.
- Parameters:
symbol (str) – symbol of a future instrument
- Returns:
list of contract id objects
- Return type:
list
- REST.get_bars(symbol: str, period='1w', bar='1d', outsideRth=False, conid: str = 'default') dict
Returns market history for the given instrument. conid should be provided for futures and options.
- Parameters:
symbol (str) – Symbol of the stock instrument
period (str, optional) – Period for the history, available time period– {1-30}min, {1-8}h, {1-1000}d, {1-792}w, {1-182}m, {1-15}y, defaults to “1w”
bar (str, optional) – Granularity of the history, possible value– 1min, 2min, 3min, 5min, 10min, 15min, 30min, 1h, 2h, 3h, 4h, 8h, 1d, 1w, 1m, defaults to “1d”
outsideRth (bool, optional) – For contracts that support it, will determine if historical data includes outside of regular trading hours., defaults to False
conid (str or int, optional) – conid should be provided separately for futures or options. If not provided, it is assumed to be a stock.
- Returns:
Response from the server
- Return type:
dict
Orders
- REST.submit_orders(list_of_orders: list, reply_yes=True) dict
Submit a list of orders
- Parameters:
list_of_orders (list) – List of order dictionaries. For each order dictionary, see here for more details.
reply_yes (bool, optional) – Replies yes to returning messages or not, defaults to True
- Returns:
Response to the order request
- Return type:
dict
- REST.modify_order(orderId: Optional[str] = None, order: Optional[dict] = None, reply_yes=True) dict
Modify submitted order
- Parameters:
orderId (str) – Order ID of the submitted order, defaults to None
order (dict) – Order dictionary, defaults to None
reply_yes (bool, optional) – Replies yes to the returning messages, defaults to True
- Returns:
Response from the server
- Return type:
dict
- REST.cancel_order(orderId: str) dict
Cancel the submitted order
- Parameters:
orderId (str) – Order ID for the input order
- Returns:
Response from the server
- Return type:
dict
- REST.get_order(orderId: str) dict
Returns details of the order
- Parameters:
orderId (str) – Order ID of the submitted order
- Returns:
Details of the order
- Return type:
dict
- REST.get_live_orders(filters: Optional[list] = None) dict
Returns list of live orders
- Parameters:
filters (list, optional) – List of filters for the returning response. Available items – “inactive” “pending_submit” “pre_submitted” “submitted” “filled” “pending_cancel” “cancelled” “warn_state” “sort_by_time”, defaults to []
- Returns:
list of live orders
- Return type:
dict
- REST.reply_yes(id: str) dict
Replies yes to a single message generated while submitting or modifying orders.
- Parameters:
id (str) – message ID
- Returns:
Returned message
- Return type:
dict
Communication with server
- REST.ping_server() dict
Tickle server for maintaining connection
- Returns:
Response from the server
- Return type:
dict
- REST.get_auth_status() dict
Returns authentication status
- Returns:
Status dictionary
- Return type:
dict
- REST.re_authenticate() None
Attempts to re-authenticate when authentication is lost
- REST.log_out() None
Log out from the gateway session