Framework for actuarial cash flow models
Project description
Info
Cashflower is an open-source Python framework for actuarial cash flow models.
Prerequisities
Python version >=3.9
Usage
Installation
terminal
pip install cashflower
Create model
python console
from cashflower import create_model
create_model("wol")
Input
wol/input.py
policy = ModelPoint(data=pd.read_csv("C:/my_data/policy.csv"))
assumption = dict()
assumption["interest_rates"] = pd.read_csv("C:/my_data/interest_rates.csv")
assumption["mortality"] = pd.read_csv("C:/my_data/mortality.csv", index_col="age")
Model
wol/model.py
age = ModelVariable(modelpoint=policy)
death_prob = ModelVariable(modelpoint=policy)
@assign(age)
def age_formula(t):
if t == 0:
return int(policy.get("AGE"))
elif t % 12 == 0:
return age(t-1) + 1
else:
return age(t-1)
@assign(death_prob)
def death_prob_formula(t):
if age(t) == age(t-1):
return death_prob(t-1)
elif age(t) <= 100:
sex = policy.get("SEX")
yearly_rate = assumption["mortality"].loc[age(t)][sex]
monthly_rate = (1 - (1 - yearly_rate)**(1/12))
return monthly_rate
else:
return 1
Calculate
Run run.py
Contribution
The cashflower package is open-source. Everyone can use it and contribute to its development.
GitHub repository:
https://github.com/acturtle/cashflower
Documentation:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cashflower-0.2.6.tar.gz
(11.5 kB
view hashes)
Built Distribution
cashflower-0.2.6-py3-none-any.whl
(12.9 kB
view hashes)
Close
Hashes for cashflower-0.2.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c591454ea456681ddc09a202d6b8e4447a361c5d71e4c15bd436748271f3145 |
|
MD5 | 9d46947d22f03dbb02bc1b7beec2679f |
|
BLAKE2b-256 | e69ffa8e4f0e1723e2a5bc7be6af6712c28ab760f57b1b4cf56642a92eee5ad4 |