\n",
@@ -2444,24 +2444,73 @@
"tags": []
},
"source": [
- "### The Bornhuetter-Ferguson Method"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The `BornhuetterFerguson` estimator is another deterministic method having many of the same attributes as the `Chainladder` estimator. It comes with one input assumption, the a priori (`apriori`). This is a scalar multiplier that will be applied to an exposure vector, which will produce an a priori ultimate estimate vector that we can use for the model."
+ "### The Bornhuetter-Ferguson Method\n",
+ "The `BornhuetterFerguson` estimator is another deterministic method having many of the same attributes as the `Chainladder` estimator. It comes with one assumption, the `apriori`. This is a scalar multiplier that is to be applied to an exposure vector to determine an apriori ultimate estimate of our model.\n",
+ "\n",
+ "Since the CAS Loss Reserve Database (clrd) has premium, we will use it as an example. Let's grab the paid loss and net earned premium for the commercial auto line of business."
]
},
{
- "cell_type": "markdown",
+ "cell_type": "code",
+ "execution_count": 16,
"metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
Triangle Summary
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
Valuation:
\n",
+ "
1997-12
\n",
+ "
\n",
+ "
\n",
+ "
Grain:
\n",
+ "
OYDY
\n",
+ "
\n",
+ "
\n",
+ "
Shape:
\n",
+ "
(1, 2, 10, 10)
\n",
+ "
\n",
+ "
\n",
+ "
Index:
\n",
+ "
[LOB]
\n",
+ "
\n",
+ "
\n",
+ "
Columns:
\n",
+ "
[CumPaidLoss, EarnedPremNet]
\n",
+ "
\n",
+ " \n",
+ "
"
+ ],
+ "text/plain": [
+ " Triangle Summary\n",
+ "Valuation: 1997-12\n",
+ "Grain: OYDY\n",
+ "Shape: (1, 2, 10, 10)\n",
+ "Index: [LOB]\n",
+ "Columns: [CumPaidLoss, EarnedPremNet]"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "### The BornhuetterFerguson method\n",
- "The `BornhuetterFerguson` estimator is another deterministic method having many of the same attributes as the `Chainladder` estimator. It comes with one assumption, the `apriori`. This is a scalar multiplier that is to be applied to an exposure vector to determine an apriori ultimate estimate of our model.\n",
- "\n",
- "Since the CAS Loss Reserve Database has premium, we will use it as an example. Let's grab the paid loss and net earned premium for the commercial auto line of business."
+ "comauto = (\n",
+ " cl.load_sample(\"clrd\")\n",
+ " .groupby(\"LOB\")\n",
+ " .sum()\n",
+ " .loc[\"comauto\"][[\"CumPaidLoss\", \"EarnedPremNet\"]]\n",
+ ")\n",
+ "comauto"
]
},
{
@@ -2472,10 +2521,24 @@
]
},
{
- "cell_type": "markdown",
+ "cell_type": "code",
+ "execution_count": 17,
"metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "BornhuetterFerguson(apriori=0.75)"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "Let's set an apriori Loss Ratio estimate of 75%"
+ "bf_model = cl.BornhuetterFerguson(apriori=0.75)\n",
+ "bf_model"
]
},
{
@@ -2503,7 +2566,7 @@
],
"source": [
"bf_model.fit(\n",
- " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal\n",
+ " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal,\n",
")"
]
},
@@ -2614,7 +2677,7 @@
],
"source": [
"bf_model.fit(\n",
- " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal\n",
+ " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal,\n",
")"
]
},
@@ -2643,7 +2706,7 @@
],
"source": [
"b1 = cl.BornhuetterFerguson(apriori=0.75).fit(\n",
- " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal\n",
+ " comauto[\"CumPaidLoss\"], sample_weight=comauto[\"EarnedPremNet\"].latest_diagonal,\n",
")\n",
"\n",
"b2 = cl.BornhuetterFerguson(apriori=1.00).fit(\n",
@@ -2671,7 +2734,7 @@
{
"data": {
"text/plain": [
- ""
+ ""
]
},
"execution_count": 22,
@@ -2766,7 +2829,7 @@
{
"data": {
"text/plain": [
- ""
+ ""
]
},
"execution_count": 25,
@@ -3231,7 +3294,7 @@
{
"data": {
"text/plain": [
- "[]"
+ "[]"
]
},
"execution_count": 32,
@@ -3270,7 +3333,7 @@
{
"data": {
"text/plain": [
- ""
+ ""
]
},
"execution_count": 33,
@@ -3323,7 +3386,7 @@
{
"data": {
"text/plain": [
- ""
+ ""
]
},
"execution_count": 34,
@@ -3385,7 +3448,7 @@
{
"data": {
"text/plain": [
- ""
+ ""
]
},
"execution_count": 35,
@@ -3678,7 +3741,7 @@
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
diff --git a/docs/tutorials/development-tutorial.ipynb b/docs/tutorials/development-tutorial.ipynb
index 72ff8c65..2debba67 100644
--- a/docs/tutorials/development-tutorial.ipynb
+++ b/docs/tutorials/development-tutorial.ipynb
@@ -23,7 +23,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "pandas: 1.3.1\n",
+ "pandas: 1.3.2\n",
"numpy: 1.20.3\n",
"chainladder: 0.8.8\n"
]
@@ -558,53 +558,9 @@
},
{
"cell_type": "code",
- "execution_count": 16,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "
\n",
@@ -2554,7 +2290,7 @@
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
diff --git a/docs/tutorials/stochastic-tutorial.ipynb b/docs/tutorials/stochastic-tutorial.ipynb
index 3ffbae04..16a75f28 100644
--- a/docs/tutorials/stochastic-tutorial.ipynb
+++ b/docs/tutorials/stochastic-tutorial.ipynb
@@ -4,9 +4,13 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "## Stochastic methods\n",
- "### Getting started\n",
- "All exercises rely on chainladder v0.5.5 and later. There have also been breaking changes with `pandas 1.0` and if you are using an earlier version, date slicing may behave differently."
+ "## Applying Stochastic Methods\n",
+ "### Getting Started\n",
+ "This tutorial focuses on using stochastic methods to estimate ultimates. \n",
+ "\n",
+ "Note that a lot of the examples shown here might not be applicable in a real world scenario, and is only meant to demonstrate some of the functionalities included in the package. The user should always exercise their best actuarial judgement, and follow any applicable laws, the Code of Professional Conduct, and applicable Actuarial Standards of Practice.\n",
+ "\n",
+ "Be sure to make sure your packages are updated. For more info on how to update your pakages, visit [Keeping Packages Updated](https://chainladder-python.readthedocs.io/en/latest/install.html#keeping-packages-updated)."
]
},
{
@@ -18,29 +22,37 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "chainladder:0.8.6\n",
- "pandas:1.3.0\n"
+ "pandas: 1.3.2\n",
+ "numpy: 1.20.3\n",
+ "chainladder: 0.8.8\n"
]
}
],
"source": [
+ "# Black linter, optional\n",
+ "%load_ext lab_black\n",
+ "\n",
"import pandas as pd\n",
"import numpy as np\n",
"import chainladder as cl\n",
- "import seaborn as sns\n",
- "sns.set_style('whitegrid')\n",
+ "import matplotlib.pyplot as plt\n",
+ "import statsmodels.api as sm\n",
+ "import os\n",
+ "\n",
"%matplotlib inline\n",
- "print('chainladder:' + cl.__version__)\n",
- "print('pandas:' + pd.__version__)"
+ "\n",
+ "print(\"pandas: \" + pd.__version__)\n",
+ "print(\"numpy: \" + np.__version__)\n",
+ "print(\"chainladder: \" + cl.__version__)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "### MackChainladder Intro\n",
+ "### Intro to MackChainladder\n",
"\n",
- "Like the basic `Chainladder` method, the `MackChainladder` is entirely specified by its development pattern selections. In fact, it is the basic `Chainladder` with a few extra features. Let's explore this a bit more with the Workers' Compensation industry triangle."
+ "Like the basic `Chainladder` method, the `MackChainladder` is entirely specified by its selected development pattern. In fact, it is the basic `Chainladder`, but with extra features."
]
},
{
@@ -60,16 +72,23 @@
}
],
"source": [
- "tri = cl.load_sample('clrd').groupby('LOB').sum().loc['wkcomp', ['CumPaidLoss', 'EarnedPremNet']]\n",
- "cl.Chainladder().fit(tri['CumPaidLoss']).ultimate_ == \\\n",
- "cl.MackChainladder().fit(tri['CumPaidLoss']).ultimate_"
+ "clrd = (\n",
+ " cl.load_sample(\"clrd\")\n",
+ " .groupby(\"LOB\")\n",
+ " .sum()\n",
+ " .loc[\"wkcomp\", [\"CumPaidLoss\", \"EarnedPremNet\"]]\n",
+ ")\n",
+ "\n",
+ "cl.Chainladder().fit(clrd[\"CumPaidLoss\"]).ultimate_ == cl.MackChainladder().fit(\n",
+ " clrd[\"CumPaidLoss\"]\n",
+ ").ultimate_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Let's create a Mack Model."
+ "Let's create a Mack's Chainladder model."
]
},
{
@@ -78,22 +97,22 @@
"metadata": {},
"outputs": [],
"source": [
- "mack = cl.MackChainladder().fit(tri['CumPaidLoss'])"
+ "mack = cl.MackChainladder().fit(clrd[\"CumPaidLoss\"])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "MackChainladder has the following additional fitted features that the deterministic `Chainladder` does not.\n",
+ "MackChainladder has the following additional fitted features that the deterministic `Chainladder` does not:\n",
"\n",
- "1. `full_std_err_`: The full standard error\n",
- "2. `total_process_risk_`: The total process error\n",
- "3. `total_parameter_risk_`: The total parameter error\n",
- "4. `mack_std_err_`: The total prediction error by origin period\n",
- "5. `total_mack_std_err_`: The total prediction error across all origin periods\n",
+ "- `full_std_err_`: The full standard error\n",
+ "- `total_process_risk_`: The total process error\n",
+ "- `total_parameter_risk_`: The total parameter error\n",
+ "- `mack_std_err_`: The total prediction error by origin period\n",
+ "- `total_mack_std_err_`: The total prediction error across all origin periods\n",
"\n",
- "Notice these are all measures of uncertainty, but where do they come from? Let's start by examining the `link_ratios` underlying the triangle."
+ "Notice these are all measures of uncertainty, but where can they be applied? Let's start by examining the `link_ratios` underlying the triangle between age 12 and 24."
]
},
{
@@ -180,15 +199,15 @@
}
],
"source": [
- "tri_first_lags = tri[tri.development<=24][tri.origin<'1997']['CumPaidLoss']\n",
- "tri_first_lags"
+ "clrd_first_lags = clrd[clrd.development <= 24][clrd.origin < \"1997\"][\"CumPaidLoss\"]\n",
+ "clrd_first_lags"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "A simple average link-ratio can be directly computed as follows:"
+ "A simple average link-ratio can be directly computed."
]
},
{
@@ -208,14 +227,14 @@
}
],
"source": [
- "tri_first_lags.link_ratio.to_frame().mean().values[0]"
+ "clrd_first_lags.link_ratio.to_frame().mean()[0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Verifying that this ties to our `Development` object:"
+ "We can also verify that the result is the same as the `Development` object."
]
},
{
@@ -235,19 +254,19 @@
}
],
"source": [
- "cl.Development(average='simple').fit(tri['CumPaidLoss']).ldf_.to_frame().values[0, 0]"
+ "cl.Development(average=\"simple\").fit(clrd[\"CumPaidLoss\"]).ldf_.to_frame().values[0, 0]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "### A linear regression framework\n",
+ "### The Linear Regression Framework\n",
"\n",
- "Mack noticed that this estimate for an LDF is really just a linear regression fit. For the case of the `simple` average, it is a weighted regression where the weight is set to $\\left (\\frac{1}{X} \\right )^{2}$.\n",
+ "Mack noted that the estimate for the LDF is really just a linear regression fit. In the case of using the `simple` average, it is a weighted regression where the weight is $\\left (\\frac{1}{X} \\right )^{2}$.\n",
"\n",
- "Take a look at the fitted coefficient in the next cell and verify that it ties to the direct calculations above.\n",
- "With the regression framework in hand, we get much more information about our LDF estimate than just the coefficient."
+ "Let's take a look at the fitted coefficient and verify that this ties to the direct calculations that we made earlier.\n",
+ "With the regression framework in hand, we can get more information about our LDF estimate than just the coefficient."
]
},
{
@@ -259,7 +278,7 @@
"name": "stderr",
"output_type": "stream",
"text": [
- "C:\\Users\\jboga\\anaconda3\\envs\\cl_dev\\lib\\site-packages\\scipy\\stats\\stats.py:1604: UserWarning: kurtosistest only valid for n>=20 ... continuing anyway, n=9\n",
+ "/Users/kenneth.hsu/opt/anaconda3/envs/cl_dev/lib/python3.7/site-packages/scipy/stats/stats.py:1604: UserWarning: kurtosistest only valid for n>=20 ... continuing anyway, n=9\n",
" \"anyway, n=%i\" % int(n))\n"
]
},
@@ -278,10 +297,10 @@
"
Method:
Least Squares
F-statistic:
2887.
\n",
"
\n",
"
\n",
- "
Date:
Sun, 15 Aug 2021
Prob (F-statistic):
1.60e-11
\n",
+ "
Date:
Fri, 10 Sep 2021
Prob (F-statistic):
1.60e-11
\n",
"
\n",
"
\n",
- "
Time:
09:39:58
Log-Likelihood:
-107.89
\n",
+ "
Time:
23:27:45
Log-Likelihood:
-107.89
\n",
"
\n",
"
\n",
"
No. Observations:
9
AIC:
217.8
\n",
@@ -327,8 +346,8 @@
"Dep. Variable: y R-squared (uncentered): 0.997\n",
"Model: WLS Adj. R-squared (uncentered): 0.997\n",
"Method: Least Squares F-statistic: 2887.\n",
- "Date: Sun, 15 Aug 2021 Prob (F-statistic): 1.60e-11\n",
- "Time: 09:39:58 Log-Likelihood: -107.89\n",
+ "Date: Fri, 10 Sep 2021 Prob (F-statistic): 1.60e-11\n",
+ "Time: 23:27:45 Log-Likelihood: -107.89\n",
"No. Observations: 9 AIC: 217.8\n",
"Df Residuals: 8 BIC: 218.0\n",
"Df Model: 1 \n",
@@ -356,12 +375,10 @@
}
],
"source": [
- "import statsmodels.api as sm\n",
- "import numpy as np\n",
- "y = tri_first_lags.to_frame().values[:, 1]\n",
- "X = tri_first_lags.to_frame().values[:, 0]\n",
+ "y = clrd_first_lags.to_frame().values[:, 1]\n",
+ "x = clrd_first_lags.to_frame().values[:, 0]\n",
"\n",
- "model = sm.WLS(y, X, weights=(1/X)**2)\n",
+ "model = sm.WLS(y, x, weights=(1 / x) ** 2)\n",
"results = model.fit()\n",
"results.summary()"
]
@@ -370,7 +387,10 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "By toggling the weights of our regression, we can handle the most common types of averaging used in picking loss development factors."
+ "By toggling the weights of our regression, we can handle the most common types of averaging used in picking loss development factors.\n",
+ "- For simple average, the weights are $\\left (\\frac{1}{X} \\right )^{2}$\n",
+ "- For volume-weighted average, the weights are $\\left (\\frac{1}{X} \\right )$\n",
+ "- For \"regression\" average, the weights are 1"
]
},
{
@@ -382,32 +402,58 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "Does this work for simple?\n",
+ "Simple average:\n",
"True\n",
- "Does this work for volume-weighted average?\n",
+ "Volume-weighted average:\n",
"True\n",
- "Does this work for regression average?\n",
+ "Regression average:\n",
"True\n"
]
}
],
"source": [
- "print('Does this work for simple?')\n",
- "print(round(cl.Development(average='simple').fit(tri_first_lags).ldf_.to_frame().values[0, 0], 8) == \\\n",
- " round(sm.WLS(y, X, weights=(1/X)**2).fit().params[0],8))\n",
- "print('Does this work for volume-weighted average?')\n",
- "print(round(cl.Development(average='volume').fit(tri_first_lags).ldf_.to_frame().values[0, 0], 8) == \\\n",
- " round(sm.WLS(y, X, weights=(1/X)).fit().params[0],8))\n",
- "print('Does this work for regression average?')\n",
- "print(round(cl.Development(average='regression').fit(tri_first_lags).ldf_.to_frame().values[0, 0], 8) == \\\n",
- " round(sm.OLS(y, X).fit().params[0],8))"
+ "print(\"Simple average:\")\n",
+ "print(\n",
+ " round(\n",
+ " cl.Development(average=\"simple\")\n",
+ " .fit(clrd_first_lags)\n",
+ " .ldf_.to_frame()\n",
+ " .values[0, 0],\n",
+ " 10,\n",
+ " )\n",
+ " == round(sm.WLS(y, x, weights=(1 / x) ** 2).fit().params[0], 10)\n",
+ ")\n",
+ "\n",
+ "print(\"Volume-weighted average:\")\n",
+ "print(\n",
+ " round(\n",
+ " cl.Development(average=\"volume\")\n",
+ " .fit(clrd_first_lags)\n",
+ " .ldf_.to_frame()\n",
+ " .values[0, 0],\n",
+ " 10,\n",
+ " )\n",
+ " == round(sm.WLS(y, x, weights=(1 / x)).fit().params[0], 10)\n",
+ ")\n",
+ "\n",
+ "print(\"Regression average:\")\n",
+ "print(\n",
+ " round(\n",
+ " cl.Development(average=\"regression\")\n",
+ " .fit(clrd_first_lags)\n",
+ " .ldf_.to_frame()\n",
+ " .values[0, 0],\n",
+ " 10,\n",
+ " )\n",
+ " == round(sm.OLS(y, x, weights=1).fit().params[0], 10)\n",
+ ")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "This regression framework is what the `Development` estimator uses to set development patterns. Although we discard the information in deterministic approaches, `Development` has two useful statistics for estimating reserve variability, both of which come from the regression framework. The stastics are `std_err_` and `sigma_` and they are used by the `MackChainladder` estimator to determine the prediction error of our reserves."
+ "The regression framework is what the `Development` estimator uses to set development patterns. Although we discard the information in the deterministic methods, in the stochastic methods, `Development` has two useful statistics for estimating reserve variability, both of which come from the regression framework. The stastics are `sigma_` and `std_err_` , and they are used by the `MackChainladder` estimator to determine the prediction error of our reserves."
]
},
{
@@ -416,7 +462,7 @@
"metadata": {},
"outputs": [],
"source": [
- "dev = cl.Development(average='simple').fit(tri['CumPaidLoss'])"
+ "dev = cl.Development(average=\"simple\").fit(clrd[\"CumPaidLoss\"])"
]
},
{
@@ -445,22 +491,22 @@
"
"
],
"text/plain": [
- " 12-24 24-36 36-48 48-60 60-72 72-84 84-96 96-108 108-120\n",
- "(All) 0.123197 0.034009 0.013495 0.009146 0.007386 0.006673 0.007257 0.00966 0.003222"
+ " 12-24 24-36 36-48 48-60 60-72 72-84 84-96 96-108 108-120\n",
+ "(All) 0.041066 0.012024 0.005101 0.003734 0.003303 0.003337 0.00419 0.006831 0.003222"
]
},
"execution_count": 11,
@@ -522,16 +568,14 @@
}
],
"source": [
- "dev.sigma_"
+ "dev.std_err_"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Since the regression framework is weighted, we can easily turn on/off any observation we want using the dropping capabilities of the `Development` estimator. Dropping link ratios not only affects the `ldf_` and `cdf_`, but also the `std_err_` and `sigma` of the regression.\n",
- "\n",
- "Here we eliminate the 1988 valuation from our triangle, which is identical to eliminating the first observation from our 12-24 regression fit."
+ "Remember that `std_err_` is calculated as $\\frac{\\sigma}{\\sqrt{N}}$."
]
},
{
@@ -540,32 +584,252 @@
"metadata": {},
"outputs": [
{
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Does this work for dropping observations?\n",
- "True\n"
- ]
+ "data": {
+ "text/plain": [
+ "array([0.0411, 0.012 , 0.0051, 0.0037, 0.0033, 0.0033, 0.0042, 0.0068,\n",
+ " 0.0032])"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
}
],
"source": [
- "print('Does this work for dropping observations?')\n",
- "print(round(cl.Development(average='volume', drop_valuation='1988') \\\n",
- " .fit(tri['CumPaidLoss']).std_err_.to_frame().values[0, 0], 8) == \\\n",
- " round(sm.WLS(y[1:], X[1:], weights=(1/X[1:])).fit().bse[0],8))"
+ "np.round(\n",
+ " dev.sigma_.to_frame().transpose()[\"(All)\"].values\n",
+ " / np.sqrt(clrd[\"CumPaidLoss\"].age_to_age.to_frame().count()).values,\n",
+ " 4,\n",
+ ")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "With `sigma_` and `std_err_` in hand, Mack goes on to develop recursive formulas to estimate `parameter_risk_` and `process_risk_`."
+ "Since the regression framework uses the weighting method, we can easily turn \"on and off\" any observation we want using the dropping capabilities such as `drop_valuation` in the `Development` estimator. Dropping link ratios not only affects the `ldf_` and `cdf_`, but also the `std_err_` and `sigma` of the estimates.\n",
+ "\n",
+ "Can we eliminate the 1988 valuation from our triangle, which is identical to eliminating the first observation from our 12-24 regression fit? Let's calculate the `std_err` for the `ldf_` of ages 12-24, and compare it to the value calculated using the weighted least squares regression."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
12
\n",
+ "
24
\n",
+ "
36
\n",
+ "
48
\n",
+ "
60
\n",
+ "
72
\n",
+ "
84
\n",
+ "
96
\n",
+ "
108
\n",
+ "
120
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1988
\n",
+ "
285,804
\n",
+ "
638,532
\n",
+ "
865,100
\n",
+ "
996,363
\n",
+ "
1,084,351
\n",
+ "
1,133,188
\n",
+ "
1,169,749
\n",
+ "
1,196,917
\n",
+ "
1,229,203
\n",
+ "
1,241,715
\n",
+ "
\n",
+ "
\n",
+ "
1989
\n",
+ "
307,720
\n",
+ "
684,140
\n",
+ "
916,996
\n",
+ "
1,065,674
\n",
+ "
1,154,072
\n",
+ "
1,210,479
\n",
+ "
1,249,886
\n",
+ "
1,291,512
\n",
+ "
1,308,706
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1990
\n",
+ "
320,124
\n",
+ "
757,479
\n",
+ "
1,017,144
\n",
+ "
1,169,014
\n",
+ "
1,258,975
\n",
+ "
1,315,368
\n",
+ "
1,368,374
\n",
+ "
1,394,675
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1991
\n",
+ "
347,417
\n",
+ "
793,749
\n",
+ "
1,053,414
\n",
+ "
1,209,556
\n",
+ "
1,307,164
\n",
+ "
1,381,645
\n",
+ "
1,414,747
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1992
\n",
+ "
342,982
\n",
+ "
781,402
\n",
+ "
1,014,982
\n",
+ "
1,172,915
\n",
+ "
1,281,864
\n",
+ "
1,328,801
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1993
\n",
+ "
342,385
\n",
+ "
743,433
\n",
+ "
959,147
\n",
+ "
1,113,314
\n",
+ "
1,187,581
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1994
\n",
+ "
351,060
\n",
+ "
750,392
\n",
+ "
993,751
\n",
+ "
1,114,842
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1995
\n",
+ "
343,841
\n",
+ "
768,575
\n",
+ "
962,081
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1996
\n",
+ "
381,484
\n",
+ "
736,040
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
1997
\n",
+ "
340,132
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " \n",
+ "
"
+ ],
+ "text/plain": [
+ " 12 24 36 48 60 72 84 96 108 120\n",
+ "1988 285804.0 638532.0 865100.0 996363.0 1084351.0 1133188.0 1169749.0 1196917.0 1229203.0 1241715.0\n",
+ "1989 307720.0 684140.0 916996.0 1065674.0 1154072.0 1210479.0 1249886.0 1291512.0 1308706.0 NaN\n",
+ "1990 320124.0 757479.0 1017144.0 1169014.0 1258975.0 1315368.0 1368374.0 1394675.0 NaN NaN\n",
+ "1991 347417.0 793749.0 1053414.0 1209556.0 1307164.0 1381645.0 1414747.0 NaN NaN NaN\n",
+ "1992 342982.0 781402.0 1014982.0 1172915.0 1281864.0 1328801.0 NaN NaN NaN NaN\n",
+ "1993 342385.0 743433.0 959147.0 1113314.0 1187581.0 NaN NaN NaN NaN NaN\n",
+ "1994 351060.0 750392.0 993751.0 1114842.0 NaN NaN NaN NaN NaN NaN\n",
+ "1995 343841.0 768575.0 962081.0 NaN NaN NaN NaN NaN NaN NaN\n",
+ "1996 381484.0 736040.0 NaN NaN NaN NaN NaN NaN NaN NaN\n",
+ "1997 340132.0 NaN NaN NaN NaN NaN NaN NaN NaN NaN"
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "clrd[\"CumPaidLoss\"]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "True"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "round(\n",
+ " cl.Development(average=\"volume\", drop_valuation=\"1988\")\n",
+ " .fit(clrd[\"CumPaidLoss\"])\n",
+ " .std_err_.to_frame()\n",
+ " .values[0, 0],\n",
+ " 8,\n",
+ ") == round(sm.WLS(y[1:], x[1:], weights=(1 / x[1:])).fit().bse[0], 8)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "With `sigma_` and `std_err_` in hand, Mack goes on to develop recursive formulas to estimate `parameter_risk_` and `process_risk_`."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {},
"outputs": [
{
"data": {
@@ -745,7 +1009,7 @@
"1997 0.0 14499.310582 21075.422823 24748.584403 27093.408297 28657.082880 29907.337622 31164.059421 33102.891878 33896.767821 33947.259341"
]
},
- "execution_count": 13,
+ "execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
@@ -754,87 +1018,758 @@
"mack.parameter_risk_"
]
},
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "### Assumption of Independence\n",
- "The Mack model makes a lot of assumptions about independence (i.e. covariance between random processes is 0). This means many of the Variance estimates in the `MackChainladder` model follow the form of $Var(A+B) = Var(A)+Var(B)$.\n",
- "\n",
- "Notice the square of `mack_std_err_` is simply the sum of the sqaures of `parameter_risk_` and `process_risk_`."
- ]
- },
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 16,
"metadata": {},
"outputs": [
{
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Parameter risk and process risk are independent?\n",
- "True\n"
- ]
- }
- ],
- "source": [
- "print('Parameter risk and process risk are independent?')\n",
- "print(round(mack.mack_std_err_**2, 4) == round(mack.parameter_risk_**2 + mack.process_risk_**2, 4))"
- ]
- },
+ "data": {
+ "text/html": [
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
12
\n",
+ "
24
\n",
+ "
36
\n",
+ "
48
\n",
+ "
60
\n",
+ "
72
\n",
+ "
84
\n",
+ "
96
\n",
+ "
108
\n",
+ "
120
\n",
+ "
9999
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1988
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
1,786
\n",
+ "
\n",
+ "
\n",
+ "
1989
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
5,089
\n",
+ "
5,413
\n",
+ "
\n",
+ "
\n",
+ "
1990
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
12,716
\n",
+ "
13,898
\n",
+ "
14,030
\n",
+ "
\n",
+ "
\n",
+ "
1991
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
9,791
\n",
+ "
16,366
\n",
+ "
17,396
\n",
+ "
17,506
\n",
+ "
\n",
+ "
\n",
+ "
1992
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
8,935
\n",
+ "
13,298
\n",
+ "
18,626
\n",
+ "
19,555
\n",
+ "
19,650
\n",
+ "
\n",
+ "
\n",
+ "
1993
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
9,138
\n",
+ "
12,792
\n",
+ "
16,090
\n",
+ "
20,536
\n",
+ "
21,375
\n",
+ "
21,457
\n",
+ "
\n",
+ "
\n",
+ "
1994
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
10,225
\n",
+ "
14,116
\n",
+ "
16,973
\n",
+ "
19,773
\n",
+ "
23,695
\n",
+ "
24,492
\n",
+ "
24,564
\n",
+ "
\n",
+ "
\n",
+ "
1995
\n",
+ "
0
\n",
+ "
0
\n",
+ "
0
\n",
+ "
13,102
\n",
+ "
17,449
\n",
+ "
20,434
\n",
+ "
22,804
\n",
+ "
25,180
\n",
+ "
28,514
\n",
+ "
29,264
\n",
+ "
29,324
\n",
+ "
\n",
+ "
\n",
+ "
1996
\n",
+ "
0
\n",
+ "
0
\n",
+ "
25,020
\n",
+ "
31,626
\n",
+ "
35,692
\n",
+ "
38,468
\n",
+ "
40,646
\n",
+ "
42,711
\n",
+ "
45,298
\n",
+ "
46,052
\n",
+ "
46,091
\n",
+ "
\n",
+ "
\n",
+ "
1997
\n",
+ "
0
\n",
+ "
43,224
\n",
+ "
62,195
\n",
+ "
72,725
\n",
+ "
79,313
\n",
+ "
83,518
\n",
+ "
86,649
\n",
+ "
89,327
\n",
+ "
91,962
\n",
+ "
93,045
\n",
+ "
93,064
\n",
+ "
\n",
+ " \n",
+ "
"
+ ],
+ "text/plain": [
+ " 12 24 36 48 60 72 84 96 108 120 9999\n",
+ "1988 0.0 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1786.361888\n",
+ "1989 0.0 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 5089.178360 5412.690643\n",
+ "1990 0.0 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 12715.830121 13897.867439 14030.088287\n",
+ "1991 0.0 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 9791.406888 16366.403244 17395.742449 17505.761711\n",
+ "1992 0.0 0.000000 0.000000 0.000000 0.000000 0.000000 8935.018632 13297.970777 18626.292883 19555.442335 19650.390741\n",
+ "1993 0.0 0.000000 0.000000 0.000000 0.000000 9138.261738 12791.894216 16089.736384 20536.049213 21375.214311 21456.500712\n",
+ "1994 0.0 0.000000 0.000000 0.000000 10224.862489 14116.221900 16973.053193 19773.012411 23694.524776 24492.049755 24564.094599\n",
+ "1995 0.0 0.000000 0.000000 13102.112109 17448.727071 20433.824628 22804.105513 25179.674557 28513.597608 29264.184137 29324.035626\n",
+ "1996 0.0 0.000000 25019.931172 31625.831305 35691.638815 38467.636171 40646.204205 42710.593579 45298.452925 46052.488614 46090.778483\n",
+ "1997 0.0 43224.455819 62195.286837 72725.026610 79312.695910 83518.132020 86648.812027 89327.026162 91961.614291 93044.819214 93064.102475"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "mack.process_risk_"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Assumption of Independence\n",
+ "The Mack model makes a lot of assumptions about independence (i.e. the covariance between random processes is 0). This means that many of the Variance estimates in the `MackChainladder` model follow the form of $Var(A+B) = Var(A)+Var(B)$. \n",
+ "\n",
+ "First, `mack_std_err_`2 $=$ `parameter_risk_`2 $+$ `process_risk_`2, the parameter risk and process risk is assumed to be independent. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
12
\n",
+ "
24
\n",
+ "
36
\n",
+ "
48
\n",
+ "
60
\n",
+ "
72
\n",
+ "
84
\n",
+ "
96
\n",
+ "
108
\n",
+ "
120
\n",
+ "
9999
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
1988
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
5,899,487
\n",
+ "
\n",
+ "
\n",
+ "
1989
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
53,474,629
\n",
+ "
59,942,191
\n",
+ "
\n",
+ "
\n",
+ "
1990
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
252,315,077
\n",
+ "
318,202,202
\n",
+ "
325,521,571
\n",
+ "
\n",
+ "
\n",
+ "
1991
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
131,677,828
\n",
+ "
403,094,112
\n",
+ "
475,836,802
\n",
+ "
483,598,214
\n",
+ "
\n",
+ "
\n",
+ "
1992
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
100,880,179
\n",
+ "
232,603,431
\n",
+ "
497,040,939
\n",
+ "
568,692,440
\n",
+ "
576,100,599
\n",
+ "
\n",
+ "
\n",
+ "
1993
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
99,801,841
\n",
+ "
199,401,152
\n",
+ "
325,904,005
\n",
+ "
572,006,803
\n",
+ "
639,209,994
\n",
+ "
645,915,677
\n",
+ "
\n",
+ "
\n",
+ "
1994
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
121,874,576
\n",
+ "
235,033,680
\n",
+ "
345,157,930
\n",
+ "
481,280,614
\n",
+ "
738,380,263
\n",
+ "
810,270,433
\n",
+ "
817,126,887
\n",
+ "
\n",
+ "
\n",
+ "
1995
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
195,879,863
\n",
+ "
349,828,815
\n",
+ "
483,758,514
\n",
+ "
609,246,045
\n",
+ "
757,631,482
\n",
+ "
1,023,325,766
\n",
+ "
1,100,370,499
\n",
+ "
1,107,147,524
\n",
+ "
\n",
+ "
\n",
+ "
1996
\n",
+ "
\n",
+ "
\n",
+ "
703,858,058
\n",
+ "
1,127,626,904
\n",
+ "
1,440,168,352
\n",
+ "
1,678,591,828
\n",
+ "
1,882,843,800
\n",
+ "
2,096,883,925
\n",
+ "
2,418,319,374
\n",
+ "
2,524,434,510
\n",
+ "
2,531,273,439
\n",
+ "
\n",
+ "
\n",
+ "
1997
\n",
+ "
\n",
+ "
2,078,583,588
\n",
+ "
4,312,427,152
\n",
+ "
5,901,421,925
\n",
+ "
7,024,556,506
\n",
+ "
7,796,506,775
\n",
+ "
8,402,465,469
\n",
+ "
8,950,516,203
\n",
+ "
9,552,739,954
\n",
+ "
9,806,329,251
\n",
+ "
9,813,343,586
\n",
+ "
\n",
+ " \n",
+ "
"
+ ],
+ "text/plain": [
+ " 12 24 36 48 60 72 84 96 108 120 9999\n",
+ "1988 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 5.899487e+06\n",
+ "1989 NaN NaN NaN NaN NaN NaN NaN NaN NaN 5.347463e+07 5.994219e+07\n",
+ "1990 NaN NaN NaN NaN NaN NaN NaN NaN 2.523151e+08 3.182022e+08 3.255216e+08\n",
+ "1991 NaN NaN NaN NaN NaN NaN NaN 1.316778e+08 4.030941e+08 4.758368e+08 4.835982e+08\n",
+ "1992 NaN NaN NaN NaN NaN NaN 1.008802e+08 2.326034e+08 4.970409e+08 5.686924e+08 5.761006e+08\n",
+ "1993 NaN NaN NaN NaN NaN 9.980184e+07 1.994012e+08 3.259040e+08 5.720068e+08 6.392100e+08 6.459157e+08\n",
+ "1994 NaN NaN NaN NaN 1.218746e+08 2.350337e+08 3.451579e+08 4.812806e+08 7.383803e+08 8.102704e+08 8.171269e+08\n",
+ "1995 NaN NaN NaN 1.958799e+08 3.498288e+08 4.837585e+08 6.092460e+08 7.576315e+08 1.023326e+09 1.100370e+09 1.107148e+09\n",
+ "1996 NaN NaN 7.038581e+08 1.127627e+09 1.440168e+09 1.678592e+09 1.882844e+09 2.096884e+09 2.418319e+09 2.524435e+09 2.531273e+09\n",
+ "1997 NaN 2.078584e+09 4.312427e+09 5.901422e+09 7.024557e+09 7.796507e+09 8.402465e+09 8.950516e+09 9.552740e+09 9.806329e+09 9.813344e+09"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "mack.parameter_risk_ ** 2 + mack.process_risk_ ** 2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
"
]
@@ -1099,11 +2098,14 @@
}
],
"source": [
- "dist = pd.Series(np.random.normal(mack.ibnr_.sum(),\n",
- " mack.total_mack_std_err_.values[0, 0], size=10000))\n",
- "dist.plot(\n",
- " kind='hist', bins=50,\n",
- " title=\"Normally distributed IBNR estimate with a mean of \" + '{:,}'.format(round(mack.ibnr_.sum(),0))[:-2]);"
+ "ibnr_mean = mack.ibnr_.sum()\n",
+ "ibnr_sd = mack.total_mack_std_err_.values[0, 0]\n",
+ "n_trials = 10000\n",
+ "\n",
+ "np.random.seed(2021)\n",
+ "dist = np.random.normal(ibnr_mean, ibnr_sd, size=n_trials)\n",
+ "\n",
+ "plt.hist(dist, bins=50)"
]
},
{
@@ -1111,21 +2113,69 @@
"metadata": {},
"source": [
"### ODP Bootstrap Model\n",
+ "The `MackChainladder` focuses on a regression framework for determining the variability of reserve estimates. An alternative approach is to use the statistical bootstrapping, or sampling from a triangle with replacement to simulate new triangles.\n",
"\n",
- "The `MackChainladder` focused on a regression framework for determining the variability of reserve estimates. An alternative approach is to use statistical bootstrapping or sampling from a triangle with replacement to simulate new triangles.\n",
- "\n",
- "Bootstrapping imposes less model constraints than the `MackChainladder` which allows for greater applicability in different scenarios. Sampling new triangles can be accomplished through the `BootstrapODPSample` estimator. This estimator will take a single triangle and simulate new ones from it.\n",
- "\n",
- "Notice how easy it is to simulate 10,000 new triangles from an existing triangle by accessing the `resampled_triangles_` attribute."
+ "Bootstrapping imposes less model constraints than the `MackChainladder`, which allows for greater applicability in different scenarios. Sampling new triangles can be accomplished through the `BootstrapODPSample` estimator. This estimator will take a single triangle and simulate new ones from it. To simulate new triangles randomly from an existing triangle, we specify `n_sims` with how many triangles we want to simulate, and access the `resampled_triangles_` attribute to get the simulated triangles. Notice that the shape of `resampled_triangles_` matches `n_sims` at the first index."
]
},
{
"cell_type": "code",
- "execution_count": 21,
+ "execution_count": 27,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ " \n",
+ "
\n",
+ "
\n",
+ "
Triangle Summary
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
Valuation:
\n",
+ "
1997-12
\n",
+ "
\n",
+ "
\n",
+ "
Grain:
\n",
+ "
OYDY
\n",
+ "
\n",
+ "
\n",
+ "
Shape:
\n",
+ "
(10000, 1, 10, 10)
\n",
+ "
\n",
+ "
\n",
+ "
Index:
\n",
+ "
[LOB]
\n",
+ "
\n",
+ "
\n",
+ "
Columns:
\n",
+ "
[CumPaidLoss]
\n",
+ "
\n",
+ " \n",
+ "
"
+ ],
+ "text/plain": [
+ " Triangle Summary\n",
+ "Valuation: 1997-12\n",
+ "Grain: OYDY\n",
+ "Shape: (10000, 1, 10, 10)\n",
+ "Index: [LOB]\n",
+ "Columns: [CumPaidLoss]"
+ ]
+ },
+ "execution_count": 27,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "samples = cl.BootstrapODPSample(n_sims=10000).fit(tri['CumPaidLoss']).resampled_triangles_"
+ "samples = (\n",
+ " cl.BootstrapODPSample(n_sims=10000).fit(clrd[\"CumPaidLoss\"]).resampled_triangles_\n",
+ ")\n",
+ "samples"
]
},
{
@@ -1135,15 +2185,6 @@
"Alternatively, we could use `BootstrapODPSample` to transform our triangle into a resampled set."
]
},
- {
- "cell_type": "code",
- "execution_count": 22,
- "metadata": {},
- "outputs": [],
- "source": [
- "samples = cl.BootstrapODPSample(n_sims=10000).fit_transform(tri['CumPaidLoss'])"
- ]
- },
{
"cell_type": "markdown",
"metadata": {},
@@ -1155,34 +2196,76 @@
},
{
"cell_type": "code",
- "execution_count": 23,
+ "execution_count": 28,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "Percentage difference in estimate using original triangle and BootstrapODPSample is 0\n"
+ "Chainladder's IBNR estimate: 2777812.6890986315\n",
+ "BootstrapODPSample's mean IBNR estimate: 2781565.8361817487\n",
+ "Difference $: -3753.147083117161\n",
+ "Difference %: 0.0013511159689946605\n"
]
}
],
"source": [
- "difference = round(1 - cl.Chainladder().fit(samples).ibnr_.sum('origin').mean() / \\\n",
- " cl.Chainladder().fit(tri['CumPaidLoss']).ibnr_.sum())\n",
- "print(\"Percentage difference in estimate using original triangle and BootstrapODPSample is \" +str(difference))"
+ "ibnr_cl = cl.Chainladder().fit(clrd[\"CumPaidLoss\"]).ibnr_.sum()\n",
+ "ibnr_bootstrap = cl.Chainladder().fit(samples).ibnr_.sum(\"origin\").mean()\n",
+ "\n",
+ "print(\n",
+ " \"Chainladder's IBNR estimate:\", ibnr_cl,\n",
+ ")\n",
+ "print(\n",
+ " \"BootstrapODPSample's mean IBNR estimate:\", ibnr_bootstrap,\n",
+ ")\n",
+ "print(\"Difference $:\", ibnr_cl - ibnr_bootstrap)\n",
+ "print(\"Difference %:\", abs(ibnr_cl - ibnr_bootstrap) / ibnr_cl)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "### Using deterministic methods with Bootstrap samples\n",
+ "### Using Deterministic Methods with Bootstrapped Samples\n",
"Our `samples` is just another triangle object with all the functionality of a regular triangle. This means we can apply any functionality we want to our `samples` including any deterministic methods we learned about previously."
]
},
{
"cell_type": "code",
- "execution_count": 24,
+ "execution_count": 29,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Pipeline(steps=[('dev', Development(average='simple')),\n",
+ " ('tail', TailConstant(tail=1.05))])"
+ ]
+ },
+ "execution_count": 29,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pipe = cl.Pipeline(\n",
+ " [(\"dev\", cl.Development(average=\"simple\")), (\"tail\", cl.TailConstant(1.05))]\n",
+ ")\n",
+ "pipe.fit(samples)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Now instead of a single `ldf_` (and `cdf_`) array across developmental ages, we have 10,000 arrays of `ldf_` (and `cdf_`)."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
"metadata": {},
"outputs": [
{
@@ -1192,196 +2275,350 @@
" \n",
"
"
]
@@ -1393,36 +2630,48 @@
}
],
"source": [
- "mack_vs_bs = resampled_ldf.std('index').to_frame().append(\n",
- " orig_dev.std_err_.to_frame()).T\n",
- "mack_vs_bs.columns = ['Mack', 'Bootstrap']\n",
- "mack_vs_bs.plot(kind='bar', title='Mack Regression Framework LDF Std Err\\nvs\\nBootstrap Simulated LDF Std Err');"
+ "width = 0.3\n",
+ "ages = np.arange(len(bootstrap_vs_mack))\n",
+ "\n",
+ "plt.bar(\n",
+ " ages - width / 2,\n",
+ " bootstrap_vs_mack[\"Std_Bootstrap\"],\n",
+ " width=width,\n",
+ " label=\"Bootstrap\",\n",
+ ")\n",
+ "plt.bar(ages + width / 2, bootstrap_vs_mack[\"Std_Mack\"], width=width, label=\"Mack\")\n",
+ "plt.legend(loc=\"upper right\")\n",
+ "plt.xticks(ages, bootstrap_vs_mack.index)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "While the `MackChainladder` produces statistics about the mean and variance of reserve estimates, those have to be fit to a distribution using MLE, MoM, etc to see the range of outcomes of reserves. With `BootstrapODPSample` based fits, we can use the empirical distribution directly if we choose to."
+ "While the `MackChainladder` produces statistics about the mean and variance of reserve estimates, the variance or precentile of reserves would need to be fited using maximum likelihood estimation or method of moments. However, for `BootstrapODPSample` based fits, we can use the empirical distribution from the samples directly to get information about variance or the precentile of the IBNR reserves."
]
},
{
"cell_type": "code",
- "execution_count": 29,
+ "execution_count": 36,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "99%-ile of reserve estimate is 3,148,326.0\n"
+ "Standard deviation of reserve estimate: 137,429.0\n",
+ "99th percentile of reserve estimate: 3,098,903.0\n"
]
}
],
"source": [
- "ibnr = cl.Chainladder().fit(samples).ibnr_.sum('origin')\n",
+ "ibnr = cl.Chainladder().fit(samples).ibnr_.sum(\"origin\")\n",
+ "\n",
+ "ibnr_std = ibnr.std()\n",
+ "print(\"Standard deviation of reserve estimate: \" + f\"{round(ibnr_std,0):,}\")\n",
"ibnr_99 = ibnr.quantile(q=0.99)\n",
- "print(\"99%-ile of reserve estimate is \" +'{:0,}'.format(round(ibnr_99,0)))"
+ "print(\"99th percentile of reserve estimate: \" + f\"{round(ibnr_99,0):,}\")"
]
},
{
@@ -1434,12 +2683,22 @@
},
{
"cell_type": "code",
- "execution_count": 30,
+ "execution_count": 37,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 37,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
"text/plain": [
"
"
]
@@ -1451,24 +2710,25 @@
}
],
"source": [
- "ax = ibnr.plot(kind='hist', bins=50, alpha=0.7, color='green').plot()\n",
- "dist.plot(kind='hist', bins=50, alpha=0.4, color='blue', title='Mack vs Bootstrap Variability');"
+ "plt.hist(ibnr.to_frame(), bins=50, label=\"Bootstrap\", alpha=0.3)\n",
+ "plt.hist(dist, bins=50, label=\"Mack\", alpha=0.3)\n",
+ "plt.legend(loc=\"upper right\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "### Expected loss methods with Bootstrap\n",
+ "### Bootstrapping with the Bornhuetter-Ferguson Method\n",
"\n",
- "So far, we've only applied the multiplicative methods (i.e. basic chainladder) in a stochastic context. It is possible to use an expected loss method like the `BornhuetterFerguson`. \n",
+ "So far, we've only applied the multiplicative methods (i.e. basic chainladder) in a stochastic context. It is possible to use an expected loss method like the `BornhuetterFerguson` method does. \n",
"\n",
"To do this, we will need an exposure vector."
]
},
{
"cell_type": "code",
- "execution_count": 31,
+ "execution_count": 38,
"metadata": {},
"outputs": [
{
@@ -1539,150 +2799,365 @@
"1997 2207902.0"
]
},
- "execution_count": 31,
+ "execution_count": 38,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "tri['EarnedPremNet'].latest_diagonal"
+ "clrd[\"EarnedPremNet\"].latest_diagonal"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Passing an `apriori_sigma` to the `BornhuetterFerguson` estimator tells it to consider the apriori selection itself as a random variable. Fitting a stochastic `BornhuetterFerguson` looks very much like the determinsitic version."
+ "Passing an `apriori_sigma` to the `BornhuetterFerguson` estimator tells it to consider the `apriori` selection itself as a random variable. Fitting a stochastic `BornhuetterFerguson` looks very much like the determinsitic version. Let's assume that the `apriori` is 80% (of `clrd[\"EarnedPremNet\"]`) and its standard deviation is 10%."
]
},
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
- "text/html": [
- "
"
- ],
"text/plain": [
- " Triangle Summary\n",
- "Valuation: 1997-12\n",
- "Grain: OYDY\n",
- "Shape: (775, 6, 10, 1)\n",
- "Index: [GRNAME, LOB]\n",
- "Columns: [IncurLoss, CumPaidLoss, BulkLoss, EarnedPremD..."
+ "BornhuetterFerguson(apriori=0.8, apriori_sigma=0.1)"
]
},
- "execution_count": 2,
+ "execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "import chainladder as cl\n",
- "import numpy as np\n",
- "clrd = cl.load_sample('clrd')\n",
- "np.prod(clrd, axis=3)"
+ "bf = cl.BornhuetterFerguson(apriori=0.80, apriori_sigma=0.10)\n",
+ "bf.fit(samples, sample_weight=clrd[\"EarnedPremNet\"].latest_diagonal)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Let's restate or sampled triangles so that the upper left portion of the triangle with known values. We will need to start with the `full_triangle_`, then take out the upper left (the simulated values) with `X_`, then add back the actual values from the raw triangle."
]
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": 40,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- ""
- ]
- },
- "execution_count": 10,
- "metadata": {},
- "output_type": "execute_result"
- },
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- "
"
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
+ "outputs": [],
"source": [
- "import numpy as np\n",
- "\n",
- "np.tan(cl.load_sample('raa')).T.plot()"
+ "restated_triangle = bf.full_triangle_ - bf.X_ + clrd[\"CumPaidLoss\"]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "We can use our knowledge of `Triangle` manipulation to grab most things we would want out of our model."
+ "We can also look at how a certain origin period developed with the sampled triangles. Let's take a look at origin year 1995."
]
},
{
"cell_type": "code",
- "execution_count": 33,
+ "execution_count": 41,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
development
\n",
+ "
12
\n",
+ "
24
\n",
+ "
36
\n",
+ "
48
\n",
+ "
60
\n",
+ "
72
\n",
+ "
84
\n",
+ "
96
\n",
+ "
108
\n",
+ "
120
\n",
+ "
132
\n",
+ "
9999
\n",
+ "
\n",
+ "
\n",
+ "
LOB
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "
0
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.184930e+06
\n",
+ "
1.315205e+06
\n",
+ "
1.400447e+06
\n",
+ "
1.447582e+06
\n",
+ "
1.485251e+06
\n",
+ "
1.526492e+06
\n",
+ "
1.552707e+06
\n",
+ "
1.552707e+06
\n",
+ "
1.552707e+06
\n",
+ "
\n",
+ "
\n",
+ "
1
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.082201e+06
\n",
+ "
1.191106e+06
\n",
+ "
1.248812e+06
\n",
+ "
1.293653e+06
\n",
+ "
1.349283e+06
\n",
+ "
1.383138e+06
\n",
+ "
1.400879e+06
\n",
+ "
1.400879e+06
\n",
+ "
1.400879e+06
\n",
+ "
\n",
+ "
\n",
+ "
2
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.211063e+06
\n",
+ "
1.328168e+06
\n",
+ "
1.406148e+06
\n",
+ "
1.465325e+06
\n",
+ "
1.505972e+06
\n",
+ "
1.540961e+06
\n",
+ "
1.565586e+06
\n",
+ "
1.565586e+06
\n",
+ "
1.565586e+06
\n",
+ "
\n",
+ "
\n",
+ "
3
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.184973e+06
\n",
+ "
1.330960e+06
\n",
+ "
1.403923e+06
\n",
+ "
1.455171e+06
\n",
+ "
1.492134e+06
\n",
+ "
1.512202e+06
\n",
+ "
1.532659e+06
\n",
+ "
1.532659e+06
\n",
+ "
1.532659e+06
\n",
+ "
\n",
+ "
\n",
+ "
4
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.186503e+06
\n",
+ "
1.335649e+06
\n",
+ "
1.418617e+06
\n",
+ "
1.473770e+06
\n",
+ "
1.510360e+06
\n",
+ "
1.550455e+06
\n",
+ "
1.557972e+06
\n",
+ "
1.557972e+06
\n",
+ "
1.557972e+06
\n",
+ "
\n",
+ "
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
...
\n",
+ "
\n",
+ "
\n",
+ "
9995
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.212646e+06
\n",
+ "
1.366604e+06
\n",
+ "
1.445909e+06
\n",
+ "
1.506575e+06
\n",
+ "
1.557685e+06
\n",
+ "
1.583318e+06
\n",
+ "
1.611444e+06
\n",
+ "
1.611444e+06
\n",
+ "
1.611444e+06
\n",
+ "
\n",
+ "
\n",
+ "
9996
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.195146e+06
\n",
+ "
1.320163e+06
\n",
+ "
1.401087e+06
\n",
+ "
1.465300e+06
\n",
+ "
1.514647e+06
\n",
+ "
1.544027e+06
\n",
+ "
1.554032e+06
\n",
+ "
1.554032e+06
\n",
+ "
1.554032e+06
\n",
+ "
\n",
+ "
\n",
+ "
9997
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.129131e+06
\n",
+ "
1.280615e+06
\n",
+ "
1.361857e+06
\n",
+ "
1.437630e+06
\n",
+ "
1.492000e+06
\n",
+ "
1.543808e+06
\n",
+ "
1.570633e+06
\n",
+ "
1.570633e+06
\n",
+ "
1.570633e+06
\n",
+ "
\n",
+ "
\n",
+ "
9998
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.194892e+06
\n",
+ "
1.324839e+06
\n",
+ "
1.404544e+06
\n",
+ "
1.458666e+06
\n",
+ "
1.504585e+06
\n",
+ "
1.536639e+06
\n",
+ "
1.553463e+06
\n",
+ "
1.553463e+06
\n",
+ "
1.553463e+06
\n",
+ "
\n",
+ "
\n",
+ "
9999
\n",
+ "
343841.0
\n",
+ "
768575.0
\n",
+ "
962081.0
\n",
+ "
1.250963e+06
\n",
+ "
1.425409e+06
\n",
+ "
1.536006e+06
\n",
+ "
1.598882e+06
\n",
+ "
1.665861e+06
\n",
+ "
1.711738e+06
\n",
+ "
1.722854e+06
\n",
+ "
1.722854e+06
\n",
+ "
1.722854e+06
\n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
10000 rows × 12 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ "development 12 24 36 48 60 \\\n",
+ "LOB \n",
+ "0 343841.0 768575.0 962081.0 1.184930e+06 1.315205e+06 \n",
+ "1 343841.0 768575.0 962081.0 1.082201e+06 1.191106e+06 \n",
+ "2 343841.0 768575.0 962081.0 1.211063e+06 1.328168e+06 \n",
+ "3 343841.0 768575.0 962081.0 1.184973e+06 1.330960e+06 \n",
+ "4 343841.0 768575.0 962081.0 1.186503e+06 1.335649e+06 \n",
+ "... ... ... ... ... ... \n",
+ "9995 343841.0 768575.0 962081.0 1.212646e+06 1.366604e+06 \n",
+ "9996 343841.0 768575.0 962081.0 1.195146e+06 1.320163e+06 \n",
+ "9997 343841.0 768575.0 962081.0 1.129131e+06 1.280615e+06 \n",
+ "9998 343841.0 768575.0 962081.0 1.194892e+06 1.324839e+06 \n",
+ "9999 343841.0 768575.0 962081.0 1.250963e+06 1.425409e+06 \n",
+ "\n",
+ "development 72 84 96 108 \\\n",
+ "LOB \n",
+ "0 1.400447e+06 1.447582e+06 1.485251e+06 1.526492e+06 \n",
+ "1 1.248812e+06 1.293653e+06 1.349283e+06 1.383138e+06 \n",
+ "2 1.406148e+06 1.465325e+06 1.505972e+06 1.540961e+06 \n",
+ "3 1.403923e+06 1.455171e+06 1.492134e+06 1.512202e+06 \n",
+ "4 1.418617e+06 1.473770e+06 1.510360e+06 1.550455e+06 \n",
+ "... ... ... ... ... \n",
+ "9995 1.445909e+06 1.506575e+06 1.557685e+06 1.583318e+06 \n",
+ "9996 1.401087e+06 1.465300e+06 1.514647e+06 1.544027e+06 \n",
+ "9997 1.361857e+06 1.437630e+06 1.492000e+06 1.543808e+06 \n",
+ "9998 1.404544e+06 1.458666e+06 1.504585e+06 1.536639e+06 \n",
+ "9999 1.536006e+06 1.598882e+06 1.665861e+06 1.711738e+06 \n",
+ "\n",
+ "development 120 132 9999 \n",
+ "LOB \n",
+ "0 1.552707e+06 1.552707e+06 1.552707e+06 \n",
+ "1 1.400879e+06 1.400879e+06 1.400879e+06 \n",
+ "2 1.565586e+06 1.565586e+06 1.565586e+06 \n",
+ "3 1.532659e+06 1.532659e+06 1.532659e+06 \n",
+ "4 1.557972e+06 1.557972e+06 1.557972e+06 \n",
+ "... ... ... ... \n",
+ "9995 1.611444e+06 1.611444e+06 1.611444e+06 \n",
+ "9996 1.554032e+06 1.554032e+06 1.554032e+06 \n",
+ "9997 1.570633e+06 1.570633e+06 1.570633e+06 \n",
+ "9998 1.553463e+06 1.553463e+06 1.553463e+06 \n",
+ "9999 1.722854e+06 1.722854e+06 1.722854e+06 \n",
+ "\n",
+ "[10000 rows x 12 columns]"
+ ]
+ },
+ "execution_count": 41,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# Grab completed triangle replacing simulated known data with actual known data\n",
- "full_triangle = bf.full_triangle_ - bf.X_ + tri['CumPaidLoss']\n",
- "# Limiting to the current year for plotting\n",
- "current_year = full_triangle[full_triangle.origin==full_triangle.origin.max()].to_frame().T"
+ "restated_triangle_1995_df = restated_triangle[\n",
+ " restated_triangle.origin == \"1995\"\n",
+ "].to_frame()\n",
+ "restated_triangle_1995_df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "As expected, plotting the expected development of our full triangle over time from the Bootstrap `BornhuetterFerguson` model fans out to greater uncertainty the farther we get from our valuation date."
+ "For simplicity, let's only graph the first 1,000 simulations. As expected, plotting the expected development of our full triangle over time from the Bootstrap `BornhuetterFerguson` model fans out to greater uncertainty the farther we get from our valuation date. And notice that for 1997 and prior (age 36 and prior), there is no variability as we have restated the simulated triangles with actual data."
]
},
{
"cell_type": "code",
- "execution_count": 34,
+ "execution_count": 42,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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\n",
+ "image/png": "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\n",
"text/plain": [
"
"
]
@@ -1694,10 +3169,15 @@
}
],
"source": [
- "# Plot the data\n",
- "current_year.iloc[:, :200].reset_index(drop=True).plot(\n",
- " color='green', legend=False, alpha=0.1,\n",
- " title='Current Accident Year Expected Development Distribution', grid=True);"
+ "plt.plot(\n",
+ " restated_triangle_1995_df.T.reset_index(drop=True).iloc[:, 0:1000],\n",
+ " color=\"blue\",\n",
+ " alpha=0.01,\n",
+ ")\n",
+ "plt.xticks(\n",
+ " np.arange(0, 12, 1),\n",
+ " [\"12\", \"24\", \"36\", \"48\", \"60\", \"72\", \"84\", \"96\", \"108\", \"120\", \"132\", \"Ult\"],\n",
+ ")"
]
},
{
@@ -1705,24 +3185,17 @@
"metadata": {},
"source": [
"### Recap\n",
- "- The Mack method approaches stochastic reserving from a regression point of view \n",
- "- Bootstrap methods approach stochastic reserving from a simulation point of view \n",
- "- Where they assumptions of each model are not violated, they produce resonably consistent estimates of reserve variability \n",
- "- Mack does impose more assumptions (i.e. constraints) on the reserve estimate making the Bootstrap approach more suitable in a broader set of applciations \n",
- "- Both methods converge to their corresponding deterministic point estimates "
+ "- The Mack method approaches stochastic reserving from a regression point of view\n",
+ "- Bootstrap methods approach stochastic reserving from a simulation point of view\n",
+ "- When the assumptions of the model are not violated, they will both produce resonably consistent estimates of reserve variability\n",
+ "- Mack does impose more assumptions (i.e. constraints) on the reserve estimate making the Bootstrap approach more suitable in a broader set of applciations\n",
+ "- Both methods converge to their corresponding deterministic point estimates"
]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {},
- "outputs": [],
- "source": []
}
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
@@ -1736,7 +3209,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.7.10"
+ "version": "3.7.7"
}
},
"nbformat": 4,
diff --git a/docs/tutorials/tail-tutorial.ipynb b/docs/tutorials/tail-tutorial.ipynb
index 880928c9..104614b4 100644
--- a/docs/tutorials/tail-tutorial.ipynb
+++ b/docs/tutorials/tail-tutorial.ipynb
@@ -23,7 +23,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "pandas: 1.3.1\n",
+ "pandas: 1.3.2\n",
"numpy: 1.20.3\n",
"chainladder: 0.8.8\n"
]
@@ -1342,7 +1342,7 @@
],
"metadata": {
"kernelspec": {
- "display_name": "Python 3",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
diff --git a/docs/tutorials/triangle-tutorial.ipynb b/docs/tutorials/triangle-tutorial.ipynb
index a8bb7081..0bf32300 100644
--- a/docs/tutorials/triangle-tutorial.ipynb
+++ b/docs/tutorials/triangle-tutorial.ipynb
@@ -49,7 +49,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "pandas: 1.3.1\n",
+ "pandas: 1.3.2\n",
"numpy: 1.20.3\n",
"chainladder: 0.8.8\n"
]
@@ -932,82 +932,9 @@
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "
"
- ],
- "text/plain": [
- " 12 24 36 48 60 72 84 96 108 120\n",
- "1988 5.638773e+07 5.992852e+07 6.165346e+07 6.264463e+07 6.318271e+07 6.343808e+07 6.344090e+07 6.345211e+07 6.352298e+07 6.351818e+07\n",
- "1989 6.284045e+07 6.670557e+07 6.866693e+07 6.970228e+07 7.018801e+07 7.035568e+07 7.038986e+07 7.045316e+07 7.048327e+07 NaN\n",
- "1990 7.006497e+07 7.408439e+07 7.587928e+07 7.681299e+07 7.717957e+07 7.724032e+07 7.728394e+07 7.734559e+07 NaN NaN\n",
- "1991 7.461161e+07 7.851312e+07 8.023591e+07 8.096706e+07 8.117888e+07 8.118548e+07 8.127864e+07 NaN NaN NaN\n",
- "1992 8.121379e+07 8.508937e+07 8.644388e+07 8.678311e+07 8.690861e+07 8.708664e+07 NaN NaN NaN NaN\n",
- "1993 8.789623e+07 9.168546e+07 9.301849e+07 9.316781e+07 9.347308e+07 NaN NaN NaN NaN NaN\n",
- "1994 9.459370e+07 9.813072e+07 9.907178e+07 9.980912e+07 NaN NaN NaN NaN NaN NaN\n",
- "1995 9.772281e+07 1.011923e+08 1.020567e+08 NaN NaN NaN NaN NaN NaN NaN\n",
- "1996 9.849793e+07 1.009177e+08 NaN NaN NaN NaN NaN NaN NaN NaN\n",
- "1997 9.683222e+07 NaN NaN NaN NaN NaN NaN NaN NaN NaN"
- ]
- },
- "execution_count": 26,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
+ "outputs": [],
"source": [
"clrd.sum(axis=0).sum(axis=1)"
]
@@ -2740,206 +1279,52 @@
"### Accessor Methods\n",
"`Pandas` has special \"accessor\" methods for `str` and `dt`. These allow for the manipulation of data within each cell of data:\n",
"\n",
- "```python\n",
- "# splits lastname from first name by a comma-delimiter\n",
- "df['Last_First'].str.split(',')\n",
- "\n",
- "# pulls the year out of each date in a dataframe column\n",
- "df['Accident Date'].dt.year \n",
- "```\n",
- "\n",
- "`chainladder` also has special \"accessor\" methods to help us manipulate the `origin`, `development` and `valuation` vectors of a triangle."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "We may want to extract only the latest accident period for every triangle."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 27,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "
"
- ],
- "text/plain": [
- " Triangle Summary\n",
- "Valuation: 1997-12\n",
- "Grain: OYDY\n",
- "Shape: (775, 8, 1, 10)\n",
- "Index: [GRNAME, LOB]\n",
- "Columns: [IncurLoss, CumPaidLoss, BulkLoss, EarnedPremD..."
- ]
- },
- "execution_count": 27,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "clrd[clrd.origin == clrd.origin.max()]"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Note that this triangle has only 1 row; however, all of the columns would exist, but only the youngest age would have values."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "We may want to extract particular diagonals from our triangles using its `valuation` vector."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 28,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "
\n",
- " \n",
- "
\n",
- "
\n",
- "
12
\n",
- "
24
\n",
- "
36
\n",
- "
48
\n",
- "
60
\n",
- "
72
\n",
- "
84
\n",
- "
\n",
- " \n",
- " \n",
- "
\n",
- "
1988
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
10,994,014
\n",
- "
\n",
- "
\n",
- "
1989
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
12,118,790
\n",
- "
\n",
- "
\n",
- "
\n",
- "
1990
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
12,878,545
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
1991
\n",
- "
\n",
- "
\n",
- "
\n",
- "
12,409,592
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
1992
\n",
- "
\n",
- "
\n",
- "
12,027,983
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
1993
\n",
- "
\n",
- "
10,599,423
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
1994
\n",
- "
6,246,447
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- "
"
- ],
- "text/plain": [
- " 12 24 36 48 60 72 84\n",
- "1988 NaN NaN NaN NaN NaN NaN 10994014.0\n",
- "1989 NaN NaN NaN NaN NaN 12118790.0 NaN\n",
- "1990 NaN NaN NaN NaN 12878545.0 NaN NaN\n",
- "1991 NaN NaN NaN 12409592.0 NaN NaN NaN\n",
- "1992 NaN NaN 12027983.0 NaN NaN NaN NaN\n",
- "1993 NaN 10599423.0 NaN NaN NaN NaN NaN\n",
- "1994 6246447.0 NaN NaN NaN NaN NaN NaN"
- ]
- },
- "execution_count": 28,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
+ "```python\n",
+ "# splits lastname from first name by a comma-delimiter\n",
+ "df['Last_First'].str.split(',')\n",
+ "\n",
+ "# pulls the year out of each date in a dataframe column\n",
+ "df['Accident Date'].dt.year \n",
+ "```\n",
+ "\n",
+ "`chainladder` also has special \"accessor\" methods to help us manipulate the `origin`, `development` and `valuation` vectors of a triangle."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "We may want to extract only the latest accident period for every triangle."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "clrd[clrd.origin == clrd.origin.max()]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Note that this triangle has only 1 row; however, all of the columns would exist, but only the youngest age would have values."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "We may want to extract particular diagonals from our triangles using its `valuation` vector."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
"source": [
"clrd[(clrd.valuation >= \"1994\") & (clrd.valuation < \"1995\")][\"CumPaidLoss\"].sum()"
]
@@ -2953,82 +1338,9 @@
},
{
"cell_type": "code",
- "execution_count": 29,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "