公式和函數代碼使用手冊 - 壽險精算(11)

(2017-11-30銀河統計)


壽險精算這門課程涉及大量公式和生命表及其轉換數據,本文彙總對各章節主要公式、數據和函數代碼加以彙總,並提供不一樣水平學生在線分類練習和綜合測試題庫模板。html

1、利息基礎理論web

序號 名稱 公式 函數
1 單利函數(利率相等) $\large{A(t)=A(0)(1+t\times i)}$ webActuary.getDL(m,t,i)
2 單利累計(利率不相等) $\large{A(t)=A(0)(1+i_{1}+i_{2}+i_{3}+\ldots+i_{t})}$ webActuary.getDLs(c,prr)
3 複利函數(利率相等) $\large{A(t)=A(0)(1+i)^t}$ webActuary.getFL(c,t,i)
4 複利函數(利率不相等) $\large{A(t)=A(0)(1+i_{1})(1+i_{2})\times \ldots\times (1+i_{t})}$ webActuary.FLs(c,prr)
5 復貼現函數(利率相等) $\large{A(t)=A(0)\times (1-d)^t}$ webActuary.getTX(c,t,d)
6 由利率計算貼現率 $\large{d=\frac{i}{1+i}}$ webActuary.getDfromI(i)
7 由貼現率計算利率 $\large{i=\frac{d}{1-d}}$ webActuary.getIfromD(d)
8 由名義利率計算利率 $\large{i=(1+\frac{i^{(m)}}{m})^m-1}$ webActuary.getIfromIm(im,m)
9 由利率計算名義利率 $\large{i^{(m)}=m\times [(1+i)^{\frac{1}{m}}-1]}$ webActuary.getImfromI(i,m)
10 由名義貼現率計算貼現率 $\large{d=1-(1-\frac{d^{^{(m)}}}{m})^{^m}}$ webActuary.getDfromDm(dm,m)
11 由貼現率計算名義貼現率 $\large{d^m=m\times [1-(1-d)^{^\frac{1}{m}}]}$ webActuary.getDmfromD(d,m)
12 由利息率計算利息力 $\large{\delta=\lim\limits_{m\rightarrow\infty}i^{(m)}}$ webActuary.getIwfromI(i)

將案例代碼複製到網頁後面代碼窗口,點擊「運行代碼」得到計算結果。表中,A(0)、c - 本金、t - 投資期、i - 利率、prr - 各期利率數組、d - 貼現率、im - 名義利率、dm -名義 貼現率、n - 結算次數。編程

一、類函數樣例代碼小程序

var m = 13600; //設置投資本金變量
var t = 3; //設置投資期限變量
var p = 0.05; //設置銀行利率變量(5%)
var s = webActuary.getDL(m,t,p); //計算到期單利本利和
webTJ.display("到期本利和 = "+s+"(元)",0); //顯示計算結果

注:用表中案例函數替換代碼中的函數,將案例代碼複製到網頁後面代碼窗口,點擊「運行代碼」得到計算結果數組

二、JavaScript樣例代碼函數

由利率計算貼現率公式:\(\large{d=\frac{i}{1+i}}\)測試

var p = 0.05; //設置銀行利率變量(5%)
var d = p/(1+p); //由利率計算貼現率
webTJ.display("貼現率 = "+d,0); //顯示計算結果

注:當公式比較簡單時,可直接編制JavaScript小程序代碼,將JavaScript代碼複製到網頁後面代碼窗口,點擊「運行代碼」得到計算結果計算spa

2、肯定型年金code

