No project description provided
Project description
IB Interface
An adaption and continuation of ib-insync for the Interactive Brokers Python TWS API.
The main features are:
- An easy to use linear style of programming
- An
IB component
that automatically keeps in sync with the TWS or IB Gateway application - A fully asynchonous framework based on
asyncio
- Interactive operation with live data in Jupyter notebooks
[!IMPORTANT] this project is not affiliated with Interactive Brokers
[!IMPORTANT] The ibapi package from IB is not needed
[!NOTE] ib-insync has been archived
Installation
pip install ib-interface
Usage
The goal is for ib-insync
users to be able to simply refactor their imports as:
- import ib_insync as ibi
+ import ib_interface as ibi
- from ib_insync import *
+ from ib_interface import *
- from ib_insync.{some module} import {some submodule or class or function}
+ from ib_interface.{some module} import {some submodule or class or function}
Example
[!IMPORTANT] a running TWS or Gateway instance is needed to connect to the API
[!IMPORTANT] Make sure the API port is enabled and 'Download open orders on connection' is checked.
This is a complete script to download historical data:
from ib_interface import *
# util.startLoop() # uncomment this line when in a notebook
ib = IB()
ib.connect("127.0.0.1", 7497, clientId=1)
contract = Forex("EURUSD")
bars = ib.reqHistoricalData(
contract,
endDateTime="",
durationStr="30 D",
barSizeSetting="1 hour",
whatToShow="MIDPOINT",
useRTH=True,
)
# convert to pandas dataframe (pandas needs to be installed):
df = util.df(bars)
print(df)
Output
date open high low close volume
0 2019-11-19 23:15:00 1.107875 1.108050 1.107725 1.107825 -1
1 2019-11-20 00:00:00 1.107825 1.107925 1.107675 1.107825 -1
2 2019-11-20 01:00:00 1.107825 1.107975 1.107675 1.107875 -1
3 2019-11-20 02:00:00 1.107875 1.107975 1.107025 1.107225 -1
4 2019-11-20 03:00:00 1.107225 1.107725 1.107025 1.107525 -1
.. ... ... ... ... ... ...
705 2020-01-02 14:00:00 1.119325 1.119675 1.119075 1.119225 -1
Acknowledgements
Thank you to Ewald de Wit for creating and maintaining ib-insync, eventkit, and nest-asyncio.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ib_interface-0.0.4.tar.gz
.
File metadata
- Download URL: ib_interface-0.0.4.tar.gz
- Upload date:
- Size: 95.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e2438c1b6f1c0b725564a929d7928134c313b5775c7717ec619e6300b651e4e |
|
MD5 | 00b3738fbb318638512151aed217a94b |
|
BLAKE2b-256 | 6f81c183e4591b20502007939dc22c86d9d9036207947f479038ee7f96afccf4 |