전략평가 화면 수정
This commit is contained in:
@@ -775,50 +775,6 @@ function StrategyEvaluationPageInner({ theme = 'dark' }: Props) {
|
||||
|
||||
return (
|
||||
<div className={`btd-page se-page se-page--${theme}`}>
|
||||
{selectedStrategy && (signalScanRunning || analysisSummary) && (
|
||||
<header className="btd-header btd-header--seval-summary">
|
||||
<div className="btd-header-actions seval-header-analysis">
|
||||
{selectedStrategy && signalScanRunning && (
|
||||
<span className="seval-header-analysis-busy">시그널 계산 중…</span>
|
||||
)}
|
||||
{selectedStrategy && analysisSummary && !signalScanRunning && (
|
||||
<span
|
||||
className="seval-analysis-summary"
|
||||
title="일괄매수(최초 전액) · 분할매수(40/30/잔여) · 레포트와 동일 필터 기준"
|
||||
>
|
||||
<span className="seval-analysis-item">
|
||||
매수:<strong>{padEvaluationSignalCount(analysisSummary.buyCount)}</strong>건
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className="seval-analysis-item">
|
||||
매도:<strong>{padEvaluationSignalCount(analysisSummary.sellCount)}</strong>건
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className={`seval-analysis-item seval-analysis-return${
|
||||
analysisSummary.fullBuyReturnPct > 0
|
||||
? ' seval-analysis-return--pos'
|
||||
: analysisSummary.fullBuyReturnPct < 0
|
||||
? ' seval-analysis-return--neg'
|
||||
: ''
|
||||
}`}>
|
||||
일괄:<strong>{formatEvaluationReturnPct(analysisSummary.fullBuyReturnPct)}</strong>
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className={`seval-analysis-item seval-analysis-return${
|
||||
analysisSummary.splitBuyReturnPct > 0
|
||||
? ' seval-analysis-return--pos'
|
||||
: analysisSummary.splitBuyReturnPct < 0
|
||||
? ' seval-analysis-return--neg'
|
||||
: ''
|
||||
}`}>
|
||||
분할:<strong>{formatEvaluationReturnPct(analysisSummary.splitBuyReturnPct)}</strong>
|
||||
</span>
|
||||
</span>
|
||||
)}
|
||||
</div>
|
||||
</header>
|
||||
)}
|
||||
|
||||
<div className="btd-body">
|
||||
<div
|
||||
className={`seval-left-wrap${leftOpen ? ' seval-left-wrap--open' : ''}`}
|
||||
@@ -978,6 +934,47 @@ function StrategyEvaluationPageInner({ theme = 'dark' }: Props) {
|
||||
|
||||
<main className={`btd-main${leftOpen ? '' : ' seval-main--left-collapsed'}`}>
|
||||
<div className="btd-main-content seval-main-content">
|
||||
{selectedStrategy && (signalScanRunning || analysisSummary) && (
|
||||
<div className="seval-chart-summary-bar">
|
||||
{signalScanRunning && (
|
||||
<span className="seval-header-analysis-busy">시그널 계산 중…</span>
|
||||
)}
|
||||
{analysisSummary && !signalScanRunning && (
|
||||
<span
|
||||
className="seval-analysis-summary"
|
||||
title="일괄매수(최초 전액) · 분할매수(40/30/잔여) · 레포트와 동일 필터 기준"
|
||||
>
|
||||
<span className="seval-analysis-item">
|
||||
매수:<strong>{padEvaluationSignalCount(analysisSummary.buyCount)}</strong>건
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className="seval-analysis-item">
|
||||
매도:<strong>{padEvaluationSignalCount(analysisSummary.sellCount)}</strong>건
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className={`seval-analysis-item seval-analysis-return${
|
||||
analysisSummary.fullBuyReturnPct > 0
|
||||
? ' seval-analysis-return--pos'
|
||||
: analysisSummary.fullBuyReturnPct < 0
|
||||
? ' seval-analysis-return--neg'
|
||||
: ''
|
||||
}`}>
|
||||
일괄:<strong>{formatEvaluationReturnPct(analysisSummary.fullBuyReturnPct)}</strong>
|
||||
</span>
|
||||
<span className="seval-analysis-sep" aria-hidden>·</span>
|
||||
<span className={`seval-analysis-item seval-analysis-return${
|
||||
analysisSummary.splitBuyReturnPct > 0
|
||||
? ' seval-analysis-return--pos'
|
||||
: analysisSummary.splitBuyReturnPct < 0
|
||||
? ' seval-analysis-return--neg'
|
||||
: ''
|
||||
}`}>
|
||||
분할:<strong>{formatEvaluationReturnPct(analysisSummary.splitBuyReturnPct)}</strong>
|
||||
</span>
|
||||
</span>
|
||||
)}
|
||||
</div>
|
||||
)}
|
||||
<StrategyEvaluationChart
|
||||
market={market}
|
||||
timeframe={chartTimeframe}
|
||||
|
||||
Reference in New Issue
Block a user