
    j                    V    d dl mZ d dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
 ddZddZdS )    )annotationsN)Path)	BotConfig)append_near_missbuild_near_miss_eventtop_near_missesreturnNonec            	        t          dddd          } g d}t          dd|d	d
| d          }|J |j        dk    sJ |j        dk    sJ |j        dk    sJ |j        dk    sJ |j        dk    sJ |j        d
k    sJ |j        dk    sJ d S )N      @i       .@   flash_crash_trigger_pctmin_volume_24hcrash_roe_trigger_pctdefault_leverage))g      ?g      Y@)g       @g     X@)g      @      X@	candidateWLDr   no_flash_crashg     ^@strategy_idcoinhistorycurrent_pricereasoncfgnow_tsg      g      ?g      4)	r   r   r   r   drop_pctrequired_drop_pctdistance_pctr   roe_drop_pct)r   r   rows      tests/test_near_miss.pyBtest_build_near_miss_event_reports_distance_to_flash_crash_triggerr&   
   s    
C
bfyz
{
{
{C666G
  C ????k))))8u<4 C''''s"""":)))))u$$$$$$    tmp_pathr   c                4   t          dddd          }t          dddd	gd
d|d          t          ddddgdd|d          t          ddddgdd|d          g}| dz  }|D ]}|J t          ||           d |                    d                                          D             }t          d |D             d          }d |D             ddgk    sJ |d         d         dk    sJ dt          j        |                                          vsJ d S )Nr      r   r   r   sA)r*   d   )   c   r/   r   r   B)r.   `   r1   C)r.   a   r3   znear_miss.jsonlc                6    g | ]}t          j        |          S  )jsonloads).0lines     r%   
<listcomp>zGtest_append_near_miss_journal_and_rank_closest_rows.<locals>.<listcomp>/   s"    YYY4djYYYr'   zutf-8)encodingc                    g | ]}||S )Nr5   r8   r$   s     r%   r:   zGtest_append_near_miss_journal_and_rank_closest_rows.<locals>.<listcomp>0   s    EEEcS_c___r'   r.   )limitc                    g | ]	}|j         
S r5   )r   r=   s     r%   r:   zGtest_append_near_miss_journal_and_rank_closest_rows.<locals>.<listcomp>2   s    '''CH'''r'   r   r   private)	r   r   r   	read_text
splitlinesr   r6   dumpslower)r(   r   rowspathr$   loadedrankeds          r%   3test_append_near_miss_journal_and_rank_closest_rowsrI   "   s   
CY]pq
r
r
rC#C(GATdfo  FI  RS  	T  	T  	T#C(GATdfo  FI  RS  	T  	T  	T#C(GATdfo  FI  RS  	T  	T  	TD
 ''D $ $s####YY4>>7>+K+K+V+V+X+XYYYFEETEEEQOOOF'''''C:5555!9]#s****DJv..4466666666r'   )r	   r
   )r(   r   r	   r
   )
__future__r   r6   pathlibr   configr   	near_missr   r   r   r&   rI   r5   r'   r%   <module>rN      s    " " " " " "              N N N N N N N N N N% % % %07 7 7 7 7 7r'   