Author Topic: Proposed market pegged asset overhaul  (Read 7722 times)

0 Members and 1 Guest are viewing this topic.

Offline bytemaster

It is simple enough to disable shorting to yourself if there is an order below the feed.   This would maintain the convertibility guarantee. 
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 nomoreheroes7

  • Hero Member
  • *****
  • Posts: 756
  • King of all the land
    • View Profile
  • BitShares: nomoreheroes7
Soo...what becomes of  +5%? I don't follow all the technical stuff too well but what I'm hearing is interest may be phased out entirely...so why would I want to bank with BTS when I could bank with a bank and at least get 0.1% interest or whatever it's down to now?

Offline Rune

  • Hero Member
  • *****
  • Posts: 1120
    • View Profile

Let me put it in another way. Let's say there was zero BitUSD supply, then some amount of BitUSD was shorted into existence and sold to some people, but then immediately afterward they all decided they wanted to sell their BitUSD (just under the price feed) and no one else wanted to buy BitUSD. Under the current system the BitUSD supply would unwind back down to zero in at most 30 days. Under the new proposed system, there is no such guarantee.

I agree that it is important that holders of a bitasset are guaranteed the ability to convert it back into BTS, at a price very near the feed, within 30 days.  If the new system wouldnt allow this, it needs to be added.

I think even at our current very low DEX volume this won't be necessary. As long as a bitasset is used for trade of any kind it should be possible to exchange it to BTS due to market expectations becoming a self fulfilling promise. If you want to exchange your bitasset to BTS quickly than you can just overpay and your order will be matched quickly.

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
bytemaster thinks I am being overly optimistic about the timetable for my refactoring, and thus is looking for a change that will fix the problems but be much less expensive (in terms of developer time).  This ticket is the solution he's hit upon.

I agree, this system does seem easier.  It has the upside of being easier to explain to people.

There is no need for confusing "shorting" and "covering" which are basically "creating bitAsset" and "redeeming bitAsset to unlock BTS used as collateral".  The new way seems a lot easier to explain to people. 


We just have to make sure that the new system works, maintains the peg, and cannot result in a bitAsset being shorted down to 0 value, or holders being unable to ever sell it at the feed price.

Also we need to re-add yield in some way (that works better than old way).
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline graffenwalder

TLDR, ticket in OP is still under discussion.

Some history.  A feature which has been on our road-map for some time is relative orders, where people can place a bid or ask at a given percentage of the feed, like "I want to buy at 95% of the feed and I want to sell at 105% of the feed," without having to run scripts and spam the blockchain with a ton transactions.

I was tasked with implementing relative orders (more specifically, rehauling bytemaster's implementation to use percentages of the feed instead of absolute difference from the feed, and thoroughly testing it in preparation for release).

During the testing, I found certain fundamental architectural limitations of our matching algorithm prevented us from properly matching relative orders.  The same limitations also prevent certain combinations of existing order types from matching correctly in certain circumstances, which subsequently occurred on the main network.  A community contributor (pmconrad) advised us of this, which I already suspected due to what I knew about the architecture, and confirmed in testing.

My solution was to embark on a significant refactoring of our market engine to make orders execute the way we always intended them to.  I had hoped to have it ready for initial testing this week, however I've been hugely distracted upgrading my own delegate for the 0.6.x hardfork.

bytemaster thinks I am being overly optimistic about the timetable for my refactoring, and thus is looking for a change that will fix the problems but be much less expensive (in terms of developer time).  This ticket is the solution he's hit upon.

What we need to do is sit down and discuss the options, which will happen just as soon as I finish dealing with my obstreperous delegate VPS.
So the solution to implementing relative orders, is to not implement them, sacrificing yield, and only allow shorting against yourself?

Offline theoretical

TLDR, ticket in OP is still under discussion.

Some history.  A feature which has been on our road-map for some time is relative orders, where people can place a bid or ask at a given percentage of the feed, like "I want to buy at 95% of the feed and I want to sell at 105% of the feed," without having to run scripts and spam the blockchain with a ton transactions.

I was tasked with implementing relative orders (more specifically, rehauling bytemaster's implementation to use percentages of the feed instead of absolute difference from the feed, and thoroughly testing it in preparation for release).

During the testing, I found certain fundamental architectural limitations of our matching algorithm prevented us from properly matching relative orders.  The same limitations also prevent certain combinations of existing order types from matching correctly in certain circumstances, which subsequently occurred on the main network.  A community contributor (pmconrad) advised us of this, which I already suspected due to what I knew about the architecture, and confirmed in testing.

My solution was to embark on a significant refactoring of our market engine to make orders execute the way we always intended them to.  I had hoped to have it ready for initial testing this week, however I've been hugely distracted upgrading my own delegate for the 0.6.x hardfork.

bytemaster thinks I am being overly optimistic about the timetable for my refactoring, and thus is looking for a change that will fix the problems but be much less expensive (in terms of developer time).  This ticket is the solution he's hit upon.

What we need to do is sit down and discuss the options, which will happen just as soon as I finish dealing with my obstreperous delegate VPS.
BTS- theoretical / PTS- PZxpdC8RqWsdU3pVJeobZY7JFKVPfNpy5z / BTC- 1NfGejohzoVGffAD1CnCRgo9vApjCU2viY / the delegate formerly known as drltc / Nothing said on these forums is intended to be legally binding / All opinions are my own unless otherwise noted / Take action due to my posts at your own risk

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander

Let me put it in another way. Let's say there was zero BitUSD supply, then some amount of BitUSD was shorted into existence and sold to some people, but then immediately afterward they all decided they wanted to sell their BitUSD (just under the price feed) and no one else wanted to buy BitUSD. Under the current system the BitUSD supply would unwind back down to zero in at most 30 days. Under the new proposed system, there is no such guarantee.

I agree that it is important that holders of a bitasset are guaranteed the ability to convert it back into BTS, at a price very near the feed, within 30 days.  If the new system wouldnt allow this, it needs to be added.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.
New shorts can always be created that undercut you? Please extrapolate on this idea.

Let's say I buy X BitUSD at the price feed at 100 BTS/BitUSD. Then the price of BTS goes up and the price feed goes to 90 BTS/BitUSD and stays like that for 30 days. Under the current system, I can put my BitUSD sell order at 89.9 BTS/BitUSD and be guaranteed within 30 days to sell my X BitUSD for close to $X worth of BTS (which I can then sell for close to $X worth of fiat for example). This is because all shorts need to cover within 30 days. If they do not the system will force them to cover by buying up any BitUSD sell orders up to and including the price feed. In the current system, the BitUSD sell orders that can exist up to but not including the price feed (which includes my sell order) are actual BitUSD that someone has rather than short sells. The amount of actual BitUSD sell orders that can exist is limited by the collective debt owed by the shorts, so I have a guarantee that my actual BitUSD sell order will be matched in 30 days.

But under this new proposed system, someone can undercut me with new shorts to rollover their short position. They issue a new X BitUSD to themselves by locking the appropriate amount of collateral. They use that X BitUSD to cover their old short (or alternatively undercut my BitUSD sell order so that their expired old short is covered by buying their new BitUSD rather than mine). Since that old short is now covered, it won't be forced to buy up to the price feed of 90 BTS/BitUSD when it expires (or alternatively it did but mine did not get matched because I was undercut by new BitUSD brought into existence). So, even after 30 days, my BitUSD sell order remains unmatched.

Let me put it in another way. Let's say there was zero BitUSD supply, then some amount of BitUSD was shorted into existence and sold to some people, but then immediately afterward they all decided they wanted to sell their BitUSD (just under the price feed) and no one else wanted to buy BitUSD. Under the current system the BitUSD supply would unwind back down to zero in at most 30 days. Under the new proposed system, there is no such guarantee.
« Last Edit: February 12, 2015, 06:40:23 pm by arhag »

Offline Rune

  • Hero Member
  • *****
  • Posts: 1120
    • View Profile
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.
New shorts can always be created that undercut you? Please extrapolate on this idea.

EDIT: Ah, the holder of the expiring short can issue a new asset to themselves, and close their old short with it, and you never get the chance to sell your at BitUSD at feed price to that person? Am I on track?

I think this can also be done now any time there are no active short orders, which you can't expect to have if markets are at equilibrium. Ultimately I think this change reflects the economic reality better.

Offline sschechter

  • Sr. Member
  • ****
  • Posts: 380
    • View Profile
Will the newly proposed market changes allow for multi-tabbed markets out of the gate (or shortly after)?
BTSX: sschechter
PTS: PvBUyPrDRkJLVXZfvWjdudRtQgv1Fcy5Qe

Offline cube

  • Hero Member
  • *****
  • Posts: 1404
  • Bit by bit, we will get there!
    • View Profile
  • BitShares: bitcube
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you. Not to mention it gets rid of the main source of yield for BitAssets.

Maybe someone can convince me otherwise, but I think this is a bad and dangerous idea. Don't mess with our core product that we know works. The risk of breaking the market peg (and all the bad PR that will come with that even if we revert back) is not worth code simplicity.

Perhaps the devs can comment on that.  We need an 'official' clarification of what lies ahead.
ID: bitcube
bitcube is a dedicated witness and committe member. Please vote for bitcube.

Offline Chronos

This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.
New shorts can always be created that undercut you? Please extrapolate on this idea.

EDIT: Ah, the holder of the expiring short can issue a new asset to themselves, and close their old short with it, and you never get the chance to sell your at BitUSD at feed price to that person? Am I on track?
« Last Edit: February 12, 2015, 06:22:52 pm by Chronos »

zerosum

  • Guest
Interesting...very much so.

More from me later...maybe.

PS
For all the  yield criers...the yield was dead long time ago. Well it is resurrectable but most of you find other stuff more important [the 3x collateral in this case]

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
If it turnes out to effectively eliminate yield I would be very upset that major changes like this aren't properly proposed and discussed beforehand. I understand that at certain points decisions have to be made in favour of long term success but we have to try our best not to turn this into a complete nightmare for investors.

 +5%

We need a way to add yield back in to the system.  I think the current way actually wasnt effective, because it was better for shorts to short to themself at the feed at 0% interest.   What wouldve happened in time was that everyone was going to figure this out and yield wouldve gone to 0 anyway.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you. Not to mention it gets rid of the main source of yield for BitAssets.

Maybe someone can convince me otherwise, but I think this is a bad and dangerous idea. Don't mess with our core product that we know works. The risk of breaking the market peg (and all the bad PR that will come with that even if we revert back) is not worth code simplicity.

We need to maintain the rules that enforce the peg.
If we do this change is fine and could add clarity.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads