OpenGamma / Strata

Open source analytics and market risk library from OpenGamma
http://strata.opengamma.io
Apache License 2.0
852 stars 284 forks source link
derivatives etd finance java market-risk opengamma otc quantitative-finance strata

Strata

Strata Build Status License

This repository contains the source code of Strata, the open source analytics and market risk library from OpenGamma.

Strata is released as Open Source Software under the Apache v2.0 license.

OpenGamma

Using Strata

Documentation for Strata can be found at the Strata home page.

To use Strata Java SE 8u40 or later is required. The JAR files are available in Maven Central:

<dependency>
  <groupId>com.opengamma.strata</groupId>
  <artifactId>strata-measure</artifactId>
  <version>2.12.0</version>
</dependency>

The JAR files, along with the command line tool and examples, can also be obtained from the Strata Releases page on GitHub.

Building Strata

The source code can be cloned using git from GitHub:

  git clone https://github.com/OpenGamma/Strata.git

The projects use Apache Maven as the build system. Version 3.5.0 or later is required. Simply run this command to compile and install the source code locally:

  mvn install

Strata is based on Java SE 8. Our continuous integration regularly builds on both Java 8 and Java 11. When using Java 8, version 8u40 or later is required due to bugs in earlier versions. We do not recommend use of non-LTS releases, such as Java 9, 10 and 12 to 16.

The Strata examples project includes a GUI based on JavaFX. On Java 8, this will be excluded from compilation if JavaFX is not available in the JDK. On Java 11, OpenJFX is included as a jar file from Maven Central, so the GUI is always compiled.

We recommend builds of OpenJDK from providers other than Oracle, notably Amazon Corretto and Adoptium.

For more information about developing code on Strata see the documentation.

Status

Strata is well-maintained, tested and functional. It is used in production as the core of OpenGamma SaaS Analytics. The API will be maintained with backwards compatibility in mind.

Strata modules

Strata is formed from a number of modules: