When I use @jaka’s wonderlrful tool steeemchart.net to check steem price, I found something funny in the chart, apparently he also found similar problems, so I will just borrow this chart from his post:
Pic from this post: https://steemit.com/steem/@jaka/who-is-trading-the-non-market-price
Initially I thought there maybe bugs in the code, but after a closer look on internal market transaction data I realized these are real trades. I thought I found a gold mine: if I could place orders to catch those stupid orders, I could make tons of steem! For example: when market is trading around 0.97SBD, I could bid at 0.5SBD and offer at 1SBD. If those trades happened as often as the chart shows, I could make some free steem. But it didn’t work! My orders didn’t get filled at all while at the same time those 0.5 SBD and 1 SBD trades still showed up on the chart.
Then I double check the transactions, I found the qty of those trades are tiny: 0.001 or 0.002 Steem. Finally, I realize this is an odd behavior from the internal market matching algorithm. Let’s call the minimum quantity increment for both Steem and SBD “tick”, and their tick size = 0.001, which means quantity 0.001 can not be divided further. Let’s look at the following examples:
Assuming current market top level bid is to buy 100 Steem with 97 SBD, top ask is to sell 100 Steem for 98 SBD.
You send order to buy 0.001 Steem, you can not pay 0.00098SBD since 0.001 SBD is tick size and the non-divisible minimum unit here. As a result, internal market match you with 0.001 SBD, resulting a trade at 0.001 SBD.
Your paid price 1 is worse than market best ask = 0.98.You try to sell 0.002 SBD, you will NOT receive 0.002 / 0.98 = 0.0020408... since the tick size is 0.001. The quantity will be rounded down to the next tick = 0.002.
You bought Steem at the price 1.Send order to sell 0.002 Steem, you will NOT receive 0.002 * 0.97 = 0.00194 SBD, instead you will receive 0.001 SBD. You sold Steem for price 0.5!
Because internal market’s matching algorithm will round price to the nearest tick, small qty order could be matched at a price worse than market’s best bid / offer. But I think this may be not a bug, it’s designed for discouraging tiny orders and match them if they really want to trade. Also this may prevent people from spamming the exchange.
Btw, send an order to try it. Let me know if my explanation is not correct. Thanks
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
You got a 37.32% upvote from @emperorofnaps courtesy of @trisolaran!
Want to promote your posts too? Send 0.05+ SBD or STEEM to @emperorofnaps to receive a share of a full upvote every 2.4 hours...Then go relax and take a nap!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit