Initial commit

This commit is contained in:
wanghep
2026-03-20 21:47:30 +08:00
commit 2eab960303
83 changed files with 51694 additions and 0 deletions

View File

@ -0,0 +1,21 @@
from datetime import datetime, time
from zoneinfo import ZoneInfo
from app.api.schemas import MarketState
def get_market_state(now: datetime | None = None) -> MarketState:
current = now or datetime.now(ZoneInfo("Asia/Shanghai"))
current_time = current.time()
if current_time < time(9, 30):
return "pre_open"
if time(9, 30) <= current_time < time(12, 0):
return "trading_am"
if time(12, 0) <= current_time < time(13, 0):
return "midday_break"
if time(13, 0) <= current_time < time(16, 0):
return "trading_pm"
if time(16, 0) <= current_time < time(16, 10):
return "finalizing"
return "closed"