上一个主题下一个主题


Finance 类

Finance 类是 BIRT 提供的 JavaScript 类。这个类提供了一组可用来执行各种常用商业计算的静态财务函数。财务值可以表示为浮点值。应用程序不能创建此类的实例。

Finance.ddb

使用双倍余额递减法,此函数返回资产在给定单一期间内的折旧额。双倍余额递减折旧法是一种加速折旧法,与折旧额固定的直线折旧法(SLN)相比,此折旧法在固定资产使用期限早期产生较高的折旧额,从而提高节税额。

此函数使用以下公式来计算单一期间内的折旧额:

depreciation = (( initialCost - totalDepreciationFromPriorPeriods) * 2) /
assetLifespan 

下列规则适用:

语法

ddb( initialCost, salvageValue, assetLifespan, singlePeriod )

参数

示例

以下示例使用双倍余额递减法来计算购买价为 $1400、折余值为 $200 并且使用期限估计为 10 年的新机器在第一年的折旧额。结果是 $280,将其赋予变量 Year1Deprec:

Year1Deprec = Finance.ddb(1400, 200, 10, 1)  

另请参阅

Finance.sln 函数

Finance.syd 函数

Finance.fv

基于固定利率及等额分期付款,此函数返回年金的终值。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。年金的终值是指最后一次付款后的现金余额。

例如,如果存款计划的目标是 18 年后积累 $75,000 以支付子女的教育费用,则此计划的终值是 $75,000。

或者,如果贷款 $11,000,则贷款的终值是 $0.00。对于所有典型贷款来说,情况均如此。

下列规则适用:

语法

fv( ratePerPeriod, numberPayPeriods, eachPmt, presentValue, whenDue )

参数

示例

以下示例假定您的女儿出生时您在储蓄帐户存入 $10,000。如果此帐户的复合日利率为 5.7%,那么,当她 18 岁上大学时,此帐户的余额是多少呢?答案是 $27,896.60,将其赋予变量 TotalValue:

TotalValue = Finance.fv(0.057/365, 18*365, 0, -10000, 1)  

以下示例与上一个示例几乎完全相同。但是,在本例中,假定利率是复合月利率而不是复合日利率,并且您决定每月在该帐户中另存入 $55。在本例中,赋予 TotalValue 的终值是 $48,575.82:

TotalValue = Finance.fv(0.057/12, 18*12, -55, -10000, 1)  

另请参阅

Finance.ipmt 函数

Finance.nper 函数

Finance.pmt 函数

Finance.ppmt 函数

Finance.pv 函数

Finance.rate 函数

Finance.ipmt

基于固定利率及等额分期付款,返回年金在给定期间内的利息偿还额。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。每笔付款都由两部分组成,即本金和利息。iPmt 返回付款的利息部分。

下列规则适用:

语法

ipmt( ratePerPeriod, singlePeriod, numberPayPeriods, presentValue, futureValue, whenDue )

参数

示例

以下示例假定您贷款 $20,000,还款期为 36 个月,APR 为 11.5%,并且在每个月的第一天还款。在第 5 次还款时,支付了多少利息?答案是 $171.83,并赋予 Interest5:

Interest5 = Finance.ipmt(.115/12, 5, 36, -20000, 0, 1)  

另请参阅

Finance.fv 函数

Finance.nper 函数

Finance.pmt 函数

Finance.ppmt 函数

Finance.pv 函数

Finance.rate 函数

Finance.irr

此函数返回现有数组中一系列定期现金流、付款和收款的内部收益率。内部收益率是由定期进行的付款和收款组成的投资的利率。每一期的现金流不必是定额的,年金亦如此。

IRR 与净现值函数 NPV 紧密相关,这是因为 IRR 计算的收益率是与零净现值对应的利率。IRR 是以迭代方式计算的。以 <starting guess> 值开始,它在结果精确到 0.00001% 之前重复进行计算。如果在 20 次迭代后仍无法确定结果,该函数就会失败。

下列规则适用:

下列提示可能很有用:

语法

irr( cashArray, startingGuess )

参数

示例

以下示例假定已使用一系列现金流值填充了数组 myArray。将内部收益率赋予变量 IRRValue:

IRRValue = Finance.irr( myArray, .1 ) 

另请参阅

Finance.mirr 函数

Finance.npv 函数

Finance.rate 函数

Finance.mirr

此函数返回现有数组中一系列定期现金流或者付款和收款的修正内部收益率。修正内部收益率是指付款和收款利率不同时的内部收益率(IRR)。MIRR 同时考虑投资成本(即 financeRate)和现金再投资收益率(即 reinvestmentRate)。

下列规则适用:

因为 MIRR 使用数组中值的顺序来解释付款和收款顺序,所以,请确保以正确的顺序输入付款和收款额。

语法

mirr( cashArray, financeRate, reinvestmentRate )

参数

示例

以下示例假定已使用一系列现金流值填充了数组 myArray。如果要支付的资金利率是 12%,收入的收益率是 11.5%,那么修正内部收益率是多少?将答案赋予变量 MIRRValue:

MIRRValue = Finance.mirr( myArray, 0.12, 0.115 )   

另请参阅

Finance.irr 函数

Finance.rate 函数

Finance.nper

基于固定利率及等额分期付款,返回年金的期数。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。

下列规则适用:

语法

nper( ratePerPeriod, eachPmt, presentValue, futureValue, whenDue )

参数

示例

以下示例假定您贷款 $20,000,APR 为 11.5%,并且在每个月的第一天还款。如果每期还款额为 $653.26,那么,还清贷款需要多少期?答案是 36,将其赋予变量 NumPeriods。

NumPeriods = Finance.nper(.115/12, -653.26, 20000, 0, 1) 

另请参阅

Finance.fv 函数

Finance.ipmt 函数

Finance.pmt 函数

Finance.ppmt 函数

Finance.pv 函数

Finance.rate 函数

Finance.npv

基于给定利率,此函数返回一系列定期可变现金流(包括正现金流和负现金流)的净现值。PV 确定一系列定额付款的现值,而 NPV 确定一系列可变付款的现值。净现值是与某项投资相关联的所有未来现金流减去所有初始成本后的结余。换言之,如果将这笔资金按指定的利率 <rate> 存入银行并且存款期限为由现金流预定,则它产生的损益与所讨论的现金流系列产生的损益相同。

下列规则适用:

因为 NPV 使用数组中值的顺序来解释付款和收款顺序,所以,请确保以正确的顺序提供付款和收款额。

语法

npv( rate, cashArray )

参数

示例

以下示例假定已使用一系列现金流值填充了数组 myArray,并且利率是 11%。净现值是多少?将答案赋予变量 NetPValue:

NetPValue = Finance.npv( .11, MyArray )  

Finance.percent

此函数计算两个数值的比率,以百分比计。此函数能够处理两项与百分比的计算相关的关键常规任务:处理分子为零以及处理空值。

语法

percent( denom, num, valueIfZero )

参数

返回

示例

pct = Finance.percent( 20, 50 ) // 返回 40 
pct = Finance.percent( 20, 0 ) // 返回 0 

Finance.pmt

基于固定利率及等额分期付款,返回年金的每期付款额。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。

下列规则适用:

语法

pmt( ratePerPeriod, numberPayPeriods, presentValue, futureValue, whenDue )

参数

示例

以下示例假定您贷款 $20,000,还款期为 36 个月,APR 为 11.5%,并且在每个月的第一天还款。每期付款额是多少呢?答案是 $653.26,将其赋予 PaymentAmt:

PaymentAmt = Finance.pmt(.115/12, 36, -20000, 0, 1)  

另请参阅

Finance.fv 函数

Finance.ipmt 函数

Finance.nper 函数

Finance.ppmt 函数

Finance.pv 函数

Finance.rate 函数

Finance.ppmt

基于固定利率及等额分期付款,返回年金在给定期间内的本金偿还额。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。年金的每笔付款由两部分组成:本金和利息。ppmt 返回付款的本金部分。

下列规则适用:

语法

ppmt( ratePerPeriod, singlePeriod, numberPayPeriods, presentValue, futureValue, whenDue )

参数

示例

以下示例假定您贷款 $20,000,还款期为 36 个月,APR 为 11.5%,并且在每个月的第一天还款。在第 5 次还款时,支付了多少本金?答案是 $481.43,将其赋予 Principal5:

Principal5 = Finance.ppmt(.115/12, 5, 36, -20000, 0, 1)  

另请参阅

Finance.fv 函数

Finance.ipmt 函数

Finance.nper 函数

Finance.pmt 函数

Finance.pv 函数

Finance.rate 函数

Finance.pv

基于固定利率及未来的等额分期付款,此函数返回年金的现值。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。现值是组成年金的未来付款额或一系列付款额的现值。

例如,如果今天在银行存入 $23.94,存期 15 年,复合年利率为 10%,则最终大约会得到 $100。因此,该 $100 的现值大约是 $23.94。

下列规则适用:

语法

pv( ratePerPeriod, numberPayPeriods, eachPmt, futureValue, whenDue )

参数

示例

