1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
//! Interest-rate options — caps, floors, collars, and swaptions.
//!
//! $$
//! \mathrm{Caplet}=N\,\alpha\,P(t,t_p)\,[F\Phi(d_1)-K\Phi(d_2)],\quad
//! V_{\mathrm{swpn}}=A\,[s\Phi(d_1)-K\Phi(d_2)]
//! $$
//!
//! Closed-form Black-76, Bachelier, and Sabr caplet/floorlet formulae with
//! European cap, floor, collar, and swaption wrappers on top of the library
//! curve and swap stack; Bermudan swaptions priced on the Hull-White trinomial
//! lattice from `quant::lattice`.
//!
//! Reference: P. S. Hagan et al., "Managing Smile Risk", Wilmott (2002).
//!
//! Reference: D. Brigo & F. Mercurio, "Interest Rate Models — Theory and
//! Practice", Springer 2nd ed. (2006), §1.5, §6.7, §13.
//!
//! Reference: J. Hull, "Options, Futures, and Other Derivatives", 11th ed.
//! (2021), §29.
pub use BermudanSwaption;
pub use Cap;
pub use Collar;
pub use Floor;
pub use bachelier_forward_caplet;
pub use bachelier_forward_floorlet;
pub use black_forward_caplet;
pub use black_forward_floorlet;
pub use caplet_price;
pub use CmsCaplet;
pub use CmsFloorlet;
pub use hagan_linear_tsr_convexity_adjustment;
pub use JamshidianHullWhiteSwaption;
pub use price_jamshidian_hull_white;
pub use EuropeanSwaption;
pub use BermudanSwaptionValuation;
pub use CapFloorValuation;
pub use CollarValuation;
pub use ExerciseDate;
pub use ExerciseSchedule;
pub use InterestRateOptionKind;
pub use SwaptionDirection;
pub use SwaptionValuation;
pub use TreeCouponSchedule;
pub use VolatilityQuoteKind;
pub use BachelierVolatility;
pub use BlackVolatility;
pub use SabrVolatility;
pub use ShiftedSabrVolatility;
pub use VolatilityModel;