subroutine mysub(permno,comp,ret,begret,endret,mkt) real ret(7000),mkt(7000) integer permno,begret,endret character*32 comp x=0; y=0; x2=0; y2=0; xy=0 t=0 do i = begret,endret { if(ret(i) >= -1) { if( i > begret) { if( ret(i-1) >= -1) { t=t+1 x = x + mkt(i) y = y + ret(i) x2 = x2 + mkt(i) * mkt(i) y2 = y2 + ret(i) * ret(i) xy = xy + mkt(i) * ret(i) } } } } if(t > 0 ) { x = x/t y = y/t x2 = x2 - t*x*x xy = xy - t*x*y beta = xy/x2 } else { beta = -999999 } write(6,*)permno," ",comp,beta end