보험 업무의 구조 · 상품과 계약 · 실습
생명표로 순보험료 계산하기
목표
생명표와 예정이율로 정기보험의 순보험료를 직접 계산하고, 부가보험료를 얹어 영업보험료를 만든 뒤, 예정이율이 바뀌면 보험료가 얼마나 움직이는지 숫자로 확인합니다.
왜 중요한가
보험료는 "회사가 정한 값" 이 아니라 세 가지 가정에서 계산되는 값입니다. 얼마나 죽거나 다치는가(위험률), 받은 돈을 굴려 얼마를 벌 것인가(예정이율), 계약을 팔고 유지하는 데 얼마가 드는가(사업비). 이 셋을 각각 예정위험률·예정이율·예정사업비율이라 부르고, 보험 상품 시스템의 상품 정의는 결국 이 세 가정의 표입니다.
순보험료는 앞의 두 가정만으로 나옵니다. 가입금액을 언제 얼마의 확률로 지급하게 될지를 생명표에서 읽고, 그것을 예정이율로 할인해 현재가치로 만든 것이 일시납 순보험료입니다. 그것을 "살아 있는 동안 매년 내는 것" 으로 나누면 연납 순보험료가 됩니다. 여기에 사업비를 얹은 것이 고객이 실제로 내는 영업보험료입니다.
이 구조를 알면 현장의 말이 들립니다. "예정이율을 0.25%p 내리면 보험료가 오른다" 는 할인율이 낮아져 현재가치가 커진다는 뜻이고, "이 상품은 부가보험료 비중이 높다" 는 사업비 가정이 크다는 뜻입니다. 상품 시스템에서 보험료가 1원 다르면 어느 가정이 어느 자리에서 어떻게 반올림됐는지가 답입니다.
이 실습의 규칙
- 생명표는 30~80세
qx이고l30 = 100000.l(x+1) = l(x) × (1 − q(x)),d(x) = l(x) × q(x).lx는 반올림하지 않은 값으로 이어 계산하고 파일에는 소수 둘째 자리까지 적습니다. - 사망은 연말에 일어난다고 가정합니다. n년 정기보험의 일시납 순보험료율(가입금액 1원당)
A = Σ(t=0..n−1) v^(t+1) × d(x+t) ÷ l(x),v = 1 ÷ (1 + i). - 기시급 연금현가
ä = Σ(t=0..n−1) v^t × l(x+t) ÷ l(x). 연납 순보험료 = 가입금액 × A ÷ ä, 원 미만 반올림. 월납은 연납 ÷ 12 반올림(실습 단순화). - 영업보험료
G = (P + α × S ÷ ä) ÷ (1 − β − γ).P는 연납 순보험료,S는 가입금액,α신계약비율,β유지비율,γ수금비율은params.csv에 있습니다. 원 미만 반올림. - 비율은 소수 여섯째 자리까지 적습니다.
단계
1. 오른쪽 예시의 생성기를 /root/ins/make_premium.py 로 저장하고 python3 make_premium.py 로 실행하세요. lifetable.csv(51행), params.csv, quotes.csv(견적 5건)가 만들어집니다.
2. /root/ins/lx.csv 에 age,qx,lx,dx 머리글로 30~80세 51줄을 적으세요.
3. 견적 5건의 일시납 순보험료를 /root/ins/nsp.csv 에 quote_id,age,term,sum_assured,nsp_rate,nsp 머리글로 적으세요. nsp_rate 는 A, nsp 는 가입금액 × A 반올림입니다.
4. 견적 5건의 기시급 연금현가를 /root/ins/annuity.csv 에 quote_id,annuity_due 머리글로 적으세요.
5. 연납·월납 순보험료를 /root/ins/net_premium.csv 에 quote_id,net_annual,net_monthly 머리글로 적으세요.
6. 영업보험료를 /root/ins/gross_premium.csv 에 quote_id,net_annual,loading,gross_annual,gross_monthly 머리글로 적으세요. loading 은 영업보험료에서 순보험료를 뺀 값입니다.
7. Q1 의 연납 순보험료를 예정이율 1.5%·2.5%·3.5% 로 각각 계산해 /root/ins/sensitivity.txt 에 net_at_1.5=, net_at_2.5=, net_at_3.5=, delta_pct= 네 줄을 적으세요. delta_pct 는 1.5% 보험료가 3.5% 보험료보다 몇 % 큰지를 소수 첫째 자리까지 적은 값입니다.
8. /root/ins/quote_report.md 에 ## 보험료 구성, ## 계산 근거, ## 예정이율 민감도, ## 한계와 주의 네 절로 견적 설명서를 쓰세요.
참고
- 2단계에서 만든 표를 함수로 감싸 두면 3~7단계가 전부 그 함수를 씁니다.
lx를 딕셔너리로 들고 다니세요. - 파이썬
round()는 .5 를 짝수 쪽으로 보냅니다. 원 미만 반올림은int(x + 0.5)로 하세요. - 흔한 실수 1: 사망 급부의 할인 지수를
t로 쓰는 것. 연말 사망 가정이라t+1입니다. - 흔한 실수 2:
lx를 소수 둘째 자리로 반올림한 값으로 다음 해를 계산하는 것. 파일에만 반올림합니다. - 흔한 실수 3: 부가보험료를 순보험료의 몇 % 로 얹는 것. 유지비·수금비는 영업보험료 의 비율이라 나누기로 풀립니다.
단계 8개
- 생명표와 견적 요청 만들기
- 사망률에서 생존자 수 만들기
- 일시납 순보험료 구하기
- 보험료를 나눠 낼 때의 가치 구하기
- 연납·월납 순보험료 구하기
- 사업비를 얹어 영업보험료 만들기
- 예정이율을 흔들어 보험료 변화 보기
- 견적 설명서 쓰기