This part of the whitepaper is a bit outdated, as we went from an infrequent auction process to a frequent batch auction system; the auctions will be blind to all traders (ie, the orderbook update will happen after the auction cross), including the internal market making team. Thanks for letting me know though, we'll have to update it.
Haha cool mate. Let me know if you'd like to give our testnet a try, and provide feedback. It's here: https://testnet.emx.com
Just a quick feedback: As far as I understand your self trade prevention, the agressive order is rejected. E.g. I have a sell limit sitting at 100$ and when I send a buy limit with the price of 101$ that would fill my own order, the 101$ buy limit is rejected, correct? Can you please change that to cancelling the passive side? Instead of rejecting the buy limit at 101$, cancel the sell limit at 100$ and execute the buy limit at 10$ against a third party offer. Dealing with agressor rejection is always a pain in the butt to deal with, especially when you quote a lot of markets within a spread portfolio. Lets say I get hit in market one and the hedge order trades against my own quote in market two by accident. Now my hedge order gets rejected and if I don't handle that exception in the code, I'm hung on a leg. If passive side get's cancelled, I don't have to deal with exception handling and my hedge is executed. Since EMX is matching via batch auctions, I would say that abusing the self trade prevention with spoofing isn't as much of a problem either. Thanks for consideration.