[bsip18] updates
This commit is contained in:
parent
457df6ffea
commit
2ba34f167e
1 changed files with 65 additions and 3 deletions
68
bsip-0018.md
68
bsip-0018.md
|
@ -17,6 +17,9 @@ continued and put to good use again.
|
|||
|
||||
# Motivation
|
||||
|
||||
The necessity of reviving bitassets has already been discussed in
|
||||
BSIP-0017, and is unquestioned.
|
||||
|
||||
Market-pegged assets, aka SmartCoins are among the core features of the
|
||||
BitShares blockchain and as such provide one of our unique selling points.
|
||||
|
||||
|
@ -72,7 +75,43 @@ global settlement or margin call right away.
|
|||
|
||||
# Specifications
|
||||
|
||||
## `obtain_settlement_funds_operation`
|
||||
## Bugfix: MPAs that have seen a global settlement cannot be settled after the price feed expires
|
||||
|
||||
It has turned out that force-settling an MPA requires a valid price feed
|
||||
even when the MPA has a `settlement_price` set. This is clearly a bug,
|
||||
since in that case the settlement price is independent from the price
|
||||
feed. Furthermore, publishing price feeds is no longer possible after a
|
||||
global settlement, so the time when settlement is possible at all is
|
||||
limited to the expiration period of the price feed of the MPA.
|
||||
|
||||
This bug will be fixed. See
|
||||
https://github.com/cryptonomex/graphene/issues/664#issuecomment-254056746
|
||||
for a discussion.
|
||||
|
||||
## Auto-revive empty bitassets
|
||||
|
||||
A bitasset is "empty" if nobody is holding a positive amount of it
|
||||
anymore. The only reasonable exception to this rule is the pool of
|
||||
accumulated fees belonging to the asset itself. This situation can occur
|
||||
after all holders of a globally settled asset have settled their
|
||||
position via forced settlement.
|
||||
|
||||
The emptiness of a bitasset can easily be determined. When the BitAsset is
|
||||
empty, the remainder of the settlement fund will be paid out to the
|
||||
issuer, the accumulated fees and the current supply are reset to zero,
|
||||
and the settlement price is cleared.
|
||||
|
||||
## `bid_settlement_funds_operation`
|
||||
|
||||
This applies only to SmartCoins, not to Prediction Markets.
|
||||
|
||||
The idea of turning the settlement fund into a short position when its
|
||||
value has increased sufficiently can easily be extended. If the value of
|
||||
the settlement fund itself is not sufficient to create a sufficiently
|
||||
collateralized short position (in terms of price feed and MCR), an
|
||||
investor could volunteer to add the required amount of collateral to the
|
||||
fund and take ownership of the resulting short position
|
||||
(collateral+debt).
|
||||
|
||||
This operation is all that is needed empty the settlement pool and re-enable price feeds.
|
||||
It has the following payload:
|
||||
|
@ -85,8 +124,6 @@ It has the following payload:
|
|||
of both.
|
||||
* `additional_collateral` (asset_type): Collateral paid by the account in
|
||||
order to support the call position
|
||||
* `additional_debt` (asset_type): Debt that is paid by the account in order to reduce the
|
||||
debt (while keeping the full settlement pool as collateral)
|
||||
* `obtain_settlement_funds` (asset_type): The amount of settlement funds the
|
||||
account is willing to obtain
|
||||
|
||||
|
@ -110,6 +147,14 @@ The required checks for the operation are:
|
|||
* Are funds in the settlement pool?
|
||||
* `debt` > 0 or `collateral` > 0
|
||||
* `obtain_settlement_funds` <= `settlement_pool`
|
||||
* the account has sufficient balance to cover `additional_collateral`
|
||||
|
||||
If the checks are successful, a `call_order_object` belonging to the
|
||||
investor will be created or updated as described above. Then, the
|
||||
settlement price and `settlement_fund` will be cleared.
|
||||
|
||||
The fee for this operation will be paid by the investor/recoverer. The
|
||||
fee is equal to the fee of the `call_order_update` operation.
|
||||
|
||||
# Discussion
|
||||
|
||||
|
@ -154,6 +199,22 @@ mind that
|
|||
Market participants that are willing to take risk may want to obtain a larger
|
||||
chunk of a settlement pool as it means an **instant short position**.
|
||||
|
||||
## Feeds
|
||||
|
||||
Re-collateralization is deliberately not restricted to the issuer of the
|
||||
globally settled bitasset. The intent here is to incentivize potential
|
||||
investors. Effectively, during an uptrend in the value of the
|
||||
collateral, this works like a reverse auction. A higher value of the
|
||||
collateral results in a lower required amount for re-collateralization,
|
||||
i. e. the chance/risk ratio increases. This incentive makes sense,
|
||||
because additional collateral is in the best interest of the holders of
|
||||
the settled BitAsset.
|
||||
|
||||
This "reverse auction" ends when the BitAsset is auto-revived by
|
||||
creating a short position for the issuer. At that point, an "investor"
|
||||
could re-collateralize with zero risk, which is no longer in the
|
||||
interest of the holders.
|
||||
|
||||
# Summary for Shareholders
|
||||
|
||||
This proposal presents a flexible way of reviving a BitAsset that has
|
||||
|
@ -162,4 +223,5 @@ not need to take any risk as the proposal only offers a new way for
|
|||
market participants to (partially) revive the BitAsset.
|
||||
|
||||
# Copyright
|
||||
|
||||
This document is placed in the public domain.
|
||||
|
|
Loading…
Reference in a new issue