Files
FX-ML-Trading-Engine/QuantTrader/execution/__pycache__/paper_adapter.cpython-312.pyc
T

47 lines
7.6 KiB
Plaintext
Raw Normal View History

2025-11-14 22:56:44 +00:00
Ë
i6ãó’dZddlmZddlZddlZddlmZddlmZddlm Z ddl
m Z m Z m
Z
mZmZdd lmZdd
lmZGd d e «Zy)
zNPaper trading adapter that simulates fills with configurable latency/slippage.é)Ú annotationsN)Údatetime)ÚPath)ÚDicté)Ú CancelAckÚExecutionAdapterÚOrderAckÚ OrderParamsÚ
PositionState)Ú log_event)Ú
OrderStorecózeZdZ d d
dZddZddZddZddZddZddZ dd „Z
dd
Z dd Z y)Ú PaperAdapterNcó\||_||_|xs td«|_i|_i|_||_t|«|_|jjjdd¬«|jj«s|jjdd¬«d|_
y)Nz"results/execution/paper_orders.logT)ÚparentsÚexist_okz
ts,equity
úutf-8©Úencodingr)Ú
latency_msÚ
slippage_pipsrÚ order_storeÚ positionsÚ
last_priceÚcashrÚ equity_pathÚparentÚmkdirÚexistsÚ
write_textÚ
_order_seq)ÚselfrrrÚstarting_equityÚequity_log_paths úR/Users/chuan/Documents/Projects/FX_Backtest/QuantTrader/execution/paper_adapter.pyÚ__init__zPaperAdapter.__init__s™ð%ˆŒØÔØZ¬*Ð5YÓ*ZˆÔØ35ˆŒØ,.ˆŒØŒ Ü ÓÔØ ×Ñ×Ñ×%¨d¸TÐ×Ñ× × Ñ ×
ÀÐ ˆócóJ|xjdz
c_d|jS)NrzPAPER-)r"©r#s r&Ú_next_idzPaperAdapter._next_id%s"Ø Š˜1ÑØ˜ŸÐ)r(có¦tj«}tj|jdz «|j «}|j
|«}|j||«|jj||«tj«}td||jd||«|j|«t|d|¬«S)Ng@submitÚaccepted©Úorder_idÚstatusÚ timestamp)rÚutcnowÚtimeÚsleeprr+Ú _fill_priceÚ _apply_fillrÚappendr
ÚsymbolÚ_record_equityr
)r#ÚorderÚstartr0Ú
fill_priceÚends r&r-zPaperAdapter.submit)ÜÓÜ
4—?‘? VÑ—=‘=“?ˆØ×% eÓ
Ø ×ј 
Ô ×Ñ×Ñ ¨%Ôo‰oÓˆÜ(˜H e§l¡l°JÀÀsÔ ×јCÔ Ü °*ÈÔLr(cóÒtj«}tj|jdz «tj«}t d|dd||«t
|d|¬«S)Ng@Ÿ@ÚcancelÚÚ cancelledr/)rr3r4r5rr
r)r#r0r<r>s r&r@zPaperAdapter.cancel5sPÜÓÜ
4—?? VÑo‰oÓˆÜ(˜H b¨+°u¸cÔ (°;È#ÔNr(có|jS)N)rr*s r&Úsync_positionszPaperAdapter.sync_positions<s Ø~‰~Ðr(cóy)NT©r*s r&Ú heartbeatzPaperAdapter.heartbeat?sØr(có,|jd«rdSdS)JPYg{®Gáz„?g-Cëâ6?)Úendswith)r#r9s r&Ú
_pip_valuezPaperAdapter._pip_valueBsØ -ˆ9°6Ð9r(có<|jxs&|jj|jd«}|j|j |j«z}|j j«dk(rdnd}|||ztjddg«zzS)Ngð?Úbuyréÿÿÿÿ)
ÚpricerÚgetr9rrKÚsideÚlowerÚrandomÚchoice)r#r;Ú
base_priceÚslipÚ directions r&r6zPaperAdapter._fill_priceEsØ—[J D§O¡O×$7Ñ$7¸¿ ¹ ÀcÓ$Jˆ
Ø×! D§O¡O°E·L±LÓ$AÑØŸ×+¨uÒ4‘A¸"ˆ ؘÑ,¬v¯}©}¸¸WÓ/EÑEr(có¤|jj«dk(r |jn |j }|jj |j
«}|t
|j
d|d¬«}|j|z}|dk(rP||jz
| z}|xj|z
c_|jj|j
d«n|jdk(s(|jdkDr|dkDs|jdkrZ|dkrU|j|jz||zz|z }t
|j
||d¬«}||j|j
<n|j|z