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.
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:
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:
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\).
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:
Here \(\beta+\delta z\) is the price slope in log odds, not the elasticity of purchase probability. Differentiating the logistic probability gives:
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.
- 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\).)
- 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\).)
- 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%.)
- 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.)
- 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.)