|Build| |Group| |PyVersion| |Status| |PyPiVersion| |CondaVersion| |License| |Downloads| |Docs|
Introduction
============
The goal of the IB-insync library is to make working with the
`Trader Workstation API <http://interactivebrokers.github.io/tws-api/>`_
from Interactive Brokers as easy as possible.
The main features are:
* An easy to use linear style of programming;
* An `IB component <https://ib-insync.readthedocs.io/api.html#module-ib_insync.ib>`_
that automatically keeps in sync with the TWS or IB Gateway application;
* A fully asynchonous framework based on
`asyncio <https://docs.python.org/3/library/asyncio.html>`_
and
`eventkit <https://github.com/erdewit/eventkit>`_
for advanced users;
* Interactive operation with live data in Jupyter notebooks.
Be sure to take a look at the
`notebooks <https://ib-insync.readthedocs.io/notebooks.html>`_,
the `recipes <https://ib-insync.readthedocs.io/recipes.html>`_
and the `API docs <https://ib-insync.readthedocs.io/api.html>`_.
Installation
------------
::
pip install ib_insync
Requirements:
* Python 3.6 or higher;
* A running TWS or IB Gateway application (version 1023 or higher).
Make sure the
`API port is enabled <https://interactivebrokers.github.io/tws-api/initial_setup.html>`_
and 'Download open orders on connection' is checked.
The ibapi package from IB is not needed.
Example
-------
This is a complete script to download historical data:
.. code-block:: python
from ib_insync 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
Documentation
-------------
The complete `API documentation <https://ib-insync.readthedocs.io/api.html>`_.
`Changelog <https://ib-insync.readthedocs.io/changelog.html>`_.
Discussion
----------
The `insync user group <https://groups.io/g/insync>`_ is the place to discuss
IB-insync and anything related to it.
Disclaimer
----------
The software is provided on the conditions of the simplified BSD license.
This project is not affiliated with Interactive Brokers Group, Inc.'s.
Good luck and enjoy,
:author: Ewald de Wit <ewald.de.wit@gmail.com>
.. _`Interactive Brokers Python API`: http://interactivebrokers.github.io
.. |Group| image:: https://img.shields.io/badge/groups.io-insync-green.svg
:alt: Join the user group
:target: https://groups.io/g/insync
.. |PyPiVersion| image:: https://img.shields.io/pypi/v/ib_insync.svg
:alt: PyPi
:target: https://pypi.python.org/pypi/ib_insync
.. |CondaVersion| image:: https://img.shields.io/conda/vn/conda-forge/ib-insync.svg
:alt: Conda
:target: https://anaconda.org/conda-forge/ib-insync
.. |PyVersion| image:: https://img.shields.io/badge/python-3.6+-blue.svg
:alt:
.. |Status| image:: https://img.shields.io/badge/status-beta-green.svg
:alt:
.. |License| image:: https://img.shields.io/badge/license-BSD-blue.svg
:alt:
.. |Docs| image:: https://img.shields.io/badge/Documentation-green.svg
:alt: Documentation
:target: https://ib-insync.readthedocs.io/api.html
.. |Downloads| image:: https://pepy.tech/badge/ib-insync
:alt: Number of downloads
:target: https://pepy.tech/project/ib-insync
.. |Build| image:: https://github.com/erdewit/ib_insync/actions/workflows/test.yml/badge.svg?branch=master
:target: https://github.com/erdewit/ib_insync/actions
Raw data
{
"_id": null,
"home_page": "https://github.com/erdewit/ib_insync",
"name": "ib-insync",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "ibapi tws asyncio jupyter interactive brokers async",
"author": "Ewald R. de Wit",
"author_email": "ewald.de.wit@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/55/bb/733d5c81c8c2f54e90898afc7ff3a99f4d53619e6917c848833f9cc1ab56/ib_insync-0.9.86.tar.gz",
"platform": null,
"description": "|Build| |Group| |PyVersion| |Status| |PyPiVersion| |CondaVersion| |License| |Downloads| |Docs|\n\nIntroduction\n============\n\nThe goal of the IB-insync library is to make working with the\n`Trader Workstation API <http://interactivebrokers.github.io/tws-api/>`_\nfrom Interactive Brokers as easy as possible.\n\nThe main features are:\n\n* An easy to use linear style of programming;\n* An `IB component <https://ib-insync.readthedocs.io/api.html#module-ib_insync.ib>`_\n that automatically keeps in sync with the TWS or IB Gateway application;\n* A fully asynchonous framework based on\n `asyncio <https://docs.python.org/3/library/asyncio.html>`_\n and\n `eventkit <https://github.com/erdewit/eventkit>`_\n for advanced users;\n* Interactive operation with live data in Jupyter notebooks.\n\nBe sure to take a look at the\n`notebooks <https://ib-insync.readthedocs.io/notebooks.html>`_,\nthe `recipes <https://ib-insync.readthedocs.io/recipes.html>`_\nand the `API docs <https://ib-insync.readthedocs.io/api.html>`_.\n\n\nInstallation\n------------\n\n::\n\n pip install ib_insync\n\nRequirements:\n\n* Python 3.6 or higher;\n* A running TWS or IB Gateway application (version 1023 or higher).\n Make sure the\n `API port is enabled <https://interactivebrokers.github.io/tws-api/initial_setup.html>`_\n and 'Download open orders on connection' is checked.\n\nThe ibapi package from IB is not needed.\n\nExample\n-------\n\nThis is a complete script to download historical data:\n\n.. code-block:: python\n\n from ib_insync import *\n # util.startLoop() # uncomment this line when in a notebook\n\n ib = IB()\n ib.connect('127.0.0.1', 7497, clientId=1)\n\n contract = Forex('EURUSD')\n bars = ib.reqHistoricalData(\n contract, endDateTime='', durationStr='30 D',\n barSizeSetting='1 hour', whatToShow='MIDPOINT', useRTH=True)\n\n # convert to pandas dataframe (pandas needs to be installed):\n df = util.df(bars)\n print(df)\n\nOutput::\n\n date open high low close volume \\\n 0 2019-11-19 23:15:00 1.107875 1.108050 1.107725 1.107825 -1\n 1 2019-11-20 00:00:00 1.107825 1.107925 1.107675 1.107825 -1\n 2 2019-11-20 01:00:00 1.107825 1.107975 1.107675 1.107875 -1\n 3 2019-11-20 02:00:00 1.107875 1.107975 1.107025 1.107225 -1\n 4 2019-11-20 03:00:00 1.107225 1.107725 1.107025 1.107525 -1\n .. ... ... ... ... ... ...\n 705 2020-01-02 14:00:00 1.119325 1.119675 1.119075 1.119225 -1\n\n\nDocumentation\n-------------\n\nThe complete `API documentation <https://ib-insync.readthedocs.io/api.html>`_.\n\n`Changelog <https://ib-insync.readthedocs.io/changelog.html>`_.\n\nDiscussion\n----------\n\nThe `insync user group <https://groups.io/g/insync>`_ is the place to discuss\nIB-insync and anything related to it.\n\nDisclaimer\n----------\n\nThe software is provided on the conditions of the simplified BSD license.\n\nThis project is not affiliated with Interactive Brokers Group, Inc.'s.\n\nGood luck and enjoy,\n\n:author: Ewald de Wit <ewald.de.wit@gmail.com>\n\n.. _`Interactive Brokers Python API`: http://interactivebrokers.github.io\n\n.. |Group| image:: https://img.shields.io/badge/groups.io-insync-green.svg\n :alt: Join the user group\n :target: https://groups.io/g/insync\n\n.. |PyPiVersion| image:: https://img.shields.io/pypi/v/ib_insync.svg\n :alt: PyPi\n :target: https://pypi.python.org/pypi/ib_insync\n\n.. |CondaVersion| image:: https://img.shields.io/conda/vn/conda-forge/ib-insync.svg\n :alt: Conda\n :target: https://anaconda.org/conda-forge/ib-insync\n\n.. |PyVersion| image:: https://img.shields.io/badge/python-3.6+-blue.svg\n :alt:\n\n.. |Status| image:: https://img.shields.io/badge/status-beta-green.svg\n :alt:\n\n.. |License| image:: https://img.shields.io/badge/license-BSD-blue.svg\n :alt:\n\n.. |Docs| image:: https://img.shields.io/badge/Documentation-green.svg\n :alt: Documentation\n :target: https://ib-insync.readthedocs.io/api.html\n\n.. |Downloads| image:: https://pepy.tech/badge/ib-insync\n :alt: Number of downloads\n :target: https://pepy.tech/project/ib-insync\n\n.. |Build| image:: https://github.com/erdewit/ib_insync/actions/workflows/test.yml/badge.svg?branch=master\n :target: https://github.com/erdewit/ib_insync/actions\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "Python sync/async framework for Interactive Brokers API",
"version": "0.9.86",
"project_urls": {
"Homepage": "https://github.com/erdewit/ib_insync"
},
"split_keywords": [
"ibapi",
"tws",
"asyncio",
"jupyter",
"interactive",
"brokers",
"async"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8ff328ea87be30570f4d6b8fd24380d12fa74e59467ee003755e76aeb29082b8",
"md5": "c6ab725c22416b27b5f527d0cd543191",
"sha256": "a61fbe56ff405d93d211dad8238d7300de76dd6399eafc04c320470edec9a4a4"
},
"downloads": -1,
"filename": "ib_insync-0.9.86-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c6ab725c22416b27b5f527d0cd543191",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 72980,
"upload_time": "2023-07-02T12:43:29",
"upload_time_iso_8601": "2023-07-02T12:43:29.928639Z",
"url": "https://files.pythonhosted.org/packages/8f/f3/28ea87be30570f4d6b8fd24380d12fa74e59467ee003755e76aeb29082b8/ib_insync-0.9.86-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "55bb733d5c81c8c2f54e90898afc7ff3a99f4d53619e6917c848833f9cc1ab56",
"md5": "47ec46bb7eeff36c923f0926623132a4",
"sha256": "73af602ca2463f260999970c5bd937b1c4325e383686eff301743a4de08d381e"
},
"downloads": -1,
"filename": "ib_insync-0.9.86.tar.gz",
"has_sig": false,
"md5_digest": "47ec46bb7eeff36c923f0926623132a4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 69859,
"upload_time": "2023-07-02T12:43:31",
"upload_time_iso_8601": "2023-07-02T12:43:31.968758Z",
"url": "https://files.pythonhosted.org/packages/55/bb/733d5c81c8c2f54e90898afc7ff3a99f4d53619e6917c848833f9cc1ab56/ib_insync-0.9.86.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-02 12:43:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "erdewit",
"github_project": "ib_insync",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "ib-insync"
}