<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Calculating rolling window covariance in SAS in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146569#M38901</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;There are some other posts in the Communities where people are using intnx function and some formulae to create time windows.&amp;nbsp; Maybe not exactly the same as you but could be adapted.&amp;nbsp; Here is one I just got from a search:&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" class="active_link" href="https://communities.sas.com/message/204913#204913"&gt;https://communities.sas.com/message/204913#204913&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do a search on intnx weekends, there are 6 results.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 May 2014 13:08:20 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2014-05-06T13:08:20Z</dc:date>
    <item>
      <title>Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146567#M38899</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi! I am totally new to SAS and primarily use R. I have been struggling with this problem since last two days. My data is as below -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE&gt;Comp date time returns&lt;BR /&gt;1 12-Aug-97 10:23:38 0.919292648&lt;BR /&gt;1 12-Aug-97 10:59:43 0.204139521&lt;BR /&gt;1 13-Aug-97 11:03:12 0.31909242&lt;BR /&gt;1 14-Aug-97 11:10:02 0.989339371&lt;BR /&gt;1 14-Aug-97 11:19:27 0.08394389&lt;BR /&gt;1 15-Aug-97 11:56:17 0.481199854&lt;BR /&gt;1 16-Aug-97 13:53:45 0.140404929&lt;BR /&gt;1 17-Aug-97 10:09:03 0.538569786&lt;BR /&gt;2 14-Aug-97 11:43:49 0.427344962&lt;BR /&gt;2 14-Aug-97 11:48:32 0.154836294&lt;BR /&gt;2 15-Aug-97 14:03:47 0.445415114&lt;BR /&gt;2 15-Aug-97 9:38:59 0.696953041&lt;BR /&gt;2 15-Aug-97 13:59:23 0.577391987&lt;BR /&gt;2 15-Aug-97 9:10:12 0.750949097&lt;BR /&gt;2 15-Aug-97 10:22:38 0.077787596&lt;BR /&gt;2 15-Aug-97 11:07:57 0.515822161&lt;BR /&gt;2 16-Aug-97 11:37:26 0.862673945&lt;BR /&gt;2 17-Aug-97 11:42:33 0.400670247&lt;BR /&gt;2 19-Aug-97 11:59:34 0.109279307 &lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is just a sample data. It has company, date and time level returns on share price for a period of 10 years. I need to calculate autocovariance (degree 1) of returns over a period of 10 days for each Comp and date value combination. As you can see, my time series is not continuous, it has breaks for weekends and public holidays. In such cases, if i need to take a 10 day range, I can't use a intnk function as adding 10 days to the date column might include a saturday/sunday for which I don't have data for and hence, my autocovariance value will be compromised. How do I make this range dynamic?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have gotten till this part -&lt;/P&gt;&lt;PRE class="jive-pre"&gt;
