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

179 lines
19 KiB
Plaintext
Raw Normal View History

2026-06-06 17:34:30 +07:00
Ë
ûï#jÕ9ãó:dZddlmZddlZddlZddlZddlZddlZddlZddl m
Z
ddl m Z ddl
mZddlZddlZddlZdZdZdZd Ze d
«Zd Zd Zd Zd
Zgd¢Zgd¢ZdZ dZ!dZ"gd¢Z#gd¢Z$e#e$zZ%Gdd«Z&dZ'ddZ(dZ)dZ*dZ+dZ,e-dk(re,«yy)inject_sn_battery.py — signal-to-noise battery for per-variable lattice response
Decision authority: Claude Desktop, 2026-06-06.
Methodology
-----------
1. Baseline (10 min, no injects):
subscribe to 5556 telemetry, record stress_xx/yy/xy each sample,
compute σ per channel = the lattice's intrinsic noise floor.
2. Per-variable battery:
for each independent trade variable (6 of them) at 5 magnitudes
sampled from the real BTC day distribution (p10, p25, p50, p75, p90),
do exactly one isolated pulse:
- record pre-pulse stress (mean of last ~30s window)
- send single inject_density at (512, 512) sigma=32, strength encoded
- monitor next ~5s for peak |Δstress_*|
- wait for full decay (~150s ≈ 15k cycles) before next pulse
Record peak Δ per axis. S/N = peak_Δ / σ_baseline.
Output
------
/mnt/d/Resonance_Engine/sn_battery_results.jsonl
one record per (variable, magnitude) trial:
{
"variable": "signed_flow_usd",
"percentile": 90,
"raw_value": ...,
"z": ...,
"strength": ...,
"pre_cycle": ..., "post_cycle": ...,
"pre": {"stress_xx": ..., "stress_yy": ..., "stress_xy": ...,
"asymmetry": ..., "coherence": ...},
"peak_delta_abs": {"stress_xx": ..., ...}, # max |during-pre|
"peak_delta_signed": {"stress_xx": ..., ...}, # signed delta at moment of max abs
}
followed by one summary record at end with sigma_baseline and S/N table.
LLM observer is NOT in this loop. Fractonaut watches passively, can be
queried afterward.
Run inside WSL (Windows pyzmq can't reach WSL loopback):
cd /mnt/d/Resonance_Engine
setsid nohup python3 -u inject_sn_battery.py > /tmp/sn_battery.log 2>&1 < /dev/null & disown
é)Ú annotationsN)Údeque)ÚPathz4/mnt/d/PaperTrader/research/hl_data/minutes/20260601ÚBTCztcp://127.0.0.1:5556ztcp://127.0.0.1:5557z0/mnt/d/Resonance_Engine/sn_battery_results.jsonlg€@g@@g333333Ó?)Ú mid_priceÚsigned_flow_usdÚ trade_countÚlarge_print_cntÚwallet_entropyÚ
vwap_drift)é
éé2éKéZiXéé–)Ú stress_xxÚ stress_yyÚ stress_xy)Ú asymmetryÚ coherenceÚvel_meanÚvel_varÚvorticity_meancó0eZdZdZdZdZdZdZdZy)Ú TelemetrySubcó tj«|_|jjtj«|_|j
j
tjd«|j
j|«tj«|_ d|_ td¬«|_d|_tj |j"d¬«|_|j$j'«y)i N)ÚmaxlenFT)ÚtargetÚdaemon)ÚzmqÚContextÚctxÚsocketÚSUBÚsubÚsetsockopt_stringÚ SUBSCRIBEÚconnectÚ threadingÚLockÚlockÚlatestrÚhistoryÚstopÚThreadÚ_runÚthreadÚstart)ÚselfÚaddrs ú,/mnt/d/Resonance_Engine/inject_sn_battery.pyÚ__init__zTelemetrySub.__init__cÜ—;‘;“=ˆŒØ—8‘8—?‘?¤3§7¡7ÓŒØ ×"¤3§=¡=°"Ô ×јÔÜ—N‘NÓŒ ؈Œ Ü EÔŒ ؈Œ Ü×&¨d¯i©iÀÔŒ Ø ×ÑÕócóÆ|j|jjd¬«}tj|«}t j
«|d<|j 5||_|jj|«ddd«|jsŒyy#1swYŒxYw#t$r/}td|d¬«t jd«Yd}~ŒNd}~wwxYw)Nr)ÚflagsÚ
_recv_wallz[tel] T©Úflushgš™™™™™¹?)
r1r(Ú recv_stringÚjsonÚloadsÚtimer.r/r0ÚappendÚ ExceptionÚprintÚsleep)r6ÚrawÚmsgÚes r8r3zTelemetrySub._runoØ—)
Ø—h‘h×Ð3Ü—j‘j “oÜ$(§I¡I£K—Y-Ø"%D”KØ—LL×Ô —)•)÷
-ûôò
ܘ˜q˜cl¨$Õ
˜3—ûð
ús0ŽAB(Á"#BÂB(ÂB%Â!B(Â( C Â1%CÃC cóŒ|j5|jrt|j«ndcddd«S#1swYyxYw©N)r.r/Údict©r6s r8Ú
get_latestzTelemetrySub.get_latest|s2Ø
Y‰Yñ >Ø(,¯ ª ”4˜Ÿ Ô$¸÷ >ús #:ºAcó°|j5|jDcgc]}|jdd«|k\sŒ|Œc}cddd«Scc}w#1swYyxYw)Nr=r)r.r0Úget)r6Út0Úms r8Úget_history_sincezTelemetrySub.get_history_since€sOØ
Y‰Yñ MØ#Ÿ|™|ÖL˜!¨q¯u©u°\À1Ó/EÈÓ/K Mñ MùÚ Mð Mús A œA·A»A ÁA Á Acóp|j5t|j«cddd«S#1swYyxYwrL)r.Úlistr0rNs r8Úsnapshot_historyzTelemetrySub.snapshot_history„s*Ø
Y‰Yñ˜Ÿ Ó &ús,¬5cózd|_|jj«|jj «y)NT)r1r(Úcloser%ÚtermrNs r8rYzTelemetrySub.closeˆs$؈Œ Ø ÔØ 
r:N) Ú__name__Ú
__module__Ú __qualname__r9r3rOrTrWrY©r:r8rrbs!ò
ò  òMòr:rcó|tjttt«dz ««}|Dcgc]%}t j
|«j
«Œ'}}tj|«jd«jd¬«}||jtk(jd¬«Scc}w)Nz *.parquetÚminuteT)Údrop)
ÚglobÚstrrÚ DATA_DAY_WSLÚpqÚ
read_tableÚ to_pandasÚpdÚconcatÚ sort_valuesÚ reset_indexÚcoinÚCOIN)ÚfilesÚdfsÚdfs r8Ú load_btc_dayrrsÜ I‰I”cœ$œ|Ó,¨{Ñ <€EØ16Ö
7¨AŒ2=‰=˜Ó ×
7€CÐ
3× #Ñ # HÓ -× 9Ñ 9¸tÐ 9Ó D€BØ
ˆbg‰gœ‰oÑ × Ð 5ùò 8s³*B9c
ó‚i}tD}||}t|j««t|j««}}g||<tD]l}tt j ||««}|dkDr||z
|z nd}tdtd|««} | dz tz}
||j|||| |
dœ«ŒnŒµ|S)zvFor each VAR, for each percentile, pick the row at that percentile
of the variable and compute (raw, z, strength).rçgÀg@)Ú
percentileÚ raw_valueÚz_clipÚstrength) ÚVARSÚfloatÚmeanÚstdÚ PERCENTILESÚnpruÚmaxÚminÚSTR_CAPrD) rqÚoutÚmuÚsdÚprHrwrxrys r8Úpercentile_strengthsr‰ð
€CÜ
òˆØ ˆq‰EˆÜq—v‘v“x“¤%¨¯©«£.ˆBˆØˆˆA‰Üò ˆAÜœŸ
 a¨Ó,ˆCØ#%¨¢6r‘˜R’¨sˆAܘœs 3¨›{Ó+ˆFØ  ¬Ñ/ˆHØ ‰FM‰MØØØ õ
