Author Topic: a question about shorting  (Read 6132 times)

0 Members and 1 Guest are viewing this topic.

Offline abit

  • Committee member
  • Hero Member
  • *
  • Posts: 4664
    • View Profile
    • Abit's Hive Blog
  • BitShares: abit
  • GitHub: abitmore
Changes to Cover Rules - Eliminate 5% fee
https://bitsharestalk.org/index.php?topic=13782.msg179400#msg179400
It makes sense if we can change the auto-cover price anytime before the order expire.

I mean seriously, if we are going to be promoting ourselves as a decentralized exchange we need to get basic orders figured out.  And this needs to be done before 1.0 is released.

I got bitshares the interview with FXstreet a month ago, and I know what traders and investors need to see in a platform...

I agree. I also think it is unacceptable to not have market and limit orders in the long term (perhaps not a huge priority at the moment). The front running issue can be solved without being restricted to only WYAIWYG orders. It just requires making all bid/ask/short orders take 20 seconds to be confirmed rather than the current 10 seconds.

Also, I think cancelling an order and fully covering an order should be free (there is no spamming worry there because at most one valid transaction can be a cancelling or fully covering order for each existing order/position, which only existed due to another transaction that already paid a fee). Perhaps the cancelling order being free is not as big of a deal, but the fully covering order being free is more important. A single short order can be broken up into multiple open short positions (because the short order can be partially matched multiple times) and each of these open short positions will eventually need to be covered (each with their own fixed covering fee). However, partial covering (and other actions like adding collateral to the short) should have a fee because there is a spamming issue present in that case.
Agree.
BitShares committee member: abit
BitShares witness: in.abit

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani
I mean seriously, if we are going to be promoting ourselves as a decentralized exchange we need to get basic orders figured out.  And this needs to be done before 1.0 is released.

I got bitshares the interview with FXstreet a month ago, and I know what traders and investors need to see in a platform...

I agree. I also think it is unacceptable to not have market and limit orders in the long term (perhaps not a huge priority at the moment). The front running issue can be solved without being restricted to only WYAIWYG orders. It just requires making all bid/ask/short orders take 20 seconds to be confirmed rather than the current 10 seconds.

Also, I think cancelling an order and fully covering an order should be free (there is no spamming worry there because at most one valid transaction can be a cancelling or fully covering order for each existing order/position, which only existed due to another transaction that already paid a fee). Perhaps the cancelling order being free is not as big of a deal, but the fully covering order being free is more important. A single short order can be broken up into multiple open short positions (because the short order can be partially matched multiple times) and each of these open short positions will eventually need to be covered (each with their own fixed covering fee). However, partial covering (and other actions like adding collateral to the short) should have a fee because there is a spamming issue present in that case.


 +5% +5% +5%

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
I mean seriously, if we are going to be promoting ourselves as a decentralized exchange we need to get basic orders figured out.  And this needs to be done before 1.0 is released.

I got bitshares the interview with FXstreet a month ago, and I know what traders and investors need to see in a platform...

I agree. I also think it is unacceptable to not have market and limit orders in the long term (perhaps not a huge priority at the moment). The front running issue can be solved without being restricted to only WYAIWYG orders. It just requires making all bid/ask/short orders take 20 seconds to be confirmed rather than the current 10 seconds.

Also, I think cancelling an order and fully covering an order should be free (there is no spamming worry there because at most one valid transaction can be a cancelling or fully covering order for each existing order/position, which only existed due to another transaction that already paid a fee). Perhaps the cancelling order being free is not as big of a deal, but the fully covering order being free is more important. A single short order can be broken up into multiple open short positions (because the short order can be partially matched multiple times) and each of these open short positions will eventually need to be covered (each with their own fixed covering fee). However, partial covering (and other actions like adding collateral to the short) should have a fee because there is a spamming issue present in that case.
« Last Edit: January 27, 2015, 08:45:43 pm by arhag »

Offline vlight

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
  • BitShares: vlight
I know you can do that, but it costs 3x the transaction fees and takes more time for something that should be able to be done in 1 step.  Goofy workarounds are not going to draw in traders or other people to use this exchange...  Wait until new investors short their first assets and get pummeled because of this.  They will runaway from bts without a second thought.

I mean seriously, if we are going to be promoting ourselves as a decentralized exchange we need to get basic orders figured out.  And this needs to be done before 1.0 is released.

