Loading...
Frequently Asked Questions
Home / FAQs

General

Open Source Risk Engine (ORE) ia an Open Source Software project, designed for contemporary pricing and risk analytics of traded financial products. It aims at establishing a transparent peer-reviewed framework that can serve as benchmarking, validation, training, teaching reference, as well as extensible foundation for in-house and vendor solutions. ORE is provided under the Modified BSD license.

QuantLib is the open source library for quantitative finance, see www.quantlib.org. ORE uses QuantLib heavily.

Yes, a user guide is available here for download on opensourcerisk.org.

Yes, our quant experts have created an extensive library of learning materials so that you can take complete advantage of the capabilities within ORE. You will be taken through general information such as installation, files configuration​, trades & analytics and technical finance. Visit ORE Academy on YouTube.

ORE is written in C++. ORE consists of three libraries (QuantExt, OREData and OREAnalytics) and a command line application that demonstrates how ORE’s functionality can be used. The Data and Analytics libraries use C++20.

Additionally, our ORE-SWIG provides the means to use the ORE libraries from Python.

Yes, the ORE framework is used in production. While we cannot publish the full list of clients that use ORE in production, our IMRG and backtesting clients use ORE and send appoximately 200000 trades per day.

Certainly. We have held Quant Conferences in London and New York and will continue to do so. Our upcoming conference will be held in London on May 11th, 2026. Register your interest to the conference. Follow our LinkedIn page to stay up to date!

In LSEG's own words, "Following the financial crisis of 2008-09 virtually all market and counterparty credit risk regulation has been either updated or entirely re-written. Those changes have driven a significant increase in the demands on risk infrastructure, We saw the need for an Open Source risk engine which can bring the benefits of Open Source to global financial institutions. Building on the strong foundations provided by QuantLib it was able to release the first iteration of Open Source Risk Engine (ORE) in 2016. It provided a transparent, peer-reviewed, free-to-access framework for pricing and risk analysis [...] ORE points the way forwards for the future of financial risk systems."

ORE is an application that provides a Monte Carlo simulation framework for contemporary risk analytics and value adjustments, simple interfaces (for trade data, market data and system configuration), simple launchers and result visualisation (with Jupyter, Excel, LibreOffice), unit tests and various examples.

ORE is unique in that that it is based on the wealth of methods provided by QuantLib, a peer reviewed pricing library that has evolved over 15 years. We try to avoid reinventing the wheel where possible. ORE is written in C++ with both model validation and production environemts in mind. ORE comes with a user guide, tests and examples, and has grown quickly into Inflation, Credit, Equity and Commodity space.

Yes, ORE can be adapted and integrated by experienced professionals. Of course, our team of experts can assist and are able to accelerate implementation and adaptation timelines.


Getting Started

Open Source Risk Engine’s code is hosted on github. You can either fetch the repository using git from https://github.com/OpenSourceRisk/Engine or download a release archive from https://github.com/OpenSourceRiskEngine/releases

Yes – follow the instructions in “Where can I get it?” and fetch the latest ORE release. It comes with ORE executables for several platforms including Windows, Linux and Mac OS X.

ORE works on Windows, Linux, Mac OS X and possibly other Unix flavours (we have tested it with the former three). The ORE releases come with executables for these platforms so that you do not need to go through the building of ORE in order to get started. If you want to build ORE from sources, then the user guide’s section 3 provides the step-by-step guidance and tells you what is required.

Please check out our user guide. This explains in section 3 how ORE is installed on Windows and Unix (Mac/Linux).

Please check out our user guide. This explains in section 3 how ORE is installed on Windows and Unix (Mac/Linux).

To get started you do not need to have any programming knowledge. Head to our download page at https://github.com/OpenSourceRisk/Engine/releases and fetch the latest release archive. It contains the ORE executable for several platforms, ready to run. ORE’s user guide explains the first steps and provides a number of examples that illustrate how ORE can be used. Modify these examples to create your own.

