bitshares / bsips

BitShares Improvement Proposals and Protocols. These technical documents describe the process of updating and improving the BitShares blockchain and technical ecosystem.
https://bitshares.github.io
63 stars 86 forks source link

New BSIP: coin-days as market fees (core token holders have a discount when paying market fees) #191

Open abitmore opened 5 years ago

abitmore commented 5 years ago

Brief

Give core token holders a discount when paying market trading fees.

Rationale

Give traders a reason to hold the core token.

It's fair that exchanges running on top of the blockchain share a part of their benefits to the core token holders of the blockchain. With this mechanism, when ecosystem around UIAs grows, value of core token grows. So, core token holders will be more willing to promote trading of UIAs, thus will result in a win-win situation.

Things to consider

Why coin-days

The idea is

Implementation

We need to find a fair conversion rate between coin-days and each individual trading asset. E.G.

X coin-days = Y bitCNY
Z coin-days = W OPEN.BTC
...

Ideally we should use "market value" of individual assets to calculate. But it's a bit hard to find the market value.

For coin-days, we can

For individual assets, we already have:

Among them, only price feeds are relatively reliable, but it's only available for a few assets. Perhaps we need oracles for this data. Perhaps we can use a prediction market to find the fair rate.

If coin-seconds are trade-able, perhaps we can use the trading price directly. Need to make sure the feedback is sustainable. Need to consider scenarios about illiquid / inactive markets and white-listing of markets.

Thoughts?

xiao93 commented 5 years ago

great ideal

abitmore commented 5 years ago

With this, the market participants will have direct benefit if hold core token. This is a "carrot" for them to hold the core token.

Some big CEXs implemented similar rules on their exchange-tokens (E.G. Huobi).

pmconrad commented 5 years ago

Changing market fee rules globally could damage existing businesses. I think that's a bad idea.

A variant might be to allow asset issuers to define an "exchange rate" where a number of coin days accumulated on a given asset could pay the market fee on that specific asset.

Another variant might be to allow BTS coin-days to be used for paying TX fees.

The downside of the coin-days approach in any case is that it's comparatively heavy, computation wise (adds computation to every transfer of tokens, including e. g. operation fee payments).

shulthz commented 5 years ago

I think this is a good idea. The core token of DEX need more value support from itself. Price of the core token is very importtant. We need to learn the advantage of CEX.

abitmore commented 5 years ago

The downside of the coin-days approach in any case is that it's comparatively heavy, computation wise (adds computation to every transfer of tokens, including e. g. operation fee payments).

To reduce computation load, an option is to not generate coin-days directly from balance, but requires every user to sign an explicit "lock" operation to specify how many coins would be used to generate coin-days, like VESTS in Steem, that amount of coins can not be spent until the user explicitly unlock it.

froooze commented 5 years ago

Does this mean we can increase the flat market fee before enabling a discount?

I would also support x free transactions per week, when y BTS are staked.

abitmore commented 5 years ago

@froooze there was a PR about free transactions, see https://github.com/cryptonomex/graphene/pull/612. Specifications in https://github.com/bitshares/bitshares-core/issues/186. No BSIP yet if I'm correct, best if you can write one.