'Estimate an ARMA model with given order using Conditional Maximum Likelihood
Parameters
order : tuple, 2 elements
specifies the number of lags(nar, nma) to include, not including lag 0
start_params : array_like, 1d, (nar+nma+1,)
start parameters for the optimization, the length needs to be equal to the
number of ar plus ma coefficients plus 1 for the residual variance
method : str
optimization method, as described in LikelihoodModel
maxiter : int
maximum number of iteration in the optimization
tol : float
tolerance (?) for the optimization
Returns
mlefit : instance of (GenericLikelihood ?)Result class
contains estimation results and additional statistics'

def fit_mle(self, order=(0, 0), start_params=None, method='nm', maxiter=5000, tol=1e-08, **kwds):

    (nar, nma) = (p, q) = order
    (self.nar, self.nma) = (nar, nma)
    if (start_params is None):
        start_params = np.concatenate(((0.05 * np.ones((nar + nma))), [1]))
    mlefit = super(Arma, self).fit(start_params=start_params, maxiter=maxiter, method=method, tol=tol, **kwds)
    rh = mlefit.params
    self.params = rh
    self.ar_est = np.concatenate(([1], (- rh[:p])))
    self.ma_est = np.concatenate(([1], rh[p:(p + q)]))
    self.error_estimate = self.geterrors(rh)
    return mlefit
