Insurance carriers
Thirty years of rating endorsements, in tables your actuaries can check.
P&C rating engines and life valuation programs carry decades of state filings in nested EVALUATE blocks, VSAM factor tables and 88-level policy flags. PYD ENTERPRISES separates the rate algorithm from the state exceptions and exports both as DMN 1.5.
state endorsement tables · commercial auto
41 states- NY14 rules
- TX22 rules
- FL19 rules
- CA17 rules
- PA9 rules
- IL8 rules
- OH7 rules
- GA11 rules
- NC6 rules
- MI12 rules
- NJ13 rules
- VA5 rules
- WA6 rules
- AZ4 rules
- MA10 rules
- TN3 rules
- IN4 rules
- MO5 rules
- MD7 rules
- WI3 rules
- CO6 rules
- MN4 rules
- SC5 rules
- AL4 rules
showing 24 of 41 · hit policy FIRST · source RTENG010.cbl 3500-3599
Rating and valuation logic
From EVALUATE PL-STATE to one table per state.
The base premium algorithm, the state endorsement layer and a life cash value routine, each with the specification PYD ENTERPRISES extracts and what it flags.
1 3000-RATE-POLICY.2 COMPUTE WS-PREM ROUNDED =3 RT-BASE-RATE * RT-TERR-FACTOR * RT-CLASS-FACTOR4 COMPUTE WS-PREM ROUNDED =5 WS-PREM * RT-ILF * PL-EXP-MOD6 PERFORM 3500-STATE-ENDORSE THRU 3599-EXIT7 IF WS-PREM < RT-MIN-PREM8 MOVE RT-MIN-PREM TO WS-PREM9 END-IF.
| step | operation | rounding |
|---|---|---|
| 1 | baseRate * territoryFactor * classFactor | ROUNDED to 0.01 |
| 2 | step1 * increasedLimitFactor * experienceMod | ROUNDED to 0.01 |
| 3 | apply state endorsement table (by state) | per rule |
| 4 | max(step3, minimumPremium) | none |
source: RTENG010.cbl:3001-3014
- resolvedRounding happens twice, after steps 1 and 2: the target must not compute in one expression
- resolvedTerritory and class factors read from VSAM RATE.TABLES via alternate index on state + territory
- reviewMinimum premium applied after state endorsements, not before
Why rating engines are hard
The algorithm is short. The exceptions are not.
A commercial auto premium is a handful of multiplications: base rate, territory, class, increased limits, experience modification. What takes months to document is everything layered on top. Every state filing since the engine was written added a branch keyed on a two-character state code, sometimes inside the base routine, sometimes in a separate paragraph reached through PERFORM THRU, sometimes as a flag byte another program sets.
PYD ENTERPRISES uses program slicing on the final premium field to isolate the base algorithm and the order of rounding, then extracts each state's adjustments into its own decision table. Rules driven by 88-level condition names become named boolean inputs, and factor tables in VSAM become data tables with their key structure.
Actuarial sign-off
Review in four weeks, not six months.
- 01Slice the premiumTrace every write to the final premium field across rating, issuance and re-rate batch jobs.
- 02Split base from stateBase algorithm as an ordered calculation spec; each state and line of business as a DMN table with FIRST hit policy.
- 03Compare with filed manualsActuaries check tables against rate filings. Differences go on the review list with the code location.
- 04Generate equivalence fixturesBoundary cases for each state, class and limit, with expected premiums from the current engine.
“It turned a 4,000-line procedural rating routine into decision tables our actuaries could verify immediately.”
FAQ
Questions from carriers.
Can actuaries review DMN tables without learning DMN?
Yes. The sign-off view shows each decision table as rows and columns with plain-language input names, and the COBOL lines beside each row. Actuaries confirm factors and order of operations; they do not need to read FEEL or XML.
How are factor tables stored in VSAM or IMS handled?
Factor values read at run time are exported as data tables with the dataset, key structure and record layout they came from. Supply a current extract and the tables are populated; otherwise the decision table references them by name.
Can the output be loaded into our new rating platform?
DMN 1.5 XML imports into DMN-compliant engines such as Camunda and other decision engines. Commercial rating platforms usually have their own configuration format; teams use the DMN tables and calculation specs as the requirement and the equivalence fixtures as acceptance tests.
What about life and annuity valuation code?
The same engine extracts valuation formulas, surrender charge schedules and policy loan logic as calculation specs, including rounding at each step. Actuarial models outside the code (spreadsheets, actuarial software) are out of scope.
Do we have to send policy data to PYD ENTERPRISES?
No. PYD ENTERPRISES reads source code, copybooks and DDL inside your environment. Equivalence fixtures are synthesized from branch boundaries, not copied from policyholder records.
Go deeper
Put your rating engine in front of your actuaries.
Scan one rating system up to 500,000 LOC with a Discovery Scan, or try PYD ENTERPRISES on 100,000 lines for 14 days.