Skip to content

Commit be9cee7

Browse files
aaron-jangclaude
andcommitted
refactor: 스나이퍼/VWAP를 cron 방식으로 변경 (매 분 정각 기준)
run_repeating(interval=60) → run_custom(cron)으로 변경: - 스나이퍼: 매 분 20초 (xx:xx:20) - VWAP: 매 분 40초 (xx:xx:40) 봇 기동 시점과 무관하게 항상 동일 시각에 실행. 두 job이 20초 간격으로 분산되어 tx_lock 경합 최소화. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 4fea74f commit be9cee7

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

trading_bot/app.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -207,9 +207,11 @@ async def post_init(application):
207207
# 💡 [Phase 2] 장 후반 15:30 EST: 사전 LOC 전량 취소 후 VWAP 1분봉 타격 준비
208208
jq.run_daily(scheduled_vwap_init_and_cancel, time=datetime.time(15, 30, tzinfo=est), days=(0,1,2,3,4), chat_id=cfg.get_chat_id(), data=app_data)
209209

210-
# 💡 스나이퍼 감시 및 VWAP 슬라이싱 (60초 간격 무한 반복)
211-
jq.run_repeating(scheduled_sniper_monitor, interval=60, chat_id=cfg.get_chat_id(), data=app_data)
212-
jq.run_repeating(scheduled_vwap_trade, interval=60, chat_id=cfg.get_chat_id(), data=app_data)
210+
# 💡 스나이퍼 감시 및 VWAP 슬라이싱 (매 분 cron, 서로 20초 간격으로 분산)
211+
jq.run_custom(scheduled_sniper_monitor, job_kwargs={"trigger": "cron", "second": "20"},
212+
chat_id=cfg.get_chat_id(), data=app_data)
213+
jq.run_custom(scheduled_vwap_trade, job_kwargs={"trigger": "cron", "second": "40"},
214+
chat_id=cfg.get_chat_id(), data=app_data)
213215

214216
# 💡 [Phase 3] 15:59 EST 긴급 수혈 (MOC)
215217
jq.run_daily(scheduled_emergency_liquidation, time=datetime.time(15, 59, tzinfo=est), days=(0,1,2,3,4), chat_id=cfg.get_chat_id(), data=app_data)

0 commit comments

Comments
 (0)