Show live hedge budget buffer ratio in options-options rule tips.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-20 10:32:06 +08:00
parent c9229d64bf
commit 3ae7def999
4 changed files with 22 additions and 5 deletions
+17 -3
View File
@@ -37,7 +37,11 @@
tradingUsdc: null,
fundingUsdc: null,
tradeBudgetUsdc: null,
budgetBuffer: 0.95,
budgetBuffer: (function () {
const raw = root.getAttribute("data-budget-buffer");
const n = raw != null && raw !== "" ? Number(raw) : NaN;
return !Number.isNaN(n) && n > 0 ? n : 0.95;
})(),
previewOk: false,
canStart: false,
previewPlanType: null,
@@ -239,6 +243,15 @@
if (modal) modal.hidden = true;
}
function applyBudgetBuffer(raw) {
if (raw == null || raw === "") return;
const buf = Number(raw);
if (Number.isNaN(buf) || buf <= 0) return;
state.budgetBuffer = buf;
const el = $("hp-oo-buf-ratio");
if (el) el.textContent = fmt(buf, 2);
}
function setOptionsBalance(chain) {
const acct = (chain && chain.options_account) || {};
const label = (chain && chain.account_label) || acct.label || "期权账户";
@@ -254,8 +267,7 @@
state.tradeBudgetUsdc = Number(chain.trade_budget_usdc);
}
if (chain && chain.budget_buffer != null && chain.budget_buffer !== "") {
const buf = Number(chain.budget_buffer);
if (!Number.isNaN(buf) && buf > 0) state.budgetBuffer = buf;
applyBudgetBuffer(chain.budget_buffer);
}
const line =
label +
@@ -528,6 +540,7 @@
if (d.oo_bias_ratio != null && Number(d.oo_bias_ratio) > 0 && Number(d.oo_bias_ratio) < 1) {
state.ooBiasRatio = Number(d.oo_bias_ratio);
}
if (d.budget_buffer != null) applyBudgetBuffer(d.budget_buffer);
syncOoCloseModeUI();
setGateLine(d);
if (state.mode === "options_options") autoFillOoSheets();
@@ -1824,6 +1837,7 @@
syncPoDirUI();
syncOoSizeModeUI();
syncOoCloseModeUI();
applyBudgetBuffer(state.budgetBuffer);
updateOoBudgetLine(null);
bind();
void refreshAll();