Skip to content

Releases: avhz/RustQuant

v0.2.6

04 Jul 18:47
fc87396
Compare
Choose a tag to compare

Other

  • Merge pull request #221 from yfnaji/finite_difference_pricer_adjustments
  • Amend function name from matrix_multiply_vector to general_matrix_multiply_vector
  • Amend tridiagonal_matrix_multiply_vector() by removing match statement and manually add first and final entries outside loop
  • Amend schemes to incorporate newly created tridiagonal_matrix_multiply_vector() and amendment in invert_tridiagonal_matrix()
  • Introduce function exclusively for multiplication between tridiagonal matrix and vector + amend invert_tridiagonal_matrix() to return matrix representation using only diagonal and sub/super diagonals arguments
  • Amend error threshold and target values for unit tests
  • Remove now obsolete time_structure()
  • Remove obsolete diagonal functions + amend condition functions
  • Amend schemes to approximate transformed Black-Scholes equation
  • Amend argument datatype from functions to f64 and amending create_tridiagonal_matrix() accordingly
  • Adjustments in crank_nicolson()
  • Adjustments in implicit()
  • Adjustments in explicit()
  • Refactor in create_tridiagonal_matrix()
  • Correct error in implementation for call/put boundary conditions + remove unnecessary argument for boundary_condition_at_time_n()
  • Remove unnecessary parameter from create_tridiagonal_matrix()

v0.2.5

30 Jun 13:02
6d0ef24
Compare
Choose a tag to compare

Other

  • Cleanup from the exponential interpolation commit.
  • Fixed exponential interpolator.
  • minor clippy lints.
  • Merge branch 'main' into fix/remove_warnings
  • Fixing tests.
  • Merge pull request #223 from avhz/dependabot/cargo/statrs-0.17.1
  • Update README.md (expired Discord link)
  • Finite-Difference Pricer unit tests: ITM and OTM options
  • Finite-Difference Pricer unit tests: ATM options
  • Finite-Difference Pricer unit tests: ATM options
  • Merge pull request #211 from yfnaji/finite_difference_pricer_with_vec
  • Take variable declaration outside of loop
  • Separate unit tests for each method and amend according to previous changes on the branch
  • Interpolate for odd number price_steps + encapsulate some functions
  • Ignore clippy's "too_many_arguments" warning
  • Remove rounding to 2 decimal places
  • Formatting + add data type annotation
  • Formatting in invert_tridiagonal_matrix()
  • Amend logic for the construction for the inverse of a tridiagonal matrix to use match + avoid indexing
  • Amend for loop in matrix_multiply_vector() to avoid indexing
  • Change match to if statement for american time stop step
  • Amend matrix_multiply_vector to use slice as data type of argument
  • Minor amendment to unit test
  • Amend Unit tests
  • Reformat TypeFlag match
  • Rewrite constructor to use assert macros
  • Amend explicit(), implicit() and crank_nicolson() to utilise time_steps and price_steps attribute + import Duration for unit tests
  • Remove time_steps() and price_steps()
  • Set time_steps and price_steps attributes in constructor
  • Add two attributes: time_steps and price_steps
  • Use T variable in implicit()
  • Introduce T variable to represent time to maturity and amend call/put_boundary functions + minor formatting
  • Introduce year_fraction() function + amend time steps calculation to use Date objects
  • Utilise new arguments in constructor
  • Replace time_to_maturity argument with evaluation_date and expiration_date
  • Import relevant time structs + functions
  • Refactor method names
  • Condense matrix multiplication methods into one method + only have one method to produce tridiagonal matrix
  • Rewrite invert_tridiagonal_matrix() to take "trimmed" tridiagonal matrix data structure
  • Amend function names create_tridiagonal_matrix_without_zeros -> create_trimmed_tridiagonal_matrix and tridiagonal_matrix_multiply_vector -> trimmed_tridiagonal_matrix_multiply_vector + formatting
  • Amend explicit() and crank_nicolson() to utilise create_tridiagonal_matrix_without_zeros()
  • Amend tridiagonal_matrix_multiply_vector() to handle new "no-outer zeros" representation of matrix
  • Create new method to represent tridiagonal matrix without storing outer zeros
  • Remove 'get' from function names
  • Add finite_difference_pricer_mod
  • Code for FiniteDifferencePricer struct + tests

v0.2.4

24 Apr 20:33
1bdc87a
Compare
Choose a tag to compare

Other

  • Update dependencies.
  • Merge pull request #205 from y5/portfolio_getweights
  • GitHub actions (fix failing tests)
  • GitHub actions (split test actions: unit, doc, examples)
  • GitHub actions (test)

v0.2.3

15 Mar 17:00
Compare
Choose a tag to compare

Other

  • update plotters dep to GitHub repo (attempt to fix docs building issue #191)
  • fix some tests
  • minor book edit, CI edits.
  • cargo_build, cargo_test
  • deploy book, again.
  • deploy book, again.
  • deploy book
  • cargo_test
  • Create mdbook.yml

v0.2.2

13 Mar 13:46
bdd5052
Compare
Choose a tag to compare

Other

  • fix exponential distribution constructor doc comment

v0.2.1

13 Mar 12:36
1222830
Compare
Choose a tag to compare

Added

  • started an mdBook

v0.2.0

12 Mar 21:01
53ecf61
Compare
Choose a tag to compare

Added

  • Rootfinding routines (Bisection, Brent, Newton-Raphson) and fixed unit/doc-test failures.

Fixed

  • restructure Money module into Instruments and Cashflows

Other

  • minor doc edits

v0.1.1

04 Mar 14:28
901381e
Compare
Choose a tag to compare

Other

  • clippy lints.

v0.1.0

04 Mar 12:38
Compare
Choose a tag to compare

Other

  • Merge branch 'main' of github.com:avhz/RustQuant
  • remove more unused dependencies.

v0.0.49

25 Feb 14:30
99f3412
Compare
Choose a tag to compare

Other

  • Merge branch 'main' of github.com:avhz/RustQuant
  • remove more unused dependencies.