Add T-shaped options chain view with straddle metrics (phase A).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-11 15:00:50 +08:00
parent c9c8388250
commit 6f6545ce52
5 changed files with 443 additions and 19 deletions
+93
View File
@@ -3124,6 +3124,7 @@ html[data-theme="light"] .opt-be-dist-down {
.opt-uly-btn.active,
.opt-type-btn.active,
.opt-money-btn.active,
.opt-view-btn.active,
.opt-pos-tab.active {
border-color: #5b8cff;
color: #cfe0ff;
@@ -3142,6 +3143,98 @@ html[data-theme="light"] .opt-be-dist-down {
.opt-strike-row.opt-row-selected td:first-child {
box-shadow: inset 3px 0 0 #5b8cff;
}
.opt-chain-view-group {
display: inline-flex;
gap: 4px;
}
.opt-type-btn-group {
display: inline-flex;
gap: 4px;
}
.opt-strike-expand-label {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 0.78rem;
color: var(--text-soft, #9aa4b2);
white-space: nowrap;
cursor: pointer;
user-select: none;
}
.opt-strike-expand-label input {
margin: 0;
}
.options-strike-table-wrap--t {
max-height: 380px;
}
.options-strike-table--t thead th {
text-align: center;
}
.options-strike-table--t .opt-t-head-call {
text-align: center;
color: #8ec5ff;
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.options-strike-table--t .opt-t-head-mid {
text-align: center;
color: #ffd48a;
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.options-strike-table--t .opt-t-head-put {
text-align: center;
color: #ff9f9f;
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.options-strike-table--t .opt-t-strike {
text-align: center;
font-variant-numeric: tabular-nums;
background: rgba(255, 255, 255, 0.03);
}
.options-strike-table--t .opt-t-mid {
text-align: center;
background: rgba(255, 212, 138, 0.04);
}
.options-strike-table--t .opt-t-straddle-prem {
font-variant-numeric: tabular-nums;
white-space: nowrap;
}
.options-strike-table--t .opt-t-straddle-band {
font-variant-numeric: tabular-nums;
white-space: nowrap;
font-size: 0.72rem;
color: var(--text-soft, #9aa4b2);
}
.options-strike-table--t .opt-t-call,
.options-strike-table--t .opt-t-put {
text-align: center;
}
.options-strike-table--t .opt-strike-row-atm td {
background: rgba(255, 212, 138, 0.08);
}
.options-strike-table--t .opt-strike-row-atm .opt-t-strike strong {
color: #ffd48a;
}
.options-strike-table--t .opt-strike-row.opt-row-selected td {
background: rgba(74, 124, 255, 0.12);
}
.opt-strike-hint-row td {
text-align: center;
font-size: 0.72rem;
padding: 8px 4px;
border-bottom: none;
}
html[data-theme="light"] .options-strike-table--t .opt-t-head-call {
color: #1565c0;
}
html[data-theme="light"] .options-strike-table--t .opt-t-head-mid {
color: #e65100;
}
html[data-theme="light"] .options-strike-table--t .opt-t-head-put {
color: #c62828;
}
html[data-theme="light"] .options-strike-table--t .opt-strike-row-atm td {
background: rgba(255, 152, 0, 0.08);
}
.opt-order-inline-row td {
padding: 14px 16px !important;
background: rgba(74, 124, 255, 0.07);