The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

App::FinanceUtils - Financial CLI utilities

VERSION

This document describes version 0.003 of App::FinanceUtils (from Perl distribution App-FinanceUtils), released on 2019-11-29.

DESCRIPTION

This distribution contains some CLI's to do financial calculations:

# INSERT_EXECS_LIST

FUNCTIONS

calc_fv_future_value

Usage:

 calc_fv_future_value(%args) -> any

Calculate future value (fv) from present value (pv), return rate (r), and periods (n).

Examples:

  • Invest $100 at 6% annual return rate for 5 years:

     calc_fv_future_value(pv => 100, r => 0.06, n => 5); # -> [200, "OK", 133.82255776]

Formula is:

 fv = pv*(1+r)**n

This function is not exported.

Arguments ('*' denotes required arguments):

  • n* => float

    Number of periods.

  • pv* => float

    present value.

  • r* => float

    Return rate (e.g. 0.06 for 6%).

Return value: (any)

calc_fv_periods

Usage:

 calc_fv_periods(%args) -> any

Calculate periods (n) from future value (fv), present value (pv), and return rate (r).

Examples:

  • Want to get $120 using $100 investment with annual 6% return rate, how many years must we wait?:

     calc_fv_periods(fv => 120, pv => 100, r => 0.06); # -> [200, "OK", 3.12896813521953]

Formula is:

 n = log(fv/pv) / log(1+r)

This function is not exported.

Arguments ('*' denotes required arguments):

  • fv* => float

    future value.

  • pv* => float

    present value.

  • r* => float

    Return rate (e.g. 0.06 for 6%).

Return value: (any)

calc_fv_present_value

Usage:

 calc_fv_present_value(%args) -> any

Calculate present value (pv) from future value (fv), return rate (r), and periods (n).

Examples:

  • Want to get $100 after 5 years at 6% annual return rate, how much to invest?:

     calc_fv_present_value(fv => 100, r => 0.06, n => 5); # -> [200, "OK", 74.7258172866057]

Formula is:

 pv = fv/(1+r)**n

This function is not exported.

Arguments ('*' denotes required arguments):

  • fv* => float

    future value.

  • n* => float

    Number of periods.

  • r* => float

    Return rate (e.g. 0.06 for 6%).

Return value: (any)

calc_fv_return_rate

Usage:

 calc_fv_return_rate(%args) -> any

Calculate return rate (r) from future value (fv), present value (pv), and periods (n).

Examples:

  • Want to get $120 in 5 years using $100 investment, what is the required return rate?:

     calc_fv_return_rate(fv => 120, pv => 100, n => 5); # -> [200, "OK", 0.0371372893366482]

Formula is:

 r = (fv/pv)**(1/n) - 1

This function is not exported.

Arguments ('*' denotes required arguments):

  • fv* => float

    future value.

  • n* => float

    Number of periods.

  • pv* => float

    present value.

Return value: (any)

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/App-FinanceUtils.

SOURCE

Source repository is at https://github.com/perlancar/perl-App-FinanceUtils.

BUGS

Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=App-FinanceUtils

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2019, 2017 by perlancar@cpan.org.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.