'Log-likelihood of probit model (i.e., the normal distribution).
Parameters
params : array-like
The parameters of the model.
Returns
loglike : float
The log-likelihood function of the model evaluated at `params`.
See notes.
Notes
.. math:: \ln L=\sum_{i}\ln\Phi\left(q_{i}x_{i}^{\prime}\beta\right)
Where :math:`q=2y-1`. This simplification comes from the fact that the
normal distribution is symmetric.'

def loglike(self, params):

    q = ((2 * self.endog) - 1)
    X = self.exog
    return np.sum(np.log(np.clip(self.cdf((q * np.dot(X, params))), FLOAT_EPS, 1)))
