class_docstr: Class to hold results from fitting an VARMAX model.
  
  Parameters
  ----------
  model : VARMAX instance
      The fitted model instance
  
  Attributes
  ----------
  specification : dictionary
      Dictionary including all attributes from the VARMAX model instance.
  coefficient_matrices_var : ndarray
      Array containing autoregressive lag polynomial coefficient matrices,
      ordered from lowest degree to highest.
  coefficient_matrices_vma : ndarray
      Array containing moving average lag polynomial coefficients,
      ordered from lowest degree to highest.
  
  See Also
  --------
  statsmodels.tsa.statespace.kalman_filter.FilterResults
  statsmodels.tsa.statespace.mlemodel.MLEResults
code: def simulate(
      self,
      nsimulations,
      measurement_shocks=None,
      state_shocks=None,
      initial_state=None,
      anchor=None,
      repetitions=None,
      exog=None,
      extend_model=None,
      extend_kwargs=None,
      **kwargs,
  ):
      if anchor is None or anchor == "start":
          iloc = 0
      elif anchor == "end":
          iloc = self.nobs
      else:
          iloc, _, _ = self.model._get_index_loc(anchor)
  
      if iloc < 0:
          iloc = self.nobs + iloc
      if iloc > self.nobs:
          raise ValueError(
              "Cannot anchor simulation after the estimated" " sample."
          )
  
      out_of_sample = max(iloc + nsimulations - self.nobs, 0)
  
      # Normalize `exog`
      exog = self.model._validate_out_of_sample_exog(
          exog, out_of_sample
      )
  
      with self._set_final_predicted_state(exog, out_of_sample):
          out = super().simulate(
              nsimulations,
              measurement_shocks=measurement_shocks,
              state_shocks=state_shocks,
              initial_state=initial_state,
              anchor=anchor,
              repetitions=repetitions,
              exog=exog,
              extend_model=extend_model,
              extend_kwargs=extend_kwargs,
              **kwargs,
          )
  
      return out
  
imports: import contextlib
  from warnings import warn
  import pandas
  import numpy
  from statsmodels.compat.pandas import Appender
  from statsmodels.tools.tools import Bunch
  from statsmodels.tools.data import _is_using_pandas
  from statsmodels.tsa.vector_ar import var_model
  import statsmodels.base.wrapper
  from statsmodels.tools.sm_exceptions import EstimationWarning
  from .kalman_filter import INVERT_UNIVARIATE, SOLVE_LU
  from .mlemodel import MLEModel, MLEResults, MLEResultsWrapper
  from .initialization import Initialization
  from .tools import is_invertible, concat, prepare_exog, constrain_stationary_multivariate, unconstrain_stationary_multivariate, prepare_trend_spec, prepare_trend_data
label_desc: Use image node_id 6 for calling the VARMAXResults obj's underlying member method code with example usage: obj.simulate(nsimulations, measurement_shocks, state_shocks, initial_state, anchor, repetitions, exog, extend_model, extend_kwargs) and returns: out