("position");
+ const [stratRulesOpen, setStratRulesOpen] = useState(false);
+ const [runtimeRulesOpen, setRuntimeRulesOpen] = useState(false);
const [newUsername, setNewUsername] = useState(getUsername() || "admin");
const [currentPassword, setCurrentPassword] = useState("");
@@ -247,11 +276,6 @@ export default function SettingsPage() {
{tab === "strategy" ? (
-
- {(runtime?.mode ?? mode) === "LIVE"
- ? "当前 LIVE:仓位/选约/出场影响真下单;模拟资金已隐藏。"
- : "当前 SIM:本地撮合;可改模拟资金与交易所行情源。"}
-
{stratOk ?
{stratOk}
: null}
{err && tab === "strategy" ?
{err}
: null}
@@ -301,9 +325,6 @@ export default function SettingsPage() {
币安(USDT 永续 + 欧洲期权)
-
- 有持仓时不可切换。切换后套用该所合约并重连行情。
-
{(runtime?.mode ?? mode) !== "LIVE" ? (
@@ -319,9 +340,6 @@ export default function SettingsPage() {
setInitialEquity(Number(e.target.value))
}
/>
-
- 仅 SIM 显示。保存后重置权益(须无持仓)。默认 10000。
-
) : null}
@@ -405,9 +423,6 @@ export default function SettingsPage() {
-
- 关闭时不限制 |ATM − 现价|;开启后超过下方点数则不开仓。
-
@@ -421,9 +436,6 @@ export default function SettingsPage() {
value={maxAtmOff}
onChange={(e) => setMaxAtmOff(Number(e.target.value))}
/>
-
- 仅开关开启时生效。币安行权价较粗时可能长时间无开仓机会。
-
@@ -491,9 +503,6 @@ export default function SettingsPage() {
value={closeDevPct}
onChange={(e) => setCloseDevPct(Number(e.target.value))}
/>
-
- 主要用于 SIM 流动性闸门;LIVE 以交易所能否成交为准。
-
@@ -530,9 +539,6 @@ export default function SettingsPage() {
setOrderInterval(Number(e.target.value))
}
/>
-
- LIVE 私有下单/查单间隔,默认 1s。范围 0.2–30。
-
@@ -561,6 +567,53 @@ export default function SettingsPage() {
) : null}
+
setStratRulesOpen((v) => !v)}
+ >
+
+ -
+ {(runtime?.mode ?? mode) === "LIVE"
+ ? "当前 LIVE:仓位/选约/出场影响真下单;模拟资金已隐藏。"
+ : "当前 SIM:本地撮合;可改模拟资金与交易所行情源。"}
+
+ {stratSub === "position" ? (
+ <>
+ - 交易所:有持仓时不可切换。切换后套用该所合约并重连行情。
+ {(runtime?.mode ?? mode) !== "LIVE" ? (
+ -
+ 模拟资金:仅 SIM 显示。保存后重置权益(须无持仓)。默认
+ 10000。
+
+ ) : null}
+ >
+ ) : null}
+ {stratSub === "select" ? (
+ <>
+ -
+ 开仓 ATM 偏差限制:关闭时不限制 |ATM −
+ 现价|;开启后超过下方点数则不开仓。
+
+ -
+ 开仓 ATM 最大偏差:仅开关开启时生效。币安行权价较粗时可能长时间无开仓机会。
+
+ >
+ ) : null}
+ {stratSub === "exit" ? (
+ -
+ 平仓买一/标记最大偏差:主要用于 SIM
+ 流动性闸门;LIVE 以交易所能否成交为准。
+
+ ) : null}
+ {stratSub === "pace" ? (
+ -
+ 实盘下单最小间隔:LIVE 私有下单/查单间隔,默认 1s。范围
+ 0.2–30。
+
+ ) : null}
+
+
+
@@ -697,13 +737,37 @@ export default function SettingsPage() {
onChange={(e) => setBnSecret(e.target.value)}
/>
-
- 留空保存=不覆盖已有密钥。交易所选币安且 LIVE 时用此密钥真下单(无
- Passphrase)。
-
+ setRuntimeRulesOpen((v) => !v)}
+ >
+
+ -
+ SIM = 本地撮合;LIVE =
+ 当前所选交易所真下单(OKX / 币安均已接入)。密钥只写入服务器{" "}
+ .env
+ ,接口不回传明文。OKX 期权常需账户有 USDC;币安多为 USDT。
+
+ -
+ 当前:{runtime?.mode || "—"} · 交易所{" "}
+ {runtime?.exchange || "—"} ·{" "}
+ {runtime?.mode === "LIVE"
+ ? runtime.live_ready
+ ? "LIVE 就绪"
+ : `未就绪(${runtime.live_ready_reason})`
+ : "SIM"}
+ 。有持仓时不可切换模式。
+
+ -
+ 密钥留空保存 = 不覆盖已有配置。交易所选币安且 LIVE
+ 时用币安密钥真下单(无 Passphrase)。
+
+
+
+