Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BSIP 86: Share market fees to the network #194

Closed
abitmore opened this issue Aug 17, 2019 · 25 comments
Closed

BSIP 86: Share market fees to the network #194

abitmore opened this issue Aug 17, 2019 · 25 comments

Comments

@abitmore
Copy link
Member

@abitmore abitmore commented Aug 17, 2019

BSIP: 0086
Title: Share market fees to the network
Author: Abit More <https://github.com/abitmore>
Status: Draft
Type: Protocol
Created: 2019-11-29
Discussion: https://github.com/bitshares/bsips/issues/194
Worker: TBD

Abstract

This BSIP proposes a protocol change: when every trade happens, if there are
market fees generated, a portion (E.G. 5% or 10%) of the market fees goes to
the network.

Motivation

The network needs more tools to generate income to support its development.

Rationale

A major activity in the network is trading assets. The asset owners make
profits in the form of market trading fees. Currently, the main tools for the
network to generate income from asset trading activities are order creation
fee and order cancellation fee. It seems reasonable that the asset owners
share some profits (a part of market fees) to the network to support its
development.

The cut of market fees can go to committee-account's vesting balances.
As a supporting measure, committee-account should be exempted from
white-listing restrictions, so that it is able to claim the vesting balances
and sell them for core token or other tokens to pay for development later.

Specifications

Protocol upgrade

A time will need to be scheduled for applying the change. In this document,
terms "before the protocol upgrade", "at the protocol upgrade" and "after
the protocol upgrade" may or may not be used to indicate things happen before
the scheduled time, at the scheduled time and after the scheduled time.

New global parameter

Add a new global parameter market_fee_network_percent which can be updated
by the committee only after the protocol upgrade.
Initial value of that parameter is 0.
Valid range of that parameter is [0, 100%].

When processing market fees

After the protocol upgrade, when splitting a non-zero market fee, firstly
split amount * market_fee_network_percent (round down) to committee-account,
then process the remainder as before. The amount split to committee-account
should go to the vesting balance object whose type is market_fee_sharing.

When checking asset authorities

After the protocol upgrade, when checking authorities (E.G. white-lists) of an
asset on an account, if the account is committee-account, let it pass.

Discussion

  • Other than the "coin-days as market fees" proposal which applies
    a discount to market fees to benefit core token holders directly, this BSIP
    seeks for a mechanism to increase the network's income and benefit core token
    holders indirectly.

  • Adjusting the fee schedule and network percent in the referral program is
    another option to increase the network's income, and is probably sufficient
    for funding development.

  • In the original design, the purpose of market fees is to reward asset
    issuers for their work (e.g. gateway providers, or businesses built around
    PMs), while operation fees (limit_order_create/cancel in particular) reward
    the network for performing its work. The separation of market/operation fees
    matches the separation of roles. Changing this may damage existing businesses.
    Thus this BSIP could be a bad idea from this perspective. Also note that the
    network can profit from market fees by setting them on committee-owned tokens.

  • This would be another motivation for businesses building on top of BitShares
    to get involved in the parameter governance process. The percentage can be
    0 if it's more appropriate.

  • Asset owners can specify a zero market fee percentage to get around the
    "tax", while still profiting by setting a higher deposit/withdrawal fee.
    It is uncommon nowadays probably because it's less convenient or attractive
    for their customers.

  • Another strategy is to charge a network market fee globally, independent of
    what the asset owner decides. It essentially removes the option to not set
    a fee from asset owners, which kills some freedom and would hinder non-profit
    use of the platform.

  • It's possible that committe-account would accumulate a lot of tokens with no
    value and tokens which are unable or hard to be used to pay for development.
    It's a side effect. Hopefully there will be quite some usable tokens.
    The committee will have to do some work to manage the tokens anyway.

Non-Technical Summary

This BSIP adds a tool for the committee to impose a tax on market trading
fees for all assets which enabled market trading fee, thus would potentially
increase income for the network to support its development. It may probably
damage businesses relying on market fees if the committee-decided tax is high.
The committee may need some efforts to manage the income.

