-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Tick Size in the XRP Ledger does not work quite like tick sizes in traditional exchanges:
- In TradFi, the tick size applies to the amounts involved in the trade. For example, at a tick size of 3, an offer to trade 3.1225 USD for 2.00 EUR would be rounded to 3.123 USD:2.00 EUR.
- In XRPL, the tick size applies to the significant digits of the exchange rate of the trade. For example, at a tick size of 3, an offer to trade 3.1225 USD for 2.00 EUR would have its exchange rate truncated from 1.56125 to
1.56, which would then change the amounts when the order is placed onto the book to match this rate.
This is a source of confusion and further problems because the exchange rate of offers in different directions ends up rounding differently, so trades whose values look like they should match end up not actually matching, and problems along these lines are probably more annoying than the issues of jockeying for placement or slow price discovery which are the result of high or default TickSize values.
Update the doc with warnings about these limitations and possibly a recommendation that stablecoins and other "currency-like" trust line tokens should not use a tick size.
(There are ongoing discussions about how Tick Size should be implemented for MPTs in MPT-DEX and what the consequences are when combined with the fixed integer precision of MPTs; it seems likely to be less important because of the fixed precision. The doc may need further updates as a result of MPT-DEX work.)