OBV 신호선 점선 처리로 본선과 시각 구분 보장

- 진단 로그로 두 시리즈가 정상 생성됨을 확인 (series:2, visible:true, color:#2196F3)
- 미니차트는 800봉 누적 OBV 계산 → 마지막 200봉 구간에서 OBV와 SMA(9)가 수렴,
  주황 신호선이 파란 본선을 덮어 1개 선처럼 보이는 것이 원인
- registry plot1에 lineStyle:'dashed' 추가
- normalizeSignalLineIndicatorPlots OBV 분기에서 plot0=solid, plot1=dashed 강제

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Macbook
2026-06-09 09:00:00 +09:00
parent 96f4ad8f7d
commit 91d52e9e26
2 changed files with 9 additions and 23 deletions
-22
View File
@@ -928,23 +928,6 @@ export class ChartManager {
);
}
// ── OBV 진단 로그 (개발용) ────────────────────────────────────────────
if (config.type === 'OBV') {
const plotKeys = Object.keys(result.plots);
const seriesIds = seriesMeta.map(m => m.plotId);
const volSum = this.rawBars.reduce((s, b) => s + (Number(b.volume) || 0), 0);
// eslint-disable-next-line no-console
console.error(
'[OBV Debug] series:', seriesList.length,
'| plotIds:', seriesIds,
'| resultKeys:', plotKeys,
'| plotVisibility:', JSON.stringify(config.plotVisibility),
'| plot0Color:', config.plots?.find(p => p.id === 'plot0')?.color,
'| bars:', this.rawBars.length,
'| volSum>0:', volSum > 0,
'| pane:', pane,
);
}
// hlines(과열선/중앙선/침체선)는 첫 번째 시리즈에만 한 번 생성 (중복 방지)
const hlineRefs: IPriceLine[] = [];
@@ -2921,11 +2904,6 @@ export class ChartManager {
} else {
opts['color'] = plot.color ?? '#aaa';
}
// ── OBV plot0 스타일 진단 로그 ──────────────────────────────────────────
if (entry.type === 'OBV' && pid === 'plot0') {
// eslint-disable-next-line no-console
console.error('[OBV Style] plot0 opts:', JSON.stringify({ visible: opts['visible'], color: opts['color'], lineWidth: opts['lineWidth'] }));
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
series.applyOptions(opts as any);
});