export type AnalysisMethod = 'MARK_TO_MARKET' | 'REALIZED_ONLY'; export const ANALYSIS_METHOD_OPTIONS: { value: AnalysisMethod; label: string; desc: string }[] = [ { value: 'MARK_TO_MARKET', label: '평가손익 포함 (표준)', desc: '예수금 + 보유주식 시가평가. HTS·MTS 평가금액과 동일한 방식으로 수익률을 계산합니다.', }, { value: 'REALIZED_ONLY', label: '실현손익만', desc: '청산 완료된 거래의 실현손익만 반영합니다. 기말 미청산 포지션은 수익률에 포함하지 않습니다.', }, ]; export function normalizeAnalysisMethod(raw?: string | null): AnalysisMethod { return raw === 'REALIZED_ONLY' ? 'REALIZED_ONLY' : 'MARK_TO_MARKET'; } export function analysisMethodLabel(method?: string | null): string { const m = normalizeAnalysisMethod(method); return ANALYSIS_METHOD_OPTIONS.find(o => o.value === m)?.label ?? '평가손익 포함 (표준)'; }