|
|
|
|
|
by cma
4006 days ago
|
|
I worked in technical risk management for a large market maker in the US. The latency arms race just drove things towards riskier and riskier practices in our systems. Soft-realtime systems in C++ instead of safer garbage collected runtimes. Parsing market data on FPGAs or Cell processors instead of in code written with emphasis on safety. Distributed trading systems that couldn't afford the latency budget to pass everything through centralized risk management, and therefore not taking into account the entire order book before authorizing a trade. Instead a series of compromises and less optimal failsafes. It also just lead to more expensive practices--communication between threads using spinlocks instead of the normal waking a waiting thread through a system call; basically converting the spreads we could capture into data center waste heat in order to beat out the next guy. Artificially slowing things down a bit would have just reduced costs and increased safety for everyone. |
|
I'd also suggest that your experience (many of which I share) do not necessarily mean that speed is making things riskier, only that your centralized risk management was not as good at lowering the cost of risk as opposed to getting fast. As for the dc energy to spread arbitrage game, that is the result of far reaching policy decisions well outside of HFT and I largely agree that energy is too cheap.
I think that any artificial slowing of the market is likely to have really bad unintentional issues. I'd much rather we incentivize the market to fixate on something we care about (ie price) rather than try to subvert the laws of the market.
One approach that appeals to me is to remove the sub-penny rule that is artificially propping up spreads.