Copyright

This document is placed in the public domain.

See Also

@pmconrad

This comment has been minimized.

Copy link
Contributor

@pmconrad pmconrad commented Aug 17, 2019

In my understanding, the purpose of market fees is to reward asset issuers for their work (e. g. gateway providers, or businesses built around PMs).

In contrast to this, operation fees (limit_order_create/cancel in particular) reward the network for performing its work. Network effort is independent from the size of an order and therefore fixes.

IMO the existing separation of market/operation fees matches the separation of roles perfectly. Changing this might damage existing businesses. I think this is a bad idea.

(Note that the network can profit from market fees by setting them on committee-owned tokens.)

@bitcrab

This comment has been minimized.

Copy link
Contributor

@bitcrab bitcrab commented Aug 19, 2019

I agree with pc.

@abitmore

This comment has been minimized.

Copy link
Member Author

@abitmore abitmore commented Aug 23, 2019

I can understand that @bitcrab as owner of an exchange running on top of BitShares, he doesn't want to reduce income of his own exchange. But I don't understand where @pmconrad stands. Besides of the near-zero operation fees, the network can always earn more income to support funding for more workers which would add more value.

The network does earn some market fees for the network via committee-owned assets at this moment, but it doesn't mean the income is sufficient nor forever.

@shulthz

This comment has been minimized.

Copy link

@shulthz shulthz commented Aug 24, 2019

Like Apple Store App, en,how much fees is suitable? not harm the owner of the exchange.

@Inmortak

This comment has been minimized.

Copy link

@Inmortak Inmortak commented Aug 24, 2019

Hello guys,

Where can I see the current distribution and kinds of fees?

@froooze

This comment has been minimized.

Copy link

@froooze froooze commented Aug 24, 2019

Like Apple Store App, en,how much fees is suitable? not harm the owner of the exchange.

flat 0.01% on all trades
or 5-10% of the trading fees

@pmconrad

This comment has been minimized.

Copy link
Contributor

@pmconrad pmconrad commented Aug 27, 2019

But I don't understand where @pmconrad stands.

I don't have a personal interest in this subject. I have stated my reasoning above.

@shulthz

This comment has been minimized.

Copy link

@shulthz shulthz commented Aug 30, 2019

Like Apple Store App, en,how much fees is suitable? not harm the owner of the exchange.

flat 0.01% on all trades
or 5-10% of the trading fees

en, that's reasonable.
As we only have little income now, can't support anyting.

@froooze

This comment has been minimized.

Copy link

@froooze froooze commented Aug 31, 2019

Like Apple Store App, en,how much fees is suitable? not harm the owner of the exchange.

flat 0.01% on all trades
or 5-10% of the trading fees

en, that's reasonable.
As we only have little income now, can't support anyting.

I suggested some numbers, but I am not convinced this is the right thing.

@shulthz

This comment has been minimized.

Copy link

@shulthz shulthz commented Aug 31, 2019

Like Apple Store App, en,how much fees is suitable? not harm the owner of the exchange.

flat 0.01% on all trades
or 5-10% of the trading fees

en, that's reasonable.
As we only have little income now, can't support anyting.

I suggested some numbers, but I am not convinced this is the right thing.

DEX service is not free, if want more better service, it need more reasonable income to support.

@froooze

This comment has been minimized.

Copy link

@froooze froooze commented Sep 1, 2019

DEX service is not free, if want more better service, it need more reasonable income to support.

I agree here, but we can also increase the fee for BURN ASSET!

@shulthz

This comment has been minimized.

Copy link

@shulthz shulthz commented Sep 1, 2019

DEX service is not free, if want more better service, it need more reasonable income to support.

I agree here, but we can also increase the fee for BURN ASSET!

The income should be diversified,shouldn't be single.

@sschiessl-bcp

This comment has been minimized.

Copy link
Collaborator

@sschiessl-bcp sschiessl-bcp commented Sep 7, 2019

In my understanding, the purpose of market fees is to reward asset issuers for their work (e. g. gateway providers, or businesses built around PMs).