以下示例假定您正在考虑购买面值为 $1000 的企业债券。此债券年息为 $100,15 年到期,并且在计息年度结束时派息。类似债券的到期收益率是 12.5%。此债券的合理价格是多少?换而言之,它的现值是多少?答案是 $834.18,将其赋予变量 PresentValue:

PresentValue = Finance.pv(.125, 15, 100, 1000, 0)  

以下示例假定您购买彩票中奖。奖金为 $10,000,000,分 20 年支付,每年支付 $500,000,一年以后开始支付。如果年复合利率为 9.5%,此彩票今天的价值是多少呢?答案是 $4,406,191.06,将其赋予 PresentValue:

PresentValue = Finance.pv(.095, 20, 50000,10000000, 0)  

以下示例假定您要分三年储蓄 $11,000。如果 APR 是 10.5%,并且您计划每月存入 $325 并在月初存入,那么,要实现目标,帐户里最初应该有多少起始资金呢?答案是 $2,048.06,将其赋予 StartValue。注意,eachPmt 是负数,这是因为它表示要支付的现金:

StartValue = Finance.pv(.105/12, 3*12, -325, 11000, 1)  

另请参阅

Finance.fv 函数

Finance.ipmt 函数

Finance.nper 函数

Finance.pmt 函数

Finance.ppmt 函数

Finance.rate 函数

Finance.rate

此函数返回年金在每一期的利率。年金是一段时间内进行的一系列定额现金付款。年金可以是投资(例如每月存款计划),也可以是贷款(例如住房抵押贷款)。

Rate 以迭代方式计算年金的利率。以 startingGuess 值开始,它在结果精确到 0.00001% 之前重复进行计算。如果在 20 次迭代后仍无法确定结果,该函数就会失败。

下列规则适用:

下列提示可能很有帮助:

语法

rate( numberPayPeriods, eachPmt, presentValue, futureValue, whenDue, startingGuess )

参数

示例

以下示例假定您借贷了 $20,000,并且分三年还清贷款。如果每个月偿还 $653.26 并且在月初支付,那么,您支付的利率(APR)是多少呢?答案是 .115(即 11.5%),将其赋予变量 InterestRate。注意,Rate 的返回值必须乘以 12 才能得到年利率:

InterestRate = Finance.rate(3*12, -653.26, 20000, 0, 1, .1) * 12  

另请参阅

Finance.fv 函数

Finance.ipmt 函数

Finance.nper 函数

Finance.pmt 函数

Finance.ppmt 函数

Finance.pv 函数

Finance.sln

此函数返回单个时期资产的直线折旧额。直线折旧法最古老并且最简单的固定资产折旧法。它将资产帐面值减去预计余值,并将它们的差值均匀地分配到资产使用期限的各个期间。此过程用于在计算所得税之前对收入收取固定年度折旧费用。所有参数都必须是正数。

语法

sln( initialCost, salvageValue, assetLifespan )

参数

示例

以下示例使用直线折旧法来计算购买价为 $1400、余值为 $200 并且使用期限估计为 10 年的新机器的年折旧额。结果是每年 $120,将其赋予 AnnualDeprec:

AnnualDeprec = Finance.sln(1400, 200, 10)  

另请参阅

Finance.ddb 函数

Finance.syd 函数

Finance.syd

此函数返回资产在所指定期间内的年限总和折旧额。年限总和折旧法是一种加速折旧法,与折旧额固定的直线折旧法(SLN)相比,此折旧法在固定资产使用期限的早期产生较高的折旧额,从而提高节税额。

此函数根据使用期限年数的数字之和的倒数比例来计算折旧额。例如,如果资产的使用期限为 4 年,数字 4、3、2、1 相加得 10。于是,第一年的 SYD 是资产的可折旧成本的 4/10,即成本减去余值。第二年的比率为 3/10,依此类推。

下列规则适用:

语法

syd( initialCost, salvageValue, assetLifespan, singlePeriod )

参数

示例

以下示例使用年限总和折旧法来计算购买价为 $1400、余值为 $200 并且使用期限估计为 10 年的新机器在第一年的折旧额。结果为 $218.18,将其赋予 Year1Deprec。

Year1Deprec = Finance.syd(1400, 200, 10, 1)  

注意:

以下示例计算同一资产在其使用期限内第二年的折旧额。结果为 $196.36,将其赋予 Year2Deprec。

Year2Deprec = Finance.syd(1400, 200, 10, 2)  

注意:

另请参阅

Finance.ddb 函数

Finance.sln 函数


(c) Copyright Actuate Corporation 2006

上一个主题下一个主题