oj! Algorithms v51.4.0 Release Notes
Release Date: 2022-07-05 // almost 4 years ago-
Last version to target Java 8!
โ Added
org.ojalgo.data
- ๐ New class
org.ojalgo.data.domain.finance.series.FinanceDataReaderthat implements bothFinanceDataandDataFetcher. Instead of fetching data from some (web) service it reads and and parses files. Already had some parsers, and since it implements bothFinanceDataandDataFetcher, it can be used with much of the existing code. In particularDataSourcehas been updated to include this reader option. - ๐ New alternatives to calculate correlations and covariance matrices in
DataProcessors.
org.ojalgo.function
AggregatorFunctiongained a new methodfilter(PredicateFunction)that allows to define a filter for which values will be considered in the aggregation.
org.ojalgo.netio
- ๐ New methods in
BasicLoggerto handle logging of exceptions with stacktrace. - ๐ With a
TextLineWriterit is now possible to instantiate a CSV line/row builder to help create "text lines" that are delimited data.
org.ojalgo.random
- ๐ New package
org.ojalgo.random.scedasticitycontainingARCHandGARCHmodels as well as stochatstic processes based on those.
org.ojalgo.series
- ๐ New class
SimpleSeriesthat is the simplest possibleBasicSeriesimplementation. - โ Added capabilities to do things like
quotients,loganddifferenceson aCoordinatedSet(ofPrimitiveSeries) as well as possibility to get a correlations or cocariance matrix directly.
๐ Changed
org.ojalgo.data
- ๐จ Refactoring of the
org.ojalgo.data.domain.finance.seriespackage. This package very much depends onorg.ojalgo.serieswhich is extensively refactored. FinanceDatais now generic and thegetHistoricalPrices()method is now declared to contain a specified subclass ofDatePrice.- ๐
DatePricenow implementsEntryPair.KeyedPrimitiverather than the deprecatedKeyValueinterface. The publickeyfield has been renameddate(the date is the key). AllDatePricesubclasses are now immutable. - The
getPriceSeries()method ofFinanceDatachanged the return type fromBasicSeries<LocalDate, Double>toBasicSeries<LocalDate, PrimitiveNumber>and theBasicSeriesimplementation used is also changed.
org.ojalgo.random
- ๐ The
Process1Dclass is now final. It used to have some subclasses that had been depreceted for a while, they're now removed.
org.ojalgo.series
- ๐จ Extensive refactoring of all
BasicSeriessubinterfaces and implementations, including some breaking name changes. TheBasicSeries.NaturallySequencedinterface still exists, but is not really used for anything. All the useful stuff is inBasicSeries. All methods that usedlongkeys to interact with entries are removed.
org.ojalgo.type
- The interface
CalendarDate.Resolutionnow also extendsStructure1D.IndexMapperand defines a method toadjustIntoforCalendarDate.
๐ Fixed
org.ojalgo.matrix
- ๐ Fixed problems related to extracting eigenpairs and calculating generalised
Eigenvaluedecompositions for complex matrices (ComplexNumberelements).
- ๐ New class