Files
kis_bot/scratch/test_rust_session.py
Your Name e1ac8d119b chore: 작업 중 발생한 부수적 변경 사항 및 누락된 파일 전체 커밋
- 프론트엔드 UI 업데이트 (backtest.html, backtest.js) 엔진 라디오 버튼 통합 관련 반영
- Rust 플러그인(kis_rust_core) 및 컴파일 소스코드 추가
- CLI 백테스트 스크립트 수정 및 최신화
- 기타 스크래치 테스트 스크립트, 로그 요약 마크다운(.md) 등 누락 파일 일괄 반영
- 추가적으로 아직 발견되지 않은 엣지 케이스나 렌더링 오류가 포함되어 있을 가능성이 있음
2026-09-06 17:04:50 +09:00

46 lines
1.6 KiB
Python

import os
import sys
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))
from kis_trader.engine.tail_engine import init_rust_session, clear_rust_session
import kis_rust_core
def run_test():
session_id = "test_session_123"
# 가상의 양봉 데이터
mock_candles = {
"005930": [
{"candle_time": "20260901093000", "open": 60000, "high": 60500, "low": 59500, "close": 59800, "rsi": 50.0},
{"candle_time": "20260901093100", "open": 59800, "high": 61000, "low": 59000, "close": 60800, "rsi": 65.0},
{"candle_time": "20260901093200", "open": 60800, "high": 61500, "low": 60500, "close": 61200, "rsi": 70.0},
{"candle_time": "20260901093300", "open": 61200, "high": 62000, "low": 61000, "close": 61500, "rsi": 75.0},
]
}
print("1. init_rust_session 호출")
init_rust_session(session_id, mock_candles, None)
print("2. 파라미터 생성")
tp = kis_rust_core.TailParams(
930, 1500, 15.0, 3, 1000.0,
78.0, 0.01, 0.5, 0.003, True,
0.03, 0.05, 0.0, 0.0, 0.0, 0.0,
0, 200000.0, 0.015
)
print("3. run_engine_trial_tail 호출")
try:
trades = kis_rust_core.run_engine_trial_tail(session_id, tp)
print(f"반환된 trades 수: {len(trades)}")
for t in trades:
print(f" - [{t.code}] {t.buy_time} ~ {t.sell_time} | pnl: {t.pnl_pct:.2f}% | reason: {t.reason}")
except Exception as e:
print(f"에러 발생: {e}")
print("4. clear_rust_session 호출")
clear_rust_session(session_id)
if __name__ == "__main__":
run_test()