I got bitshares the interview with FXstreet a month ago, and I know what traders and investors need to see in a platform...

I agree.

Also, afaik it was possible to cover the short position at the very beginning when BitSharesX was just launched and i was caught by surprise that this was later changed :D

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
"immediate" margin call needs to be added to bitshares in order to make this realistic to trade.  I have been trading for over 10 years and I can gaurantee you we won't see adoption with the way the rules are currently laid out for covering shorts.  We are literally being trapped in positions until the 30 day holding period expires or our collateral drops below 1.5x or 2x... I don't remember which one it is.

What if I have 100,000 bts and wan't to take a short position at 100bts/usd and risk up to 110bts/usd?  In real life trading a trader will position his trade size so that a loss = 1% to 5% of his account, so I would risk say 2,500 bts (2.5%).  That would mean my position size would be short 250 bitUSD. Collateral would be 75,000 bts for this position.  I would still have 25,000 bts left over in my account.  Lets say the price moves in my favor... Great, my bts is worth more and I can buy 250 bitUSD on the open market and cover my short and have a few bts left over.  But now lets say the price moves against me and I wan't to cover my position at 110bts/usd... BUMMER! my bts is only worth 227.27 bitUSD and I can't buy enough to cover the short.  I'm screwed until I get a margin call and my losses have most likely exploded past my stop out point.

This destroys all possibility of practical risk management.  The risk is asymmetric to the downside.  I can't stress enough how badly this needs to be fixed.  Just look at the nightmare that the swiss franc caused a few weeks ago.  It bankrupted many people and many exchanges all because they were unable to get out of their positions.

I'm gonna repeat myself... but you can open 3 short positions each with 25,000 BTS collateral instead of one big short with 75,000 collateral.

I know you can do that, but it costs 3x the transaction fees and takes more time for something that should be able to be done in 1 step.  Goofy workarounds are not going to draw in traders or other people to use this exchange...  Wait until new investors short their first assets and get pummeled because of this.  They will runaway from bts without a second thought.

I mean seriously, if we are going to be promoting ourselves as a decentralized exchange we need to get basic orders figured out.  And this needs to be done before 1.0 is released.

I got bitshares the interview with FXstreet a month ago, and I know what traders and investors need to see in a platform...

Offline vlight

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
  • BitShares: vlight
"immediate" margin call needs to be added to bitshares in order to make this realistic to trade.  I have been trading for over 10 years and I can gaurantee you we won't see adoption with the way the rules are currently laid out for covering shorts.  We are literally being trapped in positions until the 30 day holding period expires or our collateral drops below 1.5x or 2x... I don't remember which one it is.

What if I have 100,000 bts and wan't to take a short position at 100bts/usd and risk up to 110bts/usd?  In real life trading a trader will position his trade size so that a loss = 1% to 5% of his account, so I would risk say 2,500 bts (2.5%).  That would mean my position size would be short 250 bitUSD. Collateral would be 75,000 bts for this position.  I would still have 25,000 bts left over in my account.  Lets say the price moves in my favor... Great, my bts is worth more and I can buy 250 bitUSD on the open market and cover my short and have a few bts left over.  But now lets say the price moves against me and I wan't to cover my position at 110bts/usd... BUMMER! my bts is only worth 227.27 bitUSD and I can't buy enough to cover the short.  I'm screwed until I get a margin call and my losses have most likely exploded past my stop out point.

This destroys all possibility of practical risk management.  The risk is asymmetric to the downside.  I can't stress enough how badly this needs to be fixed.  Just look at the nightmare that the swiss franc caused a few weeks ago.  It bankrupted many people and many exchanges all because they were unable to get out of their positions.

I'm gonna repeat myself... but you can open 3 short positions each with 25,000 BTS collateral instead of one big short with 75,000 collateral.

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani
Bytemaster, can you please explain why this was implemented like this?

 One thing I could do is trigger an "immediate" margin call by raising the call price to the current feed price.  This would immediately cover your full order and I could even have it bypass the 5% fee in this case.

That works for me, if it solves everyone else's problem.

go for it !  Will be better than now for sure!

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
One thing I could do is trigger an "immediate" margin call by raising the call price to the current feed price.  This would immediately cover your full order and I could even have it bypass the 5% fee in this case.

