If we accept financial services as a whole to be OK, then HFT certainly is. I'd suggest the book "Dark Pools":
It describes how automatic trading started. If you're a programmer, you'll probably have your mouth hanging open realising how up-for-grabs so much money was. At least that's how it sounded on reading it.
Everyone profiting from HFT are trying desperately to convince everyone else that they provide a service and benefit and they just can't understand why normal folks aren't buying it.
The amount of power of HFT to move markets is frightening. Like, for example bogus assassination tweet sending the stock markets plunging $136 billion in two minutes*
HFT is a godsend for your average investor who can now save money when buying/selling stocks instead of giving it to greedy traditional brokers on their overpriced services.
I also want efficient arbitrage done by HFTs. I don't want to sell or buy being unaware of some important news. HFTs ensure I get a fair price without following the news every time I want to buy/sell something. The more efficient the market, the more liquidity and the lower the spreads - the better it is for me as an individual buy and holder.
So if you invest with an active mutual fund, HFT is either a) detecting any large move the fund makes and pushes up the price of the asset before the trade completes or b) making you use a more costly service to complete the trade secretively to hide it from HFT detection.
Passive funds might trade less but their moves are so widely broadcast you don't really need algorithms to detect them.
Is this really true? It's hard to understand how the fact that one guy can trade with a delay of two microseconds instead of three will benefit the market as a whole.
I can tell you it is commonly thought that HFT's profits come at someone else's cost, and that someone else is precisely your "end user". See "front-running".
Front running has nothing to do with speed. And since HFT firms don't have customers generally, they simply cannot front run.
The profits have come at the cost of other market makers - they're all HFT now. There's also the ability to adjust pricing quickly, so that when some large firm tries to buy or sell a large block, they don't get to avoid price impact as easily.
The trades intercepted by HFT don't constitute marterial market information which could change the behavior of the trader being front-run. They can only serve, much as with Sysiphus, to take an existing transaction opportunity from them, after having been committed to it.
"adding much higher precision would help. So instead of pricing in increments of a penny, which is a lot, try, say, 1/100,000th of a penny (8 digit precision on the price)"
So start gaming the price to fix gaming the trades?
It's not gaming the price. Using 1 penny increments is slightly less silly than 1/8th but makes about the same amount of sense: not much. There's no technical reason, it's purely a regulatory issue. (Well sub $1 stocks in the US are allowed 0.001 pricing.)