Pricers: Re-work `instruments::options` module.
Backends to-do:
- [ ] Asian (with
BlackScholes73) - [x] Bachelier
- [ ] Binary (with
BlackScholes73) - [ ] Forward start (with
BlackScholes73) - [x] Heston
- [ ] Lookback (with
BlackScholes73) - [ ] Merton 1976
- [ ] Power (with
BlackScholes73)
Hi @avhz
I'd like to contribute by implementing Binary Options with BlackScholes73. I'm interested in helping expand RustQuant exotic options coverage. Could you provide any guidance on:
- Preferred code structure/patterns to follow?
- Existing tests I should reference?
- Any specific requirements for the Binary option implementation?
I'm planning to start with cash-or-nothing and asset-or-nothing binary calls/puts using the standard Black-Scholes framework. Thanks for maintaining this great project!
Hi @triuyen :) Thanks for your interest !
Currently I have AnalyticOptionPricer<Option, Model> which can be implemented for a binary option type.
You may look into the Vanilla implementations here which should give you an idea of where to start.
Basically it would just involve defining, for example, CashOrNothingOption struct, and then implementing AnalyticOptionPricer for O: CashOrNothing and M: BlackScholes73.
Feel free to ask any questions, I'm more than happy to help :)
Cheers !