Open Source Risk Engine (ORE) expects market data to be provided in a specific format as explained in the user guide. Any provider’s market data needs to be mapped to this format. Alternatively, you can extend ORE by adding a tailored market data loader which can absorb the provider’s data directly and load it into ORE.

Portfolio data is provided by the user. ORE expects a specific XML file representation of the trade data as explained in the user guide. ORE comes with its own XML trade data loader that directly maps to ORE’s internal representation of supported product types. In the ‘Examples’ section of the release, you will find various examples of such trade XML files covering all products that are currently handled in ORE.


Help

If you need help, consult with these FAQs first, then browse/search the user forum discussions and feel free to ask questions in the user forum. If you have found an issue you can log this in our issue tracker at https://github.com/OpenSourceRisk/Engine/issues.

You can log issues and bugs at https://github.com/OpenSourceRisk/Engine/issues. Moreover you can post any issue you find in the user forum at opensourcerisk.org.

Make sure “ore_examples_helper.py” in the Examples folder is referring to the right locations for ore.exe. This can be achieved by moving the executable into the “bin” directory as explained in the user guide. Alternativerly, one can edit “ore_examples_helper.py” to refer to the actual location of the executable.


Development

We appreciate any feedback you post in the discussion forum at https://github.com/OpenSourceRisk/Engine/discussions. If you want to contribute code changes and extensions, then please fork the ORE repository at https://github.com/OpenSourceRisk/Engine and start coding. Changes and additions can then be provided in the form of pull requests at https://github.com/OpenSourceRisk/Engine/pulls.

ORE is based on QuantLib and uses QuantLib style especially in its “QuantExt” library. Adding different simulation models starts there so that familiarity with QuantLib is an advantage. Further amendments are then also required in the data and analytics libraries closer to the application layer. The design of the latter two libraries is less QuantLib-style.

Yes, you can. However, our style is to (re-)write additional pricers in QuantLib style and place them in ORE’s QuantExt library.

You can integrate ORE analytics in several ways: One is to map your market and trade data to the input file formats we have defined and that can be readily loaded into ORE; this means a classic interface/adapter development task that is typically moderate compared to the effort of getting and cleansing the data from the source systems. Thereafter you can run the ORE command line application for example in a series of batches to produce the desired analytics results. The resulting reports can be picked up from the file system, parsed and imported into the target system. Another approach would be tighter integration that uses ORE’s C++ API directly without using the ORE file formats or the command line application that comes with the ORE release.

Clean design, avoiding duplication, a comprehensive test suite, SAST scans, variety of example and demo cases are measures to continuously assure the quality of release. Any contributions submitted by the community are carefully reviewed and may be discussed in the forum before being integrated into ORE. Also refer to the ORE contribution and governance page at openriskengine.org.


Features

ORE does not cover the entire range of QuantLib instruments. Please explore our scripted trade module which gives users the ability to create almost any conceivable structured feature regarding payments and contingencies, such as options, triggers, barriers and target returns, in a multi-asset class framework

Yes, normal and shifted lognormal volatilities are fully supported on the basis of the QuantLib framework.

ORE can ‘absorb’ most of the market data relevant for pricing IR/FX products and more, in anticipation of subsequent releases. For example, market data comprises yield curve data (Deposits, FRAs, Futures, Swaps, Tenor Basis Spreads, Cross Currency Basis Spreads), FX spot rates, FX forward rates, Cap/Floor and Swaption volatilities, as well as CDS data to build default curves, etc.  See the user guide for details.


Interfaces

Not out of the box. However, ORE comes with a market data loader that expects a certain market data file format as described in the user guide. To link into any specific data provider, you can either map the provider’s data to ORE’s market data input file format or extend ORE and add a custom market data loader that processes the provider’s input directly.

Not out of the box. However, ORE comes with its own XML trade data loader that directly maps to ORE’s internal representation of supported  product types (see user guide). To handle trade data that comes in FpML format, you could either map this to ORE’s xml format or develop a custom trade data loader that processes FpML directly.


Not at all! ORE builds on the work of QuantLib. And we grateful for the enormous community effort and experience that went into QuantLib which has enabled ORE.


Sign up to hear about the latest ORE developments