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

Simplify trade fee model #64

Closed
ManfredKarrer opened this issue Jan 4, 2019 · 16 comments
Closed

Simplify trade fee model #64

ManfredKarrer opened this issue Jan 4, 2019 · 16 comments

Comments

@ManfredKarrer
Copy link
Member

This is a Bisq Network proposal. Please familiarize yourself with the submission and review process.

There has been already a proposal in the past (#31) discussing that topic but it did not reach clear support and was rejected. I want to start to discuss that topic again as we got repeated feedback from users [1] that the current model is hard to understand and as we observed over the last months it seems that the 0,4% target on total fees is not reached with the current model.

There are a few main arguments for a change to a percentage fee for the maker (the taker has already a fixed 0,2% fee).

  • Easier to understand and calculate
  • The penalty for a higher fee with higher price distance at a thin markets is counter-productive. Thin markets need market makers and high fees prevent that to happen.
  • There is a natural tendency that with more liquidity spreads get lower. The fee model based on distance to the market price is not a required and probably not a positive factor to achieve that.
  • The edit-offer feature makes cheating with maker fee payment possible.
  • For December 2018 the current fee model results in about 4,5 BTC on fees at 1600 BTC trade volume, that is about 0,28% in total. Target would be 0,4% (0,2% for both maker and taker).

I suggest that we remove the distance to the market price factor and use a purely percentage based model with 0,2% for maker. The min. fee of 0,00005 BTC will remain as it is required to avoid dust amounts. For taker fee there are no changes.

[1] #31 (comment)

@datsiuk
Copy link

datsiuk commented Jan 4, 2019

I think that this model is better. Easier to understand and don't penalizes high spreads, which for P2P trades and other low liquid markets are logical.
Bisq needs makers. Takers should pay much more than makers.

@qertoip
Copy link

qertoip commented Jan 4, 2019

I believe eventually the fees will need to address the "unintended call option" reality of decentralized exchanges: https://blog.bitmex.com/atomic-swaps-and-distributed-exchanges-the-inadvertent-call-option/

@sqrrm
Copy link
Member

sqrrm commented Jan 4, 2019

I don't have a strong opinion but since there is too much confusion with the current system it's worth trying this easier way.

@meapistol
Copy link

meapistol commented Jan 4, 2019

I have no problem with fixed percentage based fees. I also think the link in qertoip's comment should be read carefully. To set the deposit according to the Black-Scholes model would be much fairer and not too complicated. I assume the volatility of the relevant coins can be either obtained from a provider directly or calculated from recent prices. Black-Scholes is not perfect but better than the present situation with a fixed low deposit. Alternatively one can increase the default deposit such that forward trades become unfavourable.

@m52go
Copy link
Contributor

m52go commented Jan 4, 2019

It seems like the last proposal was only rejected on hopes that a revised fee explanation would cause less confusion.

That hasn't worked. Reducing confusion and lowering maker fees sound like good ways to increase liquidity, and since low liquidity might be one of Bisq's biggest flaws, I am in favor of the proposed fee structure.

I find the BitMEX article conceptually interesting, but not sure if the 'call option' dynamic is worth addressing right now unless it is a practical issue (public support inquiries indicate it isn't, but only arbitrators have the requisite perspective).

@initCCG
Copy link
Member

initCCG commented Jan 4, 2019

Since most of the trades for our group are as maker, we're naturally biased in favor of the maker's fee being fixed and much lower than the taker's fee.

Bisq advertises enhanced privacy as something that's worth the trouble and expense. So, privacy is worth something, and seems higher for the taker than the maker.

Right now, our node has several offers in different markets. So, any surveillance node can see all of them. If all our other offers remain online, and one offer disappears and appears under Market-Trades as taken, a surveillance node can assume that it was our trade.

Can the same surveillance node assume which node was the taker on that trade?
If not, than the makers are definitely giving up a lot of privacy in addition to making the market, and should be compensated for that with fees much lower than the taker fees.

We also never know when we might have to work a trade, because the taker always picks the time of his convenience, but makers can't.

Since there's no reputation system yet, we can't even filter takers, until they create trouble for us, and we manually block them out.
One of our associates tried bisq, and said he won't use it again until the makers have more control over who their takers are.

So, due to all of that, it seems that especially on a manual market that Bisq is, the maker should pay no more than half of what the taker pays, the way it is on Poloniex.

As far as whether it should be fixed fee or distance based, seems unfair to charge for distance, because the bisq network doesn't seem to incur any extra work or risk from distance.
The maker alone takes on all the risk and opportunity costs, and should profit or lose alone accordingly.

Regarding the fee level, seems too early to charge "the norm" among centralized exchanges, because Bisq is unique not only in its positive features, but also its current shortcomings and idiosyncrasies. Here is why:

We tried to poll among Russian traders why they don't use Bisq. In almost 3 months, we've had only one response, and that from an associate whom we sent a link to it:
https://bitcointalk.org/index.php?topic=5048815.msg46782197#msg46782197

So, most traders - much less regular users - in a large market with long Bitcoin roots are so not interested in Bisq that they don't want to even click on a poll to say why, or to rag on it.
That's even after they got the full Russian interface, and were informed of that.

We can say a little about at least some reasons why. We first tried to promote Bisq with typical users in Vietnam in winter/spring 2016/17. Back then, the complaint we got was that they didn't have the high deposit to trade the small amounts they wanted to trade.

More recently, even with the latest versions of 2018, the percentage of our clients and associates who had problems even installing the Windows version of Bisq and needed extensive help with it was over 75%. In markets where Bisq is needed most, the majority have never even heard of Linux, and will not be able to afford Macs with 2GB of RAM to spare for 1 app for a long time...

When something is so different from its competitors, and they have problems even installing it or being able to afford the first small test trade, most users write it off as half baked and weird.
The worst part is it's not something they will try again for a long time with so many easier alternatives available, because most don't value privacy or decentralization yet, and mostly use cell phones as their main Bitcoin trading device.

So, in our experience, these kinds of basic obstacles have pushed away a significant number of users from Bisq in the past couple of years, which probably won't return soon unfortunately.

We'll keep trying and do the best we can, as always. The point of this long story is that, given the above, it's too early to charge "the norm" fees among centralized exchanges.

It seems to us more appropriate to charge promotional level fees just to get the makers in particular to try Bisq, and get others who wrote off Bisq earlier to come back.

The market will tell the Bisq DAO when to charge the norm, not the other way around.
Sorry to write so much, because it came from several sources.

@clearwater-trust
Copy link
Member

I welcome a simpler fee model and especially want to remove the distance from market price factor considering the current price is manipulated by seedy, underworld, centralized forces.

@sqrrm
Copy link
Member

sqrrm commented Jan 4, 2019

@initCCG Do you have a specific suggestion on what the fee structure should be right now? I think you have some good points that the market maker should be rewarded for making the market and definitely not penalized for it.

The main reason for charging for distance from market originally was the risk of too many long lasting orders that would be hard on the network to maintain. Perhaps it's worth taking that risk and lowering the maker fee just to get more liquidity and incentivize a deeper order book.

@ghost
Copy link

ghost commented Jan 4, 2019

I agree with the proposal, but, as some others, I profit also to say (repeat) that makers are (from several aspects) at the root of the trades and this should translate concretely, eg in the fees.
Makers and takers do not at all the same job, so applying the same treatment (eg fees) to both is very probably suboptimal.
It's makers who make volume possible at first, not takers.
In a way or another if Bisq makes makers' job easier, this would only be beneficial.

PS: I'm not a maker.

@meapistol
Copy link

I have said many times and will repeat it again. It is not the fees that makes people trade on Bisq. The BTC-price can change 10% within an hour. The spread on XRC is now 30% and EUR 6% and people are still trading them (buy and sell). The speed of getting a trade finished is much more important and that will come with the API and tethered coins.

@ManfredKarrer
Copy link
Member Author

Regarding maker/taker fee:

  • Please consider that the taker pays 3 times the miner fee (taker fee tx, deposit tx, payout tx) and the maker only one time (maker fee tx). Miner fees are rather low luckily but that can change again some day.

  • Beside that I am open for a assymmetric fee. E.g. Maker fee 0,1% taker fee 0,3%.

  • General on fees:
    We need to get to a sustainable economic model. Currently we had about 4,5 BTC revenue in December (about 20 000 USD) and issue about 60 000 BSQ (60 000 USD) per month (that number is growing more to 80-100k). So we have about 30% of what we need to be sustainable. If we would have the 0,4% of the targeted fee revenue we would be about 50% which is not so bad. In a few months with current growth trends we should reach break even.
    Reducing fees would risk that the eonomic model is not sustainable. Losing contributors because of a low BSQ value is a higher risk as to lose some traders because of fees.

Once the DAO is out the fee can be changed anyway in the DAO by voting. But still there we need to think carefully to make the right strategic decisions as a community. Traders and contributors have different incentives and interests but they are dependent on each other. Traders without contributors fixing issues and improving the software will not be happy. And of course without traders Bisq would be pointless.

I also think that our core users don't see the fee as the fundamental aspect for the reason why they use Bisq or not. Those who don't care about privacy and decentralization have no reason to use Bisq - we cannot and never will be able to compete with Coinbase and the like.

I am aware that for several reasons Bisq is not adequade for certain regions in the world and for certain types of users (who don't care about privacy). We will get better over time to be more accessible for more mainstream type of users but that is not our priority and would risk to derail Bisq's vision if it would become a strong priority - at some points getting too mainstream would conflict with the privacy and decentralization properties.

Regarding option trading:
The maker can set the buyer deposit so there is a way to manually regulate that risk. We don't have much issues as far I know from arbitrators but at high volatility there are bit more issues. But so far it does not seem to be any major problem. An improvement can be to make the deposit % based on the trade amount. Another would be to have some volatility indicators which are used for determine that value.

@ManfredKarrer
Copy link
Member Author

ManfredKarrer commented Jan 4, 2019

@initCCG
Regarding maker privacy:
The trade statistic data are not connected to any data in the offer, beside of the price, amount (fiat amout is rounded to avoid fingerprinting amounts) and currency. Of course to some extent it could be used for matching offers with trades but it will have a certainl level of false positives. Fiat trades have limited privay anyway due the exposure of the bank details to the peer. In countries where Bitcoin is illegal Bisq cannot be used savely with Fiat as an undercover agent can play the role of the taker.
For altcoins that risk is much lower and if a user changes the onion address often and takes care aboot on-chain privacy he can gain quite a high level of privacy. Convenience and privacy are often diametral unfortunately.

@ManfredKarrer
Copy link
Member Author

ManfredKarrer commented Jan 4, 2019

Thanks @qertoip for the link to
https://blog.bitmex.com/atomic-swaps-and-distributed-exchanges-the-inadvertent-call-option.

As always bitmex blog is worth reading.

Here my comments to the article:

  • They made some mistakes when they descibed the trade protocol but for the option trade topic that is not relevant. E.g. there is only one atomic deposit tx where the funds of both traders (trade amount + security deposits of buyer and seller) go in. When a maker creates an offer no funds are locked up but only reserved for the trade in the makers wallet. See https://docs.bisq.network/exchange/images/trade-process-overview.png for the overview about the trade protocol.
  • The offer-maker can set the required deposit for the buyer in between a certain range. That enables to define manually the risk exposure to option trades. To improve that with % based values is on our short term todo list. To add a more sophisticated solution with provided recommendations would be also possible but would require a bit more effort.
  • The downside of the option trade can be seen as positive in form of a insurance against radical price changes. For one side it's positive for the other negative but it gives a limitation of losses and gains due volatility. The security deposit of the buyer is the amount of the max. loss due volatility.
  • Any user can block any other users onion address. A trader who engages multiple times in option trading risks to get blocked by the trade peers. Not a strong protection but something which seems to be widely used by Bisq users.
  • To embrace the option trading model would not fit to Bisq's primary user base and core mission: Privacy protecting exchange of Fiat with Bitcoin. The onboarding aspect is key here. For professional high volume traders the Bisq model as it is currently is not suited for various reasons. One obvious is the limitation of speed when it comes to on-chain trade protocols. There are some ideas for the future to provide solutions but that is nothing we are focussed on atm. Beside that I assume that many of our users do not know what an option trade is or how it works. They simply want to get into Bitcoin without losing their privacy.
  • The arbitrator as the "judge" in option trade cases will get removed with the upcoming trade protocol. See New trade protocol #52 for more details. Will not have much relevance regarding option trading as the mediator will play a similar role as the arbitrator but he has not signing keys.

@ManfredKarrer
Copy link
Member Author

Added a new proposal for making maker fee cheaper and raise taker fee: #65

@ManfredKarrer
Copy link
Member Author

I consider the proposal approved with 10 votes pro and 0 votes against it.
Impelmented with bisq-network/bisq#2212

@cbeams
Copy link
Member

cbeams commented Jan 8, 2019

Great discussion. After the fact, but I've given this a +1 as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants