Metadata-Version: 2.1
Name: cashflower
Version: 0.2.8
Summary: Framework for actuarial cash flow models
Home-page: https://github.com/acturtle/cashflower
Author: Zuzanna
Project-URL: Source, https://github.com/acturtle/cashflower
Project-URL: Tracker, https://github.com/acturtle/cashflower/issues
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE

# 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
```python
from cashflower import create_model

create_model("wol")
```

## Input

wol/input.py
```python
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
```python
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`

# Quick start

Watch how to create a cash flow model on a YouTube video: 

[![YouTube screenshot](https://img.youtube.com/vi/xuZaymWsUzw/0.jpg)](https://www.youtube.com/watch?v=xuZaymWsUzw)

# Contribution

The cashflower package is open-source. Everyone can use it and contribute to its development.

GitHub repository:

[https://github.com/acturtle/cashflower](https://github.com/acturtle/cashflower)

Documentation:

[https://acturtle.com/cashflower](https://acturtle.com/cashflower)
