[R] Query about TSRV

Shivam shivamsingh at gmail.com
Thu Jun 14 21:39:50 CEST 2012


Hi All,

This question may not belong here, but I asked this on the
R-SIG-FINANCE list and so far have not got any reply, so was hoping
someone here may help.

I have a basic query about TSRV and was hoping you all can shed some
light on the issue.

I have 22500 records for each day. So if I take the slow frequency as
5 mins I can have 75 subgrids. An estimate of the 5-minute realized
volatility can be obtained by selecting the first observation from
each of the 75 five-minute periods (each containing 300 observations).
Another estimate can be made by selecting the second price observation
from each of the 75 sets. Similarly, 298 additional estimates can be
obtained from the remaining data. Thus, 300 estimates of realized
volatility can be obtained for a 5-minute sampling interval. The
average of these 300 estimates is the low frequency volatility.

If P1,P2,...P301,P302,...P22500 are the prices at each timestamp, then
we are effectively doing the below (using simple returns for
illustration only):

(P301/P1)^2 + (P601/P301)^2 + (P901/P601)^2 + .... + (P22201/P21901)^2  = V1

(P302/P2)^2 + (P602/P302)^2 + (P902/P602)^2 + .... + (P22202/P21902)^2 = V2

(P303/P3)^2 + (P603/P303)^2 + (P903/P603)^2 + .... + (P22203/P21903)^2 = V3
....
....
....
(P600/P300)^2 + (P900/P600)^2 + (P1200/P900)^2 + .... + (P22500/P22200)^2 = V300

Then we average the Vi's (V1+V2+....+V300)/300. This gives us the 5
min realized volatility.

Please correct me if I've made a mistake somewhere. As I think this
was the approach suggested by Zhang et al in their paper.

What my question is, is the intermediate step of calculating V1,V2....
etc necessary? Cant we simply calculate returns at a lag of 300 for
the entire day and then divide it by 300 to achieve the same result.
What am I missing here? Can anyone point out please.

Thanks and regards,
Shivam



More information about the R-help mailing list