I have some concerns with that implementation. What happens if the order if not fully matched immediately (not enough sell or short sell orders at the price feed)? I am assuming no collateral is released with partial matching. Could you cancel the fake "margin call" if it wasn't getting matched fast enough, so that you could for example buy BitUSD through other means (perhaps outside exchanges) and cover the manual way?

Actually, I suppose you could buy your own margin call order. But you wouldn't get any preference if there are multiple BitAsset buy orders at the price feed or higher (in BTS/BitAsset). So, I would still prefer the option to be able to cancel the fake "margin call" order if desired.
« Last Edit: January 27, 2015, 12:41:32 am by arhag »

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
Bytemaster, can you please explain why this was implemented like this?

Because collateral is not "moveable" and would require a new type of buy order... "buy with collateral, and relative buy with collateral"  these orders would be added to our existing 3x3 matrix of potential order matching which would make a 5x3 grid of potential parings.   Not to mention the fact that while orders are in this state I would still have to consider them for margin calls. 

So for the sake of simplicity I decided to separate concerns *AND* because it creates an implicit requirement for extra collateral.   

One thing I could do is trigger an "immediate" margin call by raising the call price to the current feed price.  This would immediately cover your full order and I could even have it bypass the 5% fee in this case.

"immediate" margin call needs to be added to bitshares in order to make this realistic to trade.  I have been trading for over 10 years and I can gaurantee you we won't see adoption with the way the rules are currently laid out for covering shorts.  We are literally being trapped in positions until the 30 day holding period expires or our collateral drops below 1.5x or 2x... I don't remember which one it is.

What if I have 100,000 bts and wan't to take a short position at 100bts/usd and risk up to 110bts/usd?  In real life trading a trader will position his trade size so that a loss = 1% to 5% of his account, so I would risk say 2,500 bts (2.5%).  That would mean my position size would be short 250 bitUSD.  Collateral would be 75,000 bts for this position.  I would still have 25,000 bts left over in my account.  Lets say the price moves in my favor... Great, my bts is worth more and I can buy 250 bitUSD on the open market and cover my short and have a few bts left over.  But now lets say the price moves against me and I wan't to cover my position at 110bts/usd... BUMMER! my bts is only worth 227.27 bitUSD and I can't buy enough to cover the short.  I'm screwed until I get a margin call and my losses have most likely exploded past my stop out point.

This destroys all possibility of practical risk management.  The risk is asymmetric to the downside.  I can't stress enough how badly this needs to be fixed.  Just look at the nightmare that the swiss franc caused a few weeks ago.  It bankrupted many people and many exchanges all because they were unable to get out of their positions.

Offline Gentso1

  • Hero Member
  • *****
  • Posts: 931
    • View Profile
  • BitShares: gentso
Bytemaster, can you please explain why this was implemented like this?

 One thing I could do is trigger an "immediate" margin call by raising the call price to the current feed price.  This would immediately cover your full order and I could even have it bypass the 5% fee in this case.

That works for me, if it solves everyone else's problem.

Offline bytemaster

Bytemaster, can you please explain why this was implemented like this?

Because collateral is not "moveable" and would require a new type of buy order... "buy with collateral, and relative buy with collateral"  these orders would be added to our existing 3x3 matrix of potential order matching which would make a 5x3 grid of potential parings.   Not to mention the fact that while orders are in this state I would still have to consider them for margin calls. 

So for the sake of simplicity I decided to separate concerns *AND* because it creates an implicit requirement for extra collateral.   

One thing I could do is trigger an "immediate" margin call by raising the call price to the current feed price.  This would immediately cover your full order and I could even have it bypass the 5% fee in this case.   
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline fluxer555

  • Hero Member
  • *****
  • Posts: 749
    • View Profile
Bytemaster, can you please explain why this was implemented like this?

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
So I short 1000 bitUSD at say 100bts/usd
I have 300,000 bts tied up in collateral (3x) in order to open the short position

If the price stays the same and I wan't to cover say 5 days later, I need to come up with another 100,000 bts to buy back 1000 bitUSD?  Then I have to use that newly purchased 1000 bitUSD to cover my short and unlock my 300,000 bts already in collateral?

Offline Riverhead


Since BTS is fungible it makes little difference if the short is covered with unlocked BTS or locked BTS. They'll both be unlocked as soon as the cover is executed and it'll be the same pool of funds again; indistinguishable from each other.

I suppose it could be argued that you should keep enough BTS aside for the eventual cover, effectively making it 4x collateral required, but I don't see the point.