I hope your respiratory situation is improving rapidly, Richard, and that the nasty COVID was not involved.
We are actually in complete agreement on market data for multiple clients. In fact we run multiple clients that hold data subscriptions simultaneously all the time (same or different instruments) and we have never seen an issue with that. My "single client" comment was intended to relate to order and account management exclusively and not to market data sharing by independent clients:
It may be simpler to implement and better to control if you have a single client that monitors and executes several strategies with a shared account management and trading module.
Rereading my reply now makes me question what exactly I was thinking about when I added the fourth bullet on market data feeds. The first three bullets adequately address the kinds of issues multiple parallel and independent trading strategies better communicate about but data feeds to multiple clients is not an issue.
The post took a bit of a "left turn" and became an entirely different post when Buddy pointed to a bug he thinks he discovered in V10 TWS/IBGW versions. I don't dispute that some kind of race condition may exist, but we have not experienced that issue ourselves. And from the description, the issue would not be an impediment to running multiple trading strategies for the same instrument in independent Python clients.
And I can believe your finding that the issue can be avoided entirely by simply cancelling the market data subscription before the client exits.
´³¨¹°ù²µ±ð²Ô
On Fri, Mar 31, 2023 at 01:26 PM, Richard L King wrote:
..
I completely disagree with you here (and with ´³¨¹°ù²µ±ð²Ô for that matter, and I¡¯ll get back to him on that when I can find the time). As I¡¯ve pointed out before, I run multiple clients sharing the same or overlapping data streams all day every day, and have been doing so since 2003, and I simply have no problems.
?
As an illustration, attached is a screenshot of three DataCollector programs (two of them write to different SQL Server database, and the third writes to text files (all are connected to the live TWS). As far as concurrent programs that are actually trading, as opposed to consuming data, are concerned, there are things that need consideration, but sharing data isn¡¯t one of them.
?
Richard