Files
resonance-engine/__pycache__/_analyze_continuous.cpython-312.pyc
T

123 lines
14 KiB
Plaintext
Raw Normal View History

2026-06-07 06:34:30 +07:00
Ë
ºª$j|#ãóâdZddlmZddlZddlZddlZddlmZddlZ ddl
Z ddl m
Z
ddlmZddlmZed«Zd Zgd
¢Zgd ¢Zd d
gZddZddZddZddZdddZdZedk(re«yy)_analyze_continuous.py — analyze inject_continuous_stream 4-arm output.
For each arm A/B/C (read from parquet):
- merge with source data to get forward returns at h=60, h=240
- fit linear regression: |fwd_return(h)| ~ field_state_features
- report R² (out-of-sample, time-series-aware k-fold)
For arm D (raw data baseline, computed inline here):
- fit linear regression: |fwd_return(h)| ~ raw z-scores of 3 variables
- report R²
Conclusion logic:
If R²(B or C) > R²(D) + meaningful margin → lattice adds information.
If R²(B or C) <= R²(D) → lattice is a noisy filter, use raw data directly.
Usage:
python3 _analyze_continuous.py latest
python3 _analyze_continuous.py <RUN_ID>
é)Ú annotationsN)ÚPath)ÚRidge)ÚTimeSeriesSplit)Úr2_scorez/mnt/d/Resonance_Engine/trajz+/mnt/d/PaperTrader/research/hl_data/minutes) Ú asymmetryÚ coherenceÚ stress_xxÚ stress_yyÚ stress_xyÚvorticity_meanÚvel_meanÚvel_maxÚvel_var)Úsigned_flow_usdÚ
vwap_driftÚwallet_entropyé<éðcóz|dk(rittjd«Dcgc]}|j«sŒ|Œc}«}|s%t j
dt
t«z«|dSt|jd«r|nd|z }|j«st j
d|«|Scc}w)latestz contstream_*zno contstream_* runs in éÿÿÿÿÚ contstream_z missing: ) ÚsortedÚROOTÚglobÚis_dirÚsysÚexitÚstrÚ
startswithÚexists)ÚargÚrunss ú./mnt/d/Resonance_Engine/_analyze_continuous.pyÚfind_runr'*s•Ø
ˆhܤ$§)¡)¨NÓ";ÖJ˜Q¸q¿x¹x½zÙÜ H‰HÐ/´#´d³)Ñ B‰xˆÜ s—~~ mÔ4‘¸KÈÀuÐ:MÑN€AØ 8‰8Œ:Ü 9˜Q˜CÔ €HùòKs
¢B8¸B8cóÜttjtd|d««}g}|D]L}ttj|d««D]&}|jt j
|««Œ(ŒNt j |d¬«}||j|dk(jd«jd¬«}|jdg¬ «jd¬«}|S)
/Ú days_globz
/*.parquetT)Ú ignore_indexÚcoinÚminute)Údrop)Úsubset) rrÚ DATA_ROOTÚappendÚpdÚ read_parquetÚconcatr,Ú sort_valuesÚ reset_indexÚdrop_duplicates)ÚmetaÚday_dirsÚdfsÚdfs r&Ú
load_btc_datar>6Ü”d—ii¤9 +¨Q¨t°KÑ/@Ð.AÐ BÓD€HØ
€CØ
ò+ˆÜœŸ ™  Q C zÐ"2Ó +ˆ J‰J”r— qÓ 
3 TÔ *€BØ ˆBG‰Gt˜F #Ñ $× 0Ñ 0°Ó :× FÑ FÈDÐ FÓ Q€BØ × Ñ  H Ó .× :Ñ :ÀÐ :Ó E€BØ
€Iócó|j«}|dj}|D]f}tj|tjt
¬«}||d|d| z
|d| z |d| ||d|<tj |«|d|<Œh|S)NÚ mid_price)ÚdtypeÚfwd_ret_Ú abs_fwd_ret_)ÚcopyÚvaluesÚnpÚ full_likeÚnanÚfloatÚabs)r=ÚhorizonsÚmidÚfwds r&Úadd_forward_returnsrPBØ €BØ
ˆ[‰/×
Ñ
€CØ
òÜl‰l˜3¤§¡¬eÔØ˜˜W˜s 3 Q B˜'¨3¨s°°¨8Ñ3ˆˆDˆqˆbˆ Ø!$ˆˆXaSˆ>ÑÜ!#§¡¨£ˆˆ\˜!˜Ð Òð 
€Ir?cóxtjd|dji«}|D]}||jt«}|j d«j
|d¬«}||j«z
|j«jdtj«z }|j|d|<Œ’|S)Nr-éé2)ÚwindowÚ min_periodsrÚz_) r2Ú DataFramerFÚastyperJÚshiftÚrollingÚmeanÚstdÚreplacerGrI)r=Úvars_ÚwinÚoutÚrollÚzs r&Úcompute_one_sided_zscoresreMÜ
,‰,˜ " X¡,×"5Ñ"5Ð
7€CØ
òØ ˆq‰EL‰LœÓ ˆØw‰wqz׸=ˆØ
‰_ §¡£
× 2Ñ 2°1´b·f±fÓ =Ñ ØŸˆˆbˆHŠ
ð 
€Jr?c
óÄtjtj|«d¬«tj|«z}||}||}t|«dkr!t d«t d«t|«dœSt |¬«}g}|j
|«D]Y\}}td¬«}|j||||«|jt|||j||«««Œ[t tj|««t tj|««|D cgc]
} t | «Œc} tt|««d œScc} w)
u3Time-series-aware k-fold R² with Ridge regression.rR)ÚaxisiôrI)Úr2_meanÚr2_stdÚn)Ún_splitsgð?)Úalpha)rhriÚr2_foldsrj)rGÚallÚisfiniteÚlenrJrÚsplitrÚfitr1rÚpredictr[r\Úint)
ÚyrkÚmaskÚtscvÚscoresÚtrÚteÚmodelrbs
r&Úcv_r2r}Wsä
6‰6”"—++˜a“.  )¬B¯K©K¸«NÑ :€DØ ˆ$‰€AØ ˆ$‰€AÜ
ˆ1ƒv  <´5¸³<ÄcÈ!ÃfÑ   -€DØ
€FØ—*‘*˜Q“-ò=‰ˆˆBܘCÔ ˆØ
!B‘%˜˜2™ÔØ
”h˜q ™u e§m¡m°A°b±EÓ&:Ó
œŸ ÓœŸ Ó(Ø'-Ö. !”U˜1•XÒ”s˜1“v“;ñ  ðùò/sÄ3Ecóìttj«dkDrtjdnd}t|«}t d|j
d«t
j|dz j««}t d|dd|jd ««t d
|d d |d
d|d«t d|dd|dd|dd«t|«}t|t«}t|t|d«}|j|dd¬«}t dt|«dtd«t d«|tDcgc]}d|Œ c}j }i}tD]j}|d|j } t#|| «}
|
||<t d |d!|
d"d#d$|
d%d&d'|
jd(g«D cgc]} | d)Œc} d*|
d+
«Œlt «|d,z |d-z |d.z d/œ} | D
cic]}
|
iŒ}}
| j%«D]=\}
}|j'«st d0|
d1|j
d2«Œ4t)j*|«}|j|dgtDcgc]}d|Œ c}zdd¬«}t d0|
d3|j
d4t|«d5«d6D]w}||j-«}t|«sŒ"t d7|d8|j/«d)d9|j1«d:d;|j3«d)d<|j5«d)
«Œy|t6j }tD]m}|d|j } t#|| «}
|
||
|<t d |d!|
d"d#d$|
d%d&d'|
jd(g«D cgc]} | d)Œc} d*|
d+
«Œo|j|dd¬«}|t6tDcgc]}d|Œ c}zj }tD]F}|d|j } t#|| «}
|
||
|d=<t d |d>|
d"d#d*|
d+«ŒHt «Œ@t d?«t d@«t d?«t dAdBdCdDdEdD«t dF«t dGdB|jdHi«jd"t9dI««dJ|jdKi«jd"t9dI««dJ«d/D}
|
|vs||
sŒ
t dL|
zdMzdB||
jdHi«jd"t9dI««dJ||
jdKi«jd"t9dI««dJ«t dL|
zdNzdB||
jdOi«jd"t9dI««dJ||
jdPi«jd"t9dI««dJ›«Œòt «t dQ«|jdHi«jd"t9dI««}dRD]}
|
|vs||
sŒ||
jdHi«jd"t9dI««}||
jdOi«jd"t9dI««}t;j<|«sŒ€t;j<|«sŒ–||z
}t;j<|«r||z
n
t9dI«}|dSkDrdTndU}t dV|
dW|d#dX|«t;j<|«sŒô|dSkDrdYndZ}t dV|
d[|d#dX|«Œt d\«ycc}wcc} wcc}