Some criticism here
https://bitsharestalk.org/index.php?topic=14736.msg191291#msg191291Also, the problem I see with the approach Mercury takes is that there is no way to prevent abuse. I assume that there is some nLockTime transaction in the atomic swap protocol to return the funds back after some amount of time, otherwise evil actors could make honest traders burn their money (or better yet extort them for some portion of the money by offering some fraction back). So with the necessary refund transaction in place as part of the protocol, the attackers could only lock the money of the other trader for some amount of time, but the key is that they can do this at no cost to the attacker. The system seems to be designed under the assumption that all actors will be honest. And even under that assumption it still has an additional flaw that it is trading assets that do not have values pegged to one another. This means even if the honest actor does not wish to hurt the other party for the sake of it, they may find that by the time they are going to claim the other coin by revealing the secret, the price could have significantly changed to their disadvantage. In that case, it would be rational to wait for the refund and buy at the new better price. The system described by the links above not only locks the trader in to carry out the exchange in a reasonable amount of time after the bids/asks are matched (or else the bidder loses their bond worth 10% of the value being traded), but there is also no serious volatility issue since the trading would occur between the Cryptocoin and the BitCryptocoin pairs only.
Another critique is that front running is possible with a centralized order book, see
https://bitsharestalk.org/index.php?topic=14736.msg191299#msg191299@mapum would love to hear what you think about all these points.