Rydamez / Interactive-Brokers-Trading-Bot

A Python library written to handle IB's Client Portal API, manage portfolio and execute trades.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Interactive Brokers Trading Bot

A Python library written to handle IB's Client Portal API, manage portfolio and execute trades.
Explore the docs »

View Demo · Report Bug · Request Feature

📚Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements

💡About The Project

This project is built entirely on Python, it combines other Interactive Brokers libraries written by other contributors as well as my own contribution in making algorithmic trading on Interactive Brokers possible.

Built With

🎉Getting Started

To get a local copy up and running follow these simple steps.

🔖 Prerequisites

Before using this library, ensure you have Java installed and have an account with Interactive Brokers. Check out Interactive Broker Client Portal Web API for setting up. You can skip the download and unzip the CPI WebAPI step from the IB site as this step has been taken care off in the library.

🔧 Installation

  1. Clone the repo

    git clone https://github.com/Vincentho711/Interactive-Brokers-Trading-Bot.git
  2. Navigate to the working directory

  3. In the terminal, run

    python setup.py build
    

    and then

    python setup.py install
    
  4. Enter your IB credentials in write_config.py and run the script

  5. Open run_client.py and run the script. It will download the clientportal.gw to the working directory.

  6. Using Git Bash, navigate to the clientportal.gw folder and run

    "bin/run.bat" "root/conf.yaml"
    
  7. Run run_client.py in tests and the bot should be up and running.

  8. Follow the instructions on run_client.py to configure your trading bot.

📦 Usage

To use it, study the revelant libraries, namely the python objects in robot/ folder. There are also some simple instructions in the run_client.py to get you up and running quick.

🚩 Roadmap

See the open issues for a list of proposed features (and known issues).

✨ Milestone Summary

Status Milestone Goals ETA
🚀 Implement the ability to associate tickers with different indicators and trigger levels 1 / 1 15 April 2021

Implement ticker indicators association

This milestone will be done when

  • Different signals can be attached to a ticker
  • All the indicators' signal can be checked independently, giving correct buy/sell signals

💝 Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📜 License

Distributed under the MIT License. See LICENSE for more information.

😃 Contact

Vincent Ho - LinkedIn

Project Link: https://github.com/Vincentho711/Interactive-Brokers-Trading-Bot

⭐ Acknowledgements

About

A Python library written to handle IB's Client Portal API, manage portfolio and execute trades.


Languages

Language:Python 100.0%