Predicting a semi-deterministic process Say I have a process that gives me 3 outputs: $O^1$, $O^2$ and $O^3$.
The outputs are generated from a semi-deterministic process, i.e. there is a deterministic component in the outputs, along with a random component.
In particular, having $n$ measurements over time, the outputs $O_j \quad j=1,2,...,n$ are -at least in part- dependent on the previous outputs. So $O_j = f(O_{j-1}, O_{j-2}, O_{j-3}) + \epsilon$ (I'm not interested in going farther away than 2 or 3 measurements, $\epsilon$ is the random component).
So now I have a set of ~150 consecutive measurements, how can I predict what are the likely outputs in the future?
I can easily calculate the distribution of values following a certain output, for instance I could say that if $O^1_j$ is between 50 and 60 I have a certain probability of $O^1_{j+1}$ of being between 30 and 40, by looking at the measurements that I took in the past. I did construct some pdf for the distribution of these probabilities, but now I'm a bit stuck, especially because there is probably an interaction between the three outputs (so for instance, updating my previous statement $O^1_j = f(O^1_{j-l}, O^2_{j-l}, O^3_{j-l}) + \epsilon \quad\quad l=1,2,3$)
I've been reading about Bayesian predictors and I tought they could be applied here, but I don't know enough about the topic to determine if this is a good choice or if there is something easier/more appropriate. I will appreciate any suggestion!
 A: If you want to forecast time-series data, first you need to check whether it is stationary. Basically this means checking whether data has trends. If for example some time trend is present, you can concern yourself only with its forecast, because time-trends usually dominate everything else. For stationary time series it is good to use Box-Jenkins approach. This in the end will give you some kind of  ARMA model (autoregressive model suggested by @whuber is a subset of this model). Since you have three time series you may look into VAR models.
If you use R, then first step can be performed by function stl, it is function from standard R. Autoregressive models can be fit automatically  by auto.arima in package forecast. This function can either fit your desired model, or find the best specification for certain definition of best. You might look into that package more, since it is specially designed for forecasting time series. For VAR model use VAR function from vars package. This package has a nice vignette describing its capabilities.
