Author

Topic: [Inquiry] Cryptostocks: Bonds features required? (Read 652 times)

member
Activity: 195
Merit: 10
The "Bond" feature is now implemented.

Securities listed as bonds (obviously you cant change it once the security is created) have additional input fields to capture specific information:
  Face value
  Coupon
  Payment frequency
  Validity date

Note that these fields are for information only and you can always opt to enter the details into the description field too.

One feature that only bonds have is the "Buy back" button that is available to bond issuers. This will trigger
 - an immediate buyback of all outstanding bonds at the price that specified for the buy back
 - delete all open trading orders

 
donator
Activity: 2058
Merit: 1054
I don't think it's needed at first to have functionality to enforce specific terms on a bond. These would be too limiting, unreliable, and suitable to only a narrow type of bonds.

But there should be the on-demand features required to handle all contingencies.

In particular, a buyback feature is very important, and placing a bid is only a crude approximation. The key issue is the propagation of information. One a buyback is declared the bond value goes up. People who have existing asks will have them executed at a loss by people who happen to hear about the buyback first. An instant, forced buyback makes sure all bondholders are treated fairly.

I haven't used cryptostocks yet, but if there's no such option already - please, make it possible to specify coupon payments by amount per bond rather than total amount.
member
Activity: 195
Merit: 10
We are looking into extending Cryptostocks.com with additional features for issuing and managing bonds. But before proceeding with the implementation, we seek your input regards to what features you'ld like to have.

Before going to the feature list, the main question is whether a specific functionality to manage bonds is required at all?

Generally speaking, the current functionality should be able to cover most requirements:

1. The contract details can be put into the description field of the security. You would put your face value, the coupon, the expiry date and all other details there.
2. Paying coupon: same as paying the dividend functionality currently available
3. Calling back / buy back the bonds. You can place a buy order. Although it will be up to the bond holders to sell back to you, but once you stop paying the coupon, there should be no reason why anyone would not sell back the bonds.
4. Expiry date: Update the contract, stop paying the dividend, that should do the trick.

I know, some of the methods are a sort of workaround, but it keeps the exchange as simple as possible to use. Alternatively we could pursue an implementation of bonds with the following features:

a) Define face value and coupon: no change possible after issuing the bonds
b) Define expiry date: no trading allowed after that date
c) Callable/buy back rate: When bond issuer calls back the bonds, the bond holders get the defined value credited. Bond issuer can only call back the complete bond
d) Coupon payment: Automatic coupon payment at the defined intervals (weekly, monthly, quarterly, half year, yearly)
e) Bond holders can sell back bonds to issuer at face value:  Challenge here is how to ensure the bond issuer has sufficient funds deposited with the exchange to be able to pay all requests.


Let me know what you think, so we can design the solution based on the community feedback.



Jump to: