I'm trying to interpret the forecast values from an ARIMAX function, and I'm confused about what's happening in the actual forecasted values as I change the values for the predictor during the forecast period.
The ARIMAX model shows one of the predictors (Spend) has the following (significant) transfer function coefficients
Numerator (lag 0)= .029
Denominator (lag 2) = .038
I held the forecast values of the predictor "Spend" constant and the compared different level – i.e. 6 periods at 100,000, then 6 periods at 200,000
One would expect that doubling the value of "Spend" would dramatically increase the predicted forecast – holding everything else constant. But it does not.
The effect was two periods of positive forecast values, followed by 4 periods of negative forecast values. I suspect this may have something to do with the denominator being larger than the numerator in the transfer function. (that's a guess). However, I also cannot explain why the forecast is positive for two periods and then goes negative, and stays negative. Why wouldn't it oscillate given the 2-period lag in the denominator?
(I've been trying to make good use of this post: Transfer function in forecasting models – interpretation)
Your help is appreciated, as always!
Best Answer
Identifying transfer functions in Arima is more of an art than science. Automatic procedures aren't always right. I have used SPSS in the past, but currently don't have access to it. So I'll try to do in SAS and R you could easily do it in SPSS.
There are two forms of identifying Transfer functions (see here for more details):
Procedure #1 is awfully complex, no one uses it in practice when you have more than 2 independent variables.
Going by #2, I lagged your spend and intent variable 4 and 5 times respectively and ran an arima model in
R
using auto.arima (in SPSS you could do the same by just running an AR(1) instead of auto.arima).Spend on Profit:
Intent on Profit:
You do see a up and down pattern in Spend and you could potentially see a delay effect on intent. Without knowing exactly what these variable means I have no way to provide additional insights on why these variable behave the way they do. Does this makes sense?
IF you can provide additional context I can model this using SAS and provide you transfer function modeling and interpretation. Here is the R code for replication.