I use proc nlp command to run regression with truncated sample. My regression is to regress return on deps, a bivariate regression. Return is right-skewed with a fat tail and deps is left-skewed also with a fat tail.
Model: Return = a+ b*deps + error ; (return and deps are continuous normally distributed variables. Truncation point: return = 0
My SAS programme is:
proc nlp data = goodnews tech=congra;* goodnews group means all positive return observations, left-truncated sample; parms a b v =0.5; bounds v>0; max l; d = (0-a - b*deps)/v; t = (return - a - b*deps)/v; m = cdf ('Normal',d, 0,1); n = (2*constant ('pi'))**0.5; denom2 =1/(v*(1-m)*n); ex = exp(-0.5*t**2); prob = denom2 * ex; l = log (prob); run; For the right-truncated sample, it works well and produce the same results as I could get from Stata. But for the left-truncated sample, Sas program just cannot find MLE estimate or produce unstable estimate. For my research design, it would be very difficult to interpret the coefficient if I transform both variables into variables more close to normal distribution.How could I solve this problem?