
    tgj                        S SK Jr  S SKJrJr  S SKJr  S SKJr  \" SS9 " S S5      5       r\ " S	 S
5      5       r	\" SS9 " S S5      5       r
g)    )annotations)	dataclassfield)datetime)AnyT)frozenc                  r    \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S	'   S
rS\S'   S
rS\S'   SrS\S'   Srg
)Tick   strsymbolmarketfloatpricevolumer   	timestampNfloat | NonebidaskUNKNOWNsource )	__name__
__module____qualname____firstlineno____annotations__r   r   r   __static_attributes__r       @/mnt/data/HANZ_v2.2_Realtime_Gateway/src/hanz_realtime/models.pyr
   r
      s:    KKLMCCFCr   r
   c                      \ rS rSr% S\S'   S\S'   SrS\S'   SrS	\S
'   SrS\S'   SrS\S'   Sr	S	\S'   Sr
S	\S'   SrS\S'   SrS	\S'   SrS	\S'   \" \S9rS\S'   \" \S9rS\S'   Srg)SymbolState   r   r   r   Nr   
last_priceg        r   last_volumezdatetime | Nonelast_timestampr   int
tick_countcumulative_volumeprice_change_pct
spread_pctvelocityanomaly_score)default_factoryzset[str]dirty_flagszdict[str, Any]metadatar   )r   r   r   r   r   r$   r%   r&   r(   r)   r*   r+   r,   r-   r   setr/   dictr0   r   r   r   r    r"   r"      s    KK#J#K&*NO*J"u"!e!#J#HeM5!#6K6$T:Hn:r   r"   c                  H    \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S	'   S
rg)	QueueItem%   r   r   r   r   scorereasonr   
updated_atr   N)r   r   r   r   r   r   r   r   r    r4   r4   %   s    KKLKr   r4   N)
__future__r   dataclassesr   r   r   typingr   r
   r"   r4   r   r   r    <module>r<      sf    " (   $   ; ; ;  $  r   