序號 名稱 公式 函數
1 期初年金現值 $\ddot{a}_{_n}=1+v+v^{^2}+\dots+v^{^{n-1}}=\large{\frac{1-v^{^n}}{1-v}=\frac{1-v^{^n}}{d}}$ webActuary.getIFA(n,i,0)
2 期末年金現值 $a_n=v+v^2+\dots+v^n=\large{\frac{1-v^{^n}}{i}}$ webActuary.getIFA(n,i,1)
3 期初年金終值 $\ddot{s}_{_n}=(1+i)+(1+i)^{^2}+\dots+(1+i)^{^n}=\large{\frac{(1+i)^{^n}-1}{d}}$ webActuary.getIFS(n,i,0)
4 期末年金終值 $s_n=1+(1+i)+(1+i)^2+\dots+(1+i)^{n-1}=\large{\frac{(1+i)^{^n}-1}{i}}$ webActuary.getIFS(n,i,1)
5 延期期初年金現值 $_{_m}\ddot{a}_{_n}=v^m+v^{m+1}+\dots+v^{m+n-1}=v^m\times\ddot{a}_{_n}=\ddot{a}_{_{n+m}}-\ddot{a}_{_m}$ webActuary.getMIFA(n,i,m,0)
6 延期期末年金現值 $_{_m}a_{_n}=v^{^m}\times a_{_n}=a_{_{m+n}}-a_{_m}$ webActuary.getMIFA(n,i,m,1)
7 延期期初年金終值 $_{_m}\ddot{s}_{_n}=\large{\frac{(1+i)^{^n}-1}{d}}$ webActuary.getMIFS(n,i,m,0)
8 延期期末年金終值 $_{_m}s_{_n}=\large{\frac{(1+i)^{^n}-1}{i}}$ webActuary.getMIFS(n,i,m,1)
9 期初遞增型年金現值 $(I\ddot{a})_{_n}=1+2v+3v^2+\dots+nv^{n-1}=\large{\frac{\ddot{a}_{_n}-nv^n}{d}}$ webActuary.getIIFA(n,i,0)
10 期末遞增型年金現值 $(Ia)_{_n}=v+2v^2+3v^3+\dots+nv^n=\large{\frac{\ddot{a}_{_n}-nv^n}{i}}$ webActuary.getIIFA(n,i,1)
11 期初遞增型年金終值 $(I\ddot{s})_{_n}=(I\ddot{a})_{_n}\times(1+i)^n=\large{\frac{\ddot{s}_{_n}-n}{d}}$ webActuary.getIIFS(n,i,0)
12 期末遞增型年金終值 $(Is)_{_n}=(Ia)_{_n}\times(1+i)^n=\large{\frac{\ddot{s}_{_n}-n}{i}}$ webActuary.getIIFS(n,i,1)
13 期初遞減型年金現值 $(D\ddot{a})_{_n}=n+(n-1)v+(n-2)v^2+\dots+v^{n-1}=\large{\frac{n-a_{_n}}{d}}$ webActuary.getDIFA(n,i,0)
14 期末遞減型年金現值 $(Da)_{_n}=nv+(n-1)v^2+(n-2)v^3+\dots+v^n=\large{\frac{n-a_{_n}}{i}}$ webActuary.getDIFA(n,i,1)
15 期初遞減型年金終值 $(D\ddot{s})_{_n}=(D\ddot{a})_{_n}\times(1+i)^n=\large{\frac{n(1+i)^n-s_{_n}}{d}}$ webActuary.getDIFS(n,i,0)
16 期末遞增型年金終值 $(Ds)_{_n}=(Da)_{_n}\times(1+i)^n=\large{\frac{n(1+i)^n-s_{_n}}{i}}$ webActuary.getDIFS(n,i,1)
17 期初等比年金現值 $(P\ddot{a})_{_n}=\sum\limits_{k=1}^n (1+j)^{k-1}\times v^{k-1}=\large{\frac{1-(1+j)^nv^n}{1-(1+j)v}}$ webActuary.getRIFA(n,i,j,0)
18 期末等比年金現值 $(Pa)_{_n}=\sum\limits_{k=1}^n (1+j)^{k}\times v^{k}=\large{\frac{1-(1+j)^nv^n}{(i-j)\div(1+j)}}$ webActuary.getRIFA(n,i,j,1)
19 期初等比年金終值 $(P\ddot{s})_{_n}=(1+i)^n\times(P\ddot{a})_{_n}$ webActuary.getRIFS(n,i,j,0)
20 期末等比年金終值 $(Ps)_{_n}=(1+i)^n\times(Pa)_{_n}$ webActuary.getRIFS(n,i,j,1)
21 期初年付r次通常年金現值 $\ddot{a}_n^{(r)}=\large{\frac{1-v^n}{r(1-v^{^{\frac{1}{r}}})}=\frac{1-v^n}{d^{(r)}}}$ webActuary.getGIFA(n,r,i,0)
22 期末年付r次通常年金現值 $a_n^{(r)}=\large{\frac{(1-v^n)}{r[(1+i)^{\frac{1}{r}}-1]}=\frac{1-v^n}{i^{(r)}}}$ webActuary.getGIFA(n,r,i,1)
23 期初年付r次通常年金終值 $\ddot{s}_n^{(r)}=(1+i)^n\times \ddot{a}_n^{(r)}=\frac{(1+i)^n-1}{d^{(r)}}$ webActuary.getGIFS(n,r,i,0)
24 期末年付r次通常年金終值 $s_n^{(r)}=(1+i)^n\times a_n^{(r)}=\frac{(1+i)^n-1}{i^{(r)}}$ webActuary.getGIFS(n,r,i,1)
25 期初年結k次通常年金現值 $\ddot{a}_n(k)=1+v^k+v^{2k}+\dots+v^{(n-1)k}=\frac{1-v^{kn}}{1-v^k}=\frac{a_{_{kn}}}{a_k}$ webActuary.getKIFA(n,k,i,0)
26 期末年結k次通常年金現值 $a_n(k)=v^k+v^{2k}+\dots+v^{nk}=\frac{v^k(1-v^{kn})}{1-v^k}=\frac{a_{_{kn}}}{s_k}$ webActuary.getKIFA(n,k,i,1)
27 期初年結k次通常年金終值 $\ddot{s}_n(k)=(1+i)^{kn}\times\ddot{a}_n(k)=\frac{(1+i)^{kn}-1}{1-v^k}=\frac{s_{_{kn}}}{a_k}$ webActuary.getKIFS(n,k,i,0)
28 期末年結k次通常年金終值 $s_n(k)=(1+i)^{kn}\times a_n(k)=\frac{v^k[(1+i)^{kn}-1]}{1-v^k}=\frac{s_{_{kn}}}{s_k}$ webActuary.getKIFS(n,k,i,1)
29 連續年金現值 $\large{\bar{a}_n=\lim_{m\to\infty}\ddot{a}_n^{(m)}=\frac{1-v^n}{d^{(m)}}=\frac{1-v^n}{\delta}}$
30 連續年金終值 $\large{\bar{s}_n=\lim_{m\to\infty}\ddot{s}_n^{(m)}=\frac{(1+i)^n-1}{d^{(m)}}=\frac{(1+i)^n-1}{\delta}}$
31 期初永續年金現值 $\large{\ddot{a}_{\infty}=\lim_{m\to\infty}\ddot{a}_n=\lim_{m\to\infty}\frac{1-v^n}{d}=\frac{1}{d}}$
32 期末永續年金現值 $\large{a_{\infty}=\lim_{m\to\infty}a_n=\lim_{m\to\infty}\frac{1-v^n}{i}=\frac{1}{i}}$
33 期初年付r次永續年金現值 $\large{\ddot{a}_{\infty}^{(r)}=\lim_{r\to\infty}\ddot{a}_n^{(r)}=\lim_{r\to\infty}\frac{1-v^n}{d^{(r)}}=\frac{1}{d^{(r)}}}$
34 期末年付r次永續年金現值 $\large{a_{\infty}^{(r)}=\lim_{r\to\infty}a_n^{(r)}=\lim_{r\to\infty}\frac{1-v^n}{i^{(r)}}=\frac{1}{i^{(r)}}}$