&lt;P&gt;&lt;CODE&gt;data ds1; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;set ds; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;by comp; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;LAG_RET = lag(RET); &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;IF FIRST.&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;comp &lt;/SPAN&gt;THEN DO; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;LAG_RET = .; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;END; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;run; &lt;/CODE&gt;&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;For calculating correlation and covariances -&lt;/P&gt;&lt;PRE class="jive-pre"&gt;
&lt;P&gt;&lt;CODE&gt;proc corr data=ds1 outp=Corr &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;by comp date; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;cov; /** include covariances **/ &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;var ret lag_ret; &lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;run; &lt;/CODE&gt;&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;But how do I insert the event window for each date, store_id combination? My final output should look something like this -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace;"&gt;Comp Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; autocovariance&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace;"&gt;1&amp;nbsp;&amp;nbsp; 12-Aug-97&amp;nbsp;&amp;nbsp; ...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace;"&gt;1&amp;nbsp;&amp;nbsp; 13-Aug-97&amp;nbsp;&amp;nbsp; ...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If anyone can suggest a methodology to do this, It would be really helpful. &lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 May 2014 12:02:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146567#M38899</guid>
      <dc:creator>SasHelpNeeded</dc:creator>
      <dc:date>2014-05-06T12:02:50Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146568#M38900</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For Cov(X,Y) &lt;/P&gt;&lt;P&gt;what is X and what is Y ?&lt;/P&gt;&lt;P&gt;e.g.&lt;/P&gt;&lt;P&gt;X is &lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;Comp date time returns&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;1 12-Aug-97 10:23:38 0.919292648&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;1 12-Aug-97 10:59:43 0.204139521&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;and Y is what ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;and there might be only one obs for X or for Y ,is it right ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: monospace; background-color: #ffffff;"&gt;Xia Keshan&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 May 2014 12:35:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146568#M38900</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-05-06T12:35:05Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146569#M38901</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;There are some other posts in the Communities where people are using intnx function and some formulae to create time windows.&amp;nbsp; Maybe not exactly the same as you but could be adapted.&amp;nbsp; Here is one I just got from a search:&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" class="active_link" href="https://communities.sas.com/message/204913#204913"&gt;https://communities.sas.com/message/204913#204913&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do a search on intnx weekends, there are 6 results.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 May 2014 13:08:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146569#M38901</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-05-06T13:08:20Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146570#M38902</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Since I am calculating autocovariance, my x would be returns and y would be lag_returns. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2014 05:51:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146570#M38902</guid>
      <dc:creator>SasHelpNeeded</dc:creator>
      <dc:date>2014-05-07T05:51:57Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146571#M38903</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello -&lt;/P&gt;&lt;P&gt;If you have access to SAS/ETS software you may want to explore the TIMESERIES procedure.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Udo&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;input Comp date date9. time time8. returns;&lt;/P&gt;&lt;P&gt;format date date9. time time9.;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;1 12-Aug-97 10:23:38 0.919292648&lt;/P&gt;&lt;P&gt;1 12-Aug-97 10:59:43 0.204139521&lt;/P&gt;&lt;P&gt;1 13-Aug-97 11:03:12 0.31909242&lt;/P&gt;&lt;P&gt;1 14-Aug-97 11:10:02 0.989339371&lt;/P&gt;&lt;P&gt;1 14-Aug-97 11:19:27 0.08394389&lt;/P&gt;&lt;P&gt;1 15-Aug-97 11:56:17 0.481199854&lt;/P&gt;&lt;P&gt;1 16-Aug-97 13:53:45 0.140404929&lt;/P&gt;&lt;P&gt;1 17-Aug-97 10:09:03 0.538569786&lt;/P&gt;&lt;P&gt;2 14-Aug-97 11:43:49 0.427344962&lt;/P&gt;&lt;P&gt;2 14-Aug-97 11:48:32 0.154836294&lt;/P&gt;&lt;P&gt;2 15-Aug-97 14:03:47 0.445415114&lt;/P&gt;&lt;P&gt;2 15-Aug-97 9:38:59 0.696953041&lt;/P&gt;&lt;P&gt;2 15-Aug-97 13:59:23 0.577391987&lt;/P&gt;&lt;P&gt;2 15-Aug-97 9:10:12 0.750949097&lt;/P&gt;&lt;P&gt;2 15-Aug-97 10:22:38 0.077787596&lt;/P&gt;&lt;P&gt;2 15-Aug-97 11:07:57 0.515822161&lt;/P&gt;&lt;P&gt;2 16-Aug-97 11:37:26 0.862673945&lt;/P&gt;&lt;P&gt;2 17-Aug-97 11:42:33 0.400670247&lt;/P&gt;&lt;P&gt;2 19-Aug-97 11:59:34 0.109279307&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc timeseries data=have out=_null_ outcorr=outcorr;&lt;/P&gt;&lt;P&gt;id date interval=day accumulate=total;&lt;/P&gt;&lt;P&gt;var returns;&lt;/P&gt;&lt;P&gt;by comp;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="6257" alt="Capture.JPG" class="jive-image-thumbnail jive-image" height="218" src="https://communities.sas.com/legacyfs/online/6257_Capture.JPG" style="float: none;" width="463" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 May 2014 18:10:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146571#M38903</guid>
      <dc:creator>udo_sas</dc:creator>
      <dc:date>2014-05-07T18:10:49Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146572#M38904</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Wow! This seems like a great way of working with Time Series. But is there a way I can set up a rolling window to calculate all the values using this? I need the data at&amp;nbsp; a Comp, Date level. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 May 2014 05:57:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146572#M38904</guid>
      <dc:creator>SasHelpNeeded</dc:creator>
      <dc:date>2014-05-08T05:57:21Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146573#M38905</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello -&lt;/P&gt;&lt;P&gt;You may have to consider writing a macro which loops through the rolling window you have in mind - TIMESERIES will use all data at hand.&lt;/P&gt;&lt;P&gt;As an alternative you may want to check out the EXPAND procedure, which allows you to transform time series data at hand and which provides you access to many out-of-the-box transformations: &lt;A href="http://support.sas.com/documentation/cdl/en/etsug/63939/HTML/default/viewer.htm#etsug_expand_sect026.htm"&gt;http://support.sas.com/documentation/cdl/en/etsug/63939/HTML/default/viewer.htm#etsug_expand_sect026.htm&lt;/A&gt; including Moving Time Window Operators.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Udo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 May 2014 13:44:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146573#M38905</guid>
      <dc:creator>udo_sas</dc:creator>
      <dc:date>2014-05-08T13:44:14Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146574#M38906</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;PS: I should have mentioned that the new TIMEDATA procedure provides you with capabilities you might be interested in as well:&amp;nbsp; &lt;A href="http://support.sas.com/documentation/cdl/en/etsug/66840/HTML/default/viewer.htm#etsug_timedata_toc.htm"&gt;http://support.sas.com/documentation/cdl/en/etsug/66840/HTML/default/viewer.htm#etsug_timedata_toc.htm&lt;/A&gt; - &lt;A __default_attr="808316" __jive_macro_name="user" class="jive_macro jive_macro_user" href="https://communities.sas.com/"&gt;&lt;/A&gt; (aka Ken) has recorded a nice getting started video: &lt;A href="http://www.youtube.com/watch?v=K-lR8lJpg1k" title="http://www.youtube.com/watch?v=K-lR8lJpg1k"&gt;Working with Time Series Data Using SAS/ETS - YouTube&lt;/A&gt; which you may want to check out.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 May 2014 14:16:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146574#M38906</guid>
      <dc:creator>udo_sas</dc:creator>
      <dc:date>2014-05-08T14:16:52Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating rolling window covariance in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146575#M38907</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks! &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://communities.sas.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt; That was helpful!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 May 2014 08:59:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Calculating-rolling-window-covariance-in-SAS/m-p/146575#M38907</guid>
      <dc:creator>SasHelpNeeded</dc:creator>
      <dc:date>2014-05-14T08:59:13Z</dc:date>
    </item>
  </channel>
</rss>

