HFT just serves the brokers and trading houses. For real investors it is not important that their trade executes within seconds.
Perfect analogy: Bitcoin mining just server the miners. The real users of Bitcoin don't need miners?!
Instead of talking about HFT talk about computer trading and liquidity provision. But for that you will have to understand how a market
actually works. I think I will start a thread on that. Good idea, to have actual code to understand what is going. HFT as a term is basically meaningless. HFT simply means you have timestamps. That's all. If you don't have timestamps, you don't know who came first! The alternative is indeed to have batches. But then you would actors predicting cutoffs of batches, which is basically the same. Batches are called call auctions and are commonplace in todays market. You can't have a discussion around this if people don't even have the most basic understand of how stock markets work...