Took a look at a few orders from Friday and timestamps on my server were showing some order executions below 200 ms. That's not too bad. A proper histogram of the delays would be helpful. It also makes you a little paranoid that someone is frontrunning a large marketable order when it doesn't go through "immediately".
ms here is millisec so you are saying a 1 full-second delay? Wow, I can then send an order and go walk my dog. Why don't you ask IBKR on what the heck is going on there?
Yes. The results skew towards 200 ms even though some orders take much longer. It's possible they will say their SMART router is the variable delay. If you want execution speed and are willing to give up fill quality in terms of finding dark liquidity then direct your order to NASDAQ. Commissions are higher and missing out on dark liquidity is a very real expense. Hmmm... that actually makes a lot of sense. So you'd derive from that a need to know ahead of time where the best liquidity tends to be for each symbol. NASDAQ? NYSE? Then use a directed order to the proper exchange. Someone here knows the answer. Is this always the primary exchange for the stock?
The configuration settings you can provide to the SMART router let you tell them your preference. Perfect. You can have it always direct to the primary exchange. Or select "prefer fill" or "maximize fill". The default is "multipurpose" which is where I currently have it set. Need to see if the API lets me specify on a per-order basis.
Solution is to rent a cheap VPS near the target market or broker. ping times from that server to the market or broker should be minimal. Then you have to optimize the link from you to the VPS. Usually this is solvable too. If not, then you have run your decision-making program on the VPS...
That does nothing to fix the delay at IB, which is much higher than the network delay you are addressing.
Bear in mind this map as well. https://www.submarinecablemap.com/ Ping from Spain (Home Fiber connection): Ping from the UK (VPS): Yeah, it helps to have a VPS close to Bristol in the UK if you are in Europe.
From the Philippines to Hong Kong: PING hdc1.ibllc.com (103.38.91.3) 56(84) bytes of data. 64 bytes from 103.38.91.3 (103.38.91.3): icmp_seq=1 ttl=241 time=36.7 ms