Crate RustQuant

source ·
Expand description

A Rust library for quantitative finance.

Contact: RustQuantContact@gmail.com

Any contributions are greatly appreciated. Make a PR or open an issue !

Re-exports

Modules

  • Reverse mode automatic differentation. Currently only gradients can be computed. Suggestions on how to extend the functionality to Hessian matrices are definitely welcome.
  • Curves module. Curves (in the financial sense) are functions that map a time to a value, such as a yield curve or a swap curve. They may also be known as term structures.
  • Data reading and writing utilities. Disabled by default, due to Polars increasing compile times.
  • RustQuant error module.
  • Financial instrument types and modules (bonds, options, etc).
  • Macros module.
  • Mathematics related items.
  • Machine learning algorithms. This module relies on the nalgebra crate.
  • Module containing all money related items. This includes currencies, cashflows, exchange rates, and money types, among other things.
  • Portfolio module. A portfolio is a collection of Positions, which are simply a combination of an Instrument, a quantity, a purchase price, and a current price. You may also specify the Currency of the instrument.
  • Statistics related items.
  • Monte Carlo engines to simulate stochastic processes.
  • Time and date functionality.
  • Trading related items.

Macros

  • Helper macro for tests to test floating point approximate equality.
  • Create a RustQuantError with the text to include in the output. You would use it as follows: return Err(error!(ComputationError, "Linear Regression: Singular Value Decomposition failed."));
  • Plot a vector of values.