Remove USDC product path; CoinOX is coin-margined only.
Drop USDC open/quote/swap APIs and env knobs; retarget hedge/settings copy to USDT/coin. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Vendored
+19
-58
@@ -27,7 +27,7 @@ _EXCHANGE_LIVE_FIELDS: dict[str, list[tuple[str, str, str]]] = {
|
||||
(
|
||||
"OKX_SHOW_PERP_FUNDS",
|
||||
"显示永续资金",
|
||||
"默认开启;关闭后顶栏隐藏 USDT 资金账户与交易账户,总资金仅计期权 USDC 侧",
|
||||
"默认开启;关闭后顶栏隐藏 USDT 资金账户与交易账户",
|
||||
),
|
||||
],
|
||||
"binance": [
|
||||
@@ -176,63 +176,38 @@ _OPTIONS_SECTION: dict[str, Any] = {
|
||||
"title": "期权账户",
|
||||
"exchanges": frozenset({"okx"}),
|
||||
"fields": [
|
||||
("OKX_OPTIONS_ENABLED", "启用期权模块", "与永续共用上方 OKX_API_*;不再单独配置期权密钥"),
|
||||
("OKX_OPTIONS_ENABLED", "启用期权模块", "与永续共用上方 OKX_API_*;CoinOX 固定币本位"),
|
||||
("OKX_OPTIONS_ACCOUNT_LABEL", "期权账户备注", ""),
|
||||
(
|
||||
"OKX_OPTIONS_MARGIN_MODE",
|
||||
"单笔期权本位",
|
||||
"usdc=USDⓈ权利金;coin=币本位+USDT买币桥(默认)。有持仓/半成品桥时勿切换;改后需重启",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_TRADE_BUDGET_USDC",
|
||||
"单笔预算(USDC)",
|
||||
"仅 USDC 模式且全仓复利关闭时显示/生效;用于「按可用余额打满」及张数/币数上限",
|
||||
),
|
||||
("OKX_OPTIONS_BUDGET_BUFFER", "预算缓冲比例", "如 0.95;USDC 打满/全仓复利与币本位复利共用"),
|
||||
("OKX_OPTIONS_BUDGET_BUFFER", "预算缓冲比例", "如 0.95;币本位复利/固定预算共用"),
|
||||
(
|
||||
"OKX_OPTIONS_COIN_COMPOUND",
|
||||
"币本位按交易户USDT复利",
|
||||
"按交易户USDT复利",
|
||||
"默认 true;预算=交易账户USDT×缓冲;关闭则用下方固定 USDT 预算×缓冲",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COIN_BUDGET_USDT",
|
||||
"币本位固定预算(USDT)",
|
||||
"仅币本位且复利关闭时生效",
|
||||
"固定预算(USDT)",
|
||||
"仅复利关闭时生效",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COIN_MAX_USDT_ENABLED",
|
||||
"币本位单笔上限开关",
|
||||
"单笔上限开关",
|
||||
"默认 false=靠人工转走控规模;true 时预算不超过下方 N U",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COIN_MAX_USDT",
|
||||
"币本位单笔上限(USDT)",
|
||||
"单笔上限(USDT)",
|
||||
"仅上限开关开启时生效",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COIN_SPOT_BUY_BUFFER",
|
||||
"币本位现货买入缓冲",
|
||||
"相对权利金倍数,默认 1.10(=多买10%);也可写 0.10 表示+10%。按最大可开张数×卖一权利金×本缓冲买币,不全额兑换",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COMPOUND_FULL_ENABLED",
|
||||
"全仓复利开关",
|
||||
"默认 true;仅 USDC 模式。开启时隐藏单笔预算且不可用打满预算,下单以全仓复利为主;关闭则恢复单笔预算并隐藏全仓复利",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COMPOUND_FULL_CAP_ENABLED",
|
||||
"全仓复利上限开关",
|
||||
"仅全仓复利开启时有意义;默认 false=不设上限用期权户全部可用;true 时按下方上限封顶",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_COMPOUND_FULL_CAP_USDC",
|
||||
"全仓复利上限(USDC)",
|
||||
"仅「全仓复利」且「上限开关」都开启时生效;例如 300",
|
||||
"现货买入缓冲",
|
||||
"相对权利金倍数,默认 1.10(=多买10%);按最大可开张数×卖一权利金×本缓冲买币",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_MAX_ACTIVE_POSITIONS",
|
||||
"期权持仓上限(笔)",
|
||||
"仅「单独期权」模式生效;默认 0=不限制;按交易所期权合约笔数计数,同合约加仓不占新笔数",
|
||||
"仅「单独期权」模式生效;默认 0=不限制",
|
||||
),
|
||||
("OKX_OPTIONS_DEFAULT_UNDERLY", "默认标的", "如 ETH"),
|
||||
(
|
||||
@@ -248,7 +223,7 @@ _OPTIONS_SECTION: dict[str, Any] = {
|
||||
(
|
||||
"OKX_OPTIONS_CHAIN_ASK_LIQ_FILTER_ENABLED",
|
||||
"链上仅显示有卖一",
|
||||
"默认 true;开启后隐藏无卖一深度或深度不足1张的合约(含标记价估算行)",
|
||||
"默认 true;开启后隐藏无卖一深度或深度不足1张的合约",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_CLOSE_GATE_MODE",
|
||||
@@ -258,18 +233,13 @@ _OPTIONS_SECTION: dict[str, Any] = {
|
||||
(
|
||||
"OKX_OPTIONS_CLOSE_RECYCLE_MULT",
|
||||
"门控权利金倍数(全局)",
|
||||
"可选;填写则覆盖下方分本位默认值",
|
||||
"可选;填写则覆盖下方币本位默认值",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_CLOSE_RECYCLE_MULT_COIN",
|
||||
"门控权利金倍数(币本位)",
|
||||
"门控权利金倍数",
|
||||
"默认 1.05;premium 模式下 recyclable(U)≥premium(U)×本值",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_CLOSE_RECYCLE_MULT_USDC",
|
||||
"门控权利金倍数(USDC)",
|
||||
"默认 2;premium 模式下 recyclable(U)≥premium(U)×本值",
|
||||
),
|
||||
(
|
||||
"OKX_OPTIONS_CLOSE_NET_PNL_MIN_U",
|
||||
"门控净盈亏下限(U)",
|
||||
@@ -583,28 +553,19 @@ def build_env_ui_payload(
|
||||
|
||||
|
||||
def _mark_options_env_field_visibility(fields: list[dict[str, Any]]) -> list[dict[str, Any]]:
|
||||
"""按本位/全仓复利隐藏无关项(供 SSR/前端;切换开关仍可再显示)."""
|
||||
compound_on = True
|
||||
margin_mode = "coin"
|
||||
"""CoinOX 固定币本位;按复利开关隐藏固定预算等项."""
|
||||
coin_compound = True
|
||||
for f in fields:
|
||||
key = f.get("key")
|
||||
cur = str(f.get("current") or f.get("default") or "").strip()
|
||||
if key == "OKX_OPTIONS_COMPOUND_FULL_ENABLED":
|
||||
compound_on = _env_truthy(cur or "true")
|
||||
elif key == "OKX_OPTIONS_MARGIN_MODE":
|
||||
margin_mode = (cur or "coin").lower()
|
||||
if margin_mode not in ("coin", "usdc"):
|
||||
margin_mode = "coin"
|
||||
if key == "OKX_OPTIONS_COIN_COMPOUND":
|
||||
coin_compound = _env_truthy(cur or "true")
|
||||
out: list[dict[str, Any]] = []
|
||||
for f in fields:
|
||||
item = dict(f)
|
||||
key = item.get("key")
|
||||
hide = False
|
||||
if key == "OKX_OPTIONS_TRADE_BUDGET_USDC" and compound_on:
|
||||
hide = True
|
||||
if key == "OKX_OPTIONS_CLOSE_RECYCLE_MULT_USDC" and margin_mode == "coin":
|
||||
hide = True
|
||||
if key == "OKX_OPTIONS_CLOSE_RECYCLE_MULT_COIN" and margin_mode == "usdc":
|
||||
if key == "OKX_OPTIONS_COIN_BUDGET_USDT" and coin_compound:
|
||||
hide = True
|
||||
if hide:
|
||||
item["hidden"] = True
|
||||
|
||||
Reference in New Issue
Block a user