Author Topic: Max short holding period will make shorts paying interest easy to implement  (Read 5034 times)

0 Members and 1 Guest are viewing this topic.

Offline santaclause102

  • Hero Member
  • *****
  • Posts: 2486
    • View Profile
I feel there will be plenty of demand for BitUSD on a more collateralized network earning over 2% than a lower collateralized network.  I think long-term viability of BTSX depends upon how secure BitUSD holders are that they will not be left unbacked or illiquid.

The probability of black swan event decreases as a function of the collateral ratio.  I agree that long investors prefer a higher collateral ratio to a lower one, because it reduces the probability of a black swan event.  But long investors also like to receive interest!

If the current collateral level gives an annual black swan risk of 0.5% or once every 200 years, your line of thinking would imply long investors would rather reduce that risk to 0.001% through increased collateralization -- even if the alternative was +5% cash interest from shorts.

This assertion is simply not credible.
It is a subjective perception also. Savers are super conservative and have a phychological barrier to trust such new system with their savings...

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
Drltc, I like your idea, although I haven't thought through all of its implications yet. However, I worry that your function f is going to be way too complicated for market participants to reason about. How exactly is someone considering shorting supposed to decide on their strategy? They now have three variables to tweak: price, collateral ratio, and interest rates (I am assuming the market decides interest rates rather than having it be universally imposed by the network at any given time). They need to manipulate these parameters with two considerations: likelihood of getting matched and profit potential. The relationship between these quantities is incredibly complicated. Even with tools built into the client to help shorts, this is all getting very confusing quickly.

Why not instead prioritize first by collateral ratio, starting from the minimum (say 200%) up to a maximum (say 400%)? Then beyond that point only the interest rates are used to prioritize matching. Do we really need more than 400% reserve? How conservative do we want to get here? Like drltc pointed out, there is a balance here: the more conservatively the DAC operates the less value it can capture for useful purposes such as higher yields on BitAssets, or even payments to delegates/workers to grow the DAC in other ways. Also, keeping some of the BitAssets from the yield fund in a reserve fund in case of a black swan event can be another mechanism, beyond collateral ratios, for the DAC to further reduce black swan risk (at the expense of lower yield rates) without needing to add complication to the shorts.
« Last Edit: October 01, 2014, 05:55:50 am by arhag »

Offline theoretical

I feel there will be plenty of demand for BitUSD on a more collateralized network earning over 2% than a lower collateralized network.  I think long-term viability of BTSX depends upon how secure BitUSD holders are that they will not be left unbacked or illiquid.

The probability of black swan event decreases as a function of the collateral ratio.  I agree that long investors prefer a higher collateral ratio to a lower one, because it reduces the probability of a black swan event.  But long investors also like to receive interest!

If the current collateral level gives an annual black swan risk of 0.5% or once every 200 years, your line of thinking would imply long investors would rather reduce that risk to 0.001% through increased collateralization -- even if the alternative was +5% cash interest from shorts.

This assertion is simply not credible.
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 theoretical

Yep.. we just discussed such a system... it would make it more expensive to be a market maker and I feel there will be plenty of demand for BitUSD on a more collateralized network earning over 2% than a lower collateralized network.  I think long-term viability of BTSX depends upon how secure BitUSD holders are that they will not be left unbacked or illiquid.

A market maker with e.g. 10x collateral would be able to offer a low or zero interest rate and still beat lower-collateral offers paying much higher interest rates.  Keep in mind also that the interest rate offers compete on is an annualized interest rate or APR, hence a market maker who expects to quickly cover, e.g. within one day (or less), will only pay one 1/365 (or less) of the APR.

I think that it is necessary to use interest rates to balance short-side supply of BitUSD with long-side demand for BitUSD.  A higher collateral ratio doesn't stimulate demand for BitUSD.

It is not sufficient for us to offer BitUSD to the masses.  We need to give them a compelling reason to buy it.  That might be a vibrant ecosystem of major merchants that accept BitUSD for goods and services -- but such an ecosystem does not currently exist.  The high yields that we would be able to offer to longs by charging shorts interest, would make BitUSD a much more attractive product than fee-based yield alone.
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 theoretical

How would you choose f()? Ideally, you'd want f() to be chosen dynamically by some market mechanism. Hard-coding it could lead to trouble a la price-fixing.

I don't know if it's possible to use a market mechanism to determine f().  Markets only really work when participants' preferences are totally ordered.  When the preference is two-dimensional, the market idea breaks down.  f() fixes that by reducing the market back to one dimension [1].

I think you can figure out a reasonable form for f() by assuming prices follow geometric random walk (basically log(price(t)) is a bell curve with standard deviation k*t for some parameter k representing how fast prices tend to move).  Then the risk of a black swan after some time is the right tail of this normal distribution [2], starting at the point where the short becomes insolvent.  More collateral sets the cutoff for the tail at a later point; a greater interest rate pushes (translates) the bell curve away from the cutoff.

Then the level curves for f() should be the curves with a constant probability of black swan.  I.e. the network prefers offers with the lowest probability of becoming insolvent according to the model [3].  I'm pretty sure f() will have the same level curves regardless of k (the parameter that represents how fast the prices tend to move).

I think you should be able to do these computations analytically, and I'm sure you can do them numerically.  In either case, you'd probably have your hard-coded f() actually be a polynomial approximation with some small error.

[1]  Another way to deal with two-dimensional preferences is to quantize one of the dimensions and segment the preference space.  E.g. have 1% interest offers only compete with other 1% interest offers, 2% interest offers only compete with other 2% interest offers, etc.  And then the only way to do a 1.5% offer would be as some combination of a 1% offer and a 2% offer with approximately the characteristics of the desired 1.5% offer for which there is no market.  I don't think this is the right approach for us to use in this case.

