Alexis,
your code looks fine to me. For the default Wald test, all parameters
except the constant are constrained to zero. In your model, there are
no such parameters; I guess this is why it's missing.
In your assumptions, you normalized u(x1) to be zero and u(x2) to be
one (in expected utility theory, the utility function is unique only
up to a linear transformation). However, in the probit model, the
error variance is also normalized to one; I'm not sure if overall this
is one normalization too much. John Hey and Chris Orme make this point
in their 1994 Econometrica paper "Investigating Generalizations of
Expected Utility Theory Using Experimental Data". I.e. the correct
model to estimate may be y = d_2*(x_2)^\alpha + d_3*(x_3)^\alpha. I
don't really know the literature, though, so I shouldn't comment any
further. Maybe someone else can give better advice.
Hope this helps,
Eva
2008/9/29 Alexis Belianin <[email protected]>:
> Dear Statalisters,
>
> I am trying to estimate the parameters of individual utility function
> under risk using -ml- command in Stata 9.2 (updated). The model is
> probit: the lhs codes individual preferences in a sequence of pairwise
> choices from the set of lotteries of a form [p_1,x_1; p_2,x_2;
> p_3,x_3] vs [q_1,x_1; q_2,x_2; q_3,x_3], where p's and q's are
> probabilities, and x's are outcomes.
>
> The EU theory says that choice depends on whether p_1*u(x_1) +
> p_2*u(x_2) + p_3*u(x_3) is greater or less than q_1*u(x_1) +
> q_2*u(x_2) + q_3*u(x_3). I estimate the parameter(s) of the u function
> of a specified form – say, a power CRRA function u(x_i)=(x_i)^\alpha.
> Normalizing utilities and defining d_2=p_2 – q_2, d_3=p_3 - q_3, the
> probit specification is Prob(y=1|\alpha) = \Phi( d_2 +
> d_3*(x_3)^\alpha ), where \Phi is standard normal cdf, whose value
> depends on known d_2, d_3 and x_3, and the parameter \alpha to be
> estimated.
>
> How should I fit this model in Stata? Statalist and guides, including
> Gould e.a. book on -ml- do not seem to contain straightforward hints.
> My guess is something like
>
> program define pcrra
> version 9.2
> args lnf alpha
> tempvar xb
> gen double `xb' = d3*x3^`alpha'+d2
> quietly replace `lnf'=ln(normal(`xb')) if $ML_y1 == 1
> quietly replace `lnf'=ln(normal(-`xb')) if $ML_y1 == 0
> end
>
> . ml model lf pcrra (alpha: y= )
> . ml check
> . ml maximize
>
> This is what I got:
>
> initial: log likelihood = -35.802634
> rescale: log likelihood = -34.554852
> Iteration 0: log likelihood = -34.554852
> Iteration 1: log likelihood = -34.551539
> Iteration 2: log likelihood = -34.551469
> Iteration 3: log likelihood = -34.551469
>
>
> Number of obs = 50
> Wald chi2(0) = .
> Log likelihood = -34.551469 Prob > chi2 = .
>
> ----------------------------------------------------------------------------
> y | Coef. Std.Err. z P>|z| [95% Conf. interval]
> --------+----------------------------------------------------------
> _cons |-.37933 1.4415 -0.26 0.792 -3.2046 .4459
> -------------------------------------------------------------------------
>
> I suspect this is wrong, not least because of no values of Wald
> statistics; but the outcome is qualitatively the same on different
> (e.g. larger) datasets. Any suggestion on how to proceed with this
> estimation?
>
> Thanks in advance,
>
> Alexis Belianin
> [email protected]
>
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/statalist/faq
> * http://www.ats.ucla.edu/stat/stata/
>
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/