@webcarrot/xirr

JavaScript implementation of the XIRR LibreOffice Calc function.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@webcarrot/xirr
821.0.34 years ago4 years agoMinified + gzip package size for @webcarrot/xirr in KB

Readme

@webcarrot/xirr ยท GitHub license npm version
JavaScript implementation of the XIRR LibreOffice function. It should give the same results as equivalents from LibreOffice Calc, MS Excel, Google Spreadsheet etc.

Instalation

npm i @webcarrot/xirr

Usage

```typescript import { xirr, CashFlow } from "@webcarrot/xirr"; const flows: Array = {
amount: 100,
date: new Date("2019-02-02")
}, {
amount: -120,
date: new Date("2019-03-02")
}
; try { console.log("XIRR:", xirr(flows), "of", flows); } catch (err) { console.log(err); } ```

Methods and types

```typescript export declare type CashFlow = { readonly amount: number; readonly date: Date; }; export declare type CashFlowNormalized = { readonly amount: number; readonly date: number; }; export declare const calculateResult: ( flowsFrom1: ReadonlyArray, r: number ) => number; export declare const calculateResultDerivation: ( flowsFrom1: ReadonlyArray, r: number ) => number; export declare const calculate: ( flows: ReadonlyArray, guessRate?: number, maxEpsilon?: number, maxScans?: number, maxIterations?: number ) => number; export declare const normalize: ( flows: ReadonlyArray ) => ReadonlyArray; export declare const xirr: ( flows: ReadonlyArray, guessRate?: number, maxEpsilon?: number, maxScans?: number, maxIterations?: number ) => number; ```