[2] For BitUSD priced in BTSX.  For backwards people like bytemaster, who price BTSX in BitUSD, it would be the left tail.

[3] You might say "wouldn't it be desirable to set a maximum allowable probability of black swan?"  The minimum collateral requirement, margin call price, and interest rate floor of 0% are basically equivalent to setting a maximum allowable probability of a black swan in the model.
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 bytemaster

This is the exact implementation I had considered *if* we wanted shorts to pay interest to longs rather than posting additional collateral.

This would create a bidding system / auction system for setting the interest rate...

Why not do both?

Let every short offer specify both the collateral ratio, and interest rate.  You can increase your offer's sort priority by increasing either the collateral ratio or the interest rate.

In other words, just specify some hard-coded function f(collateral_ratio, interest_rate) with df/dx and df/dy both positive, and sort shorts according to their f() value.

Basically f() represents to what extent the network is willing to reward higher collateralization with an interest rate discount.

Yep.. we just discussed such a system... it would make it more expensive to be a market maker and I feel there will be plenty of demand for BitUSD on a more collateralized network earning over 2% than a lower collateralized network.  I think long-term viability of BTSX depends upon how secure BitUSD holders are that they will not be left unbacked or illiquid.
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 biophil

  • Hero Member
  • *****
  • Posts: 880
  • Professor of Computer Science
    • View Profile
    • My Academic Website
  • BitShares: biophil
This is the exact implementation I had considered *if* we wanted shorts to pay interest to longs rather than posting additional collateral.

This would create a bidding system / auction system for setting the interest rate...

Why not do both?

Let every short offer specify both the collateral ratio, and interest rate.  You can increase your offer's sort priority by increasing either the collateral ratio or the interest rate.

In other words, just specify some hard-coded function f(collateral_ratio, interest_rate) with df/dx and df/dy both positive, and sort shorts according to their f() value.

Basically f() represents to what extent the network is willing to reward higher collateralization with an interest rate discount.

How would you choose f()? Ideally, you'd want f() to be chosen dynamically by some market mechanism. Hard-coding it could lead to trouble a la price-fixing.

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."

Offline theoretical

This is the exact implementation I had considered *if* we wanted shorts to pay interest to longs rather than posting additional collateral.

This would create a bidding system / auction system for setting the interest rate...

Why not do both?

Let every short offer specify both the collateral ratio, and interest rate.  You can increase your offer's sort priority by increasing either the collateral ratio or the interest rate.

In other words, just specify some hard-coded function f(collateral_ratio, interest_rate) with df/dx and df/dy both positive, and sort shorts according to their f() value.

Basically f() represents to what extent the network is willing to reward higher collateralization with an interest rate discount.
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 bytemaster

This is the exact implementation I had considered *if* we wanted shorts to pay interest to longs rather than posting additional collateral.

This would create a bidding system / auction system for setting the interest rate...

If the collateral rates were high enough and the interest rates were reasonable enough then it would be unnecessary to adjust / calculate the margin based upon interest due.

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 theoretical

The max short holding period [1] will greatly improve the ease of implementation of shorts paying yield to the longs.  Let's discuss my proposed implementation:

Figure out the monthly yield rate r, I will use r = 1% for examples because it is easy to work with.  How the value of r should be determined is a totally separate issue that I will not address in this post.

When a short starts out, its USD liability will internally be set to (1+r) times the BitUSD given to the buyer.  The extra BitUSD will go into a network-controlled "short yield fund".  In exchange, the short position will get a "short yield fund claim note" with a face value equal to the extra BitUSD.  The claim note is a network-enforced promise from the short yield fund with the following terms:

Code: [Select]
If the attached short position is liquidated after t months, this claim note shall be redeemed for 1-t times its face value.

Shorting 100 BitUSD at 30 BTSX / BitUSD at the minimum collateral ratio would then result in the short position's balance sheet looking like this:

Code: [Select]
Assets                                          Liabilities
Collateral                  6000 BTSX           Promise to repay        101 BitUSD
Claim note                   1-t BitUSD         Short holder equity     ???

The columns must balance.  This allows us to solve for the short holder's equity:

Code: [Select]
101 BitUSD + short_holder_equity = 6000 BTSX + (1-t) BitUSD
->           short_holder_equity = 6000 BTSX - (100+t) BitUSD

Moreover the short yield fund's books are very simple.  The decrease over time of the value of claim notes issued by the fund will generate income for the fund.  This income will occur at an easily computable linear rate that only changes when new shorts are executed or existing shorts cover.  This income can go directly into the yield fund payable to longs every block.  No unbacked BitUSD are ever printed; every BitUSD is at all times backed by a collateralized short promise.

It should be emphasized that the short yield fund and claim notes are an internal book-keeping mechanism.  The user interface should simply show the BitUSD required to cover (in the example, 101 BitUSD minus the claim note's current value) at any given time.  So after 0.75 months for example, the user covers with 100.75 BitUSD, the claim note is redeemed for 0.25 BitUSD.  The total of 101 BitUSD then satisfies the Promise to Repay 101 BitUSD.

We may wish to change the margin call price and minimum collateral requirement computations to be based on 101 BitUSD instead of 100 BitUSD, especially if the mechanism for setting r is some algorithm that could potentially set a high value for r.

[1] https://bitsharestalk.org/index.php?topic=9512.0
« Last Edit: September 30, 2014, 09:29:27 pm by drltc »
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