{{ tt('strategy.martingaleUnified.desc', null, 'Start/stop, risk controls and close-all in Workbench. Use Positions & PnL for portfolio view. Use Orders for full order history. Use Design to edit parameters.') }}

{{ tt('strategy.martingaleUnified.riskWarnTitle', null, '') }}{{ tt('strategy.martingaleUnified.riskStrip', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.chartTitle', null, '') }}
{{ trendPointCount !== null ? ' ' : '' }}{{ chartHint }}
{{ tt('strategy.martingaleUnified.pnlTab.statsTagHold', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.statsTitle', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statsHint', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statStrategies', null, '') }}
{{ wbFleetSummary.totalStrategies }}
{{ tt('strategy.martingaleUnified.pnlTab.statStrategiesSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statTotalUnreal', null, '') }}
{{ wbFleetSummary.totalUpnlDisplay }}USDT
{{ tt('strategy.martingaleUnified.pnlTab.statTotalUnrealSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statInvest', null, '') }}
{{ wbFleetSummary.totalInvestedDisplay }}USDT
{{ tt('strategy.martingaleUnified.pnlTab.statInvestSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statRealized', null, '') }}
{{ pnlRealizedTotal == null ? '—' : ((pnlRealizedTotal >= 0 ? '+' : '') + fmt(pnlRealizedTotal, 2)) }}USDT
{{ tt('strategy.martingaleUnified.pnlTab.statRealizedSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statRunning', null, '') }}
{{ wbFleetSummary.running }}
{{ tt('strategy.martingaleUnified.wb.unitCount', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statRiskPause', null, '') }}
{{ wbFleetSummary.riskPaused }}
{{ tt('strategy.martingaleUnified.wb.unitCount', null, '') }}

{{ tt('strategy.martingaleUnified.pnlTab.posThTime', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThStrategy', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThCycle', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThLevel', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThSide', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThStatus', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThPrice', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThQty', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThAmt', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThRealized', null, '') }} {{ tt('strategy.martingaleUnified.pnlTab.posThUnreal', null, '') }} {{ tt('strategy.martingaleUnified.pnlTab.posThRemark', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThErr', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThOps', null, '') }}
{{ fmtTime(o.createdAt) }} {{ ordConfigLabel(o.configId) }} {{ o.cycleNo || 1 }} L{{ o.levelIdx || 0 }} {{ sideZh(o.side) }} {{ orderStatusZh(o.status) }} {{ fmt(o.filledPrice || o.price) }} {{ fmtQty(o.filledQuantity || o.quantity) }} {{ fmt(o.amountUsdt,2) }} {{ pnlText(o.realizedPnl) }} {{ posHoldUnrealizedCellText(o) }} {{ posHoldRemarkText(o) }} {{ o.errorMessage || '—' }}
{{ tt('strategy.martingaleUnified.wb.pagerPageOf', { cur: posHoldPage, total: posHoldTotalPages }, '') }}
{{ tt('strategy.martingaleUnified.riskWarnTitle', null, '') }}{{ tt('strategy.martingaleUnified.riskStrip', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statsTagSummary', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.statsPageTitle', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statOrdTotal', null, '') }}
{{ ordTotal }}
{{ tt('strategy.martingaleUnified.pnlTab.statOrdTotalSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statPageRealized', null, '') }}
{{ sumRealized>=0?'+':'' }}{{ fmt(sumRealized,2) }}USDT
{{ tt('strategy.martingaleUnified.pnlTab.statPageRealizedSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statPageUnreal', null, '') }}
{{ sumUnrealized>=0?'+':'' }}{{ fmt(sumUnrealized,2) }}USDT
{{ tt('strategy.martingaleUnified.pnlTab.statPageUnrealSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statBuys', null, '') }}
{{ buyCount }}
{{ tt('strategy.martingaleUnified.pnlTab.statBuysSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statSells', null, '') }}
{{ sellCount }}
{{ tt('strategy.martingaleUnified.pnlTab.statSellsSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.statFailed', null, '') }}
{{ failedCount }}
{{ tt('strategy.martingaleUnified.pnlTab.statFailedSub', null, '') }}
{{ tt('strategy.martingaleUnified.pnlTab.posThTime', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThStrategy', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThCycle', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThLevel', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThSide', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThStatus', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThPrice', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThQty', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThAmt', null, '') }}{{ tt('strategy.martingaleUnified.pnlTab.posThRealized', null, '') }} {{ tt('strategy.martingaleUnified.pnlTab.ordThSettlement', null, '') }} {{ tt('strategy.martingaleUnified.pnlTab.posThUnreal', null, '') }} {{ tt('strategy.martingaleUnified.pnlTab.posThErr', null, '') }}
{{ fmtTime(o.createdAt) }} {{ ordConfigLabel(o.configId) }} {{ o.cycleNo || 1 }} L{{ o.levelIdx || 0 }} {{ sideZh(o.side) }} {{ orderStatusZh(o.status) }} {{ fmt(o.filledPrice || o.price) }} {{ fmtQty(o.filledQuantity || o.quantity) }} {{ fmt(o.amountUsdt,2) }} {{ pnlText(o.realizedPnl) }} {{ ordSettlementText(o) }} {{ ordUnrealizedCellText(o) }} {{ o.errorMessage || '—' }}
{{ tt('strategy.martingaleUnified.wb.pagerPageOf', { cur: ordPage, total: ordTotalPages }, '') }}