I just went through this whole thread again, as I believe that now its time to set some mid/long term direction for development.
While I still think we need protection mechanisms against exploiting custodians large walls, I do not think that mirroring order books is a viable solution in tier1. It seems more consistent and convenient to stop providing liquidity on scarcely liquid pairs (PPC) while finding other mitigations strategies.
This is also why I am supporting @Chronos motion to stop our PPC liquidity operations with more emphasis.
- We are currently offering just BTC and PPC because we needed them to start our operation. While this helped us getting started, is now time to move towards our goal of providing a 1$ coin to 1$ coin users rather than speculators/dumpers/arbitrageurs .
- BTC is some orders of magnitudes more liquid than PPC, therefore the NBT/BTC pair is much much less subject to the exploit described by OP. We can keep BTC/NBT liquidity operation while we complete our transition out of these pairs. By now we should work on the how to get out of the current system, instead of engineering our way into it.
- No PPC Liquidity provider ever stepped up to provide PPC liquidity to date : the PPC funds custodians are providing resulted from the sale of NBT. We are offering a service to the PPC community without the PPC community offering a service back, which is heading towards losses for our dual-side (not LPC) custodians.
- Mirroring order books will be very expensive : technical challenges are overwhelming. To change the tier1 liquidity operation mirroring combined order books, we would need spend several weeks (months) in un-doing our past work, re-designing and implementing the trading strategy, and at least as much time in testing it. Also we would need to train custodians, write documentations and maintaing it. I would rather spend the same amount of development time and energy on engineering our way out of it. Especially considering that once we stop providing PPC liquidity the exploit on BTC pairs unlikely and alternatives to mitigate exists (more on this soon).
Below also some relevant quotes to back up my line of thoughts :
First, also @JordanLee seems to back up my worries about PPC to some degree :
Moreover we acknowledge that the engineered multi-tier solution will not have much impact on what we consider our final destination most important pair:
I invite to revise the whole liquidity evolution discussion under a different angle : If we were only supporting BTC/NBT pair, how can we mitigate the liquidity exploit?
NuBot 0.1.5 is already moving in that direction : we recently added a parameter that let the custodian specify a cap on the order size. Next iterative step is to adjust that amounts dynamically, based on available liquidity and market conditions -- which is equivalent to
This last step is complex enough to be a topic of research of its own, so I would avoid adding much more to it.
Following iterations could move from the one-large order to a set of buy/sells orders decreasing in size centered around the 1$ price, simulating an average balanced order book.
NuBot will likely be able to move from tier3 (a hot wallet) to tier2 (the exchange), but hardly the other way (API withdrawing is becoming bad practice and not supported by most exchanges).
If we go this evolutionary multi-tier way (without the order book mirroring), it will take a lot of time and effort. I would like to see in the meantime the same amount of energy (or more) being spent in finding ways to stop supporting also BTC pairs and providing NBT at 1 $ in a decentralised and elegant way.
I close this long reflection with an off topic question : how does shapeshift deal with the low-liquidity problem? Can you dump JunkCoins in there in large quantities at a fixed price?