fix: hot-reload trade direction/whitelist on env save without forced restart.
EOF Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -52,11 +52,11 @@ UPLOAD_DIR=static/images
|
||||
# BINANCE_FUNDING_INCLUDE_SPOT=false
|
||||
# 计仓:risk=以损定仓(默认);full_margin=合约可用×FULL_MARGIN_BUFFER_RATIO 全仓杠杆(须无仓后重启)
|
||||
POSITION_SIZING_MODE=risk
|
||||
# 方向限制(默认 false=双向均可;true 时按 TRADE_DIRECTION 限制,修改后须重启)
|
||||
# 方向限制(默认 false=双向均可;true 时按 TRADE_DIRECTION 限制;保存后热生效)
|
||||
# TRADE_DIRECTION=long_only | short_only | both(或 多/空/双向)
|
||||
TRADE_DIRECTION_RESTRICT_ENABLED=false
|
||||
TRADE_DIRECTION=both
|
||||
# 币种白名单(默认 false=全币种可手输;true 时关键位/下单/策略仅下拉选择)
|
||||
# 币种白名单(默认 false=全币种可手输;true 时关键位/下单/策略仅下拉;保存后热生效)
|
||||
TRADE_SYMBOL_RESTRICT_ENABLED=false
|
||||
TRADE_SYMBOL_WHITELIST=BTC,ETH
|
||||
# 每天起始基数(U)
|
||||
|
||||
@@ -408,6 +408,17 @@ AUTO_TRANSFER_BJ_HOUR = int(os.getenv("AUTO_TRANSFER_BJ_HOUR", "8"))
|
||||
POSITION_SIZING_MODE = load_position_sizing_mode()
|
||||
KEY_AUTO_ORDER_ENABLED = load_key_auto_order_enabled()
|
||||
TRADE_POLICY = load_trade_policy()
|
||||
|
||||
|
||||
def _reload_trade_policy_from_env(changed_keys=None):
|
||||
"""env 保存后热更新方向/白名单策略(无需重启)."""
|
||||
global TRADE_POLICY
|
||||
keys = set(changed_keys or [])
|
||||
from lib.env.env_schema import TRADE_POLICY_ENV_KEYS
|
||||
|
||||
if keys and not keys.intersection(TRADE_POLICY_ENV_KEYS):
|
||||
return
|
||||
TRADE_POLICY = load_trade_policy()
|
||||
WECHAT_TIMEOUT_SECONDS = int(os.getenv("WECHAT_TIMEOUT_SECONDS", "10"))
|
||||
AI_TIMEOUT_SECONDS = int(os.getenv("AI_TIMEOUT_SECONDS", "120"))
|
||||
MONITOR_POLL_SECONDS = int(os.getenv("MONITOR_POLL_SECONDS", "3"))
|
||||
@@ -10052,6 +10063,7 @@ try:
|
||||
exchange_key="binance",
|
||||
username=USERNAME,
|
||||
password=PASSWORD,
|
||||
on_env_changed=lambda keys: _reload_trade_policy_from_env(keys),
|
||||
)
|
||||
except Exception as _settings_err:
|
||||
print(f"[instance_settings] binance: {_settings_err}")
|
||||
|
||||
Reference in New Issue
Block a user