<?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: Why doesn't this macro code run? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496057#M131087</link>
    <description>&lt;P&gt;You only&amp;nbsp;&lt;EM&gt;define&lt;/EM&gt; the macro, but never&amp;nbsp;&lt;EM&gt;call&lt;/EM&gt; it. So nothing happens.&lt;/P&gt;
&lt;P&gt;Using options nosource while developing code is also not a very bright thing to do, as it greatly reduces the usefulness of the log.&lt;/P&gt;</description>
    <pubDate>Sun, 16 Sep 2018 17:06:58 GMT</pubDate>
    <dc:creator>Kurt_Bremser</dc:creator>
    <dc:date>2018-09-16T17:06:58Z</dc:date>
    <item>
      <title>Why doesn't this macro code run?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496043#M131081</link>
      <description>&lt;DIV class="line number11 index10 alt2"&gt;&lt;CODE class="sas functions"&gt;options&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;nosource;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number12 index11 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number13 index12 alt2"&gt;&lt;CODE class="sas plain"&gt;* Rolling Beta Regression Program Notes:&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number14 index13 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number15 index14 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; Rolling sample periods move forward one&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;month&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;at a&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;time&lt;/CODE&gt;&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;(per loop iteration)&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number16 index15 alt1"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; Default case uses 2 years or 24 months of daily&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;and the sample periods overlap.&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number17 index16 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; The program parameters can be changed&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;use a different sample&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;length&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;.&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number18 index17 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number19 index18 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;In&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;the RRLOOP&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;macro&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;routine below the regression coefficients are estimated&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;by&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;starting with&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number20 index19 alt1"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; a sample period of&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;YEAR1&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas variable"&gt;&amp;amp;YEAR1&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;+&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;NYEAR&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;and progresses forward&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas functions"&gt;end&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;at&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;YEAR2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;.&amp;nbsp;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number21 index20 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; YEAR1 and YEAR2 are defined using START_YEAR and END_YEAR&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;macro&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;variables, and NYEAR= SAMPLE_YEAR&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number22 index21 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number23 index22 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;To&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;use&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;end&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;of&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;year&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;(December) only estimation, change MM loop&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;:&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%do&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;mm = 12&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;12;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number24 index23 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number25 index24 alt2"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; Code below also can be changed&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;use other regression models such as the F-F 3 factor model.&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number26 index25 alt1"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp; Change&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;PROC&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;REG and the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;DATA&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;step before the APPEND accordingly.&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number27 index26 alt2"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number28 index27 alt1"&gt;&lt;CODE class="sas plain"&gt;*&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;Output&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;dataset includes DATE1 and DATE2 that defines each row sample period&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number29 index28 alt2"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number30 index29 alt1"&gt;&lt;CODE class="sas plain"&gt;* Example&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number31 index30 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number32 index31 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;PERMNO&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; date1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; date2 _DEPVAR_&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alpha&amp;nbsp;&amp;nbsp; beta&amp;nbsp;&amp;nbsp; _RMSE_&amp;nbsp;&amp;nbsp; _RSQ_&amp;nbsp; nobs&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number33 index32 alt2"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number34 index33 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;10104 2002-02-01 2004-01-31&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000284893 1.57198 0.025787 0.38637&amp;nbsp; 503&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number35 index34 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-03-01 2004-02-29&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000476811 1.56050 0.025747 0.37886&amp;nbsp; 503&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number36 index35 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-04-01 2004-03-31&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; 0.000030706 1.61115 0.023942 0.42828&amp;nbsp; 506&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number37 index36 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-05-01 2004-04-30&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; 0.000285565 1.60345 0.023432 0.43471&amp;nbsp; 505&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number38 index37 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number39 index38 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;10107 2002-02-01 2004-01-31&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000347769 1.35198 0.014412 0.59856&amp;nbsp; 503&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number40 index39 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-03-01 2004-02-29&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000356315 1.34827 0.014413 0.59231&amp;nbsp; 503&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number41 index40 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-04-01 2004-03-31&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000399233 1.32516 0.014328 0.58590&amp;nbsp; 506&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number42 index41 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;2002-05-01 2004-04-30&amp;nbsp; retrf&amp;nbsp;&amp;nbsp; -.000094302 1.30637 0.014258 0.57960&amp;nbsp; 505&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number43 index42 alt2"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;CODE class="sas plain"&gt;*********************************************************************************;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;&lt;CODE class="sas plain"&gt;I put the following macro into my code set, but SAS does not run. I even do not know the error. the log show nothing expect these original codes. Did I miss anything?&amp;nbsp;&lt;/CODE&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;&lt;CODE class="sas plain"&gt;The dataset I used is MSF2. So I change the in_ds=MSF2, it still does not work.&amp;nbsp;&lt;/CODE&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;STRONG&gt;&lt;FONT color="#FF0000"&gt;&lt;CODE class="sas plain"&gt;My libname is C:/DATA.&lt;/CODE&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;CODE class="sas plain"&gt;*****************************************************;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;
&lt;DIV class="line number1 index0 alt2"&gt;&lt;CODE class="sas macro"&gt;%macro&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;RRLOOP (year1= 2001, year2= 2005,&amp;nbsp; nyear= 2, in_ds=temp1, out_ds=work.out_ds);&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number2 index1 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number3 index2 alt2"&gt;&lt;CODE class="sas macro"&gt;%local&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;date1 date2 date1f date2f yy mm;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number4 index3 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number5 index4 alt2"&gt;&lt;CODE class="sas comments"&gt;/*Extra step to be sure to start with clean, null datasets for appending*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number6 index5 alt1"&gt;&lt;CODE class="sas functions"&gt;proc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;datasets nolist lib=work;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number7 index6 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;delete&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;all_ds oreg_ds1;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number8 index7 alt1"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number9 index8 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number10 index9 alt1"&gt;&lt;CODE class="sas comments"&gt;/*Loop for years and months*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number11 index10 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%do&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;yy =&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;year1&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas macro"&gt;%to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas variable"&gt;&amp;amp;year2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number12 index11 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%do&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;mm = 1&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;12;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number13 index12 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number14 index13 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;/*Set date2 for mm-yy end point and date1 as 24 months prior*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number15 index14 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%let&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;xmonths=&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%eval&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;(12 *&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;nyear&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;)&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;; *Sample period length in months;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number16 index15 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%let&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;date2=&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%sysfunc&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;mdy&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;mm&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;,1,&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;yy&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;));&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number17 index16 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%let&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;date2=&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%sysfunc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;intnx&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;month&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;, 0,&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;end&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;))&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;; *Make the DATE2 last day of the month;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number18 index17 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%let&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;date1 =&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%sysfunc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;intnx&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;(&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;month&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;, -&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;xmonths&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;+1, begin))&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;; *set DATE1 as first (begin) day;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number19 index18 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;/*FYI --- INTNX quirk in SYSFUNC:&amp;nbsp; do not use quotes with 'month' 'end' and 'begin'*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number20 index19 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number21 index20 alt2"&gt;&lt;CODE class="sas comments"&gt;/*An extra step to be sure the loop starts with a clean (empty) dataset for combining results*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number22 index21 alt1"&gt;&lt;CODE class="sas functions"&gt;proc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;datasets nolist lib=work;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number23 index22 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;delete&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;oreg_ds1;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number24 index23 alt1"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number25 index24 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number26 index25 alt1"&gt;&lt;CODE class="sas comments"&gt;/*Regression model estimation -- creates output set with coefficient estimates*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number27 index26 alt2"&gt;&lt;CODE class="sas functions"&gt;proc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;reg noprint&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;=&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;in_ds&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;outest=oreg_ds1 edf;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number28 index27 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;where&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;date&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;between&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date1&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;and&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&amp;nbsp; *Restricted&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;to&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;DATE1- DATE2&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;range&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;in&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;the loop;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number29 index28 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;model retrf = vwretdrf;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number30 index29 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;by&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;permno;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number31 index30 alt2"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number32 index31 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number33 index32 alt2"&gt;&lt;CODE class="sas comments"&gt;/*Store DATE1 and DATE2 as dataset variables&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number34 index33 alt1"&gt;&lt;CODE class="sas comments"&gt;and rename regression coefficients as ALPHA and BETA;*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number35 index34 alt2"&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;oreg_ds1;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number36 index35 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;set&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;oreg_ds1;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number37 index36 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;date1=&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date1&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number38 index37 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;date2=&lt;/CODE&gt;&lt;CODE class="sas variable"&gt;&amp;amp;date2&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number39 index38 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;rename intercept=alpha&amp;nbsp; vwretdrf=beta;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number40 index39 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;nobs= _p_ + _edf_;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number41 index40 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;format date1 date2 yymmdd10.;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number42 index41 alt1"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number43 index42 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number44 index43 alt1"&gt;&lt;CODE class="sas comments"&gt;/*Append loop results to dataset with all date1-date2 observations*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number45 index44 alt2"&gt;&lt;CODE class="sas functions"&gt;proc&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;datasets lib=work;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number46 index45 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;append base=all_ds&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;=oreg_ds1;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number47 index46 alt2"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number48 index47 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number49 index48 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%end&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&amp;nbsp; %&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;/*MM month loop*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number50 index49 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number51 index50 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas macro"&gt;%end&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;; %&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;CODE class="sas comments"&gt;/*YY year loop*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number52 index51 alt1"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number53 index52 alt2"&gt;&lt;CODE class="sas comments"&gt;/*Save results in final dataset*/&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number54 index53 alt1"&gt;&lt;CODE class="sas functions"&gt;data&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas variable"&gt;&amp;amp;out_ds&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number55 index54 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/CODE&gt;&lt;CODE class="sas functions"&gt;set&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;all_ds;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number56 index55 alt1"&gt;&lt;CODE class="sas functions"&gt;run&lt;/CODE&gt;&lt;CODE class="sas plain"&gt;;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number57 index56 alt2"&gt;&lt;CODE class="sas spaces"&gt;&amp;nbsp;&lt;/CODE&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number58 index57 alt1"&gt;&lt;CODE class="sas macro"&gt;%mend&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;RRLOOP;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number58 index57 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class="line number58 index57 alt1"&gt;&lt;CODE class="sas plain"&gt;**********************************;&lt;/CODE&gt;&lt;/DIV&gt;
&lt;DIV class="line number58 index57 alt1"&gt;
&lt;P&gt;The primary output of this program is a data set with these items:&lt;/P&gt;
&lt;TABLE class="code_color_block" cellspacing="0"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD colspan="2"&gt;&lt;STRONG&gt;CRSP Permanent Number=10107&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;&lt;STRONG&gt;date1&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class="x123"&gt;&lt;STRONG&gt;date2&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class="x123"&gt;&lt;STRONG&gt;_RMSE_&amp;nbsp; Intercept&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class="x123"&gt;&lt;STRONG&gt;VWRETD&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD class="x123"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; regobs&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01JAN2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31DEC2004&lt;/TD&gt;
&lt;TD class="x123"&gt;0.057470&amp;nbsp;&amp;nbsp; -.005836843&lt;/TD&gt;
&lt;TD class="x123"&gt;0.97255&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01FEB2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31JAN2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.057446 &amp;nbsp; -.004874504&lt;/TD&gt;
&lt;TD class="x123"&gt;0.95958&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01MAR2002&lt;/TD&gt;
&lt;TD class="x123"&gt;28FEB2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.057358&amp;nbsp;&amp;nbsp; -.004550887&lt;/TD&gt;
&lt;TD class="x123"&gt;0.92014&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01APR2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31MAR2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.057448&amp;nbsp;&amp;nbsp; -.005048308&lt;/TD&gt;
&lt;TD class="x123"&gt;0.92846&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01MAY2002&lt;/TD&gt;
&lt;TD class="x123"&gt;30APR2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.056784&amp;nbsp;&amp;nbsp; -.000042066&lt;/TD&gt;
&lt;TD class="x123"&gt;0.81758&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01JUN2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31MAY2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.056721&amp;nbsp;&amp;nbsp; 0.000278585&lt;/TD&gt;
&lt;TD class="x123"&gt;0.80891&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01JUL2002&lt;/TD&gt;
&lt;TD class="x123"&gt;30JUN2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.051923&amp;nbsp;&amp;nbsp; -.006355348&lt;/TD&gt;
&lt;TD class="x123"&gt;0.99118&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01AUG2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31JUL2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.051481 &amp;nbsp; -.004585000&lt;/TD&gt;
&lt;TD class="x123"&gt;0.91877&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01SEP2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31AUG2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.053227 &amp;nbsp; -.002505193&lt;/TD&gt;
&lt;TD class="x123"&gt;0.89010&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01OCT2002&lt;/TD&gt;
&lt;TD class="x123"&gt;30SEP2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.054340&amp;nbsp;&amp;nbsp; -.003183394&lt;/TD&gt;
&lt;TD class="x123"&gt;0.84427&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01NOV2002&lt;/TD&gt;
&lt;TD class="x123"&gt;31OCT2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.045522&amp;nbsp;&amp;nbsp; -.003110266&lt;/TD&gt;
&lt;TD class="x123"&gt;0.52825&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01DEC2002&lt;/TD&gt;
&lt;TD class="x123"&gt;30NOV2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.045962 &amp;nbsp; -.002508023&lt;/TD&gt;
&lt;TD class="x123"&gt;0.50723&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="x122"&gt;01JAN2003&lt;/TD&gt;
&lt;TD class="x123"&gt;31DEC2005&lt;/TD&gt;
&lt;TD class="x123"&gt;0.044918&amp;nbsp;&amp;nbsp; 0.000198639&lt;/TD&gt;
&lt;TD class="x123"&gt;0.35030&lt;/TD&gt;
&lt;TD class="x123"&gt;36&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;DIV class="line number58 index57 alt1"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Sun, 16 Sep 2018 15:19:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496043#M131081</guid>
      <dc:creator>ZZB</dc:creator>
      <dc:date>2018-09-16T15:19:50Z</dc:date>
    </item>
    <item>
      <title>Re: Why doesn't this macro code run?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496053#M131085</link>
      <description>Hi:&lt;BR /&gt;  How did you invoke the macro program definition? I only see the %MACRO and %MEND statements. Defining the macro program is only step 1. Next you have to invoke the macro program and cause the statements to be executed. Typically, all a macro program does is generate code. But the macro program must be invoked in order to generate the code. It is the generated code that gets sent to the compiler.&lt;BR /&gt;&lt;BR /&gt;Cynthia</description>
      <pubDate>Sun, 16 Sep 2018 16:43:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496053#M131085</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2018-09-16T16:43:24Z</dc:date>
    </item>
    <item>
      <title>Re: Why doesn't this macro code run?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496054#M131086</link>
      <description>&lt;P&gt;You have:&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas macro"&gt;%macro&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;CODE class="sas plain"&gt;RRLOOP (year1= 2001, year2= 2005,&amp;nbsp; nyear= 2, in_ds=temp1, out_ds=work.out_ds);&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;&amp;nbsp;&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;You may want this:&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;&lt;CODE class="sas macro"&gt;%macro&lt;/CODE&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;RRLOOP (year1= , year2= ,&amp;nbsp; nyear= , in_ds=, out_ds=);&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;….&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;….&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&lt;CODE class="sas plain"&gt;%mend RRLOOP;&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%&lt;CODE class="sas plain"&gt;RRLOOP (year1= 2001, year2= 2005,&amp;nbsp; nyear= 2, in_ds=temp1, out_ds=work.out_ds);&lt;/CODE&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 16 Sep 2018 16:47:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496054#M131086</guid>
      <dc:creator>VDD</dc:creator>
      <dc:date>2018-09-16T16:47:59Z</dc:date>
    </item>
    <item>
      <title>Re: Why doesn't this macro code run?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496057#M131087</link>
      <description>&lt;P&gt;You only&amp;nbsp;&lt;EM&gt;define&lt;/EM&gt; the macro, but never&amp;nbsp;&lt;EM&gt;call&lt;/EM&gt; it. So nothing happens.&lt;/P&gt;
&lt;P&gt;Using options nosource while developing code is also not a very bright thing to do, as it greatly reduces the usefulness of the log.&lt;/P&gt;</description>
      <pubDate>Sun, 16 Sep 2018 17:06:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496057#M131087</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2018-09-16T17:06:58Z</dc:date>
    </item>
    <item>
      <title>Re: Why doesn't this macro code run?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496333#M131241</link>
      <description>&lt;P&gt;Use of line comments such as in this line can have very unexpected results with macros:&lt;/P&gt;
&lt;PRE&gt;proc reg noprint data=&amp;amp;in_ds outest=oreg_ds1 edf;

  where date between &amp;amp;date1 and &amp;amp;date2;  &lt;STRONG&gt;&lt;FONT color="#ff0000" size="4"&gt;*&lt;/FONT&gt;&lt;/STRONG&gt;Restricted to DATE1- DATE2 data range in the loop;&lt;/PRE&gt;
&lt;P&gt;Inside the body of a macro you should use: &amp;nbsp;%* comment text;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Or stick with the /* comment */ statement.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Sep 2018 17:34:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Why-doesn-t-this-macro-code-run/m-p/496333#M131241</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-09-17T17:34:51Z</dc:date>
    </item>
  </channel>
</rss>

