Author Topic: Strange behavior of the trading platform  (Read 7177 times)

0 Members and 1 Guest are viewing this topic.

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
Tip : you can divide your trading fees by 5 and pay only 0.1 BTS for each operation if you want by going into the advanced options of your account and putting 0.1 in "transaction fee".

awesome, thank you so much for the tip..i've been paying 0.5 BTS all along.

Offline EstefanTT

It may look like saving some fraction of bitshares, some fraction of a cent right now but ... who knows at wich price bitshares will be after the 2.0, after we "eat" 50% of the top 20 Altcoins, after we accept to work with visa and master card, after major fiats collapse, ...

I'll do it !
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline inarizushi

  • Sr. Member
  • ****
  • Posts: 316
    • View Profile
We still need a proper answer to explain why it happens BUT

I found a way to roll over without risking to have our short bought BEFORE we get to buy it. Even when both orders are confirm at the same time.

I'll try to explain it the best I can :

Let's say the price feed is at 205, some margin call at 225 and some guys buying at 230.

You create a sell order (or a bitusd short) for 1$ at 230.5, 0.5 bts more than the higher buy order.

Once the order confirmed and present in the sell orders list, you got yourtself a "bug protection". As long as your 1 BitUSD is there to sell and has not been bought by an invisible order (or superman) you can go and roll over one short without having to pray and skip heart beats in the process.

Your 1 BitUSD will be bought by your buy order in the process.

You will have to do it for every roll over. That's 0.5 x 2 = 1 bts more in transaction for every roll over to be sure.

I just did it once and it seem to work correctly.

Tip : you can divide your trading fees by 5 and pay only 0.1 BTS for each operation if you want by going into the advanced options of your account and putting 0.1 in "transaction fee".
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053

Offline EstefanTT

We still need a proper answer to explain why it happens BUT

I found a way to roll over without risking to have our short bought BEFORE we get to buy it. Even when both orders are confirm at the same time.

I'll try to explain it the best I can :

Let's say the price feed is at 205, some margin call at 225 and some guys buying at 230.

You create a sell order (or a bitusd short) for 1$ at 230.5, 0.5 bts more than the higher buy order.

Once the order confirmed and present in the sell orders list, you got yourtself a "bug protection". As long as your 1 BitUSD is there to sell and has not been bought by an invisible order (or superman) you can go and roll over all your shorts without having to pray and skip heart beats in the process.

When you are done, you cancel your 1 BitUSD order. It will cost you 2 x 0.5 = 1 bts to have your "protection"

I just did it once and it seem to work correctly.

so basically a test short to probe the invisible buying space....i like it

Yeeeah ! F#ck Superman !
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
We still need a proper answer to explain why it happens BUT

I found a way to roll over without risking to have our short bought BEFORE we get to buy it. Even when both orders are confirm at the same time.

I'll try to explain it the best I can :

Let's say the price feed is at 205, some margin call at 225 and some guys buying at 230.

You create a sell order (or a bitusd short) for 1$ at 230.5, 0.5 bts more than the higher buy order.

Once the order confirmed and present in the sell orders list, you got yourtself a "bug protection". As long as your 1 BitUSD is there to sell and has not been bought by an invisible order (or superman) you can go and roll over all your shorts without having to pray and skip heart beats in the process.

When you are done, you cancel your 1 BitUSD order. It will cost you 2 x 0.5 = 1 bts to have your "protection"

I just did it once and it seem to work correctly.

so basically a test short to probe the invisible buying space....i like it

Offline EstefanTT

We still need a proper answer to explain why it happens BUT

I found a way to roll over without risking to have our short bought BEFORE we get to buy it. Even when both orders are confirm at the same time.

I'll try to explain it the best I can :

Let's say the price feed is at 205, some margin call at 225 and some guys buying at 230.

You create a sell order (or a bitusd short) for 1$ at 230.5, 0.5 bts more than the higher buy order.

Once the order confirmed and present in the sell orders list, you got yourtself a "bug protection". As long as your 1 BitUSD is there to sell and has not been bought by an invisible order (or superman) you can go and roll over one short without having to pray and skip heart beats in the process.

Your 1 BitUSD will be bought by your buy order in the process.

You will have to do it for every roll over. That's 0.5 x 2 = 1 bts more in transaction for every roll over to be sure.

I just did it once and it seem to work correctly.


 
« Last Edit: July 17, 2015, 08:18:03 pm by EstefanTT »
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
The whale knows that if he buys a lot of bitUSD/bitCNY and then he crashes the price by dumping, he can get it back cheaper from your margin calls....

yeah, tempting!

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
The whale knows that if he buys a lot of bitUSD/bitCNY and then he crashes the price by dumping, he can get it back cheaper from your margin calls....

https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
Anyhow, it has to be explained and everybody needs to be aware of it and how it works.

If someone has decided to be short on BitXXX with 80% of his bts fund. If it happenned to him when he tries to roll over his shorts, I will be in a very unpleasant situation with one more short, no BitUSD to cover the old one and not enough bts to do it again.

The guy is screwer. He needs to borrow bts or buy more in order to roll over his shorts. That, or buy BitUSD as he can at a stupid price to cover an old short, losing money off course.

I'm well aware of that situation ...  :-[

ah, yeah that sucks...i lucked out having some BTS still in reserve to painfully unwind my position. it's a good lesson to keep even more of a reserve balance in future.

Offline EstefanTT

Anyhow, it has to be explained and everybody needs to be aware of it and how it works.

If someone has decided to be short on BitXXX with 80% of his bts fund. If it happenned to him when he tries to roll over his shorts, I will be in a very unpleasant situation with one more short, no BitUSD to cover the old one and not enough bts to do it again.

