Steemit Internal Market Rounding Error

in #steem7 years ago (edited)

Have you ever noticed buying STEEM with SBD doesn't always work?
I found the reason why: a rounding error after confirmation can change your bid between the time you accept the values entered and the time your buy order is actually placed... Basically, this means that you will be left with an inaccurate buy order that may not actually meet the targeted sell order, and your SBD will sit in limbo while the STEEM price continues to climb higher than what you wanted to buy it at. This has potential to make you lose a lot of money.

Here is what the error looks like:

To reproduce this error:

  • go to internal market
  • click the lowest sell order to set price
  • enter the amount of SBD to spend
  • confirm the transaction, enter password
  • watch as your order changes to an unconfirmed value
    (note: some rounding errors have a 50% chance to occur)

To avoid this error:

  • click the lowest sell order to set price
  • ignore logic and enter a higher price
  • gamble that you don't actually end up spending that much

What should actually happen:

  • click the lowest sell order to set the price
  • confirm, any rounding is done on the amount of SBD spent, not bid price!

Hoping this can be fixed, it's really frustrating to say the least.

Sort:  

anyway why trade on internal market..You dont get a fare rate ..Take extra 5 minutes and just trade from poloniex or bittrex..

This comment has received a sweet gift of Dank Amps in the flavor of 11.36 % upvote from @lovejuice thanks to: @bhightech. Vote for Aggroed!

This comment gets a 3.47 % upvote thanks to @bhightech - Hail Eris !

Yup, i recently made an error on the internal market and pretty pissed about it. Rather than clicking on the lowest bid or ask, i think the developer team can create a button that takes the average between the lowest bid and the lowest ask. That way, it will keep the market for steem/sbd more competitive. Over time, youll be losing steem and sbd due to slippage.

Congratulations! This post has been upvoted from the communal account, @minnowsupport, by chaotica from the Minnow Support Project. It's a witness project run by aggroed, ausbitbank, teamsteem, theprophet0, and someguy123. The goal is to help Steemit grow by supporting Minnows and creating a social network. Please find us in the Peace, Abundance, and Liberty Network (PALnet) Discord Channel. It's a completely public and open space to all members of the Steemit community who voluntarily choose to be there.

If you like what we're doing please upvote this comment so we can continue to build the community account that's supporting all members.

I noticed that too, I had to set a slightly higher price to get my orders filled.

I believe it is a mechanic to ensure that fractional amounts of STEEM are not lost into the market. If the system did not round, there would be a buildup of lost STEEM in the internal market. If you are trying to trigger an immediate order, you can set you price above what is required to trigger the order. That is generally the best practice when you are trying to enter a quickly moving market.

You generally have to choose one, fast trade or best rate.

added more to post: any rounding done should be on amount of sbd spent, not bid price

Wow..I still have soooo much to learn...

Nice and very useful post all new steemiabs and steem buyers...thank you @alphacore sharing it with others..

Coin Marketplace

STEEM 0.17
TRX 0.15
JST 0.028
BTC 62007.73
ETH 2389.39
USDT 1.00
SBD 2.49