
    9~%jn                     (    d dl mZmZ d Zd Zd ZdS )    )CoinLeakageGateTradeRecordc                  
   d t          d          D             d t          d          D             z   } t          ddd          }|                    d	| d
          }|j        du sJ |j        dk    sJ |j        d	k    sJ d S )Nc                 .    g | ]}t          d           S WLDcoinr   .0_s     tests/test_coin_leakage_gate.py
<listcomp>zOtest_coin_leakage_gate_reduces_risk_above_half_recent_share.<locals>.<listcomp>   #    999!ku%%%999       c                 .    g | ]}t          d           S BTCr	   r   r   s     r   r   zOtest_coin_leakage_gate_reduces_risk_above_half_recent_share.<locals>.<listcomp>   s$    <g<g<gYZ[e=T=T=T<g<g<gr   	         ?333333?      ?reduce_thresholdblock_thresholdreduced_multiplierr      windowT)ranger   evaluateallowedrisk_multipliertop_cointradesgatedecisions      r   ;test_coin_leakage_gate_reduces_risk_above_half_recent_sharer+      s    99uRyy999<g<g^cde^f^f<g<g<ggFD$[_```D}}UF2}66Ht#####t++++%%%%%%r   c                  
   d t          d          D             d t          d          D             z   } t          ddd          }|                    d	| d
          }|j        du sJ |j        dk    sJ |j        dk    sJ d S )Nc                 .    g | ]}t          d           S r   r   r   s     r   r   zRtest_coin_leakage_gate_blocks_above_sixty_percent_recent_share.<locals>.<listcomp>   r   r      c                 .    g | ]}t          d           S r   r   r   s     r   r   zRtest_coin_leakage_gate_blocks_above_sixty_percent_recent_share.<locals>.<listcomp>   $    <h<h<hYZ[e=T=T=T<h<h<hr   r   r   r   r   r   r      r    Fr   coin_leakage_block)r"   r   r#   r$   r%   reasonr'   s      r   >test_coin_leakage_gate_blocks_above_sixty_percent_recent_sharer4      s    99uRyy999<h<h^cdf^g^g<h<h<hhFD$[_```D}}UF2}66Hu$$$$#q((((?2222222r   c                      d t          d          D             d t          d          D             z   } t          ddd          }|                    d	| d
          }|j        du sJ |j        dk    sJ d S )Nc                 .    g | ]}t          d           S r   r   r   s     r   r   z[test_coin_leakage_gate_does_not_penalize_other_coins_when_wld_dominates.<locals>.<listcomp>   r   r   r.   c                 .    g | ]}t          d           S r   r   r   s     r   r   z[test_coin_leakage_gate_does_not_penalize_other_coins_when_wld_dominates.<locals>.<listcomp>   r0   r   r   r   r   r   r   ETHr1   r    T   )r"   r   r#   r$   r%   r'   s      r   Gtest_coin_leakage_gate_does_not_penalize_other_coins_when_wld_dominatesr:      s    99uRyy999<h<h^cdf^g^g<h<h<hhFD$[_```D}}UF2}66Ht#####q((((((r   N)src.risk.coin_leakage_gater   r   r+   r4   r:    r   r   <module>r=      sT    C C C C C C C C& & &3 3 3) ) ) ) )r   