Main Menu

The Market Peg Works!

Started by bytemaster, September 04, 2014, 05:00:24 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

biophil

+5% for jakub!

Sent from my SCH-S720C using Tapatalk 2

Support our research efforts to improve BitAsset price-pegging! Vote for worker 1.14.204 "201907-uccs-research-project."

boombastic


Quote from: jakub on September 04, 2014, 10:35:24 PM
Quote from: bytemaster on September 04, 2014, 05:00:24 PM

First I will summarize the rules for BitAsset markets assuming the BTSX : USD market where BTSX is priced in terms of USD.  For the purpose of providing concrete examples, we will assume a median price of $0.03 per BTSX.

1) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.
2) No short orders can be published to the network at a price 11% above the 1 hour moving average. (ie: they must be less than 0.0333)
     - the minimal short quantity is 100 BTSX
3) Short orders will only be matched against asks that are below the moving average. (ie: people must be selling BTSX for less than $0.03)
     - the highest short order is matched first, so a short selling USD at $0.03333 will be matched against someone buying USD at $.02999 and the difference (0.003333) * volume is captured as a fee.
4) A margin call will be executed any time the highest bid is greater than 90% of the moving average and the highest bid is less than the call price.
    - the initial call price is 66% of the short price (ie: $0.022 for a short entered at $.033).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 
5) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.
6) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 
7) The network saves all fees earned in USD and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored USD.
8) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.
9) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered. 


I fully agree with the new rules but I find it confusing when we talk about short orders while looking at the market of BTSX being priced in terms of USD. So I've made an attempt to translate the rules into USD/BTSX terms. Maybe some of you will find it useful. The changes are marked in bold. Please correct me if I made any mistakes.


The rules for BitAsset markets assuming the USD/BTSX market where USD is priced in terms of BTSX.  For the purpose of providing concrete examples, we will assume a median price of BTSX 30 per USD.

1.) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.

2.) No short orders can be published to the network at a price below 90% of the 1 hour moving average. (ie: they must be more than BTSX 27.00)
     - the minimal short quantity is 100 BTSX

3.) Short orders will only be matched against bids that are above the moving average. (ie: people must be buying USD for more than BTSX 30.00)
     - the lowest short order is matched first, so a short selling USD at BTSX 27.01 will be matched against someone buying USD at BTSX 30.01 and the difference (BTSX 3.00) * volume is captured as a fee.

4.) A margin call will be executed any time the lowest ask is less than 110% of the moving average and the lowest ask is more than the call price.
    - the initial call price is 150% of the short price (ie: BTSX 45.00 for a short entered at BTSX 30.00).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 

5.) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.

6.) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 

7.) The network saves all fees earned in BTSX and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored BTSX.

8.) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.

9.) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered.

+5%


Sent from my iPhone using Tapatalk
[url="http://bitshares.dacplay.org/r/boombastic"]http://bitshares.dacplay.org/r/boombastic[/url]
Support My Witness: mr.agsexplorer
BTC: 1Bb6V1UStz45QMAamjaX8rDjsnQnBpHvE8

starspirit

Quote from: jakub on September 04, 2014, 10:35:24 PM
Quote from: bytemaster on September 04, 2014, 05:00:24 PM

First I will summarize the rules for BitAsset markets assuming the BTSX : USD market where BTSX is priced in terms of USD.  For the purpose of providing concrete examples, we will assume a median price of $0.03 per BTSX.

1) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.
2) No short orders can be published to the network at a price 11% above the 1 hour moving average. (ie: they must be less than 0.0333)
     - the minimal short quantity is 100 BTSX
3) Short orders will only be matched against asks that are below the moving average. (ie: people must be selling BTSX for less than $0.03)
     - the highest short order is matched first, so a short selling USD at $0.03333 will be matched against someone buying USD at $.02999 and the difference (0.003333) * volume is captured as a fee.
4) A margin call will be executed any time the highest bid is greater than 90% of the moving average and the highest bid is less than the call price.
    - the initial call price is 66% of the short price (ie: $0.022 for a short entered at $.033).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 
5) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.
6) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 
7) The network saves all fees earned in USD and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored USD.
8) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.
9) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered. 


I fully agree with the new rules but I find it confusing when we talk about short orders while looking at the market of BTSX being priced in terms of USD. So I've made an attempt to translate the rules into USD/BTSX terms. Maybe some of you will find it useful. The changes are marked in bold. Please correct me if I made any mistakes.


The rules for BitAsset markets assuming the USD/BTSX market where USD is priced in terms of BTSX.  For the purpose of providing concrete examples, we will assume a median price of BTSX 30 per USD.

1.) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.

2.) No short orders can be published to the network at a price below 90% of the 1 hour moving average. (ie: they must be more than BTSX 27.00)
     - the minimal short quantity is 100 BTSX

