OK, so doing a bit more general reading, it looks like if I were to try and implement this strategy, technically one of the issues might be the amount of API calls that I can make per minute. I don't fully grasp this yet, so please bear with me. Lets assume I use someone that has a API limit of 200/minute. Does that mean that I could only execute 200 orders per minute? Is there a way to combine an order of multiple stocks in to one API call? Does scanning for the stocks I want to pick use the API calls as well? For example, does scanning all stocks to find my picks use 5000 (or how ever many stocks there are that day) calls? Or lastly, do API calls have nothing to do with what I am trying to accomplish lol?
I have systems that I do the setup calculations the night before. For example:
1) You are only interested in stocks that are in an uptrend (or any other TA measures)
2) You want the price to gap up greater than x%. This will trigger your trade.
Do the calculations the night before and write the results to a file.
IBM,140.5
TSLA,700
etc.
This file includes only symbols that pass your TA filters, along with the value(s) needed to trigger a trade (you know the close the night before).
The next morning you load the file and only watch the symbols in the file. The logic for each system is only looking for the price opening above the pre-calculated value in the file.
Next, you start your system well before the market opens and subscribe to only the symbols you need to watch. You can start your subscriptions at a rate your data service allows and be running when the market opens.
I don't remember what IBs order rate is but it's something like no more than 60/second. It's actually a little different but it's not important here. So put a tiny pause between sending each order.
I don't know what IBs data request rate is because I use DTN IQFeed. At some point, you may want to look into them and/or polygon.io.
Selling at the close is somewhat the same. You may need to space your close orders.
You may find that you do not get filled if you place your order too close to 4:00. I close a few minutes before.
I have no idea what your system(s) are but there is nothing wrong with watching lots of symbols for very specific triggers.