Learn R Programming

volrisk

The volrisk package provides simulation tools for modeling stochastic cash flows in life reinsurance contracts with profit commission provisions.

Features

  • Create insurance portfolios with validation
  • Simulate death and lapse events under stochastic assumptions
  • Calculate profit commissions from simulated cash flows
  • Quantify risk using Value-at-Risk (VaR) and Tail Value-at-Risk (TVaR)

Installation

# Install from GitHub
devtools::install_github("taku1094/volrisk")
library(volrisk)

Example Usage

1. Generate Portfolio

port <- make_portfolio(example_portfolio, cols = list(
  unique_id = "POL_ID",
  client_id = "CLIENT_ID",
  duration = "DURATION",
  mortality = "MORTALITY",
  lapse = "LAPSE",
  nar = "NAR",
  rate = "RATE"
))

2. Run Simulation

simulation(
  port, 
  n_sim = 10, 
  split = 100,
  seed = 12345,
  output_format = "csv", 
  output_path = tempdir()
)

3. Calculate Profit Commission

data(example_simulation)

example_simulation_with_PC <- example_simulation %>%
  dplyr::group_by(split, sim_n) %>%
  dplyr::mutate(
    PC = calc_pc(PREM, CLAIM,
                 pc_rate = 0.9,
                 me = 0.05,
                 loss_carry = "N",
                 duration = DURATION)
  ) %>%
  dplyr::ungroup()

4. Evaluate Risk

result <- risk(
  example_simulation,
  time_horizon = c(1, 10),
  level = c(0.01, 0.99),
  discount = 0.02,
  output = "BAL"
)

Copy Link

Version

Install

install.packages('volrisk')

Monthly Downloads

191

Version

0.1.0

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Yoshida Takuji

Last Published

June 14th, 2025

Functions in volrisk (0.1.0)

make_portfolio

Create Insurance Portfolio for Simulation
simulation

Run Simulation of Death and Lapse Scenarios
risk

Compute Risk Measures
example_simulation

Example Simulation Results
calc_pc

Calculate Profit Commission for Reinsurance
%>%

Pipe operator
example_portfolio

Example Portfolio