Я думаю, что люди из Statalist правы, когда говорят, что это должно занять много времени.Вы выполняете 30000 регрессий по важному количеству наблюдений.
Если вы хотите знать, где Stata проводит свое время, вы можете использовать команду profiler
.
profiler clear
profiler on
rolling arbrisk = (e(rss) / e(N)), window(48) stepsize(12) ///
saving(arbrisk, replace) nodots: regress r1 ewretd
profiler off
profiler report
Интересно, поможет ли создание гигантской панели.Вы можете столкнуться с проблемами памяти.Вы должны заранее проверить, насколько большой будет ваша панель и сколько памяти она займет:
http://www.stata.com/support/faqs/data/howbig.html
Я не удивлен, что использование процедуры самокодирования OLS не улучшает производительность.Команда regress
является так называемой встроенной командой и уже довольно эффективна.Это будет трудно сделать лучше.
Что касается SAS, запустите пару регрессий в SAS и проверьте, сколько времени это займет.Сделайте то же самое в Stata.Мой опыт показывает, что Stata regress
немного быстрее, чем proc reg
в SAS.