/* ** Monte Carlo Program for Weak Ideal conditions I */ @ Data generation under Weak Ideal Conditions @ /* ** The regressors are now different across individual data sets. ** That is, regressors are stochastic. ** The errors are different across different data sets ** Errors are normal */ @ Model: y = x(2)*1 + x(3)*2 + x(4)*3 + x(5)*4 + e @ tb = {0,1,2,3,4} ; seed = 1; tt = 100; @ # of observations @ kk = 5; @ # of betas @ iter = 5000; @ # of sets of different data @ storb = zeros(iter,1); storse = zeros(iter,1); stort = zeros(iter,1); i = 1; do while i <= iter; @ Generating x @ xx = ones(tt,1)~rndns(tt,kk-1,seed) ; @ Generating y @ yy = xx*tb + 2*rndns(tt,1,seed); @ OLS using yy and xx @ b = invpd(xx'xx)*(xx'yy); e = yy - xx*b ; s2 = (e'e)/(tt-kk); v = s2*invpd(xx'xx); se = sqrt(diag(v)); storb[i,1] = b[2,1]; storse[i,1] = se[2,1]; stort[i,1] = (b[2,1]-1)/se[2,1]; i = i + 1; endo; @ Reporting Monte Carlo results @ output file = wicmonte1.out reset; format /rd 12,3; "Monte Carlo results"; "-----------"; "Mean of OLS b(2) =" meanc(storb); "s.e. of OLS b(2) =" stdc(storb); "mean of estimated s.e. of OLS b(2) =" meanc(storse) ; library pgraph; graphset; {a1,a2,a3}=hist(stort,50); output off ;