BitShares Improvement Proposals and Protocols. These technical documents describe the process of updating and improving the BitShares blockchain and technical ecosystem.
BSIP: BSIP-0089
Title: Granting price feed publishing rights to holders of an asset
Authors: R
Status: Draft
Type: Protocol
Created: 2024-04-30
Discussion: Github Issue
Abstract
Introduce an additional price feed publishing allow list mechanism, one which requires a minimum quantity of an asset held in the price feed publisher's account.
Motivation
Introduce additional smartcoin price feeding mechanisms, opening the doors to differently managed private smartcoins.
The more smartcoins created, the more fees claimed for the reserve pool.
The more successful a smartcoin is price fed, the more accurate and reliable a smartcoin it becomes for the BTS DEX.
Rational
Witness based price feed publishing doesn't require witnesses to price feed, you must reach out to them individually to support your price feeds. It's possible that you will fail to gain their support, depending on the smartcoin configuration/purpose.
Committee based price feed publishing similarly doesn't immediately require the committee to publish price feeds for your smartcoin, it is in fact a very rarely used (if at all) price feeding option.
A smartcoin can be configured to have a private price feed publisher whitelist, however there are downsides with this such as:
Requiring one person (or a committee) to control this private price feed publisher list
The asset could be transferred to null-account, and the min asset requirement still be met by new price feed publishers post asset ownership burn.
The required asset could also be outwith their control, further decentralizing control of the smartcoin.
The current global properties currently limit your private price feed publisher list to 25 accounts
A min quantity of an asset can be held by more than 25 accounts
Existing asset functionality like transfers, trades, override recall/transfer and credit offers could apply to the tokenized price feed publisher asset, enabling more complex smartcoin systems and introducing fundraising capabilities to smartcoins.
Specifications
Additional field(s) required in the smartcoin options UI.
Additional logic required for validating attempted price feeds based on the assets held by the price feed publisher.
Would need to extend the asset flags/permissions to enable switching to this new method of enabling price feeders.
Discussion
How would the core tolerate many price feed publishers? How would a greater quantity of price feed publishers than the 25 limit be handled by the core in this scenario?
If it wouldn't exceed the max price feed publisher limit, should it just be first in last out based ordering of 25 feeding slots which say 50 eligible price feed publishers fight over?
If you set the price feed publisher required asset to the smartcoin borrow asset itself, would debt holders try to disrupt the true price to their advantage, or would they try to ensure 100% accuracy? Both types of actors may be present.
If price feed publishing requirements were a minimum quantity of BTS, might that encourage more users to hold such a quantity of BTS?
Summary for Shareholders
No impact to existing smartcoins.
Could lead to new assets being registered, boosting fee collection.
Could improve the long term survivability of privatized smartcoins.
Abstract
Introduce an additional price feed publishing allow list mechanism, one which requires a minimum quantity of an asset held in the price feed publisher's account.
Motivation
Introduce additional smartcoin price feeding mechanisms, opening the doors to differently managed private smartcoins.
The more smartcoins created, the more fees claimed for the reserve pool.
The more successful a smartcoin is price fed, the more accurate and reliable a smartcoin it becomes for the BTS DEX.
Rational
Witness based price feed publishing doesn't require witnesses to price feed, you must reach out to them individually to support your price feeds. It's possible that you will fail to gain their support, depending on the smartcoin configuration/purpose.
Committee based price feed publishing similarly doesn't immediately require the committee to publish price feeds for your smartcoin, it is in fact a very rarely used (if at all) price feeding option.
A smartcoin can be configured to have a private price feed publisher whitelist, however there are downsides with this such as:
Specifications
Additional field(s) required in the smartcoin options UI.
Additional logic required for validating attempted price feeds based on the assets held by the price feed publisher.
Would need to extend the asset flags/permissions to enable switching to this new method of enabling price feeders.
Discussion
How would the core tolerate many price feed publishers? How would a greater quantity of price feed publishers than the 25 limit be handled by the core in this scenario?
If it wouldn't exceed the max price feed publisher limit, should it just be first in last out based ordering of 25 feeding slots which say 50 eligible price feed publishers fight over?
If you set the price feed publisher required asset to the smartcoin borrow asset itself, would debt holders try to disrupt the true price to their advantage, or would they try to ensure 100% accuracy? Both types of actors may be present.
If price feed publishing requirements were a minimum quantity of BTS, might that encourage more users to hold such a quantity of BTS?
Summary for Shareholders
No impact to existing smartcoins.
Could lead to new assets being registered, boosting fee collection.
Could improve the long term survivability of privatized smartcoins.