Tutorials › CAS Exam 8 - Advanced Ratemaking › Interactions for Conditional Price Elasticity

CAS Exam 8 · Elasticity and Demand Models · Tutorial 827 of 989

Interactions for Conditional Price Elasticity

Use interaction terms to estimate and compare conditional price responses for rating or customer subgroups.

Advanced 10 min read

What You'll Learn

  • Specify price interactions for categorical and continuous characteristics
  • Derive conditional elasticities from log-mean and logistic demand models
  • Interpret main price coefficients at the characteristic’s reference value
  • Calculate subgroup demand predictions and elasticity contrasts
  • Test interaction effects using standard errors and covariance estimates
  • Recognize limits on interpretation and avoid common coding errors

Why Interactions Matter

A single price coefficient assumes that the modeled price response is the same for every customer, apart from whatever variation is already represented by the model. That assumption can be too restrictive. A price increase might produce a different change in expected quote demand for customers in different rating tiers, or for customers with different measured characteristics. An interaction between price and the characteristic allows the price response to vary systematically with that characteristic.

An interaction does not, by itself, establish that a subgroup difference is real or causal. It specifies how the model permits demand response to vary; the data and the model’s assumptions determine what can be concluded. The focus here is on defining conditional response, calculating conditional elasticities, and testing subgroup differences. The discussion is aligned with the CAS Exam 8 (Advanced Ratemaking) syllabus.

Definition: A price interaction is a model term formed by multiplying a price variable by a customer or rating characteristic. Its coefficient describes how the price slope changes as that characteristic changes, subject to the model’s link function and variable coding. The main price coefficient applies at the reference value where the interacting characteristic equals zero.

Interactions in Log-Mean Demand Models

Let \(Q\) be a nonnegative demand count, such as the number of quote requests in a defined exposure period, and let \(p>0\) be the quoted price. A useful specification uses the logarithm of price relative to a reference price \(p_0\). For a binary characteristic \(z\), coded \(0\) or \(1\), consider a Poisson log-mean model:

$$ Q\mid p,z\sim\operatorname{Poisson}(\mu(p,z)),\qquad \ln \mu(p,z)=\alpha+\gamma z+\beta x+\delta zx,\qquad x=\ln(p/p_0). $$

The conditional mean is \(\mu(p,z)=E[Q\mid p,z]\). The Poisson assumption specifies the conditional distribution and variance, \(\operatorname{Var}(Q\mid p,z)=\mu(p,z)\); it is not needed to derive the mean’s elasticity, but it is part of this model’s likelihood specification. The model assumes the log conditional mean has the stated form, and predictions should be used within a price and customer range for which the form is credible.

At \(z=0\), the price slope on the log-mean scale is \(\beta\). At \(z=1\), it is \(\beta+\delta\). Because \(x=\ln(p/p_0)\), the derivative of log mean with respect to log price is also the price elasticity of the conditional mean:

$$ \varepsilon(p,z) =\frac{\partial \ln \mu(p,z)}{\partial \ln p} =\beta+\delta z. $$

Thus, \(\delta\) is the difference in log-mean elasticities between the \(z=1\) and \(z=0\) groups. It is not a percentage-point change in demand. The coefficient \(\gamma\) shifts the log mean between groups at the reference price \(p_0\), where \(x=0\).

Why the elasticity formula holds: Since \(x=\ln(p/p_0)\), its derivative with respect to \(\ln p\) is \(1\). Differentiating the model gives \(\partial\ln\mu/\partial\ln p=\beta+\delta z\). By definition, elasticity of a positive mean is its proportional change per proportional change in price, \((\partial\mu/\partial p)(p/\mu)\). The chain rule gives \((\partial\mu/\partial p)(p/\mu)=\partial\ln\mu/\partial\ln p\), proving the result.

Worked Example: Demand and Elasticity by Rating Tier

A hypothetical insurer models monthly quote-request counts by a Poisson log-mean model. The reference price is \(p_0=\$900\). Let \(z=0\) denote a standard tier and \(z=1\) an enhanced tier. The fitted model is \(\ln\mu=2.40+0.20z-1.10x-0.25zx\), where \(x=\ln(p/900)\). There is no interest discounting or mortality component. Find the expected count and price elasticity for each tier at \(p=\$990\), and compare the expected counts with those at the reference price.

Method and assumptions. Use the Poisson conditional mean \(\mu=\exp(\alpha+\gamma z+\beta x+\delta zx)\). The demand outcome is a count; the model’s conditional mean and variance are both \(\mu\). The displayed parameter estimates are \(\alpha=2.40\), \(\gamma=0.20\), \(\beta=-1.10\), and \(\delta=-0.25\).

First calculate the price term: \(p/p_0=990/900=1.10\), so \(x=\ln(1.10)=0.0953102\). For the standard tier, \(z=0\), and the predictor is \(2.40-1.10(0.0953102)=2.2951588\). Therefore \(\mu(990,0)=e^{2.2951588}\approx9.9260\) quote requests.