In contrast to this, operation fees (limit_order_create/cancel in particular) reward the network for performing its work. Network effort is independent from the size of an order and therefore fixes.

IMO the existing separation of market/operation fees matches the separation of roles perfectly. Changing this might damage existing businesses. I think this is a bad idea.

(Note that the network can profit from market fees by setting them on committee-owned tokens.)

I agree with the sentiment, if the expectation is met that the current network fee is sufficient to support the network or gateways contribute back to the community. History shows that most gateways are not interested in that, such that I agree that imposing a tax on their profits seems reasonable. This also goes hand in hand with the current voters sentiment that the network needs to fund its own development more outside of worker proposals.

Either way, having the option to impose a percent network fee on the market fees sounds reasonable to me, even if it blurs the distinction Peter has laid out. That parameter could still be 0. This would be another motivation for businesses building ontop of BitShares to get involved in the parameter governance process.

It might also be sufficient to adjust the fee schedule and network percent though. Either or should happen as its the voters expressed opinion at the moment IMO.

@abitmore

This comment has been minimized.

Copy link
Member Author

@abitmore abitmore commented Sep 29, 2019

@ryanRfox please assign a number to this. Thanks.

BTW quote from an old post in forum:

... we should also and mainly consider to have a global % trading fee that apply as basic % trading fee that every issuer owe to the network. (it could be very low, since it apply to both side of every market)
(at the end of the day the platform allow the issuer to create his asset and manage all the trades, the platform gives him a trading engine, so imo make sense to have a global fee for it)

@pmconrad

This comment has been minimized.

Copy link
Contributor

@pmconrad pmconrad commented Sep 30, 2019

have a global % trading fee that apply as basic % trading fee that every issuer owe to the network

IMO that would be a stupid thing. We have per-asset configurable fees, which means every issuer can configure their assets as they wish. Applying a global fee would remove the option to not set a fee.

@sschiessl-bcp

This comment has been minimized.

Copy link
Collaborator

@sschiessl-bcp sschiessl-bcp commented Oct 1, 2019

have a global % trading fee that apply as basic % trading fee that every issuer owe to the network

IMO that would be a stupid thing. We have per-asset configurable fees, which means every issuer can configure their assets as they wish. Applying a global fee would remove the option to not set a fee.

It's a strategic decision

a) Charge a network market fee cut, iff the asset owner is having a market fee which indicates for-profit use

b) Charge a network market fee globally, independent what the asset owner decides.

Discussion points:

  • ad a): Gateways can somewhat circumvent paying a network cut by charging a big deposit / withdraw fee and not charge a market fee. Justifiable as a tax to for-profit operations.

  • ad b): Impact significant, will also cause committe-account to accumulate a lot of Shitcoins. Harder to justify as a). A fee is already always present, just not a % fee.

Explain and let voters decide?

@abitmore

This comment has been minimized.

Copy link
Member Author

@abitmore abitmore commented Nov 30, 2019

I've updated OP with a full document. @sschiessl-bcp can we assign a BSIP number to this so that I can create a pull request to discuss the details?

@sschiessl-bcp

This comment has been minimized.

Copy link
Collaborator

@sschiessl-bcp sschiessl-bcp commented Dec 3, 2019

BSIP-86 seems to be free

@abitmore abitmore changed the title New BSIP: Share market fees to the network BSIP 86: Share market fees to the network Dec 3, 2019
@abitmore

This comment has been minimized.

Copy link
Member Author

@abitmore abitmore commented Dec 3, 2019

Thank you @sschiessl-bcp. PR created: #253

@bitcrab

This comment has been minimized.

Copy link
Contributor

@bitcrab bitcrab commented Dec 11, 2019

I now support this BSIP, as a gateway operator I feel it is OK to be taxed 5%-10% of the market fee.

however I am considering whether a global market_fee_network_percent is enough or we need to enable defining the percent per asset?

as under the marketing maker contest scenario, charging tax from gateway asset market fees will make it more reasonable for system to fund the contest, and it seems even more funny if system can demand a higher percent for the assets which are included in the contest funded by system?

