I have a dataset consisting of many product sales over time on a daily basis. I do know when promotions and discounts happen with four months in advance.

When there are no promotions sales are 0 or very very low. However, when there is a promotion or (several promotions for a single product) sales really increase, so it makes the series to explode for the promotion period.

I am trying to forecast sales for each product the following month.

The problem I am facing is that I have tried to model the data as a time series, however I believe there is not a clear time series structure, because:

1.- I know when promotions are going to occurr and then when sales are going to peak.

2.- Time series tries to forecast demand based on past values, however we know when and why this happened, so there is not a "hidden" pattern/structure. Time itself doesn't seem to influence.

I have read about intermittent time series, hurdle model.. but I am not sure if this is the right way to proceed. Maybe instead of using a time series model a causal model may perform better e.g. linear regression, Zero Inflated Negative Binomial, ZIP... Someone has suggested me to use a Quantile regression but not sure if this may work.

I have applied linear and poisson models and seem to have quite a good fitness.

Any suggestion on what is the best way to proceed with such a problem: time series or causal modelling?

  • 1
    $\begingroup$ why not a mixed effects model? This would allow you to account for both regular time-series patterns as well as promotions. $\endgroup$ Commented Jan 17, 2017 at 13:04

1 Answer 1


Time series data can be low (with some negative side-effects) but problems arise with consecutive values that are alike .e.g. 1,1,1,1,1,1,0,0,0,0,0,0,0,0,0 . Data like this can inject false auto-correlation. It is possible to combine both regression structure reflecting known causals and memory (ARIMA) structure reflecting unknown/unspecified stochastic causals while conditioning for unknown/unspecified deterministic structure such as level/step shifts and others.

This is known as a Transfer Function or a Dynamic Regression as there may be lead and lag effects around your promotions. When I know that something is going to be cheaper tomorrow, I normally defer my purchase. I suggest you review some of my posts and other posts on these topics. If you wish I might be able to demonstrate the art of the possible if you post your data in a column oriented excel file or a csv file.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.