更新okx关键位跳转
This commit is contained in:
+11
-11
@@ -5881,14 +5881,14 @@ def add_key():
|
|||||||
allowed_types = tuple(KEY_MONITOR_AUTO_TYPES) + tuple(KEY_MONITOR_ALERT_ONLY_TYPES) + tuple(FIB_KEY_MONITOR_TYPES)
|
allowed_types = tuple(KEY_MONITOR_AUTO_TYPES) + tuple(KEY_MONITOR_ALERT_ONLY_TYPES) + tuple(FIB_KEY_MONITOR_TYPES)
|
||||||
if mt not in allowed_types:
|
if mt not in allowed_types:
|
||||||
flash("监控类型无效")
|
flash("监控类型无效")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
rank, total = _daily_volume_rank(symbol)
|
rank, total = _daily_volume_rank(symbol)
|
||||||
if rank is None:
|
if rank is None:
|
||||||
flash("日成交量排名读取失败,请稍后重试")
|
flash("日成交量排名读取失败,请稍后重试")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
if rank > KEY_DAILY_VOLUME_RANK_MAX:
|
if rank > KEY_DAILY_VOLUME_RANK_MAX:
|
||||||
flash(f"{symbol} 当前日成交量排名为 {rank}/{total},不在前{KEY_DAILY_VOLUME_RANK_MAX},已拒绝添加关键位")
|
flash(f"{symbol} 当前日成交量排名为 {rank}/{total},不在前{KEY_DAILY_VOLUME_RANK_MAX},已拒绝添加关键位")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
conn = get_db()
|
conn = get_db()
|
||||||
if mt in KEY_MONITOR_AUTO_TYPES:
|
if mt in KEY_MONITOR_AUTO_TYPES:
|
||||||
occupied = get_active_position_count(conn)
|
occupied = get_active_position_count(conn)
|
||||||
@@ -5896,9 +5896,9 @@ def add_key():
|
|||||||
conn.close()
|
conn.close()
|
||||||
flash(
|
flash(
|
||||||
f"当前持仓已达上限({occupied}/{MAX_ACTIVE_POSITIONS}):无法添加「箱体突破 / 收敛突破」。"
|
f"当前持仓已达上限({occupied}/{MAX_ACTIVE_POSITIONS}):无法添加「箱体突破 / 收敛突破」。"
|
||||||
"请先平仓或使用阻力/支撑/斐波类型"
|
"请平仓后再试,或使用「关键阻力位/关键支撑位」(仅单次提醒)。"
|
||||||
)
|
)
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
ex_sym_key = normalize_okx_symbol(symbol)
|
ex_sym_key = normalize_okx_symbol(symbol)
|
||||||
try:
|
try:
|
||||||
ensure_markets_loaded()
|
ensure_markets_loaded()
|
||||||
@@ -5911,7 +5911,7 @@ def add_key():
|
|||||||
if upper_px <= lower_px:
|
if upper_px <= lower_px:
|
||||||
conn.close()
|
conn.close()
|
||||||
flash("上沿必须大于下沿")
|
flash("上沿必须大于下沿")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
be_flag = parse_breakeven_enabled_form(d.get("breakeven_enabled"))
|
be_flag = parse_breakeven_enabled_form(d.get("breakeven_enabled"))
|
||||||
if is_fib_key_monitor_type(mt):
|
if is_fib_key_monitor_type(mt):
|
||||||
ok_fib, err_fib = _add_fib_key_monitor(
|
ok_fib, err_fib = _add_fib_key_monitor(
|
||||||
@@ -5921,12 +5921,12 @@ def add_key():
|
|||||||
conn.close()
|
conn.close()
|
||||||
if not ok_fib:
|
if not ok_fib:
|
||||||
flash(err_fib or "斐波监控添加失败")
|
flash(err_fib or "斐波监控添加失败")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
flash(
|
flash(
|
||||||
f"斐波监控已添加,限价单已挂出({symbol} 日成交量排名 {rank}/{total})"
|
f"斐波监控已添加,限价单已挂出({symbol} 日成交量排名 {rank}/{total})"
|
||||||
f"|移动保本:{'开' if be_flag else '关'}"
|
f"|移动保本:{'开' if be_flag else '关'}"
|
||||||
)
|
)
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
sl_tp_mode = "standard"
|
sl_tp_mode = "standard"
|
||||||
manual_tp = None
|
manual_tp = None
|
||||||
if mt in KEY_MONITOR_AUTO_TYPES:
|
if mt in KEY_MONITOR_AUTO_TYPES:
|
||||||
@@ -5939,15 +5939,15 @@ def add_key():
|
|||||||
if manual_tp <= 0:
|
if manual_tp <= 0:
|
||||||
conn.close()
|
conn.close()
|
||||||
flash("趋势单方案须填写有效止盈价")
|
flash("趋势单方案须填写有效止盈价")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
if direction_sel == "long" and manual_tp <= upper_px:
|
if direction_sel == "long" and manual_tp <= upper_px:
|
||||||
conn.close()
|
conn.close()
|
||||||
flash("做多趋势单:止盈价应高于上沿(阻力)")
|
flash("做多趋势单:止盈价应高于上沿(阻力)")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
if direction_sel == "short" and manual_tp >= lower_px:
|
if direction_sel == "short" and manual_tp >= lower_px:
|
||||||
conn.close()
|
conn.close()
|
||||||
flash("做空趋势单:止盈价应低于下沿(支撑)")
|
flash("做空趋势单:止盈价应低于下沿(支撑)")
|
||||||
return redirect("/")
|
return redirect("/key_monitor")
|
||||||
mtpx = round_price_to_exchange(ex_sym_key, manual_tp)
|
mtpx = round_price_to_exchange(ex_sym_key, manual_tp)
|
||||||
if mtpx is not None:
|
if mtpx is not None:
|
||||||
manual_tp = float(mtpx)
|
manual_tp = float(mtpx)
|
||||||
|
|||||||
Reference in New Issue
Block a user