修复py3.9

This commit is contained in:
dekun
2026-05-22 22:44:24 +08:00
parent 5ff9cc4587
commit 9378fa1ca1
+13 -12
View File
@@ -1,6 +1,7 @@
from __future__ import annotations from __future__ import annotations
from datetime import datetime from datetime import datetime
from typing import Optional
from sqlalchemy import DateTime, Float, Integer, String, Text from sqlalchemy import DateTime, Float, Integer, String, Text
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column
@@ -54,10 +55,10 @@ class KeyMonitor(Base):
upper: Mapped[float] = mapped_column(Float) upper: Mapped[float] = mapped_column(Float)
lower: Mapped[float] = mapped_column(Float) lower: Mapped[float] = mapped_column(Float)
sl_tp_mode: Mapped[str] = mapped_column(String(24), default="standard") sl_tp_mode: Mapped[str] = mapped_column(String(24), default="standard")
manual_take_profit: Mapped[float | None] = mapped_column(Float, nullable=True) manual_take_profit: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
stop_outside_pct: Mapped[float] = mapped_column(Float, default=0.3) stop_outside_pct: Mapped[float] = mapped_column(Float, default=0.3)
breakeven_enabled: Mapped[int] = mapped_column(Integer, default=0) breakeven_enabled: Mapped[int] = mapped_column(Integer, default=0)
note: Mapped[str | None] = mapped_column(Text, nullable=True) note: Mapped[Optional[str]] = mapped_column(Text, nullable=True)
created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, index=True) created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, index=True)
@@ -67,7 +68,7 @@ class KeyMonitorHistory(Base):
__tablename__ = "key_monitor_history" __tablename__ = "key_monitor_history"
id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True) id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True)
key_monitor_id: Mapped[int | None] = mapped_column(Integer, nullable=True) key_monitor_id: Mapped[Optional[int]] = mapped_column(Integer, nullable=True)
symbol: Mapped[str] = mapped_column(String(32), index=True) symbol: Mapped[str] = mapped_column(String(32), index=True)
inst_id: Mapped[str] = mapped_column(String(48)) inst_id: Mapped[str] = mapped_column(String(48))
monitor_type: Mapped[str] = mapped_column(String(32)) monitor_type: Mapped[str] = mapped_column(String(32))
@@ -75,15 +76,15 @@ class KeyMonitorHistory(Base):
upper: Mapped[float] = mapped_column(Float) upper: Mapped[float] = mapped_column(Float)
lower: Mapped[float] = mapped_column(Float) lower: Mapped[float] = mapped_column(Float)
sl_tp_mode: Mapped[str] = mapped_column(String(24)) sl_tp_mode: Mapped[str] = mapped_column(String(24))
manual_take_profit: Mapped[float | None] = mapped_column(Float, nullable=True) manual_take_profit: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
stop_outside_pct: Mapped[float] = mapped_column(Float) stop_outside_pct: Mapped[float] = mapped_column(Float)
confirm_close: Mapped[float | None] = mapped_column(Float, nullable=True) confirm_close: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
planned_sl: Mapped[float | None] = mapped_column(Float, nullable=True) planned_sl: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
planned_tp: Mapped[float | None] = mapped_column(Float, nullable=True) planned_tp: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
planned_rr: Mapped[float | None] = mapped_column(Float, nullable=True) planned_rr: Mapped[Optional[float]] = mapped_column(Float, nullable=True)
executor_signal_id: Mapped[str | None] = mapped_column(String(64), nullable=True) executor_signal_id: Mapped[Optional[str]] = mapped_column(String(64), nullable=True)
executor_status: Mapped[str | None] = mapped_column(String(64), nullable=True) executor_status: Mapped[Optional[str]] = mapped_column(String(64), nullable=True)
checks_json: Mapped[str | None] = mapped_column(Text, nullable=True) checks_json: Mapped[Optional[str]] = mapped_column(Text, nullable=True)
last_alert_message: Mapped[str | None] = mapped_column(Text, nullable=True) last_alert_message: Mapped[Optional[str]] = mapped_column(Text, nullable=True)
close_reason: Mapped[str] = mapped_column(String(48), index=True) close_reason: Mapped[str] = mapped_column(String(48), index=True)
closed_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, index=True) closed_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, index=True)