Convertible and exchangeable bond valuation
calculate_convertible_bondConvertible-bond engine. Value callable and puttable convertible or exchangeable bonds with credit risk using a Tsiveriotis-Fernandes lattice (equity discounted at the risk-free rate, debt at a credit spread), with conversion, issuer call, holder put, coupon schedule, and a straight-bond floor. Use this for convertible and exchangeable bonds; for a plain bond or rate curve use calculate_fixed_income, and for a standalone option or warrant use calculate_option. The lattice_tsf, lattice_intensity, finite_difference, lsmc and quantlib methods are alternative numerical schemes for the same valuation and take identical inputs (Tsiveriotis-Fernandes is the reference, lsmc is Monte Carlo, quantlib needs the optional engine); choose one. Methods: lattice_tsf/lattice_intensity/finite_difference/lsmc/quantlib: spot, face, coupon_rate, maturity, conversion_ratio, volatility, risk_free, credit_spread, call_schedule, put_schedule, rights_priority. Supply exactly one method with its declared inputs (no defaults). An unknown method, a missing input, or an extra field returns an error envelope (code INVALID_ARGUMENT) instead of raising.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| face | No | Bond face value. | |
| spot | No | Spot price of the underlying (or FX rate for garman_kohlhagen). | |
| method | Yes | Formula to apply; the tool description lists the exact inputs each value requires. | |
| maturity | No | Time to expiry in years (0.5 = six months); > 0. | |
| risk_free | No | Continuously-compounded risk-free rate (decimal). | |
| volatility | No | Annualized volatility (decimal, 0.30 = 30%); > 0. | |
| coupon_rate | No | Annual coupon rate (decimal). | |
| put_schedule | No | Investor put schedule [{date_years, price}]; pass [] when there is none. | |
| call_schedule | No | Issuer call schedule [{date_years, price}]; pass [] when there is none. | |
| credit_spread | No | Credit spread over the risk-free rate (decimal). | |
| rights_priority | No | Which right prevails when call and put coincide. | |
| conversion_ratio | No | Shares received per bond on conversion. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | Error detail, present only when status='error'. | |
| steps | No | Ordered computation steps, when the method reports them. | |
| value | No | Primary result: a number for scalar methods, an object for valuation methods. | |
| method | No | Method or tool name that produced the result. | |
| status | Yes | 'ok' on success, 'error' on failure. | |
| ticker | No | Ticker the result pertains to, when applicable. | |
| assumptions | No | Inputs and assumptions used, echoed for traceability. | |
| formula_ref | No | Formula or standards reference for the method. | |
| data_timestamp | No | ISO-8601 UTC timestamp of the underlying data, when fetched. |