{"id":15037634,"url":"https://github.com/avhz/rustquant","last_synced_at":"2025-05-13T19:03:06.165Z","repository":{"id":65433442,"uuid":"531026987","full_name":"avhz/RustQuant","owner":"avhz","description":"Rust library for quantitative finance.","archived":false,"fork":false,"pushed_at":"2025-04-26T22:16:19.000Z","size":52717,"stargazers_count":1355,"open_issues_count":29,"forks_count":148,"subscribers_count":30,"default_branch":"main","last_synced_at":"2025-04-28T00:43:58.427Z","etag":null,"topics":["finance","machine-learning","math","mathematics","option-pricing","quantitative-finance","quantlib","regression","rust","rust-lang","statistics","stochastic-processes","trading"],"latest_commit_sha":null,"homepage":"https://avhz.github.io","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/avhz.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-APACHE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"avhz","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":["https://www.paypal.me/RustQuant","https://www.buymeacoffee.com/avhz"]}},"created_at":"2022-08-31T10:03:24.000Z","updated_at":"2025-04-27T14:30:05.000Z","dependencies_parsed_at":"2023-02-15T19:45:20.688Z","dependency_job_id":"3c86d61f-ac04-4009-b838-c6392b382832","html_url":"https://github.com/avhz/RustQuant","commit_stats":{"total_commits":843,"total_committers":42,"mean_commits":"20.071428571428573","dds":"0.39145907473309605","last_synced_commit":"0851a88b3e2c1059c1825f10f118605d3aa1e1f7"},"previous_names":[],"tags_count":103,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avhz%2FRustQuant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avhz%2FRustQuant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avhz%2FRustQuant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avhz%2FRustQuant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avhz","download_url":"https://codeload.github.com/avhz/RustQuant/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254010793,"owners_count":21998993,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["finance","machine-learning","math","mathematics","option-pricing","quantitative-finance","quantlib","regression","rust","rust-lang","statistics","stochastic-processes","trading"],"created_at":"2024-09-24T20:35:10.801Z","updated_at":"2025-05-13T19:03:06.109Z","avatar_url":"https://github.com/avhz.png","language":"Rust","readme":"![](./images/logo.png)\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#license\" alt=\"license\"\u003e\n        \u003cimg alt=\"License\" src=\"https://img.shields.io/badge/Dual_License-MIT_and_Apache_2.0-black?logo=apache\"\u003e\u003c/a\u003e\n    \u003ca href=\"#version\" alt=\"version\"\u003e\n        \u003cimg alt=\"Crates.io\" src=\"https://img.shields.io/crates/v/RustQuant?logo=rust\u0026color=black\"\u003e\u003c/a\u003e\n    \u003ca href=\"#downloads\" alt=\"downloads\"\u003e\n        \u003c!-- \u003cimg alt=\"Crates.io\" src=\"https://img.shields.io/crates/d/RustQuant?logo=rust\u0026color=black\"\u003e\u003c/a\u003e --\u003e\n        \u003cimg alt=\"Crates.io User Total Downloads\" src=\"https://img.shields.io/crates/udt/178069\"\u003e\n    \u003ca href=\"#stars\" alt=\"stars\"\u003e\n        \u003cimg alt=\"GitHub Repo stars\" src=\"https://img.shields.io/github/stars/avhz/RustQuant?logo=github\u0026color=black\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#build\" alt=\"build\"\u003e\n        \u003cimg alt=\"GitHub Workflow Status\" src=\"https://img.shields.io/github/actions/workflow/status/avhz/RustQuant/cargo_build.yml\"\u003e\u003c/a\u003e\n    \u003ca href=\"#codecov\" alt=\"codecov\"\u003e\n        \u003cimg alt=\"Codecov\" src=\"https://img.shields.io/codecov/c/gh/avhz/RustQuant\"\u003e\u003c/a\u003e\n    \u003ca href=\"#deps\" alt=\"deps\"\u003e\n        \u003cimg alt=\"Dependencies\" src=\"https://deps.rs/repo/github/avhz/RustQuant/status.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://app.fossa.com/projects/git%2Bgithub.com%2Favhz%2FRustQuant?ref=badge_shield\" alt=\"FOSSA Status\"\u003e\u003cimg src=\"https://app.fossa.com/api/projects/git%2Bgithub.com%2Favhz%2FRustQuant.svg?type=shield\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#discord\" alt=\"discord\"\u003e\n        \u003cimg alt=\"Discord\" src=\"https://img.shields.io/discord/1146771658082881636?logo=discord\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nA Rust library for quantitative finance.\n\n:dart: If you are an experienced quant developer in any language and would like to help out, feel free to contact me!\n\n\u003cdiv align=\"center\"\u003e\n\n| Email                        | Discord                         | Latest Changes              |\n|:----------------------------:|:-------------------------------:|:---------------------------:|\n| \u003cRustQuantContact@gmail.com\u003e | \u003chttps://discord.gg/gMdv8Hpuwr\u003e | [Changelog](./CHANGELOG.md) |\n\n\u003c/div\u003e\n\n\n\n## Modules\n\n| Module | Description |\n|--------|-------------|\n| [`autodiff`](https://docs.rs/RustQuant/latest/RustQuant/autodiff/index.html) | Algorithmic adjoint differentiation (AAD) for efficiently computing gradients of scalar output functions $f: \\mathbb{R}^n \\rightarrow \\mathbb{R}$. |\n| [`cashflows`](https://docs.rs/RustQuant/latest/RustQuant/cashflows/index.html) | Implementations for `Cashflows` and `Quotes`, and similar types. |\n| [`data`](https://docs.rs/RustQuant/latest/RustQuant/data/index.html) | 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. |\n| [`error`](https://docs.rs/RustQuant/latest/RustQuant/error/index.html) | RustQuant error handling module. |\n| [`instruments`](https://docs.rs/RustQuant/latest/RustQuant/instruments/index.html) | Implementations for financial instruments like `Bonds`, `Options`, and `Money`, including their pricing. Future additions will include swaps, futures, CDSs, etc. |\n| [`iso`](https://docs.rs/RustQuant/latest/RustQuant/iso/index.html) | A few ISO code implementations: [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html) (currency codes), [ISO-3166](https://www.iso.org/iso-3166-country-codes.html) (country codes), [ISO-10383](https://www.iso20022.org/market-identifier-codes) (market identifier codes). |\n| [`math`](https://docs.rs/RustQuant/latest/RustQuant/math/index.html) | 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 as `linspace` and `cumsum`. |\n| [`ml`](https://docs.rs/RustQuant/latest/RustQuant/ml/index.html) | Currently only linear and logistic regression, along with k-nearest neighbours classification are implemented. More to come in the future. |\n| [`macros`](https://docs.rs/RustQuant/latest/RustQuant/macros/index.html) | Currently only `plot_vector!()` and `assert_approx_equal!()`. |\n| [`models`](https://docs.rs/RustQuant/latest/RustQuant/models/index.html) | Various models commonly used in quantitative finance, such as the various forms of Brownian Motion, short rate models, curve models, etc. |\n| [`portfolio`](https://docs.rs/RustQuant/latest/RustQuant/portfolio/index.html) | Implementation of a portfolio type, which is a collection (`HashMap`) of `Position`s. |\n| [`stochastics`](https://docs.rs/RustQuant/latest/RustQuant/stochastics/index.html) | Stochastic process generators for Brownian Motion (standard, arithmetic, fractional, and geometric) and various short-rate models (CIR, OU, Vasicek, Hull-White, etc). |\n| [`time`](https://docs.rs/RustQuant/latest/RustQuant/time/index.html) | Time and date functionality, such as `DayCounter`, calendars, constants, conventions, schedules, etc. |\n| [`trading`](https://docs.rs/RustQuant/latest/RustQuant/trading/index.html) | Currently only a basic limit order book (LOB). Hopefully adding additional trading tools in the future. |\n\n## Examples\n\nSee [/examples](./examples) for various uses of RustQuant. You can run them with:\n\n```bash\ncargo run --example \u003cexample\u003e\n```\n\n\u003e [!NOTE]  \n\u003e 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.\n\n\u003cdiv align=\"center\"\u003e\n    \n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Favhz%2FRustQuant.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Favhz%2FRustQuant?ref=badge_large)\n\n\u003c/div\u003e\n","funding_links":["https://github.com/sponsors/avhz","https://www.paypal.me/RustQuant","https://www.buymeacoffee.com/avhz"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favhz%2Frustquant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favhz%2Frustquant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favhz%2Frustquant/lists"}