注:表中,n - 投資期、i - 利率、d - 貼現率、v - 折現因子(\(d=\frac{1}{1+i}\))、m - 延期、j - 收付額遞增(減)比例、r - 一年支付次數、k - 一年結算次數。將案例代碼複製到網頁後面代碼窗口,點擊「運行代碼」得到計算結果orm

一、類函數樣例代碼

【例1.10】某人從銀行貸款20萬元用於購買住房,貸款年利率爲5%,還款期爲30年。若是從第一年開始每一年等額還款,求每一年還款數額。

解:設每一年還款數額爲\(X\),因爲貸款額和還款數額在零時刻的現值是相等的,即,

\[200000=X\times\ddot{a}_{_{30}}\Leftrightarrow X=\frac{200000}{\ddot{a}_{_{30}}}=\frac{200000}{16.14107358}=12390.75(元)\]

其中,

\[\ddot{a}_{_{30}}=1+v+v^{^2}+\dots+v^{^{29}}=\frac{1-v^{^{30}}}{1-v}=[1-\frac{1}{(1+i)^{^{30}}}]\div{(1-\frac{1}{1+i})}=16.14107358\]

webTJ.clear();//清空輸出
var m = 200000;//銀行貸款額
var i = 0.05;//年利息率
var t = 30;//還款期
var a = webActuary.getIFA(t,i,0);//單位元期初年金現值
webTJ.display("期初年金現值:"+a+"元",0);
var v = webTJ.getDecimal(m/a,2);//每一年還款數額
webTJ.display("每一年還款數額:"+v+"元",0);

