Deviation on the bots is how much the bot will allow the price to drift before it changes the order?
Spread is how far from the above price it will set its price. Is this singe sided or double sided? Is a spread of 0.5% really 0.5% on both sides or is it split between each side (say 0.25%)?
Deviation: If the price changes by more than this, the bot will move the orders.
Offset: How far away from the price the bot will place the orders.
Spread: ~2x offset. Difference between highest bid and lowest ask price.
Tolerance: Largest amount actual orders can deviate from server price and still be credited for reward.
It sounds like it would be good for users to lower their offset to track the price better. Within reason of course because you don’t want the bot constantly adjusting the orders.
Spread is a phenomenological thing, it is not a parameter we directly control. We directly control the offset, which causes the spread (yes, always 2x, one for bid and one for ask). Changing the offset will not have any effect on how often the bot adjusts orders. The deviation does that. Deviation should be between 0.002 and 0.003 approximately, depending on the volatility of the currency.
Tolerance of servers is given in the custodial grant.
For NBT/USD I see no problem for it to be 0.00001. There is absolutely no risk of bot collision as the exchange rate is exactly 1.0.
Right ? @desrever@willy@woolly_sammoth
Anyone can feel free to play with the parameters of their trading.py file in their python directory. There are no real ‘rules’ in this trustless system; just what you are and are not capable of. Feel free to drop the deviation on nbt/USD to 1e-10. Increase the offset to something like 0.007 and never lose on hedging. Nbt/cny is similar (though the tolerance is tighter): I have never lost money to hedgers on that pair.
I see in exchanges.py that CCEDK has 0.002 fee fixed in the code while actually it is changeable depending on the monthly volume.
I trading.py there is spread = max(self.exchange.fee, self.offset) so without changing the code one cannot reduce spread lower than 0.002 for ccedk