Thank you for your advise, I will try to add a param -XX:+UseParNewGC to the command line as it should limit pause during GC. Anyway it sounds strange, that I would be the only one who has this kind of issue, or the only one who is complaining.
Actually it is started 30 minutes before the trade time and 2 minutes after market is closed, the whole virtual is stopped.
I'm trading Share CFDs of SP100 stocks. Delay is after all trade requests are received by the IB GTW.
Unless choosing which stocks to trade super near to the closing time is the entire point of your strategy, maybe you can just use Market On Close orders instead. You can submit the orders much earlier so that a few seconds delay becomes utterly irrelevant. The exchange fees for MOC orders are also smaller than for taking liquidity intraday. Also, I'm pretty suspicious of the fact that you are trading share CFDs of SP100 stocks. I might be missing something but I'm thinking you haven't done the math and you're likely spending more fees and overnight margin interest compared to regular shares. Or if you're using CFDs for the increased leverage, you're probably taking too much risk. Going all in with leverage on just 1 stock overnight will eventually blow up your account.
Currently there is no reason to trade share CFDs and I indeed have to switch back to the standard stocks. Originally I used them due to higher margin, so in case something would happen (10-15% market correction when I'm fully loaded), margin call would not be applied. This is not true anymore, CFD margin conditions are now almost the same as for shares. I never used MOC before, so I was not sure about the liquidity and spread. Thanks for advice, I will check the details. But back to the topic, In the meantime I did couple of tests and I'm suspecting IB Controller which starts my IB Gateway. When I started IB Gateway manually, exec times were within one second from the time I sent order requests. When I kept IB Controller to start IB GW, exec times were delayed approx 4 seconds again. Could be an accident, but I personally do not think so.