- Notifications
You must be signed in to change notification settings - Fork144
Rust library for quantitative finance.
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHE.mdMIT
LICENSE-MIT.mdNotificationsYou must be signed in to change notification settings
avhz/RustQuant
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A Rust library for quantitative finance.
🎯 If you are an experienced quant developer in any language and would like to help out, feel free to contact me!
Discord | Latest Changes | |
---|---|---|
RustQuantContact@gmail.com | https://discord.gg/gMdv8Hpuwr | Changelog |
Module | Description |
---|---|
autodiff | Algorithmic adjoint differentiation (AAD) for efficiently computing gradients of scalar output functions |
cashflows | Implementations forCashflows andQuotes , and similar types. |
data | Data types that can be used for pricing and similar tasks (curves, term-structures, surfaces, etc). Methods for reading and writing data from/to various sources (CSV, JSON, Parquet). Can also download data from Yahoo! Finance. |
error | RustQuant error handling module. |
instruments | Implementations for financial instruments likeBonds ,Options , andMoney , including their pricing. Future additions will include swaps, futures, CDSs, etc. |
iso | A few ISO code implementations:ISO-4217 (currency codes),ISO-3166 (country codes),ISO-10383 (market identifier codes). |
math | Statistical distributions and their related functions (PDF, CDF, CF, etc), Fast Fourier Transform (FFT), numerical integration (double-exponential quadrature), optimisation/root-finding (gradient descent, Newton-Raphson), and risk-reward metrics. Also some sequence methods such aslinspace andcumsum . |
ml | Currently only linear and logistic regression, along with k-nearest neighbours classification are implemented. More to come in the future. |
macros | Currently onlyplot_vector!() andassert_approx_equal!() . |
models | Various models commonly used in quantitative finance, such as the various forms of Brownian Motion, short rate models, curve models, etc. |
portfolio | Implementation of a portfolio type, which is a collection (HashMap ) ofPosition s. |
stochastics | Stochastic process generators for Brownian Motion (standard, arithmetic, fractional, and geometric) and various short-rate models (CIR, OU, Vasicek, Hull-White, etc). |
time | Time and date functionality, such asDayCounter , calendars, constants, conventions, schedules, etc. |
trading | Currently only a basic limit order book (LOB). Hopefully adding additional trading tools in the future. |
See/examples for various uses of RustQuant. You can run them with:
cargo run --example<example>
Note
Disclaimer: This is currently a free-time project and not a professional financial software library. Nothing in this library should be taken as financial advice, and I do not recommend you to use it for trading or making financial decisions.
About
Rust library for quantitative finance.
Topics
Resources
License
Apache-2.0, MIT licenses found
Licenses found
Apache-2.0
LICENSE-APACHE.mdMIT
LICENSE-MIT.mdStars
Watchers
Forks
Packages0
No packages published