Skip to content

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

Notifications You must be signed in to change notification settings

Vincentho711/Interactive-Brokers-Trading-Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages