From 279d549555fe65233d21927ff9705c3ed61054f5 Mon Sep 17 00:00:00 2001 From: ILSEON-RYU Date: Fri, 1 May 2026 10:35:46 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B0=A8=ED=8A=B8=20hover=20=EA=B0=80=EA=B2=A9?= =?UTF-8?q?=EC=9D=84=20close=20=EB=A1=9C=20=ED=86=B5=EC=9D=BC=20(=ED=85=94?= =?UTF-8?q?=EB=A0=88=EA=B7=B8=EB=9E=A8=20=EC=A7=84=EC=9E=85=EA=B0=80?= =?UTF-8?q?=EC=99=80=20=EC=9D=BC=EC=B9=98)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 마커 위치는 시각적 충돌 방지를 위해 기존 보정값(low*0.9998 / high*1.0002) 유지하되, hover 텍스트의 "가격" 표기는 customdata 로 close 를 전달해 표시. 이제 차트 hover 와 텔레그램 알림 모두 동일한 close 가격으로 통일됨. Co-Authored-By: Claude Opus 4.7 (1M context) --- app_streamlit.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app_streamlit.py b/app_streamlit.py index 800ecd0..7fff34b 100644 --- a/app_streamlit.py +++ b/app_streamlit.py @@ -453,7 +453,7 @@ def build_chart(symbol, interval, candle_limit=200): ]: d = df[mask] if not d.empty: - cd = [[v] for v in d["open_time"].dt.strftime("%m/%d %H:%M").tolist()] + cd = list(zip(d["open_time"].dt.strftime("%m/%d %H:%M").tolist(), d["close"].tolist())) _long_sigs = ["강한 롱 진입 신호", "볼륨급등 롱 신호", "롱 진입 신호", "매도소진(롱)"] _short_sigs = ["강한 숏 진입 신호", "볼륨급등 숏 신호", "숏 진입 신호", "매수소진(숏)", "롱소진경고(숏전환)", "숏 진입(주의)"] if sig_name in _long_sigs: @@ -467,7 +467,7 @@ def build_chart(symbol, interval, candle_limit=200): mode="markers", marker=dict(symbol=sym, color=color, size=10), name=sig_name, customdata=cd, - hovertemplate="" + sig_name + "
신호: %{customdata[0]}
가격: %{y:,.1f}", + hovertemplate="" + sig_name + "
신호: %{customdata[0]}
가격: %{customdata[1]:,.1f}", showlegend=True, ), row=1, col=1) else: