copula copulaSimulate

Restoring Fitted Clayton Model for Claim Simulation

Scénario de test & Cas d'usage

Business Context

An insurance actuarial team needs to perform a 'what-if' analysis on claim severity frequencies. Instead of defining parameters manually, they must reuse a specific Clayton copula model that was fitted and approved in a previous regulatory audit. This ensures consistency with the approved model parameters.
Data Preparation

Creation of base claim data to fit the initial model that will be stored.

Copied!
1DATA claims_data;
2 DO i=1 to 1000;
3 Claim_A = rand('EXPONENTIAL');
4 Claim_B = Claim_A + rand('UNIFORM');
5 OUTPUT;
6 END;
7RUN;
8 
9PROC CASUTIL;
10 load DATA=claims_data casout='claims_data' replace;
11QUIT;

Étapes de réalisation

1
Fit a Clayton copula and save the model definition to an item store.
Copied!
1PROC CAS;
2 copula.copulaFit /
3 TABLE={name='claims_data'},
4 define={copulaType='CLAYTON', var={'Claim_A', 'Claim_B'}},
5 store={name='approved_model_store', replace=true};
6RUN;
7QUIT;
2
Simulate new data by restoring the previously fitted model from the item store.
Copied!
1PROC CAS;
2 copula.copulaSimulate /
3 restore={name='approved_model_store'},
4 ndraws=5000,
5 seed=67890,
6 outuniform={name='forecasted_claims', replace=true};
7RUN;
8QUIT;

Expected Result


First, an item store 'approved_model_store' is successfully created containing the fitted Clayton parameters. Second, the simulation produces 'forecasted_claims' (5,000 rows) strictly adhering to the dependency structure retrieved from the stored model.