3.) Short orders will only be matched against bids that are above the moving average. (ie: people must be buying USD for more than BTSX 30.00)
     - the lowest short order is matched first, so a short selling USD at BTSX 27.01 will be matched against someone buying USD at BTSX 30.01 and the difference (BTSX 3.00) * volume is captured as a fee.

4.) A margin call will be executed any time the lowest ask is less than 110% of the moving average and the lowest ask is more than the call price.
    - the initial call price is 150% of the short price (ie: BTSX 45.00 for a short entered at BTSX 30.00).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 

5.) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.

6.) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 

7.) The network saves all fees earned in BTSX and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored BTSX.

8.) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.

9.) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered.

Brilliant, thanks for that. I had a hard time trying to reverse everything in my head as I read the original...

liondani

Quote from: biophil on September 04, 2014, 11:37:16 PM
Could you also put the option of overlaying the real-world USD/BTSX price on the graph so that we can see how close the peg is holding? Or, putting a USD/BitUSD chart might be even better.

+5%
[url="https://www.steempeak.com/@liondani"]https://www.steempeak.com/@liondani[/url]

biophil

Quote from: svk on September 04, 2014, 11:05:58 PM
Quote from: bytemaster on September 04, 2014, 09:43:26 PM
Quote from: liondani on September 04, 2014, 09:36:53 PM
Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)

thanks for your efforts man!

Some suggestions: 
    remove the "point boxes" in the depth chart.
    display "shorts" as a 3rd volume on the depth chart that has "2 colors"... one for those over the median and one for those under.  We are adding this for the built in wallet.
    I would love to see a price history chart.   

1 and 3 done! Splitting the shorts will have to wait, but you'll find the price history below the market depth info! I used the hourly data only for now, looks like it's good enough.

That asset page is starting to get a little messy now however, will have to clean things up a bit next, but going to bed for now.

Looking great! this will be fantastic for on-the-fly peg checking :) Could you also put the option of overlaying the real-world USD/BTSX price on the graph so that we can see how close the peg is holding? Or, putting a USD/BitUSD chart might be even better.
Support our research efforts to improve BitAsset price-pegging! Vote for worker 1.14.204 "201907-uccs-research-project."

James212

Quote from: MeTHoDx on September 04, 2014, 07:06:54 PM
My main takeaway from all of this has been that this experiment is like learning to ride a bike. At first you don't have the confidence to give yourself  momentum. Instead, you learn with training wheels. Once you have confidence to give yourself momentum, the training wheels can be removed and you'll never forget how to ride a bike.

+5%
BTS: theangelwaveproject

svk

Quote from: bytemaster on September 04, 2014, 09:43:26 PM
Quote from: liondani on September 04, 2014, 09:36:53 PM
Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)

thanks for your efforts man!

Some suggestions: 
    remove the "point boxes" in the depth chart.
    display "shorts" as a 3rd volume on the depth chart that has "2 colors"... one for those over the median and one for those under.  We are adding this for the built in wallet.
    I would love to see a price history chart.   

1 and 3 done! Splitting the shorts will have to wait, but you'll find the price history below the market depth info! I used the hourly data only for now, looks like it's good enough.

That asset page is starting to get a little messy now however, will have to clean things up a bit next, but going to bed for now.
Worker: dev.bitsharesblocks

jakub

Quote from: bytemaster on September 04, 2014, 05:00:24 PM

First I will summarize the rules for BitAsset markets assuming the BTSX : USD market where BTSX is priced in terms of USD.  For the purpose of providing concrete examples, we will assume a median price of $0.03 per BTSX.

1) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.
2) No short orders can be published to the network at a price 11% above the 1 hour moving average. (ie: they must be less than 0.0333)
     - the minimal short quantity is 100 BTSX
3) Short orders will only be matched against asks that are below the moving average. (ie: people must be selling BTSX for less than $0.03)
     - the highest short order is matched first, so a short selling USD at $0.03333 will be matched against someone buying USD at $.02999 and the difference (0.003333) * volume is captured as a fee.
4) A margin call will be executed any time the highest bid is greater than 90% of the moving average and the highest bid is less than the call price.
    - the initial call price is 66% of the short price (ie: $0.022 for a short entered at $.033).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 
5) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.
6) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 
7) The network saves all fees earned in USD and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored USD.
8) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.
9) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered. 


I fully agree with the new rules but I find it confusing when we talk about short orders while looking at the market of BTSX being priced in terms of USD. So I've made an attempt to translate the rules into USD/BTSX terms. Maybe some of you will find it useful. The changes are marked in bold. Please correct me if I made any mistakes.


The rules for BitAsset markets assuming the USD/BTSX market where USD is priced in terms of BTSX.  For the purpose of providing concrete examples, we will assume a median price of BTSX 30 per USD.

1.) 51 delegates or more must publish a price feed at least once per day
     - if they do not publish the feed, then the market reverts to a 1hr moving average.
     - if a feed is published, the 1hr moving average is set to the feed.

2.) No short orders can be published to the network at a price below 90% of the 1 hour moving average. (ie: they must be more than BTSX 27.00)
     - the minimal short quantity is 100 BTSX

3.) Short orders will only be matched against bids that are above the moving average. (ie: people must be buying USD for more than BTSX 30.00)
     - the lowest short order is matched first, so a short selling USD at BTSX 27.01 will be matched against someone buying USD at BTSX 30.01 and the difference (BTSX 3.00) * volume is captured as a fee.

4.) A margin call will be executed any time the lowest ask is less than 110% of the moving average and the lowest ask is more than the call price.
    - the initial call price is 150% of the short price (ie: BTSX 45.00 for a short entered at BTSX 30.00).  This is the price at which 75% of the collateral would be required to buy back the USD necessary to cover the position.
    - If a margin call is executed and there is any collateral left over, then 5% is kept as network fees and 95% is returned to the owner. 

5.) There are no restrictions on what prices people can set for normal BitUSD/BTSX trading.  All parties will receive what they ask for.

6.) Rounding errors are inevitable when using fixed point math, any such rounding error is deemed to be a network fee.
    - for example you may place an order to buy $1.00 USD but end up with $0.99999 USD. 

7.) The network saves all fees earned in BTSX and in the event that a short position lacks the necessary collateral to cover during rapid market movements, then the network will provide the stored BTSX.

8.) You cannot use the collateral of your short position to buy the USD necessary to cover the position.  This USD must be purchased separately. 
    - This requirement creates a kind of "virtual collateral" that all shorts must maintain so they can cover for either profit taking or loss prevention.

9.) When you partially cover a position it will reduce your exposure, but your collateral is not returned until the position is fully covered. 

bytemaster

Quote from: Troglodactyl on September 04, 2014, 10:24:57 PM
Quote from: bytemaster on September 04, 2014, 05:00:24 PM
...
     - the minimal short quantity is 100 BTSX
...

Thanks for the summary!

Why the 100 BTSX minimum?  Shouldn't the transaction fees take care of this?  Not a terribly big deal, but this is another arbitrary number to worry about updating when the value rises, and it's nice for newbies to be able to experiment on a micro scale.

Because shorts that are above the median get "processed" every block and skipped. 
For the latest updates checkout my blog: [url="http://bytemaster.bitshares.org"]http://bytemaster.bitshares.org[/url]
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.

Troglodactyl

Quote from: bytemaster on September 04, 2014, 05:00:24 PM
...
     - the minimal short quantity is 100 BTSX
...

Thanks for the summary!

Why the 100 BTSX minimum?  Shouldn't the transaction fees take care of this?  Not a terribly big deal, but this is another arbitrary number to worry about updating when the value rises, and it's nice for newbies to be able to experiment on a micro scale.

bytemaster

Quote from: liondani on September 04, 2014, 09:36:53 PM
Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)

thanks for your efforts man!

Some suggestions: 
    remove the "point boxes" in the depth chart.
    display "shorts" as a 3rd volume on the depth chart that has "2 colors"... one for those over the median and one for those under.  We are adding this for the built in wallet.
    I would love to see a price history chart.   
For the latest updates checkout my blog: [url="http://bytemaster.bitshares.org"]http://bytemaster.bitshares.org[/url]
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.

liondani

Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)

thanks for your efforts man!
[url="https://www.steempeak.com/@liondani"]https://www.steempeak.com/@liondani[/url]

svk

Quote from: Riverhead on September 04, 2014, 09:08:12 PM
Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)
So awesome!! Looks great on my phone. Now I'll NEVER get any work done.
I'm not seeing any bids (black) on the graph...

They should be there, but the depth of bids is only ~5k BTSX in the range I'm showing, so if Asks and Shorts are activated you'll have a hard time seeing the bids. Try disabling the asks and shorts, you should see the bids show up then. I just pushed a new version that includes the 11% upper range where shorts get accepted by the market, assuming I understood BM correctly..

If you have any more feedback on the plots we should probably move this conversation to my thread about the site itself..
Worker: dev.bitsharesblocks

Riverhead

#28
Quote from: svk on September 04, 2014, 09:06:00 PM
Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)
So awesome!! Looks great on my phone. Now I'll NEVER get any work done.
I'm not seeing any bids (black) on the graph...

svk

Great news :)

For some visual information about how this works, I've added shorts and the 90% rule for shorts to my asset pages, check it out:

http://bitsharesblocks.com/assets/asset?id=USD

Btw you can click on "Bid","Ask" or "Short" to enable or disable a given series, oh and I added the "reserve fund" info as well :)
Worker: dev.bitsharesblocks