ñ ð ð €Jr:cótdttt|dœ}|jt j
|««y)inject_density)ÚcmdÚsigmary)ÚINJECT_XÚINJECT_YÚ
INJECT_SIGÚ send_stringrAÚdumps)Úpubrys r8Ú
send_pulser­s.àÜÜØñ  €Cð‡OO”D—JJ˜s“OÕ$r:cóP|Dcgc] }||vsŒ||Œ}}|sytj|t¬«}t|«t|j ««t|j ««t|j
««t|j««dœScc}w)N)Údtype)Únr|r}rr€)rÚarrayr{Úlenr|r}rr€)ÚsamplesÚchr…ÚvalsÚarrs r8Ú
channel_statsr ¸Ø .a b¨A¢gˆAˆb .€DÐ ØÜ
(‰(4œuÔ
%€CäC“Üc—h‘h“jÓc—g‘g“iÓ Üc—g‘g“iÓ Üc—g‘g“iÓ ñ  ðùò /s
… B#B#cóªtjdd¬«5}|jtj|«dz«ddd«y#1swYyxYw)utf-8©Úencodingú
)ÚOUT_PATHÚopenÚwriterAr”)ÚrecÚfhs r8Úappendlnr¬ÆsBÜ s WˆÓ -ðØ
˜C“ 4Ñ)ús ˜(A Á Acó.tjjdd¬«tjdd¬«t dt j d«d¬«td t j d«ttttttttt d
œ d œ«t d t"d
d¬«t%«}t'|«}tD]9}||D]/}t d|dd|ddd|ddd|ddd|dd
d¬«Œ1Œ;td|dœ«t)t*«}t-j.«}|j1t,j2«}|j5t6«t j8d«t dtd d¬«t j
«}|j;«€Zt j
«|z
d!kr@t j8d"«|j;«t j
«|z
d!krŒ@|j;«€"t d#d¬«t=j>d$«t j
«}|j;«jAd%d&«} |tz}
t j
«|
krÑt j8d'«|j;«} | rt d(tCt j
«|z
«d)d*| jAd%d+«d,| jAd-d.«d/d0| jAd1d.«d2d3| jAd4d.«d2d5| jAd6d.«d2 d¬«t j
«|
krŒÑ|jE|«} t d7tG| «d8d¬«tHD
cic]}
|
tK| |
«Œ}}
td9tG| «| |d:œ«t d;d¬«tLD]8}
||
}|sŒ t d|
d<d=|d>d?d@|dAdBdC|dDd?dE|dFd?dG d¬«Œ:g}tD]!}||D]}|jOdH|i|¥«ŒŒ#tPjRjUdI¬J«}|jW|«t dKtG|«dLttztG|«zdMz dNdOd¬«tdP|Dcgc] }|dH|dfŒc}dQœ«tY|«D]$\}}|dH}|d}|d}t j
«dRz
}|j[«Dcgc]}|jAdSd.«|k\r|Œ}}tHD
cic]}
|
tK||
«Œ}}
|j;«xsi}|jAd%d&«}tHD
cic]}
|
||
r||
d>ndŒ}}
t j
«}t]||«t dT|d$zdUdVtG|«dt j dW«d|dd|dd|dXdY|d¬«|tz}tHD
cic]}
|
dZ“Œ} }
tHD
cic]}
|
dZ“Œ}!}
tHD
cic]}
|
dŒ}"}
t j
«|kr¤t j8d[«|j;«} | sŒ?tHD][}
||
}#| jA|
«}$|#|$€Œ|$|#z
}%t_|%«| |
kDsŒ5t_|%«| |
<|%|!|
<| jAd%«|"|
<Œ]t j
«|krŒ¤|j;«xsijAd%d&«}&d\||||d|d|d]|t j dt j`|««||&|| |!|"d^œ}'i}(tLD]%}
||
r||
dAnd})|)sŒ|)d.kDsŒ| |
|)z |(|
<Œ'|(|'d_<t|'«t d`| d1dad3| d4dad5| d6dadb| d-d/dc|(jAd6d.«dN
d¬«t j8t«Œ't ddd¬«g}*tjc«5}+|+D]=},tejf|,«}-|-jAde«d\k(sŒ-|*jO|-«Œ? ddd«i}.|*D}-|-dH}|-d}/|df|/}0i}1tLD]9}
||
r||
dAnd})|-dgjA|
«}%|)sŒ)|)d.kDsŒ/|%€Œ2|%|)z |1|
<Œ;|-dtLD
cic]}
|
|-dgjA|
«Œc}
tLD