Bitcoin Forum

Economy => Exchanges => Topic started by: brizzlygear on April 04, 2016, 11:25:15 AM



Title: Simultaneous buy/sell trades in Poloniex market data?
Post by: brizzlygear on April 04, 2016, 11:25:15 AM
Hi guys,

I was recently looking at the market data feed from Poloniex and found a few weird examples which I couldn't find an explanation for -- would appreciate if anyone could shed some light on this or throw some ideas.

Poloniex send a bunch of messages in each packet with a sequence number attached. The messages in one packet normally refer to one matching event (e.g. a trade, the book updates it causes and potentially the triggered stop-orders, I think). There's three message types: remove, modify (new price points count as modify as well) and trade.

As an example, for buy trades, the packet would look like this:

- trade: buy <rate> <amount>
- trade: buy <rate> <amount>
- trade: buy <rate> <amount>
- remove: ask <rate>
- remove: ask <rate>
- modify: ask <rate> <amount>

However, I found a few cases where's there's two simulatenous buy/sell trades in one event -- I'm trying to understand how could this be possible if the top of the book doesn't even move? If these were different trade events, they would be assigned different sequence number; if this is one event, how come it has both buy and sell legs? Also note the size of the small buy trade is roughly proportional to the size of the big sell trade every time (circa 0.00595%). Here's the data:

Code:
                                              type  side        rate        amount
seq     timestamp                  pair     

5136384 2016-04-02 19:51:33.768925 BTC_ETH  modify   bid  0.02763399   20.95993648
                                   BTC_ETH  modify   ask  0.02763400    0.02002996
                                   BTC_ETH   trade  sell  0.02763399    0.02003116
                                   BTC_ETH   trade   buy  0.02763400    0.00000120  // <-- wtf?
5136393 2016-04-02 19:51:35.787860 BTC_ETH  modify   bid  0.02763399   20.93990412
                                   BTC_ETH  modify   ask  0.02763400    0.02002876
                                   BTC_ETH   trade  sell  0.02763399    0.02003236
                                   BTC_ETH   trade   buy  0.02763400    0.00000120  // <-- wtf?
5136398 2016-04-02 19:51:36.870590 BTC_ETH  modify   bid  0.02763399   21.93990412
                                   BTC_ETH  modify   ask  0.02763400    0.01996921
                                   BTC_ETH   trade  sell  0.02763399    1.00000000
                                   BTC_ETH   trade   buy  0.02763400    0.00005955  // <-- wtf?
5136410 2016-04-02 19:51:42.086652 BTC_ETH  modify   bid  0.02763399   19.91993491
                                   BTC_ETH  modify   ask  0.02763400    0.01996802
                                   BTC_ETH   trade  sell  0.02763399    0.01996921
                                   BTC_ETH   trade   buy  0.02763400    0.00000119  // <-- wtf?

TL;DR: can there be both buy and sell trades in one market event if the top of book didn't move?


Title: Re: Simultaneous buy/sell trades in Poloniex market data?
Post by: brizzlygear on April 04, 2016, 04:38:20 PM
More examples from today:

Code:
5654469 2016-04-04 15:45:48.594019 BTC_ETH  modify   bid  0.02657778   221.06237056
                                   BTC_ETH  modify   ask  0.02657800     1.99575215
                                   BTC_ETH   trade  sell  0.02657778     0.02003236
                                   BTC_ETH   trade   buy  0.02657800     0.00000100
5654523 2016-04-04 15:46:04.029590 BTC_ETH  modify   bid  0.02657778   221.04233820
                                   BTC_ETH  modify   ask  0.02657800     1.99575115
                                   BTC_ETH   trade  sell  0.02657778     0.02003236
                                   BTC_ETH   trade   buy  0.02657800     0.00000100
5659522 2016-04-04 16:12:51.198880 BTC_ETH  modify   bid  0.02659100    47.96004999
                                   BTC_ETH  modify   ask  0.02659300     4.02798604
                                   BTC_ETH   trade  sell  0.02659100     0.06769207
                                   BTC_ETH   trade   buy  0.02659300     0.00006689
5660221 2016-04-04 16:16:35.487060 BTC_ETH  remove   bid  0.02662679     0.00000000
                                   BTC_ETH  modify   bid  0.02662664     8.16237609
                                   BTC_ETH  modify   ask  0.02662700     3.85681194
                                   BTC_ETH   trade  sell  0.02662679     2.68404749
                                   BTC_ETH   trade  sell  0.02662664    17.31595251
                                   BTC_ETH   trade   buy  0.02662700     0.00018308
5660636 2016-04-04 16:18:26.818157 BTC_ETH  modify   bid  0.02662664     8.14234373
                                   BTC_ETH  modify   ask  0.02662680     0.01160292
                                   BTC_ETH   trade  sell  0.02662664     0.02003236
                                   BTC_ETH   trade   buy  0.02662680     0.00000022
5660659 2016-04-04 16:18:32.817097 BTC_ETH  modify   bid  0.02630000    78.98219459
                                   BTC_ETH  modify   bid  0.02662664     8.14227501
                                   BTC_ETH  modify   ask  0.02663100    69.94867455
                                   BTC_ETH   trade  sell  0.02662664     0.00006872
                                   BTC_ETH   trade   buy  0.02663100     0.00000001
5660687 2016-04-04 16:18:41.375131 BTC_ETH  modify   bid  0.02662664     8.12224265
                                   BTC_ETH  modify   ask  0.02663100    69.89089171
                                   BTC_ETH   trade  sell  0.02662664     0.02003236
                                   BTC_ETH   trade   buy  0.02663100     0.00000022
5660855 2016-04-04 16:19:55.017528 BTC_ETH  remove   ask  0.02663100     0.00000000
                                   BTC_ETH  modify   bid  0.02663097     0.20668017
                                   BTC_ETH   trade   buy  0.02663100    66.84917681
                                   BTC_ETH   trade  sell  0.02663097     0.00000075