Author

Topic: Crypsty order misprocessing. (Read 421 times)

newbie
Activity: 23
Merit: 0
April 02, 2014, 04:52:08 AM
#9
I have done some other trials and the number added up and I got enough change. Hopefully, I am wrong and there is nothing wrong with the trade engine.
sr. member
Activity: 280
Merit: 250
April 02, 2014, 04:34:30 AM
#8
Hmmmm... could it be that the 0.2% fees is charged for the maximum price you entered and not for the different prices you paid to get all 10?

Or maybe its considered as three different transactions and each could have some rounding off that stacks up.

I donno.... I's reeling from the shock in knowing that I could buy at best price and did not need to manually buy them one below the other with trade orders  Shocked
newbie
Activity: 23
Merit: 0
April 02, 2014, 04:22:04 AM
#7
You get the best available price. However the Net Total prediction takes your entered maximum price x amount of coins, including 0.20% Fee. If you get your coins cheaper it means less fee's and you get some back. It works perfectly fine.

Read the post again. It seems you do not get the full change back.
legendary
Activity: 1960
Merit: 1010
April 02, 2014, 04:14:57 AM
#6
You get the best available price. However the Net Total prediction takes your entered maximum price x amount of coins, including 0.20% Fee. If you get your coins cheaper it means less fee's and you get some back. It works perfectly fine.
legendary
Activity: 2940
Merit: 1090
April 02, 2014, 03:37:48 AM
#5
Correct. However many of my game players who wanted to run auction houses / princes of trade and the like did want to do it the way you describe Cryptsy doing it.

Many also wanted even more detail: they wanted to see who placed each order, so they could chose to buy an ally's offer rather than an enemy's offer even if the ally's offer was a worse price.

(Better to buy expensive goods from an ally whose deathstars will help defend you than cheap goods from an enemy whose deathstars might attack you, kind of thinking.)

But a normal Earthling-jurisdiction currency or stock exchange here on Earth is usually required to give customers on both sides of the book the best price on the book.

-MarkM-
member
Activity: 63
Merit: 10
April 02, 2014, 03:37:35 AM
#4
I believe all exchange does their transaction like this. Correct me if I'm wrong. I haven't seen an exchange where you can have an option for equal to / less than a desired price.

A lot of crypto exchanges do this.

"Real" exchanges don't work this way, you're always supposed to get the best price, even if it is lower.
newbie
Activity: 23
Merit: 0
April 02, 2014, 03:33:24 AM
#3
When you order 10 quantity of xxx for 0.002, and when there is only 2 items up for sale, the exchange processes those two and puts 8 in the buy queue at the buy price of 0.002. It does not take into consideration the quantity of the .0015 and .001 items for sale. You are not buying for .002 or less... you are buying for .002

I believe all exchange does their transaction like this. Correct me if I'm wrong. I haven't seen an exchange where you can have an option for equal to / less than a desired price.

You are wrong, the exchange must give you the best price. If there is only 2 items for sale at that price OR LOWER, it will process those two and put a buy order for the remaining 8 at the same price. If there are sell orders at lower prices, you will buy the cheaper ones first until you reach your price. If your order is not fullfilled entirely, there will be a remaining buy order at your maximum price, i.e 0.002 in this case. If you buy the entire depth exactly, there will be no order left. See: http://wiki.cryptsy.com/placing "If we had set the sell price at 0.07900018 we would fill the orders from highest to lowest giving you the higher price for the first order in the book and then the next price for the remainder of the coin."

The trades are also registered in my trade history as being processed at the correct price, i.e. the price displayed in the order book. It's just that the change seems to be missing.
sr. member
Activity: 280
Merit: 250
April 02, 2014, 03:27:52 AM
#2
When you order 10 quantity of xxx for 0.002, and when there is only 2 items up for sale, the exchange processes those two and puts 8 in the buy queue at the buy price of 0.002. It does not take into consideration the quantity of the .0015 and .001 items for sale. You are not buying for .002 or less... you are buying for .002

I believe all exchange does their transaction like this. Correct me if I'm wrong. I haven't seen an exchange where you can have an option for equal to / less than a desired price.
newbie
Activity: 23
Merit: 0
April 02, 2014, 03:13:36 AM
#1
Edit: I have done some more tests and got the right change back up to ~30 satoshi. Hopefully, I was wrong and the numbers did add up fine the other times. If you experience problems with your change, please share.

When trading one has to worry about the depth of the order book. I have been trading for a while and I noticed something strange happening on cryptsy. Maybe someone can confirm my suspicions.

If one looks at the order book on the sell sides for X one might see

Sell orders
Price        Qty     Total(btc)
0.001       5        0.005
0.0015     3        0.0045
0.002       2        0.004
0.0023     1        0.0023
and so on.

Suppose we want to make a buy order to buy the 10 coins for sale at 0.002 btc/coin or less. We enter a buy order for 10 coins at 0.002btc/coin. This should cost us
0.005+0.0045+0.004 = 0.0135 btc + fees.
Crypsty displays 10coins*0.002btc/coin = 0.02btc + fees as the price. So far so good. What cryptsy is supposed to do is match our trades for the best prices and send us the change back, namely 0.02-0.0135 = 0.0065 - fees.
However, this never seems to be the case. In all cases the change I received for my orders was always way too small. It seems they do not give the proper change and they do deduct the full 0.02btc+ fees from my balance whilst giving me the 10 coins I bought. The order history shows the coins being bought for their respective value, but the account is not reimbursed the proper change.

I suspect cryptsy is pocketing that change and has been since its inception. I do receive change but it is usually on the order of a few thousand satoshis, I suspect that the change received is the difference in fees between the full price and the fees paid on the actual trade, while the rest of the change (0.0065) is not processed.

If the depth is good, the difference isn't big, but for many cryptocurrencies the depth is quite lacking and it is easy to move the market with relatively small trade orders. The change then becomes very meaningful. In our example, the depth was very poor and we overpaid 0.0065 because of the change processing mistake, effectively paying 0.002 btc per coin, or alternatively 0.02/0.0135 = 48% too much.  Repeated trades also exacerbate this problem as it is an invisible tax on all orders that are not made at market price.

This also skews data shown in history or through the API as it shows coins being bought for the cheapest price while we effectively pay a greater price. The same problem is likely happening when trying to sell.
Jump to: