Skip to main content

rustyqlib/
lib.rs

1//! # RustyQLib
2//!
3//! A lightweight quantitative finance library for pricing derivatives and
4//! performing risk analysis.
5//!
6//! The crate is organised into asset-class modules:
7//!
8//! - [`core`] — shared building blocks: traits ([`core::traits::Instrument`]),
9//!   quotes, term structures, interpolation and data models
10//! - [`equity`] — equity options, forwards and futures with Black-Scholes,
11//!   binomial, Monte Carlo and finite-difference engines
12//! - [`rates`] — interest-rate instruments (deposits, FRAs) and curve building
13//! - [`cmdty`] — commodity options
14//! - [`utils`] — random number generation, stochastic processes and the
15//!   JSON/CLI plumbing used by the `rustyqlib` binary
16//!
17//! # Example
18//!
19//! Pricing contracts from JSON is the primary workflow (see the `examples/`
20//! directory in the repository); the same types can be constructed directly
21//! and priced through the [`core::traits::Instrument`] trait.
22
23pub mod cmdty;
24pub mod core;
25pub mod equity;
26pub mod rates;
27pub mod utils;
28
29pub use crate::core::curves::{Compounding, CurveInput, InterpolationMethod, Tenor, YieldCurve};
30pub use crate::equity::black76::FuturesSettlement;
31pub use crate::equity::builder::EquityOptionBuilder;
32pub use crate::core::daycount::DayCountConvention;
33pub use crate::core::traits::Instrument;
34pub use crate::core::vols::{VolInput, VolSurface};