I have a long daily times series of individual stocks and would like to obtain daily idiosyncratic volatility (keeping the same frequency). Apparently, the widely used methodology of Ang 2006 would not work in my case as I will have convert the residuals from daily to monthly. I am not interested in forecasting. I just need to examine the historical IVOL for specific days.

I am planning on using a market factor model, CAMP, just to see if there is any potential results and upon the results I might do a three or five factor model. Any suggestions on how to calculate daily idiosyncratic volatility from daily observations and not from intraday data.

Thank you


1 Answer 1


Since you mentioned stocks I assume you are looking to calculate in a portfolio sense, one practice is calculating idiosyncratic variance by ${h}'Dh$, where $h$ is your holdings of each stock and $D$ is $\sigma_{i} ^{2}$ of residues you estimated using factor models (at each day and for each stock $i$).

  • $\begingroup$ Hello @Jojo Tang and thank you for your response. Yes you are right. My data is daily unbalanced panel data that consists of around 380 stocks. So what you are saying is that I can run a factor ( factors) regression, save residuals. This gives me the volatility. How would I convert the residuals now to get the idiosyncratic volatility? Please note that I am interested in getting a time series of idiosyncratic volatility. One idiosyncratic for each corresponding observation. $\endgroup$
    – Saad Al
    Commented Oct 1, 2018 at 17:17
  • $\begingroup$ @SaadAlsunbul save residuals and compute EWMA of it for each date in your sample. you obtain one sigma for each stock, and the term D is a diagonal matrix with the sigmas on main diagonal (D is n*n, n being number of stocks) $\endgroup$
    – numerairX
    Commented Oct 1, 2018 at 17:19

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.