Problem statement

A US insurance company advertises on national television in an attempt to increase the number of insurance quotations provided (and consequently the number of new policies).


I want to identify correct functional form of relation between Quotes & the below variables

  1. Lag1 of Quotes
  2. TV advertising expenditure
  3. Lag1 of TV advertising expenditure
  4. Lag2 of TV advertising expenditure
  5. Lag3 of TV advertising expenditure

and this functional form should to suitable for forecasting Quotes as well.

Since we are dealing with time series data I thought that dynamic regression/Arimax can be used to regression reponse series and input series as shown below to get the coefficients of the input series.

# Lagged predictors. Test 0, 1, 2 , 3 lags.
Advert <- cbind(c(NA,insurance[1:39,1]),
colnames(Advert) <- c("QuotesLag1",paste("AdLag",0:3,sep=""))

fit <- Arima(insurance[4:40,1], xreg=Advert[4:40,1:5], order=c(1,1,1))

Dynamic regression output

> summary(fit)
Series: insurance[4:40, 1] 

          ar1     ma1  QuotesLag1  AdLag0  AdLag1   AdLag2   AdLag3
      -0.0069  0.6003     -0.0563  1.2837  0.1808  -0.1444  -0.0784
s.e.   0.3393  0.2785      0.4082  0.0931  0.5685   0.1078   0.0615

sigma^2 estimated as 0.2142:  log likelihood=-22.41
AIC=60.83   AICc=66.16   BIC=73.5

Training set error measures:
                       ME      RMSE       MAE        MPE   MAPE      MASE        ACF1
Training set -0.006497616 0.4500943 0.3529388 0.03671748 2.7024 0.2247559 0.001845781

I understand that the ARIMA(1,1,1) denotes the arima structure of errors/residuals & not response series.

My problem is that I want to use the functional form of this relationship in an optimization model as a constraint, so can i ignore the ARIMA(1,1,1) in the functional form because I cant think of a way to inlcude ARIMA(1,1,1) of residual in the optimization model.


  1. When I write the functional form relating response series and input series can I omit the ARIMA(1,1,1) part of error? Or is the functional form wrong if I omit the ARIMA(1,1,1)? i.e. can i just say the below ignoring the arima(1,1,1)?

Quotes= -0.0563*QuotesLag1 + 1.2837*AdLag0 + 0.1808* AdLag1 + -0.1444*AdLag2 + -0.0784*AdLag3

  1. In the arimax output I couldn't find the intercept. How to calculate the intercept? Is arima(1,1,1) the intercept?
  2. From the arimax output how to write the correct functional form between input & response series without arima(1,1,1)? Can rewrite residuals arima(1,1,1) in terms of input series?
  3. Is there a better method of identifying the functional form?

I have taken the codes from the Professor Rob Hyndman's online book https://www.otexts.org/fpp/9/1


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.