SIP-21: Double exchange fee rate on swing trades


Simple Summary

Double the exchange fee rate on any swing trade. That is any move to or from an s Synth to an i Synth. e.g. sTRX <> iBTC or iETH <> sBNB. The one Synth excluded from this is sUSD - moving in or out of sUSD will not double the fee.


Doubling the exchange fee rate would reduce the amount of opportunities for a front runner however in a volatile market would not be effective anymore. The lever is the exchange fee rate which is just a configuration change via a SCCP.

This has already been discussed in where the bot runners have down voted this issue. Where as the majority of the community voted it up.


There is already a leveraged benefit on the inverse Synths and currently being able to trade short <> long in a volatile market is a continuous advantage to front runners.


  • In detect a swing trade, that is any exchange to or from any synth beginning with s or i.
  • Double the ExchangeRates.exchangeFeeRate()

The normal exchange fee rate is 30 bips. It is currently 50 bips which would make the swing trade 100 bips. When it is restored to 30 bips it would then only be 60 bips on a swing trade.

This is only a temporary stop-gap until either:

  • the full implementation of sip-12 is rolled out which should reduce the lag opportunity on price updates
  • or the implementation of the chainlink + exchange order queue (proposed in this issue)

Once one of the above is implemented, then I propose to remove this exchange fee doubling mechanism.

Test Cases


Copyright and related rights waived via CC0.