Network syncing time is hard, my team (at a bank) built our own infrastructure to monitor time sync errors on our own internal servers, we synced externally with two independent clocks. An atomic clock in London and NIST in the US. But we also modelled the exchange's time as well.
We had six independent connections to the exchange (hitting different servers) and we'd reverse engineered the exchanges internal infrastructure so based upon the timing of their messages, the tcp packet headers and their own timestamps we knew exactly what clocks their internal servers were running on (more valuably in our case is it also gave us their internal latency figures). Half the time we knew when their clocks were drifting before they did and could tell them which internal server had the wrong time.
This stuff is hard, you need to know a lot about network latency and time to make sure you're doing it right (have a look at the NTP spec for starters), there's probably only a handful of people in the world who are capable of nailing it and probably most of them work in the military or atomic physics research labs.
> This stuff is hard, you need to know a lot about network latency and time to make sure you're doing it right (have a look at the NTP spec for starters), there's probably only a handful of people in the world who are capable of nailing it and probably most of them work in the military or atomic physics research labs.