|
ORE Studio 0.0.4
|
Bond instrument economics for Bond, ForwardBond, CallableBond, ConvertibleBond, and BondRepo trades. More...
#include <bond_instrument.hpp>

Public Attributes | |
| int | version = 0 |
| Version number for optimistic locking and change tracking. | |
| utility::uuid::tenant_id | tenant_id = utility::uuid::tenant_id::system() |
| Tenant identifier for multi-tenancy isolation. | |
| boost::uuids::uuid | id |
| UUID uniquely identifying this bond instrument. | |
| std::string | trade_type_code |
| ORE product type code (Bond, ForwardBond, CallableBond, ConvertibleBond, BondRepo, BondFuture, BondOption, BondTRS, BondPosition, Ascot). | |
| std::string | issuer |
| Name of the bond issuer. | |
| std::string | currency |
| ISO 4217 currency code (e.g. USD). | |
| double | face_value = 0.0 |
| Face (notional) value of the bond. | |
| double | coupon_rate = 0.0 |
| Annual coupon rate as a decimal (e.g. 0.05 for 5%). | |
| std::string | coupon_frequency_code |
| Payment frequency code (e.g. Annual, SemiAnnual, Quarterly). | |
| std::string | day_count_code |
| Day count convention code (e.g. Actual365Fixed, Thirty360). | |
| std::string | issue_date |
| Issue date (ISO 8601 date string, e.g. 2026-01-15). | |
| std::string | maturity_date |
| Maturity date (ISO 8601 date string, e.g. 2036-01-15). | |
| int | settlement_days = 0 |
| Optional number of settlement days. Zero means not specified. | |
| std::string | call_date |
| Optional call date for callable bonds (ISO 8601). Empty for non-callable products. | |
| double | conversion_ratio = 0.0 |
| Optional conversion ratio for convertible bonds. Zero for non-convertible products. | |
| std::string | description |
| Optional free-text description. | |
| std::string | modified_by |
| Username of the person who last modified this record. | |
| std::string | performed_by |
| Username of the account that performed this action. | |
| std::string | change_reason_code |
| Code identifying the reason for the change. | |
| std::string | change_commentary |
| Free-text commentary explaining the change. | |
| std::chrono::system_clock::time_point | recorded_at |
| Timestamp when this version of the record was recorded. | |
| std::string | future_expiry_date |
| Delivery date for BondFuture. Empty for other types. | |
| std::string | option_type |
| Option type for BondOption: "Call" or "Put". Empty otherwise. | |
| std::string | option_expiry_date |
| Option expiry date for BondOption (ISO 8601). Empty otherwise. | |
| std::optional< double > | option_strike |
| Option strike as clean price for BondOption. Null when not set. | |
| std::string | trs_return_type |
| Return type for BondTRS: "TotalReturn" or "PriceReturn". Empty otherwise. | |
| std::string | trs_funding_leg_code |
| Funding leg floating index code for BondTRS. Empty otherwise. | |
| std::string | ascot_option_type |
| ASCOT option type. Empty for non-Ascot products. | |
Bond instrument economics for Bond, ForwardBond, CallableBond, ConvertibleBond, and BondRepo trades.
Discriminated by trade_type_code. Optional fields (call_date, conversion_ratio) are empty/zero for non-applicable product types.