
    'YHh                        d dl Zd dlmZ d dlmZ ddZddZedk(  r	 g dZ	g dZ
d	Zd
ZerdD ]  Zd dlZ ej                         Z ede      \  ZZZ ed        ed        ee        edede        ed ej                         ez
          ed        eee        ed        ee        ed        eeej)                  d               yyy)    N)arma_generate_sample)Armac           	         |g d}|g d}g }g }t        |       D ]  }t        |||dz   |      | d }||j                         z  }t        |      }	|	j	                  d      \  }
}}}}|j                  |
       |	j                  |
      }t        j                  t        j                  ||      |z        }|;|j                  |t        j                  t        j                  |            z         |j                  t        j                  t        j                  |
      z           t        j                  |dd |dd f   t        j                  |      t        j                  |      fS )zrun Monte Carlo for ARMA(2,2)

    DGP parameters currently hard coded
    also sample size `nsample`

    was not a self contained function, used instances from outer scope
      now corrected

    N      ?ggr   g333333?g?  )   r
      )ranger   meanr   fitappend	geterrorsnpsqrtdotdiagnan
zeros_liker_array)niternsamplearmasigresultsresults_bse_y2arest2rhohat2acov_x2ainfodictmesgiererr2asige2as                    \/var/www/html/planif/env/lib/python3.12/site-packages/statsmodels/sandbox/mcevaluate/arma.pymcarma22r+      sF    
z	zGK5\ A!"Rc:G89E
bggib17E1B.'8T3x   *e,W45 v0@(AABrvvh(??@A 55ABAB "((7"3RXXk5JJJ    c                 0   |"t        j                  | j                  d         }t        j                  |       j	                  d      }t        d|j                                | |    } t        d       t        t        j                  | |z
  dz  j                  d                   t        d       t        | |z
  j                  d             t        d       t        t        j                  | |z
  d             t        d       t        t        j                  | |z
  |z  d	z  d             t        d
       t        t        j                  t        j                  | |z
        d             t        d       t        | |kD  j                  d             y )Nr   z!fractions of iterations with nansRMSEr
   r   z	mean biaszmedian biaszmedian bias percentd   zmedian absolute errorzpositive error fraction)
r   zerosshapeisnananyprintr   r   medianabs)resrtnanrowss      r*   
mc_summaryr:   ,   s&   	zXXciil#hhsm"G	
-w||~>
wh-C	&M	"''CFQ;$$Q'
()	+	3r6--
	-	"))SVQ
 	
 	"))SVRKOA
&'	
!"	"))BFF3r6N1
%&	
#$	38//!
r,   __main__r   r      T)g?      ?r   r/   )r   r   z
Results for Monte Carlotruez	nsample =zsigma = zelapsed time for Monte Carloz
MC of rho versus truez
MC of bse versus zeroz
MC of bse versus std)
   r	   NNr=   )N)numpyr   statsmodels.tsa.arima_processr   statsmodels.tsa.arma_mler   r+   r:   __name__r   r   r   run_mcr   timet0r8   res_rhores_bser4   std r,   r*   <module>rK      s     > )
"KH( z.` 
B	BG F! 	0CB#+#3#? B-.&M"I+w
C80)$))+b.A
 +,w#+,w*+wA/%	0  r,   