For the enhanced tier, \(z=1\). Its price slope is \(\beta+\delta=-1.10-0.25=-1.35\). The predictor is \(2.60-1.35(0.0953102)=2.4713313\), so \(\mu(990,1)=e^{2.4713313}\approx11.8382\) quote requests.

At the reference price, \(x=0\). The standard-tier mean is \(e^{2.40}\approx11.0232\), and the enhanced-tier mean is \(e^{2.60}\approx13.4637\). The elasticities are \(-1.10\) for the standard tier and \(-1.35\) for the enhanced tier. For a finite price change from 900 to 990, the mean ratios are \(\exp[-1.10\ln(1.10)]\approx0.9005\) and \(\exp[-1.35\ln(1.10)]\approx0.8793\), respectively.

Thus the predicted means fall by about \(9.95\%\) and \(12.07\%\), respectively. The finite percentage changes are not exactly the elasticities multiplied by the 10% price change; elasticities are local rates of proportional change. The interaction makes the enhanced-tier response more price-sensitive by \(0.25\) elasticity units. A common mistake is to report \(-1.10\) as the elasticity for both tiers, omitting the interaction. The correct calculation adds \(\delta z\) for each group.

Interactions in Logistic Purchase Models

For a binary purchase or renewal outcome \(Y\), a logistic model can represent how a characteristic changes the price slope on the log-odds scale. Let \(Y\mid p,z\) be Bernoulli with purchase probability \(P(p,z)\), and specify:

$$ \operatorname{logit}P(p,z) =\ln\left(\frac{P(p,z)}{1-P(p,z)}\right) =\alpha+\gamma z+\beta x+\delta zx. $$

Here \(\beta+\delta z\) is the price slope in log odds, not the elasticity of purchase probability. Differentiating the logistic probability gives:

$$ \varepsilon_P(p,z) =\frac{\partial\ln P(p,z)}{\partial\ln p} =(1-P(p,z))(\beta+\delta z). $$

Unlike the log-mean model, the probability elasticity depends on the predicted probability as well as the price slope. Therefore, even with a constant logistic price slope for a subgroup, its probability elasticity changes as price changes the purchase probability. The formula is for the probability itself; it should not be confused with the elasticity of odds, which is \(\beta+\delta z\).

Worked Example: Conditional Elasticity in a Logistic Model

A hypothetical insurer fits a Bernoulli logistic model for whether a quoted prospect purchases. The outcome is \(Y=1\) for purchase and \(Y=0\) otherwise. Let \(z\) be a customer score measured in ten-point increments, and let \(x=\ln(p/p_0)\). The fitted model is \(\operatorname{logit}P=-0.40+0.30z-0.80x+0.10zx\). There is no interest or mortality assumption. Find the purchase probability and its price elasticity at \(p=p_0\) for scores \(z=1\) and \(z=2\).

Method and assumptions. Use the Bernoulli likelihood with logistic link. At \(p=p_0\), \(x=0\), so the logit is \(-0.40+0.30z\). The log-odds price slope is \(-0.80+0.10z\), and probability elasticity is \((1-P)(-0.80+0.10z)\).

For \(z=1\), the logit is \(-0.40+0.30=-0.10\). Thus \(P=1/(1+e^{0.10})\approx0.4750\). The log-odds slope is \(-0.80+0.10=-0.70\), giving elasticity \((1-0.4750)(-0.70)\approx-0.3675\).

For \(z=2\), the logit is \(-0.40+0.60=0.20\). Thus \(P=1/(1+e^{-0.20})\approx0.5498\). The log-odds slope is \(-0.80+0.20=-0.60\), giving elasticity \((1-0.5498)(-0.60)\approx-0.2701\).

At the reference price, the higher-score group has a less negative probability elasticity, even though both price slopes on the log-odds scale are negative. The calculation avoids a common error: treating the logit coefficient as the probability elasticity. The logit slope must be multiplied by \(1-P\) to obtain the probability elasticity.

Testing Whether Price Responses Differ

An estimated interaction coefficient is a sample estimate, not proof of a population difference. For a binary characteristic in either model above, the null hypothesis of equal price slopes on the model’s linear-predictor scale is \(H_0:\delta=0\). A Wald test divides the estimated interaction coefficient by its estimated standard error and compares the result with a reference distribution, often the standard normal for a large sample. A confidence interval for \(\delta\) gives a related assessment.

For more than two groups, include a set of indicators and their interactions with price. The null of equal slopes is a joint null that all price-interaction coefficients are zero. It is tested with a joint Wald or likelihood-ratio test, rather than by declaring a difference because one selected coefficient is individually significant. For continuous characteristics, the interaction tests the change in slope per unit of the characteristic; the unit and reference value must be stated.

Worked Example: Testing an Interaction and Quantifying a Group Slope

