Increase Asset Quantity

+1 vote
Hi,

Currently Multichain doesn't allow one to increase the quantity of an issued asset.

Is there a technical or functional reason for this? Can you explain

thanks

Senthil
asked Nov 5, 2015 by senthil

1 Answer

0 votes
Yes, it's a function of the way in which asset issuance works over the transaction model, and the fact that we haven't specifically made a provision for follow-on issuance. Here what we envision for a future version:

a) When you create an asset, you create a fixed number of units now, plus you specify a maximum total number of units that can ever be created for it. (If maximum = fixed, no follow on issuance is allowed.)

b) The private key used to sign the asset issuance transaction can also be used to sign transactions that create more units of that asset, up until the original maximum is reached.

Would that be a good design for your purposes?
answered Nov 5, 2015 by MultiChain
This meets the requirement I had in mind.

But I am just trying to think it through for various types of assets:
1. Currency(like USD, INR, etc) - A central bank issues it, but that's delegated to registered banks. Technically no limit. But in a private Blockchain (BC) ecosystem (there are likely to be many parallel ecosystems)  there would a finite limit, though this number could be large
<<< Finite max should work. Though a single issuer restriction may not be good. Can the issuer of an asset be able to give permissions to another node to issue assets?>>>

2. Trading instruments like Equities, Bonds - There is an issue size initially. For bonds the limit applies well. Equities its a bit tricky as there are stock splits or there could be a fresh issue, etc.
<< max limit will work. Equities if there is a split not sure how it will be handled. So lets ignore this case for now>>

3. Assets like commodities - There will be new issues. But there could be some numbering to distinguish them.
<< it will work>>>

4. Adhoc assets/messages(retail goods): The existing system itself would suffice.
Thanks for your reply. Granting permissions to others to issue a follow-on quantity is an interesting idea. In any event we're going to keep collecting feedback (including yours) about this whole question - several users have brought it up for different scenarios. Once we have some clarity we can implement it.
I am evaluating MultiChain for an internal ledger application which requires the quantity of an asset to change. The use case is our application purchases securities from an exchange (i.e. NYSE or NASDAQ) and distributes the shares to our clients (in units of 0.001 shares). At any given point in time the amount of shares (the quantity of the native asset on the blockchain) will be a whole number, however it will fluctuate as shares are bought and sold with the exchanges. Will this dynamic of quantity changes be possible?

Additionally, we are planning for our inventory account, which holds the fractional remainder of the shares not allocated to our clients, to always have a balance for each security between -1 and 1 to limit exposure. Do you foresee negative balances being possible? (similar to OpenChain's model: https://docs.openchain.org/en/latest/ledger-rules/closed-loop.html#credit-the-user-s-account)
For now, if the quantity is changing all the time, I would suggest simply allocating a larger number of blockchain tokens, and only distributing those for which shares have been bought. The rest can be held in an address whose identity can be publicized as containing non-allocated tokens.

As for negative amounts, I'm trying to understand why you would want that, i.e. if you could just choose to issue one more share tokens, the balance would always be between 0 and 2. Is there some reason why you prefer -1 to 1?
The use case for negative shares is if client A purchases 0.500 shares and client B purchases 0.250 shares for a particular security. When we go to the exchange we will have to purchase 1 share and allocate the 0.250 remainder to our inventory account. Now if client B chooses to sell we only have a combined 0.500 shares to sell to the exchange so instead of purchasing a share to sell back 0.500 immediately (and pay the spread) it's to our advantage to have our inventory account short the security by 0.500 thus giving our inventory account a negative balance.

We could use one more share tokens as a workaround but that could be confusing for auditing.
OK, thanks for the information. In principle there's no reason why a particular asset can't be permitted to have a negative balance, up to a given limit, for given addresses only. This information would be set when the asset is created. But this is a feature that we would need to add, based on sufficient demand.
Thanks for the feedback!
...