## Statistical programming, matrix languages, and more

Solved
Contributor
Posts: 48

I want to estimate a ARFIMA model of realised volatility using real series (not simulated ones) . Here is my code.

proc iml;

use square;

lag=(0:5);

d=0.4;

phi=0.5;

ma=0.3;

sigma=0.06;

call farmafit(d,phi,ma,sigma,exper);

Sas generate a error saying insufficient number of observations. I have 787 observation for this time series.

Anybody know why? Thank you in advance.

Accepted Solutions
Solution
‎02-20-2014 11:11 AM
SAS Super FREQ
Posts: 4,174

My guess is that you don't have 787 observations. You have 1 (which is certainly insufficient). Print the number of rows for expe like thisr:

print "number of rows=" (nrow(exper));

You might also try the following example and report what happens:

proc iml;

use sashelp.air;

close sashelp.air;

call farmafit(d,phi,ma,sigma,exper);

print d, phi, ma, sigma;

All Replies
Solution
‎02-20-2014 11:11 AM
SAS Super FREQ
Posts: 4,174

My guess is that you don't have 787 observations. You have 1 (which is certainly insufficient). Print the number of rows for expe like thisr:

print "number of rows=" (nrow(exper));

You might also try the following example and report what happens:

proc iml;

use sashelp.air;

close sashelp.air;

call farmafit(d,phi,ma,sigma,exper);

print d, phi, ma, sigma;

Contributor
Posts: 48

Thank you for your response. I have tried print "number of rows=" (nrow(exper)); using sashelp.air;

The return number is 144. The estimation of the ARFIMA on sashelp.air reports d=1.15 phi ma don't exist. sigma=1118.

SAS Super FREQ
Posts: 4,174

I meant for you to print the number of rows for your example, not for mine.

Contributor
Posts: 48

I will post it tomorrow if that is okay for you as it is pretty late in UK.

Contributor
Posts: 48