The guy is screwer. He needs to borrow bts or buy more in order to roll over his shorts. That, or buy BitUSD as he can at a stupid price to cover an old short, losing money off course.

I'm well aware of that situation ...  :-[
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
I think it's the very last mistery. Everything else make a lot of sense now.

In the snapshot I see the :

1. expired shorts at the price feed (205). Around 50k BitUSD in green. They buy any BitUSD at the price feed.
2. 5 k margin call short buying 10% above the price feed. 205 + 10% = 225 !
3. Why then when I shorted BitUSD above 225 (above the margin call) it has been bought instantaneously by an invisible order ?

You can see in the snapshot, I repeated the test but without shorting, just a simple sell of 1 BitUSD at 228 bts. I'm above the price feed (205) and also above the margin call (225). That 1 BitUSD should have been in the sell orders list until someone buy it and not disapear instantaneously.
It can't be someone buying at the very same moment the very same amount. It happenned to me twice before with shorts and also once to CyclonMaker. 4 times in a row, it can't be a coincidence.

i agree, no coincidence...either there's some internal process to the market that's making some set of orders invisible, or there's a trade bot that's somehow able to execute at priority over our orders.

Offline EstefanTT

I've been rolling over my shorts for quite a while with no issues now, so here are a few tips:

1. If you're setting a price limit on your short intending to buy at that exact price, then don't set the quantity.  Instead, manually enter the collateral amount as 2*price limit*desired quantity.  The quantity will display the amount this would collateralize at the current feed, but ignore that.  You can just buy the desired quantity at the price limit you set from your short and the orders will fill each other properly.


2. Expired shorts force a buy order at exactly the feed.  Margin called shorts force a buy at 10% above the feed.  You can see these two orders in the screenshots posted in this thread with their prices in yellow instead of green: The buy at 205 is the expired short order and the buy at 225 is the margin call order.

3. I don't know how much difference it makes, but I always increase my desired number of connections to 45 instead of 20 to try and minimize my latency on receiving new blocks and seeing new orders sooner.

The GUI is sometimes a little weird with my orders showing and hiding as they're in the process of being matched with each other, but if I ignore that it seems to work fine, and the GUI catches up with what actually happened soon after.  The new graphene system should resolve this sort of GUI issue since it pushes updates to the GUI instead of the GUI constantly checking for updated data.


I think it's the very last mistery. Everything else make a lot of sense now.

In the snapshot I see the :

1. expired shorts at the price feed (205). Around 50k BitUSD in green. They buy any BitUSD at the price feed.
2. 5 k margin call short buying 10% above the price feed. 205 + 10% = 225 !
3. Why then when I shorted BitUSD above 225 (above the margin call) it has been bought instantaneously by an invisible order ?

You can see in the snapshot, I repeated the test but without shorting, just a simple sell of 1 BitUSD at 228 bts. I'm above the price feed (205) and also above the margin call (225). That 1 BitUSD should have been in the sell orders list until someone buy it and not disapear instantaneously.
It can't be someone buying at the very same moment the very same amount. It happenned to me twice before with shorts and also once to CyclonMaker. 4 times in a row, it can't be a coincidence.
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline EstefanTT

I had to absent myself from the forum. I just came back, it's too late for me to deeply understand everything but there is a lot less of mystery around all of that.

Thanks for your great answers guys. Particulary Troglodactyl and Inarizushi.

I'll come back tomorow after re-reading this thread with maybe more questions but if think most of them are clarified.

Thanks cyclonmaker to keep the comments flowing when I wasn't there  ;)
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

Offline cylonmaker2053

  • Hero Member
  • *****
  • Posts: 1004
  • Saving the world one block at a time
    • View Profile
  • BitShares: cylonmaker2053
I've been rolling over my shorts for quite a while with no issues now, so here are a few tips:

1. If you're setting a price limit on your short intending to buy at that exact price, then don't set the quantity.  Instead, manually enter the collateral amount as 2*price limit*desired quantity.  The quantity will display the amount this would collateralize at the current feed, but ignore that.  You can just buy the desired quantity at the price limit you set from your short and the orders will fill each other properly.

2. Expired shorts force a buy order at exactly the feed.  Margin called shorts force a buy at 10% above the feed.  You can see these two orders in the screenshots posted in this thread with their prices in yellow instead of green: The buy at 205 is the expired short order and the buy at 225 is the margin call order.

3. I don't know how much difference it makes, but I always increase my desired number of connections to 45 instead of 20 to try and minimize my latency on receiving new blocks and seeing new orders sooner.

The GUI is sometimes a little weird with my orders showing and hiding as they're in the process of being matched with each other, but if I ignore that it seems to work fine, and the GUI catches up with what actually happened soon after.  The new graphene system should resolve this sort of GUI issue since it pushes updates to the GUI instead of the GUI constantly checking for updated data.

awesome, thank you so much for the pointers, esp with #1. i've had some annoying trades not exactly matched in quantity, but that sounds like a great solution.

for #2, do the 10% over peg orders actually show up on in the order book? both @EstefanTT and i were placing orders for over the max bid in the order book, so they shouldn't have auto executed on us unless there were latent buy orders just not showing up.

I wasn't trading while there were active margin calls, but I did see the +10% order in the order book, and it is displayed in the screenshot.  Note the color coding: regular buys are green, forced buys from short expiration and margin calls are yellow, regular sells are red, and short sells are blue.

EDIT: I just confirmed shorting to myself still works fine.  At the time of execution, call price was about 199.5, lowest sell at 230, highest buy at 225.01, margin call order at 219.4 and expired short order at 199.46.  I shorted to myself at 227.

hmmm, weird bc we were both placing our orders for above the highest bid (whether forced or regular buy) and they were still executing before our near simultaneous buys could get in there and execute.