#calculations #value #worth

finance

本库提供了金融领域最常见操作的实用函数。

1 个不稳定版本

使用旧的 Rust 2015

0.0.0 2016年7月30日

#33 in #financial

GPL-2.0 许可证

11KB
125

金融

此库(Rust 库)提供了金融领域最常见操作(计算)的实用函数。

用法

使用以下命令包含此库

[dependencies]
finance = "0.0.0" // preferably the latest version on crates.io

示例

extern crate finance;
extern crate round;

use round::round;
use finance::{ present_value, future_value };

fn main() {
    let test_value = round(present_value(0.1, 1., 1000.), 2); // 909.09

    let test_value = round(future_value(0.1, 1., 1000.), 2);  // 1100.00
    // and so on with the other apis just feed what's expected
    // particularly the exact types
}

API 参数 缩写
现值 (rate: f64, compounding_periods: f64, future_value: f64) PV
未来值 (rate: f64, compounding_periods: f64, present_value: f64) FV
净现值 (rate: f64, cfs: &[f64]) npv
定期利率 (annual_percentage_rate: f64, number_of_compounding: f64) r
持有期回报率 (profit: f64, cost: f64) HPR
复利次数 (future_value: f64, present_value: f64, rate: f64) n
投资回报率 (earnings: f64, cf0: f64) ROI
利率 (future_value: f64, present_value: f64, number_of_compounding: f64) r
72法则 (rate: f64) ...
70法则 (rate: f64) ...
杠杆比率 (total_liabilities: f64, total_debts: f64, total_income: f64) LR
加权资本成本 (market_value_of_equity: f64, market_value_of_debt: f64, cost_of_equity: f64, cost_of_debt: f64, tax_rate: f64) WACC
支付 (present_value: f64, number_of_compounding: f64, rate: f64) PMT
有效年利率 (annual_rate: f64, number_of_compounding: f64) EAR

请注意,所有输出都是 f64 类型,你可以根据项目的需要选择适当的舍入程度。

除非指定,输入预期为浮点数。如果你传递整数,程序将 panic

根据(月度、半年、每日)计算时,请相应地输入。换句话说,确保复利次数(每日、每月、每年)与相应的利率(每日、每月、每年)相对应。

出于一致性的考虑,rate 以纯浮点数的形式传递,而不是百分比(%)。

如果你想知道复利计算,我在这里

目的

避免搜索或翻阅维基百科。所有公式都有测试用例。如果你觉得缺少某个公式,请随时发送 PR(最好先提出问题 😎)。

不要担心函数会占用任何资源。原语支持复制特性。

如果正在处理数组或向量,请放心,它们是以引用形式传递的,如果需要进行复杂操作,则会进行克隆。

此外,一些函数名称可能相当冗长,但这是值得的。你不了解的缩写是最后你不希望看到的事情。(毕竟,没有很多程序员有金融背景)

维护

在可预见的未来,我计划积极管理存储库,所以我会遵循销售员的座右铭“如果你打开它,我就会关闭”,这意味着我会迅速修复问题。

许可证

本库随 GPLv2 软件许可分发。

    finance (rust library - crate)
    Copyright (C) 2016 Mohamed Hayibor

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

依赖项

~9KB