A hypothetical quote-demand analysis uses the log-mean model \(\ln\mu=\alpha+\gamma z+\beta x+\delta zx\), where \(z\) indicates a specialty rating tier and \(x=\ln(p/p_0)\). The fitted coefficients are \(\hat\beta=-0.90\) and \(\hat\delta=-0.30\). Their estimated variances are \(0.0400\) and \(0.0225\), and their estimated covariance is \(-0.0060\). Assume large-sample normal inference for the coefficient estimates. There is no interest or mortality component. At a two-sided 5% level, test whether the tier price slopes differ and calculate a 95% interval for the specialty-tier slope.

Method and assumptions. The reference-tier slope is \(\beta\); the specialty-tier slope is \(\beta+\delta\). The slope difference is \(\delta\), so test \(H_0:\delta=0\). Use a standard-normal Wald test and a normal-approximation confidence interval.

The interaction standard error is \(\sqrt{0.0225}=0.15\). The Wald statistic is \(-0.30/0.15=-2.00\). Its two-sided standard-normal \(p\)-value is approximately \(0.0455\), so at the 5% level there is evidence that the two log-mean price slopes differ.

The specialty-tier slope estimate is \(-0.90-0.30=-1.20\). Its variance must include the covariance: \(\operatorname{Var}(\hat\beta+\hat\delta)=0.0400+0.0225+2(-0.0060)=0.0505\). The standard error is \(\sqrt{0.0505}\approx0.2247\). The 95% interval is \(-1.20\pm1.96(0.2247)\), or approximately \([-1.640,-0.760]\).

The interval describes uncertainty in the specialty-tier slope, while the interaction test addresses the difference between tiers. A common mistake is to calculate the variance of the sum as \(0.0400+0.0225\) and omit the covariance term. Because the coefficient estimates are correlated, that calculation would give an incorrect standard error.

Reference Values, Scaling, and Practical Checks

The main price coefficient is interpreted at \(z=0\). If zero is not a meaningful or observed value for a continuous characteristic, centering can make the interpretation more useful. Define \(z_c=z-c\), where \(c\) is a chosen reference value. Then the price coefficient becomes the price slope at \(z=c\), while the interaction coefficient still describes how the slope changes per unit of \(z\). The intercept and characteristic main effect also change under this reparameterization.

Rescaling is different from centering. Replacing \(z\) by \(z'=100z\) while keeping zero fixed does not change the value of \(z\) at which the main price coefficient applies. It changes the numerical units of the interaction coefficient: the coefficient per unit of \(z'\) is one hundredth the coefficient per unit of \(z\). Always report the characteristic’s units and the reference value for the main price coefficient.

  • Keep the model scale clear. A log-mean slope is a mean elasticity in the log-log form; a logistic slope is a log-odds effect and needs the probability conversion for probability elasticity.
  • Keep price units consistent. Using \(\ln(p/p_0)\) makes the reference price explicit and keeps the log argument dimensionless.
  • Interpret the interaction with its coding. For a binary indicator, it is the difference from the zero-coded group. For a continuous variable, it is a slope change per stated unit.
  • Check support and plausibility. A mathematically computable subgroup prediction may still be unreliable if that subgroup has little data at the relevant prices.
  • Do not infer causality from an interaction alone. The model describes conditional associations unless the price variation and study design support a causal interpretation.

These interaction models are useful when a pricing analysis needs a transparent, interpretable way to represent systematic differences in demand response. They do not capture every possible form of customer heterogeneity; their role is to estimate response variation explained by specified characteristics, with uncertainty reported for the comparisons that matter.

Check Your Understanding

Work each problem using the stated model scale, reference value, and coefficient coding.

  1. A log-mean model has price terms \(-0.70x-0.15zx\), with \(z=0\) or \(1\). What are the two group elasticities, and what is their difference? (Answer: \(-0.70\) and \(-0.85\); the \(z=1\) minus \(z=0\) difference is \(-0.15\).)
  2. A logistic purchase model has \(\operatorname{logit}P=-0.20+0.15z-0.60x+0.05zx\). At \(x=0,z=4\), find the probability elasticity. (Answer: \(P=1/(1+e^{-0.40})\approx0.5987\), and elasticity \(=(1-0.5987)(-0.40)\approx-0.1605\).)
  3. An interaction estimate is \(0.12\) with standard error \(0.05\). Using a two-sided large-sample normal Wald test at 5%, is there evidence of a nonzero interaction? (Answer: \(z=0.12/0.05=2.40\), \(p\approx0.0164\); reject the zero-interaction null at 5%.)
  4. A log-mean model uses \(z\) measured in score points, with price coefficient \(-0.80\) and interaction coefficient \(0.04\). Recode the characteristic as \(z_c=z-10\). What is the price coefficient at the new reference value, and what happens to the interaction coefficient? (Answer: the price coefficient is \(-0.80+0.04(10)=-0.40\), the slope at \(z=10\); the interaction remains \(0.04\) per score point.)
  5. A model has a three-level rating factor, with one level as the reference and two price-by-level interaction coefficients. What hypothesis tests whether all three levels have the same price slope? (Answer: the joint null that both interaction coefficients equal zero, tested with a joint Wald or likelihood-ratio test.)
Clinical Biostats