二、JavaScript樣例代碼

參見【例1.10】

var m = 200000;//銀行貸款額
var i = 0.05;//年利息率
var t = 30;//還款期
var a =(1-1/Math.pow (1+i,t))/(1-1/(1+i)); //單位元期初年金現值
var v =m/a; //每一年還款數額
webTJ.display("單位元期初年金現值 = "+a,0); //顯示計算結果
webTJ.display("每一年還款數額 = "+v,0); //顯示計算結果

3、債務償還

一、等額分期償還

期初等額分期償還,每一年償還金額R爲:\(R=\frac{B_0}{\ddot{a}_{n|i}}\)

期末等額分期償還,每一年償還金額R爲:\(R=\frac{B_0}{a_{n|i}}\)

其它指標遞推公式爲,

\(B_k=R\times a_{n-k|i}\)
\(I_k=i\times B_{k-1}=i\times R\times a_{n-k+|i}=R(1-v^{n-k+1})\)
\(P_k=R-I_k=R\times v^{n-k+1}\)
\(sI_n=\sum\limits_{k=1}^n I_k=R[(1-v^n)+(1-v^{n-1})+\dots+(1-v)]=nR-Ra_{n|i}\)

注:債務償還部分基本上都是遞推計算,能夠根據遞推公式採用JavaScript代碼結合精算類函數編程輸出計算表

【例1.23】某企業向銀行借款20000元,期限爲5年,年利率爲6%。該企業在每一年年底以等額分期方式償還貸款,計算等額分期償還表。

案例代碼

webTJ.clear();
var Bo = 20000;//銀行借款額
var p= 0.06;//年利息率
var t = 5;//還款期
var R =Bo/webActuary.getIFA(t,p,1); //每一年年底償還金額
var oArrs = []; //設置數組變量
for (var i=0; i<=t+1; i++) {oArrs[i] = [];} //創建二維數組
oArrs[0][0] = 0; oArrs[0][1] = 0; oArrs[0][2] = Bo; oArrs[0][3] = 0; oArrs[0][4] = 0;  //數組賦值
var s1=0; 
var s2=0;
var s3=0;
for (var i=1; i<=t; i++) {
    oArrs[i][0] = i; //序號
    oArrs[i][1] = R; //每一年償還金額
    oArrs[i][2] = R*webActuary.getIFA(t-i,p,1); //未償還餘額
    oArrs[i][3] = p*oArrs[i-1][2]; //每一年償還利息
    oArrs[i][4] = R-oArrs[i][3]; //每一年償還本金
    s1+=R; //累計每一年償還金額
    s2+=oArrs[i][3]; //累計每一年償還利息
    s3+=oArrs[i][4]; //累計每一年償還本金
    }
oArrs[t+1][0] = "合計"; 
oArrs[t+1][1] = s1; 
oArrs[t+1][2] =  "*"; 
oArrs[t+1][3] = s2; 
oArrs[t+1][4] = s3;
var oStr="<table style='width:100%; font-size:8pt; color:#990000;'>"; //表格HTML字符
oStr+="<tr><th>時期k</th><th>償還金額R</th><th>未償還餘額B<sub>k</sub></th><th>償還利息I<sub>k</sub></th><th>償還本金P<sub>k</sub></th></tr>"; //標題
for (var i=0; i<=t+1; i++) {
    oStr+="<tr><td>"+oArrs[i][0]+"</td><td>"+webTJ.getDecimal(oArrs[i][1],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][2],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][3],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][4],2)+"            </td></tr>";
    }
