diff --git a/insurancefirm.py b/insurancefirm.py index 5c022d0..b4ac7f8 100644 --- a/insurancefirm.py +++ b/insurancefirm.py @@ -199,9 +199,12 @@ def ask_reinsurance(self): nonreinsured = [contract for contract in self.underwritten_contracts if contract.reincontract == None] - if len(nonreinsured) > (1 - self.reinsurance_limit)*len(self.underwritten_contracts): + + nonreinsured.reverse() + + if len(nonreinsured) >= (1 - self.reinsurance_limit)*len(self.underwritten_contracts): counter = 0 - limitrein = 0.1 * len(nonreinsured) # TODO: Use parameter + limitrein = len(nonreinsured) - (1 - self.reinsurance_limit)*len(self.underwritten_contracts) for contract in nonreinsured: if counter < limitrein: risk = {"value": contract.value, "category": contract.category, "owner": self, diff --git a/insurancesimulation.py b/insurancesimulation.py index d9d16f6..0f6019f 100644 --- a/insurancesimulation.py +++ b/insurancesimulation.py @@ -28,7 +28,7 @@ def __init__(self, replic_ID=None, override_no_riskmodels=False, simulation_para "acceptance_threshold_friction": 0.9, \ "initial_agent_cash": 10000, \ "initial_reinagent_cash": 50000, \ - "interest_rate": 0.001, \ + "interest_rate": 0, \ "reinsurance_limit": 0.1, \ "upper_price_limit": 1.2, \ "lower_price_limit": 0.85, \