Hello,
I have some problems using the maximum likelihood command of Stata to estimate a probit model.
Here is a simplified example of my problem: I am interested in estimating the effect of past experienced stock market returns of households on their stock market participation (controlling for other household characteristics).
This is my likelihood function:
-----------------------------------------------------------------------------------------------------
capture program drop nlprobitlf_stock
program nlprobitlf_stock
version 11
args lnfj xb b k
tempvar xnl
global lambda = `k'
rmatcalc_stock
quietly generate double `xnl' = w
drop w
quietly replace `lnfj' = lnnormal(`xb'+`b'*`xnl') if ($ML_y1 == 1)
quietly replace `lnfj' = lnnormal(-`xb'-`b'*`xnl') if ($ML_y1 == 0)
end
----------------------------------------------------------------------------------------------------
where rmatcalc_stock is a function that calculates the weighted sum of the stock returns a household experienced during its lifetime. The weights depend on k, which should also be estimated within the probit model.
This is my code for the optimization problem:
--------------------------------------------------------------------------------------------------------------------------------
ml model lf nlprobitlf_stock (`dependent_var' = `controls') /b /k [pweight = wgt]
ml search /// search initial value
ml maximize, difficult technique (bhhh) nonrtolerance
---------------------------------------------------------------------------------------------------------------------------------
If I run this, I get the following error message:
initial: log pseudolikelihood = -2.388e+08
rescale: log pseudolikelihood = -3395333.6
rescale eq: log pseudolikelihood = -3385030.8
Iteration 0: log pseudolikelihood = -3385030.8
Iteration 1: log pseudolikelihood = -2737459.7 (not concave)
Iteration 2: log pseudolikelihood = -2685007.4
Iteration 3: log pseudolikelihood = -2681058.8 (not concave)
Iteration 4: log pseudolikelihood = -2680772 (not concave)
Iteration 5: log pseudolikelihood = -2680771.5
Iteration 6: log pseudolikelihood = -2680524.6
Iteration 7: log pseudolikelihood = -2680520.2
Iteration 8: log pseudolikelihood = -2680520.2 (backed up)
option technique() not allowed
Does anyone know where this error may come from? Thank you very much in advance!
Related Posts with ml maximize, technique(bhhh): option technique() not allowed
Keep if/or across many disparate observationsHi statalists, I'm cleaning data for use in a cumulative abnormal returns M&A event study, and …
Estimate equations simultaneously with Maximum Likelihood methodsHi all, I am trying to replicate a methodology used by an academic paper where they estimate 3 equa…
Problem with variable and its format.Hello, I have a mock data set and one variable is "country" with the corresponding two letters "AT" …
oprobit/ ologit for grouped data?Dear All, I am wondering if there exists an equivalent of blogit/ bprobit for ordered logistic regr…
'quietly' commandHi there Does anyone know if there is a way to get the 'quietly' command to apply to whole chunks o…
Subscribe to:
Post Comments (Atom)
0 Response to ml maximize, technique(bhhh): option technique() not allowed
Post a Comment