zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
U
®ý°dû ã@sÄddlZddlZddlmZmZmZddlmZ    dd„Z
dd„Z dd„Z d    d
„Z d d „Zej d ddg¡dd„ƒZej d ddg¡dd„ƒZej d ddg¡dd„ƒZej d ddg¡dd„ƒZdS)éN)Ú    DataFrameÚSeriesÚconcatcsttˆtƒrbtˆjƒs$tˆjˆjdSt‡‡‡‡fdd„ttˆjƒƒDƒdd}ˆj|_ˆj|_|StˆˆˆˆƒSdS)N)ÚindexÚcolumnscs*g|]"}tˆjdd…|fˆˆˆd‘qS)N©ÚcomÚadjustÚ    ignore_na)Úcreate_mock_series_weightsZiloc)Ú.0Úi©r    rr
Úobj©úod:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/window/moments/test_moments_consistency_ewm.pyÚ
<listcomp>sýÿz'create_mock_weights.<locals>.<listcomp>é)Zaxis)Ú
isinstancerÚlenrrrÚranger )rrr    r
ÚwrrrÚcreate_mock_weights s
 
 üù    rc
Csttj|j|jd}dd|}|r~d}tt|ƒƒD]F}|j||j|krntdd||ƒ|j|<|d7}q4|s4|d7}q4nŽd}d}    d}tt|ƒƒD]t}|j||j|krþ|    dkrÂd|j|<n ||td|||    ƒ|j|<||j|7}|}    |d7}q–|s–|d7}q–|S)N)rÚnamegð?rrçéÿÿÿÿ)    rÚnpÚnanrrrrZiatÚpow)
Úsrr    r
rÚalphaÚcountr Zsum_wtsZprev_irrrr  s0 
   
 
r cCs„d}|j||||d ¡}t||||d}| |¡ ¡ | ¡¡jdd}tj||     ¡ 
¡|rht |dƒndk<t   || d¡¡dS)Nç@©rÚ min_periodsr    r
rÚffill©ÚmethodrÚfloat64)ÚewmÚmeanrÚmultiplyÚcumsumÚdivideÚfillnarrÚ    expandingr!ÚmaxÚtmÚ assert_equalZastype)Úall_datar    r
r$rÚresultÚweightsÚexpectedrrrÚtest_ewm_consistency_mean=s&ÿ
þýÿþÿr7c
Cs¢d}| ¡ ¡}|j||||d ¡}|j||||d |¡}t|tƒrP| ¡n
| ¡ ¡}|tj    }    ||    |t|dƒk<t
  ||    ¡tj    |    dd…<t
  ||    ¡dS)Nr"r#r) r/r!r)r*Úcorrrrr0rrr1r2)
Úconsistent_datar    r
r$rÚcount_xÚmean_xZcorr_x_xÚexpr6rrrÚtest_ewm_consistency_consistentPs2 ÿ
ÿþÿ
 
ý
 r=c Cs¦d}|j||||djdd}|j||||djdd}t||||d}| ¡jdd}|| ¡jdd}    ||}
|
|    } tj| | d    k<|
| } t ||| ¡dS)
Nr"r#F©ÚbiasTrr%r&r)    r)Úvarrr,r.rrr1r2) r3r    r
r$rZvar_unbiased_xZ var_biased_xr5Zcum_sumZ
cum_sum_sqÚ    numeratorÚ denominatorZvar_debiasing_factors_xrrrÚ*test_ewm_consistency_var_debiasing_factorsks2ÿþÿþrCr?TFc    Cs~d}|j||||d ¡}|j||||dj|d}|dk ¡ ¡rHt‚|rz||j||||d ¡}t ||||¡dS©Nr"r#r>r)r)r*r@ÚanyÚAssertionErrorr1r2)    r3r    r
r$r?rr;Úvar_xZmean_x2rrrÚtest_moments_consistency_varƒs2ÿ
ÿþÿÿrHc    Cs€d}|j|d ¡}|j||||dj|d}|dk ¡ ¡rBt‚|tj}d||t|dƒk<|sptj||dk<t     
||¡dS)    Nr")r$r#r>rrré) r/r!r)r@rErFrrr0r1r2)    r9r    r
r$r?rr:rGr6rrrÚ%test_moments_consistency_var_constant™s ÿþ
rJc    Cs°d}|j||||dj|d}|dk ¡ ¡r2t‚|j||||dj|d}|dk ¡ ¡r`t‚t |||¡|j||||dj||d}|dk ¡ ¡r t‚t ||¡dSrD)r)r@rErFÚstdr1r2Úcov)    r3r    r
r$r?rrGÚstd_xZcov_x_xrrrÚtest_ewm_consistency_std¬s>ÿþÿþÿþrNcCsNd}||j||||dj|d}|j||||dj|d}|j||||dj|d}|j||||dj||d}    t |    d|||¡|j||||d |¡}
|j||||dj|d} |j||||dj|d} t |
|    | | ¡|rJ|j||||d ¡} |j||||d ¡}||j||||d ¡}t |    || |¡dS)Nr"r#r>gà?)r)r@rLr1r2r8rKr*)Z series_datar    r
r$r?rZ var_x_plus_yrGZvar_yZcov_x_yZcorr_x_yrMZstd_yr;Zmean_yZmean_x_times_yrrrÚ$test_ewm_consistency_series_cov_corrÅs¤ÿþÿÿþÿþÿþÿþÿþÿþÿ
ÿ
ÿÿrO)ÚnumpyrZpytestZpandasrrrZpandas._testingZ_testingr1rr r7r=rCÚmarkZ parametrizerHrJrNrOrrrrÚ<module>s