oStr+="</table>";
webTJ.display(oStr,0); //顯示計算表

注:在代碼中替換銀行借款額、年利息率和還款期指標值可得不一樣條件計算表。以上過程也能夠經過EXCEL計算

二、變額分期償還

(1)每期償還本金相等

設每期償還本金爲\(P\),年利率爲\(i\),還款期限爲\(n\),貸款總金額爲\(nP\)。則,

每期未償還的本金餘額:\(B_k=(n-k)\times P\)
\(k\)期應支付利息:\(I_k=i\times B_{k-1}=i\times (n-k+1)\times P\)
\(k\)期償還本利和:\(R_k=P+I_k=P\times [1+i\times (n-k+1)]\)
支付利息總和:\(sI_n=\sum\limits_{k=1}^nI_k=\sum\limits_{k=1}^ni\times (n-k+1)\times P=i\times P\times\frac{n(n+1)}{2}\)
付款金額總和:\(sR_n=n\times P+i\times P\times\frac{n(n+1)}{2}\)

【例1.25】某筆20000元的貸款,每一年年底償還4000元本金,年利率6%,製做貸款償還表。

解:根據題意還款期限,n = 5。

案例代碼

webTJ.clear();
var P = 4000;//銀行借款額
var i= 0.06;//年利息率
var n = 5;//還款期
var k = 3; //k個時期
var Bk = (n-k)*P; //第k期未償還本金餘額
var Ik = i*(n-k+1)*P; //第k期應付利息
var Rk = P*(1+i*(n-k+1)); //第k期償還本利和
var sIn = i*P*n*(n+1)/2; //支付利息總和
var sRn = n*P+i*P*n*(n+1)/2; //付款金額總和
var sPn = n*P; //支付本金總和
var oStr="<table style='width:100%; font-size:8pt; color:#990000;'>"; //表格HTML字符
oStr+="<tr><th>時期k</th><th>未償還本金餘額</th><th>應付利息</th><th>償還本利和</th><th>償還本金</th></tr>"; //標題
oStr+="<tr><td>"+k+"</td><td>"+webTJ.getDecimal(Bk,2)+"</td><td>"+webTJ.getDecimal(Ik,2)+"</td><td>"+webTJ.getDecimal(Rk,2)+"</td><td>"+webTJ.getDecimal(sPn,2)+"</td></tr>";
oStr+="</table>";
webTJ.display(oStr,0); //顯示計算表
var oStr="<table style='width:100%; font-size:8pt; color:#990000;'>"; 
oStr+="<tr><th>支付利息總和</th><th>付款金額總和</th><th>支付本金總和</th></tr>";
oStr+="<tr><td>"+webTJ.getDecimal(sIn,2)+"</td><td>"+webTJ.getDecimal(sRn,2)+"</td><td>"+webTJ.getDecimal(sPn,2)+"</td></tr>";
oStr+="</table>";
webTJ.display(oStr,0); //顯示計算表

(2)每期遞增(減)變額還款

最初貸款額\(B_0\),每期償還金額爲 \(B_k(1=1,2,\dots,n)\),第一筆償還額爲\(R\),之後每一年遞增(減)比例爲\(1+j\)。則有,

\(R=\frac{B_0(1-\frac{1+j}{1+i})}{\frac{1}{1+i}[1-(\frac{1+j}{1+i})^n]}\)    \((i\not=j)\)

\((i=j)\)時,爲分期等額還款,此時已知\(R=\frac{B_0}{a_{n|i}}\)

\(k\)期付款:\(R_k=R(1+j)^{k-1}\)
\(k\)期利息:\(I_k=i\times B_{k-1}\)
\(k\)期本金:\(P_k=R_k-I_k\)
\(k\)期貸款餘額:\(B_k=B_{k-1}-P_k\)

【例1.27】某人從銀行得到10000貸款,期限爲8年,年利率10%。每一年年底償還一次,每次償還金額以30%遞增製做分期償還表。

案例代碼