@sschiessl-bcp

This comment has been minimized.

Copy link
Collaborator

@sschiessl-bcp sschiessl-bcp commented Dec 18, 2019

I now support this BSIP, as a gateway operator I feel it is OK to be taxed 5%-10% of the market fee.

however I am considering whether a global market_fee_network_percent is enough or we need to enable defining the percent per asset?

as under the marketing maker contest scenario, charging tax from gateway asset market fees will make it more reasonable for system to fund the contest, and it seems even more funny if system can demand a higher percent for the assets which are included in the contest funded by system?

I don't think it's necessary. At the end, we want to make it more interesting for traders to participate. An asset participating in the market making contest could be required to have market fee sharing enabled to a certain percentage.

@MichelSantos

This comment has been minimized.

Copy link
Contributor

@MichelSantos MichelSantos commented Dec 22, 2019

The concern over what the maximum fee cannot be made on any sort of principle. Once the principle of fee sharing is accepted it is all arbitrary. But the lower the better for the asset issuer.

But every asset issuer in the future will be nervous and reluctant about introducing a new asset because even if the maximum fee is set at, for example, 25%, that asset issuer will remember this BSIP as a warning sign: "Sure, you created an asset where the maximum fee was set at 25%, but let's not kid ourselves. Someone else may come along and introduce a new BSIP which changes the maximum value to 50%. Then 75%." There can be no trust in the platform if core token holders will come along and change the rules under which they originally created the asset.

The same concern will be held by today's asset issuers. If core token holders can change the terms of the platform without the consent of the asset issuer, this is not any sort of agreement. This is a platform that can change at any moment.

Therefore, my personal non-technical recommendation is that this BSIP should not apply to existing assets without the consent of each asset issuer. How this can be achieved depends on whether the asset exists before or after this BSIP takes effect.

Existing Assets

Existing asset issuers must either opt-in or have the ability to opt-out of the effects of this BSIP. Opt-in could be accomplished either by a complete agreement, or with a partial agreement such as, "We agree to pay 60% of the fee sharing %".

Future Assets

Future assets issuers agree to sharing fees at a maximum value of X% that is defined in this BSIP. If any later BSIP is introduced to increase X% then the asset issuer will have the option to opt-in or opt-out as described above for existing assets.

I believe that this is the only fair way to treat asset issuers.

@abitmore

This comment has been minimized.

Copy link
Member Author

@abitmore abitmore commented Dec 22, 2019

Thanks for the comments @MichelSantos. IMHO, of course we should think about fairness, however, we also need to be fair to ourselves, a good strategy is to only give out when we afford to. The system is bleeding, the proposal is to mitigate it.

@bitcrab

This comment has been minimized.

Copy link
Contributor

@bitcrab bitcrab commented Dec 23, 2019

Therefore, my personal non-technical recommendation is that this BSIP should not apply to existing assets without the consent of each asset issuer. How this can be achieved depends on whether the asset exists before or after this BSIP takes effect.

Existing Assets

Existing asset issuers must either opt-in or have the ability to opt-out of the effects of this BSIP. Opt-in could be accomplished either by a complete agreement, or with a partial agreement such as, "We agree to pay 60% of the fee sharing %".

Future Assets

Future assets issuers agree to sharing fees at a maximum value of X% that is defined in this BSIP. If any later BSIP is introduced to increase X% then the asset issuer will have the option to opt-in or opt-out as described above for existing assets.

I believe that this is the only fair way to treat asset issuers.

I don't think this is a good idea.

for example, we have several gateways that have ****.BTC, do you think it's good that OPEN.BTC completely opt in however GDEX.BTC can select to opt out?

BTS can change at any time, if there is strong enough consensus, I don't think this is a problem.

tax is compulsory, no government can work without tax. BTS is a DAC, it need to charge enough fees for providing public service.

@sschiessl-bcp

This comment has been minimized.

Copy link
Collaborator

@sschiessl-bcp sschiessl-bcp commented Jan 15, 2020

Approved
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
8 participants
You can’t perform that action at this time.