@Cybnate. I made my best attempt at defining a minimum acceptable tolerance based off mathematical conditions alone. The overarching requirement is simply that, in an ALP, under no condition should a buy side custodian buy from a sell side custodian as a result of the software alone.
0.475% tolerance on btc pools seems like a hard minimum.
This is a work in progress, still incomplete
Good catch, edited
Basically, if you run with 0.2% offset, place an order, the price changes by 0.2% and I come in with the same offset and think the price is 0.2% different than you do, we will make a trade. This trade is bad for Nu (burning money in trade fees), and is only a function of trying to use smaller offsets than the software should support.
Sorry bout this, the OP is quite wrong. I’ll edit the daology later (im busy right now), the real minimum tolerance is something like 0.45%. This might end up with a reasonable motion afterall.
less spread , more trade? am I right?
Generally, less spread, more trade, higher cost to shareholders. You know, generally.
as 0.005 offerset , we have a 0.003 profit from per success order ?
the cost comes from running the ALP. There is theoretical profit from rapid trades, but most traders will wait till the price changes by more than 0.2% and wipe out any profits from spread. The cost we have to consider is the amount we pay out via pool providers.
There are two kinds of costs to consider. The ALP operator is paid for their service by Nu. The liquidity provider (LP) using the ALP is paid a reward by the ALP operator and on top of that likely benefits from a high spread. Neither Nu or the ALP operator benefits from that.
It is possible that we have to pay more rewards on volatile pairs as BTC when we cap the maximum spread to e.g. <1% (0.5% on either side). This would be far less important for fiat pairs which should have an even lower capped spread (e.g. 0.6%) depending on the fees. So a SAF as low as 0% for e.g. the USNBT/USD pair should be acceptable if we wish to provide a certain amount of liquidity at low cost for the end user.
For BTC pools it makes sense but still arbitrarily I believe. It depends on the exchange volumes and the pricefeed updates. When the pricefeeds are updated in time self trading shouldn’t happen during volatility assuming similar pricefeeds are used.
@Nagalim, please update your first post. I see that
"the minimum practical tolerance would be 0.475%."
Then we have to take into consideration the “users’ payment + pool allowed maximum tolerance” in order to calculate the real ALP user payment.
Yah, this is still a work in progress. Sry for posting it too early.
Self trading amongst different LPs occurs when the equations in the OP are not met. Specifically, if d%=2f% there will for sure be self trading.