ARMA Error

2 visualizzazioni (ultimi 30 giorni)
Karamos
Karamos il 29 Dic 2011
Hi all,
I am new in matlab and I am trying to create a simple ARMA(q,p) model which will estimate the best fit parameter automated and then predict the return of the following day. I have a stock daily prices(QQQ) and my code is below.
pr=price2ret(QQQ);
model=armax(pr(1:end-150),[1 2]);
mbest=pem(pr(end-150:end,model);
y = predict(model,pr);
plot(pr(151:end),y(151:end));
If I run this code it will give me a idpoly model(model) and a double 1x1 cell for y variable with an Error
??? Error using ==> plot
Conversion to double from cell is not possible.
I will really appreciate if someone could assist me on this error and give me an insight how can I compile this error! I had tried to use the compare function but it is also give me an error. Does anyone has a better ideas how can I find the best fit parameters for an ARMA model ???
Thanks in advance

Risposte (2)

Walter Roberson
Walter Roberson il 29 Dic 2011
The output yp is an iddata object containing the predicted values as OutputData.
Notice it is iddata, not a numeric array.
Perhaps you want to get(yp, 'OutputData') as described at http://www.mathworks.com/help/toolbox/ident/ref/iddata.html

Karamos
Karamos il 30 Dic 2011
Thank you for your response. I don't want the get function but to plot the prediction output and compare it with the actual time series. The problem is that the y is '1x1 cell' and not a double variable.
My code is almost identical with the example at http://www.mathworks.co.uk/help/toolbox/ident/ref/predict.html but I am not receiving the same format of the output data.

Categorie

Scopri di più su Linear Model Identification in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by