Building your own program to live trade with IB?

It’s actually not that simple as it doesn’t support rest api/requests where you could simply retrieve what you want whenever you’d want.
Instead, you have to subscribe/unsubscribe to streamed data and handle variety of received data snippets and errors.
I was under impression that they support a proper FIX protocol with some IB-specific quirks, no?
 
I didn't have any issues with maintaining the same code for years, don't remember needing any major changes.

IB openly states that they are not a data provider and don't have resources to provide data, so they have limits on how much historical data you can obtain and how often:
https://interactivebrokers.github.io/tws-api/historical_limitations.html

No problems with testing real time performance with demo account, though your orders may not fill the same way since IB cannot know if an order may be filled, or how much qty may be filled, and at what exact price - unless it actually fills. but you can probably get 95%+ accuracy.

So I guess I can fully test my system with demo account before buying a monthly market subscription and live trade.
 
It’s actually not that simple as it doesn’t support rest api/requests where you could simply retrieve what you want whenever you’d want.
Instead, you have to subscribe/unsubscribe to streamed data and handle variety of received data snippets and errors.
I’m not saying that’s a bad approach, but not as simple as for example receiving historical data or account information via a single API request through various other services, or generally any modern website or API. Something that currently most programmers can do in minutes with modern rest APIs, requires days with IB.
But IB API comes with good examples and plenty of documention that helps you get started quite fast:
https://interactivebrokers.github.io/

ib_insync allows you to do that. I haven't tried it myself.

OP: Vast majority of information you'll get from the API documentation online. When you conceptually understand how the flow is, it becomes easier. I personally use ibpythonic which is the same as ibPy syntax wise, much logical from my point of view.
 
How did you get the basic info to start to write codes? Here is a good place to ask questions?

You can get all the information from the IB API site. IB provides a basic tutorial, a sample application, some instructions and the API itself which contains some wrapper classes that you would have to install (for C#). But like some of the posters said, it's not that simple. You have to write all of the error-handling codes, historical data requests and charting, your own indicators if you want to do TA as IB's indicators are proprietary and are not available for you to use in your API (you wouldn't want to anyway, some of them repaint).

If you want to start with something simpler with less programming, you can try to use their EXCEL via DDE (which you would have to enable in TWS). Might be easier for you.
 
Thx I use C sharp and feel creating interface for Java is much harder, I would use C sharp then.

Any pain for updating codes for Visual Studio version? Every few years people are forced to update codes if they want to use the latest visual studio.

You need to make sure you download the right classes for different version of API. From what I last remember, after version 9.72, ActiveX for C# is no longer supported and you are going to see some differences of where things are downloaded in different folders for version 9.72 and after.
 
IB is a broker and it offers two things: realtime marketdata and executions. Want historical marketdata? Pay Reuters or Bloomberg (from $5000 / month for a basic terminal). Want a portfolio manager (position, PNL, risk)? There are countless provider, my former employer offers one starting at $200,000 / year.
 
IB is a broker and it offers two things: realtime marketdata and executions. Want historical marketdata? Pay Reuters or Bloomberg (from $5000 / month for a basic terminal). Want a portfolio manager (position, PNL, risk)? There are countless provider, my former employer offers one starting at $200,000 / year.

IB provides historical data. Depending on what you need it can be sufficient. There's absolutely no need to pay $5000 for a terminal. It's also $2000 per month for Bloomberg, not $5000.
I'm quite confident there's no-one on ET who pays $2k per month for data out of their own pocket.
Not sure what your post is trying to imply.
 
IB is a broker and it offers two things: realtime marketdata and executions. Want historical marketdata? Pay Reuters or Bloomberg (from $5000 / month for a basic terminal). Want a portfolio manager (position, PNL, risk)? There are countless provider, my former employer offers one starting at $200,000 / year.

IB provides historical data, just not the best.
 
IB provides historical data. Depending on what you need it can be sufficient. There's absolutely no need to pay $5000 for a terminal. It's also $2000 per month for Bloomberg, not $5000.
I'm quite confident there's no-one on ET who pays $2k per month for data out of their own pocket.
Not sure what your post is trying to imply.

For IB, do I need to pay monthly data subscription fee to get historical data of a market?
 
You need to be subscribed to the data for each of the markets your interested in. So if you're an individual who wants NASDAQ and NYSE then that's $3 ($1.50+$1.50), prices vary obviously.
 
Back
Top