refactor: enhance Optuna backtesting framework, optimize orderbook filtering, and update database management utilities.

This commit is contained in:
Your Name
2026-08-12 10:19:19 +09:00
parent cb7e5037a0
commit c6bd62a25f
218 changed files with 31613 additions and 759 deletions

View File

@@ -0,0 +1,39 @@
import os
import sys
import logging
logging.basicConfig(level=logging.INFO)
from kis_trader.utils.env import set_db, invalidate_merged_env_cache
from database import TradeDB
from kis_trader.strategies.breakout import BreakoutStrategy
def test_sleep():
db = TradeDB()
set_db(db)
invalidate_merged_env_cache()
print("DB value of SCAN_REJECT_SLEEP_MIN:", db.get_merged_env_snapshot().get("SCAN_REJECT_SLEEP_MIN"))
# Initialize a dummy strategy instance
class DummyWS:
def __init__(self):
self.tick_recorder = None
self.trigger_eval_recorder = None
self.ws_cache = None
self.candle_agg = None
def get_candles(self, *args, **kwargs): return []
def get_current_candle(self, *args, **kwargs): return None
def fill_gap(self, *args, **kwargs): pass
def set_candle_tick_codes(self, *args, **kwargs): pass
ws = DummyWS()
strategy = BreakoutStrategy(db, ws, ws)
loop_min = strategy._scan_sleep("loop")
reject_min = strategy._scan_sleep("reject")
print(f"Loop sleep: {loop_min}")
print(f"Reject sleep: {reject_min}")
if __name__ == "__main__":
test_sleep()