webTJ.clear();
var Bo = 10000; //銀行借款額
var p= 0.1; //年利息率
var q= 0.3; //年利息率
var t = 8; //還款期
var R; //第一筆償還額
if (p!=q) {
    R = (Bo*(1-(1+q)/(1+p)))/(1/(1+p)*(1-Math.pow((1+q)/(1+p),t)));
} else {
    R = Bo/webActuary.getIFA(t,p,1); 
    }
var oArrs = []; //設置數組變量
for (var i=0; i<=t+1; i++) {oArrs[i] = [];} //創建二維數組
oArrs[0][0] = 0; oArrs[0][1] = 0; oArrs[0][2] = 0; oArrs[0][3] = 0; oArrs[0][4] = Bo;  //數組賦值
var s1=0; 
var s2=0;
var s3=0;
for (var i=1; i<=t; i++) {
    oArrs[i][0] = i; //序號
    oArrs[i][1] = R*Math.pow(1+q,i-1); //第k期付款
    oArrs[i][2] = p*oArrs[i-1][4]; //第k期利息
    oArrs[i][3] = oArrs[i][1]-oArrs[i][2]; //第k期本金
    oArrs[i][4] = oArrs[i-1][4]-oArrs[i][3]; //第k期貸款餘額
    s1+=oArrs[i][1]; //累計每一年償還金額
    s2+=oArrs[i][2]; //累計每一年償還利息
    s3+=oArrs[i][3]; //累計每一年償還本金
    }
oArrs[t+1][0] = "合計"; 
oArrs[t+1][1] = s1; 
oArrs[t+1][2] = s2; 
oArrs[t+1][3] = s3; 
oArrs[t+1][4] = "*";
var oStr="<table style='width:100%; font-size:8pt; color:#990000;'>"; //表格HTML字符
oStr+="<tr><th>時期k</th><th>償還金額R<sub>k</sub></th><th>償還利息I<sub>k</sub></th><th>償還本金P<sub>k</sub></th><th>未償還餘額B<sub>k</sub></th></tr>"; //標題
for (var i=0; i<=t+1; i++) {
    oStr+="<tr><td>"+oArrs[i][0]+"</td><td>"+webTJ.getDecimal(oArrs[i][1],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][2],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][3],2)+"</td><td>"+webTJ.getDecimal(oArrs[i][4],2)+"</td></tr>";
    }
oStr+="</table>";
webTJ.display(oStr,0); //顯示計算表

三、償債基金

\(D\)爲借款人每期向償債基金儲蓄的金額。償債基金各期利率爲\(j\)、銀行貸款利率爲\(i\),貸款期爲\(n\),期初貸款額爲\(B_0\),則有,

各期利息:\(I=i\times B_0\)
每期向償債基金儲蓄金額:\(D=\frac{B_0}{s_{n|j}}\)
每期支付總額爲:\(R=I+D=i\times B_0+\frac{B_0}{s_{n|j}}=B_0(i+\frac{1}{s_{n|j}})\)
\(k\)期末貸款餘額爲:\(B_k=B_0-D\times s_{k|j}=B_0-\frac{B_0}{s_{n|j}}s_{k|j}=B_0(1-\frac{s_{k|j}}{s_{n|j}})\)
\(k\)期償債基金的餘額:\(F_k=D\times s_{k|j}=B_0\frac{s_{k|j}}{s_{n|j}}\)
\(k\)期償債基金所生成的利息:\(M_k=j\times D\times s_{k-1|j}=j\times B_0\times\frac{s_{k-1|j}}{s_{n|j}}\)
\(k\)期實際支付的利息: \(I_k=i\times B_0-j\times D\times s_{k-1|j}=B_0\times (i-j\times\frac{s_{k-1|j}}{s_{n|j})})\)

式中,償債基金每期產生的利息爲上期期末累積值與基金利率的乘積。\(i=j\)時,等額償債基金等價於等額分期還款。

【例1.28】某筆20000元的貸款,基金存款年利率5%,銀行貸款年利率6%,貸款期限爲5年。製做等額償債基金錶。

4、生命表數據資料及引用

一、生命表結構數據(表 - 1)[返回]

生命表結構數據包中包括在必定人口基數水平下(一般爲一百萬),以不一樣生命表爲基礎計算出的各年齡存活人數、死亡人數等重要指標。

基數   生命表 

注:設置人口基數、選擇生命表可得到不一樣條件水平下的生命表結構數據表

二、轉換基數表(表 - 1)[返回]

在必定利率水平條件下,不一樣時期和種類的生命表能夠計算出無數轉換基數表,引入轉換基數能夠創建較簡潔的躉繳純保費計算公式。

銀行利率   生命表   

年齡(x) Dx Nx Sx Cx Mx Rx
0 1000000 20033986.54 375885120.8 0 45999.349 2180557.499
1 949488.5714 19033986.54 355851134.3 2892.381 45999.349 2134558.15
2 902324.3084 18084497.97 336817147.7 1950.5215 43106.9681 2088558.801
3 857972.0635 17182173.66 318732649.7 1384.4207 41156.4465 2045451.833
4 816094.8576 16324201.6 301550476.1 1021.3933 39772.0258 2004295.387
5 776455.9633 15508106.74 285226274.5 777.2345 38750.6325 1964523.361
6 738874.7564 14731650.78 269718167.7 607.1134 37973.398 1925772.728
7 703204.6925 13992776.02 254986517 485.5517 37366.2846 1887799.33
8 669321.6125 13289571.33 240993740.9 397.1423 36880.7329 1850433.046
9 637117.6839 12620249.72 227704169.6 331.4708 36483.5907 1813552.313
10 606494.7749 11983132.03 215083919.9 283.9717 36152.1199 1777068.722

注:設置銀行利率、選擇生命表或點擊「運 行」按鈕可得到不一樣條件水平指望值基數表

三、數據引用

(1)轉換公式(表 - 2)

    \(D_x=v^x\times l_x\)
    \(N_x=D_x+D_{x+1}+D_{x+2}+...+D_{\omega-1}\)
    \(S_x=N_x+N_{x+1}+N_{x+2}+...+N_{\omega-1}\)

    \(C_x=v^{x+1}\times d_x\)
    \(M_x=C_x+C_{x+1}+C_{x+2}+...+C_{\omega-1}\)
    \(R_x=M_x+M_{x+1}+M_{x+2}+...+N_{\omega-1}\)

(2)得到指定生命表x歲的存活人數\(l_x\)(基數100萬人)[返回]

函數:webActuary.getSCRS(x,smb);
參數:x - 年齡;smb - 生命表索引代碼

注:生命表索引代碼:CL93M,CL93F,CL93U,CL93AM,CL93AF,CL93AU,CL03M,CL03F,CL03AM,CL03AF,CL13M1,CL13F1,CL13M2,CL13F2,CL13AM,CL13AF

樣例代碼

webTJ.clear();
var oS=webActuary.getSCRS(2,"CL93U");
webTJ.display(oS,0);

注:0歲時100萬人(基數100萬人),依據生命表CL93U得到2歲時的存活人數

(3)得到生命表結構數組[返回]

函數:webActuary.getJGArrs(smb);
參數:smb - 生命表索引代碼

注:該函數根據指定生命表索引代碼返回生命表結構數組(參見」表 - 1:生命表結構數據「),各列數據依次爲:\((x),q_x,l_x,d_x,L_x,T_x,e_x\)

樣例代碼

webTJ.clear();
var myArrs=webActuary.getJGArrs("CL93M");
webTJ.display(myArrs[20][6],0); //CL93M表(20)平均剩餘壽命
webTJ.display(myArrs[50][2],0); //CL93M表(50)存活人數

參考文獻:生命表 - 壽險精算(6)

2、公式和代碼函數

3、分類練習

4、水平測試

5、壽險精算代碼窗口[返回]


代碼窗口

注:可將例題實例代碼複製、粘貼到「代碼窗口」,點擊「運行代碼」得到計算結果(鼠標選擇實例代碼\(\rightarrow\)Ctrl+C:複製\(\rightarrow\)鼠標點擊「代碼窗口」使其得到焦點\(\rightarrow\)Ctrl+V:粘貼)

代碼運行效果

上篇文章:責任準備金 - 壽險精算(10)

相關文章
相關標籤/搜索