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

[1] Request: Display asset's market fees in Exchange screen. #581

Closed
xanoxt opened this issue Oct 15, 2017 · 12 comments
Closed

[1] Request: Display asset's market fees in Exchange screen. #581

xanoxt opened this issue Oct 15, 2017 · 12 comments
Assignees
Labels
[3] Feature Classification indicating the addition of novel functionality to the design
Milestone

Comments

@xanoxt
Copy link

xanoxt commented Oct 15, 2017

Hi.

Now that we have a team working on the User Experience, I'd like to suggest we take steps in improving the transparency of our Exchange functionality. First good step would be to display asset's market fee on the Exchange screen somewhere on the BUY/SELL widgets, as they do have a "fee" field that displays bts transaction fee, but not the market fee. Listing market fee for the asset would be great.

Also perhaps displaying it in the "Please confirm the transaction" window, would also be good.

Right now the DEX is less transparent than centralized exchanges, and we want to be better than them!

@wmbutler wmbutler added the [3] Feature Classification indicating the addition of novel functionality to the design label Oct 15, 2017
@wmbutler wmbutler added this to the 171101 milestone Oct 15, 2017
@wmbutler wmbutler changed the title Request: Display asset's market fees in Exchange screen. [1] Request: Display asset's market fees in Exchange screen. Oct 15, 2017
@wmbutler wmbutler self-assigned this Oct 15, 2017
@svk31
Copy link
Contributor

svk31 commented Oct 16, 2017

Market fees are only applied to a user buying an asset that has a market fee; so someone who enters a buy order for 1 OPEN.BTC would be charged a 0.2% fee, which is equivalent to 0.002 OPEN.BTC. They would then receive 1 - 0.002 OPEN.BTC, or 0.998 OPEN.BTC

There's also a max_market_fees parameter that sets an upper limit to how big the market fee can be, but Openledger has left it at the default value so it can become very high indeed. I've implemented the math and a possible version of how we could add this to the exchange page:

image

@svk31 svk31 self-assigned this Oct 16, 2017
@landry314
Copy link

The bitshares trading fees are taken for placing and canceling a trade while the trade itself has no fee but aren't the gateway fees applied when the trade occurs (baked into the price) and not when the order gets made? I am not totally clear on this.

This leads to a complication in showing or explaining the gateway fees at the time of exchange... how would we do it so that this difference is made clear?

@svk31
Copy link
Contributor

svk31 commented Oct 17, 2017

You're right and that's one reason I never showed them here earlier. The market fees simply get deducted from the amount received when buying an asset, they're applied on the fill_order operation. You think you're buying 100 but you only receive 98.

@landry314
Copy link

landry314 commented Oct 17, 2017

Right, so I totally agree with the sentiment that the fees need to be made transparent (I wasn't aware of them for a while) but also somehow clear that they are not deducted until the trade occurs. I think changing "Fee" to "Order Fee" to differentiate it is a good idea and move the Market Fee higher before the Total field to show that it is part of the total and maybe have a small disclaimer or, to save room, a tooltips help bubble that explains what the Market Fee is.

On bittrex it looks like this:

bittrex order window

@wmbutler
Copy link
Contributor

You're right and that's one reason I never showed them here earlier. The market fees simply get deducted from the amount received when buying an asset, they're applied on the fill_order operation. You think you're buying 100 but you only receive 98.

So, we should add an additional field called Market Fee for those assets that charge and additional fee and display it below the Fee.

screen shot 2017-10-22 at 9 25 00 pm

@landry314
Copy link

This is exactly what Sigve commented about above: #581 (comment)

Fee needs to be renamed to "Order Fee" to differentiate.

@wmbutler wmbutler removed their assignment Oct 23, 2017
@wmbutler
Copy link
Contributor

wmbutler commented Oct 23, 2017

  • If the user decides to purchase a specific quantity of an asset, they should end up with the exact quantity they elected to purchase in their wallet once the purchase is complete. We currently are deducting market fees from the trade instead of from the user's balance. This causes the user to end up with fewer qty than requested.

This situation is particularly difficult when a user is trying to get the exact amount required to repay a margin debt. I've never seen a trading platform that will alter the number of shares received in order to accommodate trading fees. Trading fees are typically line items and are deducted from the account.

@svk31
Copy link
Contributor

svk31 commented Oct 24, 2017

That's just how it works in bitshares-core though unfortunately, the fees are subtracted from fills and not charged up front.

Doing it the way you say means we'll have to place an order to buy 102 instead of 100 if that's what the user entered, or clicked, which will probably make it harder to match orders.

@landry314
Copy link

That is too bad :-(

@wmbutler
Copy link
Contributor

@xeroc @oxarbitrage This is a nasty issue. Any creative thought on how to deal with this? Essentially, we need a way for a user to end up with 5 shares if they buy 5. The implication in this thread is that fees cannot be deducted from a users account balance but must come from the trade.

@wmbutler
Copy link
Contributor

@abitmore you have any words of wisdom here?

@wmbutler
Copy link
Contributor

Let's at least display the market fee. Easy win for now.

@svk31 svk31 mentioned this issue Oct 30, 2017
svk31 added a commit that referenced this issue Oct 30, 2017
* Update version #

* Fix #498: Keep scrollbars visible, restore perfect scrollbar to main exchange div

* Fix #589: Openledger deposit address shown as unknown

* Only store valid deposit addresses #589

* Fix setting of max_market_fee in asset create/update

* First pass at showing market fees in exchange #581

* Add a tooltip explaining the market fee
CryptoBridge pushed a commit to CryptoBridge/cryptobridge-ui that referenced this issue Nov 21, 2017
* Update version #

* Fix bitshares#498: Keep scrollbars visible, restore perfect scrollbar to main exchange div

* Fix bitshares#589: Openledger deposit address shown as unknown

* Only store valid deposit addresses bitshares#589

* Fix setting of max_market_fee in asset create/update

* First pass at showing market fees in exchange bitshares#581

* Add a tooltip explaining the market fee
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[3] Feature Classification indicating the addition of novel functionality to the design
Projects
None yet
Development

No branches or pull requests

4 participants