# GoldenChart 사용자 매뉴얼

> 버전: 2026-05-21 기준  
> 스택: Spring Boot + Ta4j (백엔드) · React + TypeScript + lightweight-charts (프론트엔드)

---

## 목차

1. [앱 개요 및 시작](#1-앱-개요-및-시작)
2. [상단 메뉴바](#2-상단-메뉴바)
3. [실시간 차트 화면](#3-실시간-차트-화면)
   - 3.1 [상단 툴바](#31-상단-툴바)
   - 3.2 [드로잉 툴바 (좌측)](#32-드로잉-툴바-좌측)
   - 3.3 [차트 본체 및 지표](#33-차트-본체-및-지표)
   - 3.4 [멀티 차트 레이아웃](#34-멀티-차트-레이아웃)
   - 3.5 [좌측 마켓 패널](#35-좌측-마켓-패널)
   - 3.6 [우측 패널](#36-우측-패널)
   - 3.7 [백테스팅 (차트 내)](#37-백테스팅-차트-내)
   - 3.8 [실시간 전략 체크](#38-실시간-전략-체크)
   - 3.9 [매매 알림 팝업](#39-매매-알림-팝업)
   - 3.10 [기타 플로팅 패널](#310-기타-플로팅-패널)
   - 3.11 [화면 내 설정·모달](#311-화면-내-설정모달)
4. [투자전략 화면](#4-투자전략-화면)
   - 4.1 [화면 내 설정](#41-화면-내-설정)
5. [백테스팅 이력 화면](#5-백테스팅-이력-화면)
6. [설정 화면](#6-설정-화면)
   - 6.0 [설정 화면 개요 및 저장 범위](#60-설정-화면-개요-및-저장-범위)
   - 6.1 [일반 설정](#61-일반-설정)
   - 6.2 [차트 설정](#62-차트-설정)
   - 6.3 [백테스팅 설정](#63-백테스팅-설정)
   - 6.4 [전략 설정](#64-전략-설정)
   - 6.5 [알림 설정](#65-알림-설정)
   - 6.6 [네트워크 설정](#66-네트워크-설정)
7. [드로잉 툴 상세 사용법](#7-드로잉-툴-상세-사용법)
8. [키보드 단축키 모음](#8-키보드-단축키-모음)
9. [미구현 기능 안내](#9-미구현-기능-안내)

---

## 1. 앱 개요 및 시작

GoldenChart는 업비트 암호화폐 거래소의 실시간 시세를 기반으로 차트 분석·투자전략 수립·백테스팅을 지원하는 웹 기반 트레이딩 도구입니다.

### 지원 데이터 소스

| 구분 | 방식 | 설명 |
|------|------|------|
| **업비트 마켓** | REST (초기 300봉) + WebSocket (실시간 틱) | KRW·BTC 마켓 |
| **기타 심볼** | 시뮬레이션 데이터 | 테스트용 |

### 초기 화면

앱 진입 시 **실시간 차트** 화면이 기본으로 표시됩니다. 상단 메뉴에서 다른 화면으로 전환할 수 있습니다.

---

## 2. 상단 메뉴바

화면 최상단에 항상 표시되는 글로벌 내비게이션 바입니다.

| 메뉴 항목 | 기능 |
|-----------|------|
| **GoldenChart** (로고) | 홈(실시간 차트)으로 이동 |
| **대시보드** | 미구현 (메뉴만 존재) |
| **실시간차트** | 실시간 차트 화면으로 이동 |
| **투자전략** | 투자전략 빌더 화면으로 이동 |
| **백테스팅** | 백테스팅 이력 대시보드로 이동 |
| **설정** | 설정 화면으로 이동 |
| **테마 토글** (☀/🌙) | 다크 → 블루 → 라이트 테마 순환, DB에 자동 저장 |
| **로그인** | UI 버튼만 구현 (실제 인증 미연동) |

---

## 3. 실시간 차트 화면

앱의 핵심 화면으로, 차트·지표·드로잉·백테스팅·실시간 전략 기능을 모두 포함합니다.

---

### 3.1 상단 툴바

#### 좌측 컨트롤

| 버튼 | 기능 |
|------|------|
| **종목 검색** | 업비트 마켓 코드 검색 및 선택 (예: KRW-BTC) |
| **워치리스트** | 관심종목 패널 펼치기/접기 |
| **타임프레임** | `1m / 3m / 5m / 15m / 30m / 1h / 4h / 1D / 1W / 1M` 선택 |
| **차트 유형** | 캔들스틱 / 바 / 라인 / 영역 / 기준선 |
| **지표 추가 (Ind)** | 지표 선택 패널 열기 → 카테고리 탐색 또는 검색 후 클릭으로 추가 |
| **Undo / Redo** | 드로잉 되돌리기 / 다시 실행 |
| **자석 모드** | 크로스헤어 스냅 ON/OFF — ON 시 OHLCV 값에 자동 흡착 |
| **드로잉 전체 삭제** | 차트 위 모든 드로잉 오브젝트 제거 |
| **통계 패널** | 가격 통계 플로팅 창 열기 |
| **자동 피보나치** | 고점·저점 자동 피보나치 라인 표시 토글 |
| **그리드** | 차트 격자 표시 토글 |

#### 차트 모드 전환

| 버튼 | 기능 |
|------|------|
| **차트뷰** | 기본 분석 모드 — 드로잉 툴 비활성, 스크롤/줌 최적화 |
| **트레이딩뷰** | 드로잉 모드 — 좌측 드로잉 툴바 활성화 |

#### 백테스팅 버튼 그룹

> ⚠️ 싱글 차트 레이아웃 + 실시간 차트 페이지에서만 사용 가능합니다.

| 버튼 | 기능 |
|------|------|
| **백테스팅** | 전략 드롭다운 열기 — 전략 이름과 **실행** 버튼 목록 표시 |
| **설정** (⚙) | 백테스팅 옵션 설정 모달 열기 |
| **결과** (📊) | 마지막 백테스트 결과 대시보드 팝업 |
| **마커 삭제** (🗑) | 차트에 표시된 매수/매도 마커 모두 제거 |

> - **전략 실행**: 드롭다운에서 전략 우측 **실행** 버튼 클릭 → 현재 차트 캔들 데이터와 함께 백엔드로 전송 → 결과 마커 표시
> - **결과 자동 팝업**: 설정 → 백테스팅에서 ON 시 실행 후 결과 팝업이 자동 열림

#### 실시간 전략 체크 버튼

| 버튼 | 기능 |
|------|------|
| **LiveStrategy** (⚡) | 실시간 전략 체크 패널 열기/닫기 |

#### 우측 컨트롤

| 버튼 | 기능 |
|------|------|
| **좌측 패널 토글** | 마켓 패널 접기/펼치기 |
| **돋보기** | 차트 돋보기(확대경) 오버레이 팝업 |
| **레이아웃 (⊞)** | 멀티 차트 레이아웃 선택 및 동기화 설정 |
| **맞춤 (F)** | 차트 전체 데이터 범위에 맞게 뷰 조정 |
| **실시간 스크롤** | 최신 캔들로 자동 따라가기 ON/OFF |
| **가격 알림** (🔔) | 가격 알림 추가·관리 |
| **스크린샷** | 차트 영역 이미지 저장 |
| **전체화면** | 브라우저 전체화면 전환 |

---

### 3.2 드로잉 툴바 (좌측)

> **트레이딩뷰 모드**에서만 활성화됩니다.

툴바는 그룹별로 구성되며, 각 그룹 아이콘을 **호버**하면 하위 툴 플라이아웃이 펼쳐집니다.

#### 드로잉 공통 조작

| 조작 | 설명 |
|------|------|
| **클릭** | 앵커 포인트 배치 |
| **더블클릭 / Enter** | 드로잉 완료 확정 (다중 점 툴) |
| **Escape** | 현재 드로잉 취소 |
| **클릭 후 드래그** | 완성된 드로잉 이동 |
| **앵커 포인트 드래그** | 형태 조절 |
| **우클릭** | 설정·삭제 컨텍스트 메뉴 |

#### 그룹 목록 및 하위 툴

| 그룹 | 주요 하위 툴 |
|------|-------------|
| **커서** | 선택/이동 (기본 탐색 모드) |
| **라인** | 추세선, 확장선(Ray), 화살표, 수평선, 수직선, 수평 채널, 오름/내림 채널, 선형 회귀, 예측 조정 |
| **피보나치** | 되돌림, 확장, 채널, 타임존, 피치포크(중간·수정·쉬프), 갠 박스, 갠 팬 |
| **패턴** | XABCD, 헤드앤숄더, 엘리엇 파동(ABC/WXYXZ), 사이퍼, 사이클 삼각형 |
| **프로젝션** | 롱/숏 포지션, 예측, 앵커드 VWAP, 고정 볼륨 프로파일, 바 패턴, 지그재그, 고스트 피드 |
| **도형** | 사각형, 회전 사각형, 원, 타원, 삼각형, 평행사변형, 다각형, 호 |
| **브러시** | 자유 붓, 하이라이터, 방향 화살표(위/아래) |
| **텍스트 & 노트** | 텍스트, 노트(핀), 가격 노트, 콜아웃(말풍선), 고정 텍스트, 가격 라벨 |
| **측정** | 날짜·가격 범위, 데이터 창 |
| **확대/축소** | 돋보기(확대 뷰) |

#### 하단 고정 버튼

| 버튼 | 기능 |
|------|------|
| **자석** | 크로스헤어 스냅 강도 (끄기 / 약 / 강 / 지표 스냅) |
| **잠금** | 완성된 드로잉 이동 불가 고정 |
| **눈 (가시성)** | 드로잉 숨김 / 지표 숨김 / 전체 숨김 토글 |
| **되돌리기** | 마지막 드로잉 작업 취소 (Ctrl+Z) |
| **삭제** | 드로잉 삭제 / 지표 삭제 / 전체 삭제 |
| **레이어** | 오브젝트 트리 팝업 열기 (드로잉 목록 관리) |

---

### 3.3 차트 본체 및 지표

#### 기본 차트 조작

| 조작 | 설명 |
|------|------|
| **스크롤 좌우** | 시간축 이동 (왼쪽: 과거 데이터 자동 추가 로드) |
| **마우스 휠** | 줌인/줌아웃 |
| **오른쪽 드래그** | 가격축 스케일 조절 |
| **F 키** | 데이터 전체 맞춤 |
| **L 키** | 로그 스케일 전환 |

#### 무한 스크롤 (과거 데이터)

차트를 왼쪽으로 스크롤하여 맨 첫 번째 캔들에 도달하면 자동으로 과거 데이터를 요청합니다.
- 인메모리(최근 300봉) 범위 → 즉시 반환
- 인메모리 초과 → 업비트 REST API 프록시 조회

#### 지표 추가 방법

1. 상단 툴바 **Ind** 버튼 클릭
2. 카테고리 탐색 또는 검색창에 지표 이름 입력
3. 원하는 지표 클릭 → 차트에 즉시 추가

#### 지표 설정

| 방법 | 설명 |
|------|------|
| **pane 호버 → 설정 아이콘** | 지표 파라미터·색상·선 스타일 설정 |
| **지표 pane 우클릭** | 설정·숨김·삭제 메뉴 |
| **더블클릭 (지표 pane)** | 설정 모달 바로 열기 |

#### 지표 설정 항목

- **기간**: 이동평균 기간, 오실레이터 기간 등
- **색상**: 선 색상, 히스토그램 색상
- **선 스타일**: 실선, 점선, 대시
- **선 굵기**: 1~4px
- **과열선 / 중앙선 / 침체선**: 기준값·색상·스타일·굵기 개별 설정

> 지표 설정은 DB에 저장되어 앱 재실행 시에도 유지됩니다.

#### 지원 지표 카테고리 (126개+)

| 카테고리 | 대표 지표 |
|----------|-----------|
| **이동평균** | SMA(5/8/20/60/120), EMA(12/26), WMA, DEMA, TEMA, HMA, VWMA 등 |
| **오실레이터** | RSI, CCI, Stochastic, MACD, MFI, CMO, Williams %R, DPO, Aroon 등 |
| **추세** | ADX, DMI, Parabolic SAR, 일목균형표, TRIX 등 |
| **변동성** | 볼린저 밴드, ATR, 켈트너 채널, Donchian 채널, Mass Index 등 |
| **거래량** | OBV, Volume Oscillator, VWAP, Force Index, Chaikin MF 등 |
| **캔들 패턴** | 도지, 해머, 역망치, 봉선, 십자성, 삼병 등 44종 |

#### 차트 범례 (Legend)

크로스헤어를 차트 위에 올리면 각 pane에 현재 바의 값이 표시됩니다.
- **메인 pane**: 날짜·시간, O/H/L/C, 거래량, 등락률
- **지표 pane**: 지표명, 계산된 값

---

### 3.4 멀티 차트 레이아웃

상단 툴바 우측 **레이아웃(⊞)** 버튼에서 분할 방식을 선택합니다.

| 레이아웃 | 설명 |
|----------|------|
| **1분할** | 단일 차트 (기본) |
| **2분할 (가로/세로)** | 좌우 또는 상하 2개 |
| **3~8분할** | 다양한 그리드 구성 |

#### 슬롯 관리

- 분할된 각 차트 슬롯을 **클릭하여 활성화** (파란 테두리 표시)
- 활성 슬롯에서 종목·타임프레임·지표 변경 가능
- 슬롯 **전체보기 버튼**: 해당 슬롯을 싱글 화면으로 확대

#### 동기화 옵션

| 옵션 | 설명 |
|------|------|
| **심볼 동기화** | 모든 슬롯이 같은 종목을 표시 |
| **인터벌 동기화** | 모든 슬롯이 같은 타임프레임 유지 |
| **크로스헤어 동기화** | 한 슬롯의 크로스헤어가 모든 슬롯에 연동 |
| **시간축 동기화** | 모든 슬롯의 시간 범위 동기화 |

---

### 3.5 좌측 마켓 패널

종목 목록과 실시간 호가를 표시합니다.

#### 마켓 탭

| 탭 | 표시 내용 |
|----|-----------|
| **원화 (KRW)** | KRW 마켓 전체 종목, 현재가·등락률·거래량 |
| **BTC** | BTC 마켓 (USD 환산 가격 포함) |
| **보유** | localStorage에 저장된 보유 종목 |
| **관심** | 즐겨찾기(★) 등록 종목 |

- **종목 클릭**: 활성 슬롯의 심볼 변경
- **★ 버튼**: 관심종목 등록/해제 (DB 동기화)
- **가격 플래시**: 가격 변동 시 녹색(상승)/빨강(하락) 배경 깜빡임

#### 호가창 (OrderbookPanel)

패널 하단에 실시간 업비트 WebSocket 호가 데이터 표시.

| 영역 | 내용 |
|------|------|
| **매도 호가** | 가격(빨강), 잔량 바 |
| **현재가** | 중앙 강조 표시 |
| **매수 호가** | 가격(파랑), 잔량 바 |
| **스프레드** | 최우선 매도/매수 가격 차이 |

---

### 3.6 우측 패널

우측 접기/펼치기 버튼으로 개폐합니다.

| 탭 | 상태 |
|----|------|
| **알림** | UI 구조만 구현 (기능 미구현) |
| **매수** | UI 구조만 구현 (실제 주문 미연동) |
| **매도** | UI 구조만 구현 (실제 주문 미연동) |

---

### 3.7 백테스팅 (차트 내)

투자전략 빌더에서 만든 전략을 현재 차트 데이터로 즉시 테스트합니다.

#### 실행 방법

1. 상단 툴바 **백테스팅** 버튼 클릭 → 전략 드롭다운 표시
2. 원하는 전략 우측 **실행** 버튼 클릭
3. 차트에 매수(▲ 초록), 매도(▼ 빨강) 마커 표시
4. 결과 뱃지(시그널 수·승률·수익·MDD)가 상단에 표시

#### 결과 확인

| 방법 | 설명 |
|------|------|
| **상단 뱃지** | 간략 결과 (거래 수, 승률, 총 수익률, MDD) |
| **결과 버튼(📊)** | 상세 대시보드 팝업 (종합 지표·거래 이력·차트) |
| **백테스팅 이력 메뉴** | 과거 실행 결과 이력 대시보드 |

#### 상세 결과 지표

| 지표 | 설명 |
|------|------|
| 총 거래 수 | 전체 매수·매도 쌍의 수 |
| 승률 | 수익 발생 거래 비율 |
| 총 수익률 | 초기 자본 대비 최종 수익 |
| 최대 낙폭 (MDD) | 고점 대비 최대 손실 |
| 평균 수익/손실 | 수익/손실 거래의 평균 |
| Profit Factor | 총 이익 / 총 손실 |
| Sharpe Ratio | 위험 조정 수익률 |
| 보유 기간 | 평균 포지션 유지 봉 수 |

#### 마커 표시 옵션

- **매수 마커**: "매수" 한글 표시 (설정에서 금액 추가 표시 ON 시: "매수 : 1,000,000")
- **매도 마커**: "매도" 한글 표시
- **마커 삭제**: 툴바 🗑 버튼으로 전체 제거

---

### 3.8 실시간 전략 체크

선택한 전략 조건을 실시간으로 모니터링하여 매수/매도 시그널을 차트에 표시합니다.

#### 패널 열기

상단 툴바 **⚡** 버튼 클릭 → `LiveStrategyPanel` 팝업 표시

#### 설정 항목

| 항목 | 설명 |
|------|------|
| **실시간 체크 ON/OFF** | 토글 — ON 시 STOMP WebSocket 구독 시작 |
| **전략 선택** | 드롭다운에서 모니터링할 전략 선택 |
| **체크 방식** | **봉 마감 (CANDLE_CLOSE)**: 캔들 확정 시 판정 / **실시간 틱 (REALTIME_TICK)**: 3초 주기 판정 |
| **시그널 모드** | **보유 자산 기준 (LONG_ONLY)**: 매수 이력 있을 때만 매도 허용 / **순수 지표 기준 (SIGNAL_ONLY)**: 포지션 무관, 지표 충족 시 즉시 매도 |

#### 마커 특징

- **중복 방지**: 동일 타임스탬프에 마커 무한 생성 방지 (Lock 메커니즘)
- **REALTIME_TICK**: 같은 봉 내 동일 시그널 중복 표시 안 함

#### LONG_ONLY vs SIGNAL_ONLY

| 모드 | 매수 조건 | 매도 조건 |
|------|-----------|-----------|
| **LONG_ONLY** | 진입 규칙 충족 + 포지션 없을 때 | 청산 규칙 충족 + 포지션 있을 때 |
| **SIGNAL_ONLY** | 진입 규칙 충족 (포지션 무관) | 청산 규칙 충족 (포지션 무관) |

> SIGNAL_ONLY 모드에서는 매도 시그널이 이전 매수 없이도 발생하므로 더 많은 마커가 표시됩니다.

---

### 3.9 매매 알림 팝업

실시간 전략 체크에서 BUY/SELL 시그널 발생 시 화면에 팝업을 표시합니다.

#### 활성화 조건

설정화면 → 전략 설정 → **매매 알림 팝업** ON

#### 팝업 구성

| 영역 | 내용 |
|------|------|
| **헤더** | 시그널 유형(매수/매도), 종목, 시각 |
| **요약** | 가격, 전략명, 실행 방식 |
| **매수 탭** | 주문 유형(지정가/시장가/예약), 가격·수량 입력, 비율 버튼 |
| **매도 탭** | 동일 구성 |
| **간편주문 탭** | 미구현 안내 |
| **거래내역 탭** | 미구현 안내 |

> ⚠️ 주문 탭의 **주문 버튼은 실제 거래소 API와 연동되지 않습니다.** 프로토타입 UI입니다.

팝업은 화면 어디서나 **드래그하여 이동** 가능합니다.

---

### 3.10 기타 플로팅 패널

#### 오브젝트 트리

드로잉 툴바 하단 **레이어** 버튼 → 드로잉 오브젝트 목록 팝업

- 드로잉 이름 목록 표시
- 눈 아이콘으로 개별 표시/숨김
- 휴지통 아이콘으로 개별 삭제

#### 통계 패널 (StatsPanel)

상단 툴바 **통계** 버튼 → 가격 통계 플로팅 창

- 선택 기간 OHLCV 통계 표시

#### 관심종목 (WatchList)

- 즐겨찾기 등록 종목 목록
- 현재가·등락률 표시
- 클릭 시 차트 심볼 변경
- DB에 동기화

#### 가격 알림 (AlertManager)

상단 툴바 **🔔** → 알림 패널

- 특정 가격 도달 시 알림 설정
- 현재 알림 목록 관리 (추가/삭제)
- 차트에 수평선 표시

---

### 3.11 화면 내 설정·모달

실시간 차트 화면에서 **설정 화면(메뉴 → 설정)** 이 아닌, 차트 위에서 바로 열리는 설정 UI입니다.

#### 설정 열기 방법 요약

| 설정 종류 | 열기 방법 |
|-----------|-----------|
| **메인 차트(캔들) 색상** | 차트 우클릭 → 설정, 또는 메인 pane 설정 |
| **지표** | 지표 pane 호버 → ⚙ / 우클릭 → 설정 / pane 더블클릭 |
| **드로잉** | 완성된 드로잉 우클릭 → 설정 |
| **피보나치 타임존** | 피보나치 TZ 드로잉 우클릭 → 설정 |
| **백테스팅 (빠른)** | 툴바 백테스팅 ⚙ → 모달 (설정 화면과 동일 DB 연동) |
| **실시간 전략** | 툴바 ⚡ → `LiveStrategyPanel` (설정 화면 전략 탭과 DB 공유) |
| **가격 알림** | 툴바 🔔 → `AlertManager` |
| **멀티 레이아웃 동기화** | 툴바 ⊞ → 레이아웃 팝업 내 동기화 체크박스 |

---

#### 메인 차트 설정 (`MainChartSettingsModal`)

| 항목 | 설명 | 저장 |
|------|------|------|
| **몸통 (Body)** | 상승봉·하락봉 몸통 색 (좌=상승, 우=하락) | DB (`gc_app_settings.mainChartStyle`) |
| **테두리 (Borders)** | 캔들 테두리 색 | 동일 |
| **심지 (Wick)** | 꼬리(심지) 색 | 동일 |
| **기본값** | 앱 기본 캔들 색으로 복원 | — |
| **확인 / 취소** | 적용 또는 변경 취소 | — |

> 설정 화면 **차트 설정**의 색상 항목과 별도입니다. 차트 설정 탭은 현재 로컬 상태만이며, 실제 차트에 반영되는 캔들 색은 이 모달·DB 값이 우선합니다.

---

#### 지표 설정 (`IndicatorSettingsModal`)

탭: **입력값** · **스타일** · **가시성**

| 탭 | 항목 | 설명 | 저장 |
|----|------|------|------|
| **입력값** | 기간·소스 등 | 지표별 `params` (예: RSI 기간 14, 소스 close) | DB (지표별 설정) |
| **입력값** | SMA 전용 | MA1~MA8 각각 ON/OFF + 기간, 공통 소스 | DB |
| **입력값** | 일목 전용 | 전환선·기준선·선행스팬 기간 등 | DB |
| **스타일** | 플롯 | 선 색·굵기·유형(선/히스토그램/영역 등) | DB |
| **스타일** | 수평선 | **과열선·중앙선·침체선** 가격·색·선형·굵기·표시 여부 | DB |
| **스타일** | 일목 구름 | 상승/하락 구름 색·투명도 | DB |
| **가시성** | 플롯별 | 개별 선/히스토그램 표시 ON/OFF | DB |
| **기본값** | — | 지표 레지스트리 기본값으로 복원 | — |

**소스(src) 옵션**: `close`, `open`, `high`, `low`, `hl2`, `hlc3`, `ohlc4`

> 전략 빌더에서 지표를 추가할 때, **현재 차트에 적용된 지표 설정값**(기간·과열/침체선 포함)이 전략 조건의 기본값으로 복사됩니다.

---

#### 드로잉 설정 (`DrawingSettingsModal`)

| 항목 | 설명 | 비고 |
|------|------|------|
| **색상** | 프리셋 20색 + 커스텀 컬러 피커 | 모든 드로잉 공통 |
| **선 굵기** | 1~4px | text·measure 유형 제외 |
| **선 스타일** | 실선 / 파선 / 점선 | text·measure 제외 |
| **텍스트** | 표시 문구 (text 타입만) | — |

드로잉 데이터는 차트·종목·타임프레임별로 저장됩니다.

---

#### 피보나치 타임존 설정 (`FibTZSettingsModal`)

| 항목 | 설명 |
|------|------|
| **레벨 목록** | 각 피보나치 비율(%)·표시 여부·색·선형·굵기 |
| **기준선** | 0%/100% 기준선 스타일 |
| **확장** | TZ 구간 연장 옵션 |

---

#### 백테스팅 빠른 설정 (`BacktestSettingsModal`)

차트 툴바 ⚙ 로 열리는 모달입니다. **설정 화면 → 백테스팅**과 동일한 `BacktestSettingsDto`를 DB에 저장합니다. 각 필드에 **?** 도움말(상세 설명)이 붙어 있습니다.

| 구역 | 항목 | 요약 |
|------|------|------|
| 표시 | 결과 자동 팝업 | 실행 후 결과 대시보드 자동 오픈 (`AppSettings`, DB) |
| 표시 | 매수/매도 금액 표시 | 마커 문구에 금액 포함 여부 (`AppSettings`, DB) |
| 자본 | 초기 자본·거래 규모 | 시뮬레이션 자금·비율/고정금액 |
| 비용 | 수수료·슬리피지 | LINEAR/ZERO, 체결 가격 미끄럼 |
| 가격 | 진입/청산/방향 | 종가 vs 다음봉 시가, LONG/SHORT/BOTH |
| 리스크 | 손절·익절·트레일링 | Ta4j 규칙 연동 |
| 기타 | 재진입·분할청산·포지션 모드 | [6.3절](#63-백테스팅-설정) 참고 |

---

#### 실시간 전략 패널 (`LiveStrategyPanel`)

설정 화면 **전략 설정 → 실시간 전략 체크**와 **동일 DB**(`gc_live_strategy_settings`, 종목별)를 사용합니다. 한쪽에서 변경하면 다른 쪽에도 반영됩니다.

| 항목 | 설명 |
|------|------|
| 실시간 체크 | ON 시 백엔드 STOMP 구독·시그널 평가 시작 |
| 전략 선택 | 투자전략 빌더에 저장된 전략 ID |
| 실행 방식 | 봉 마감 직후 / 실시간 틱(3초) — 설정 화면의 **체크 방식**과 동일 |
| 시그널 모드 | Long-Only / Signal-Only — 설정 화면 **포지션 종속성 모드**와 동일 |

> 설정 변경 시 기존 차트 마커는 자동 초기화됩니다.

---

#### 가격 알림 (`AlertManager`)

| 항목 | 설명 | 저장 |
|------|------|------|
| **가격** | 알림을 받을 목표가 (숫자) | 세션/앱 상태 |
| **메모** | 선택 라벨 | 동일 |
| **추가** | 목록에 알림 등록, 차트 수평선 표시 | — |
| **삭제** | 항목별 ✕ | — |

설정 화면 **알림 설정**의 가격 알림 토글과는 아직 연동되지 않았습니다. 실제 알림 발송은 미구현입니다.

---

#### 멀티 차트 레이아웃 동기화

툴바 **⊞** 팝업에서 설정합니다. `AppSettings.syncOptions`에 DB 저장됩니다.

| 옵션 | 동작 |
|------|------|
| 심볼 동기화 | 모든 슬롯 종목 통일 |
| 인터벌 동기화 | 타임프레임 통일 |
| 크로스헤어 동기화 | 커서 위치 연동 |
| 시간축 동기화 | 보이는 시간 범위 연동 |

---

#### 테마

상단 메뉴바 **☀/🌙** 클릭 시 **다크 → 블루 → 라이트** 순환. `AppSettings.defaultTheme`에 DB 저장됩니다.

---

## 4. 투자전략 화면

전략 조건을 시각적으로 구성하고 DB에 저장하는 빌더 화면입니다.

### 화면 구성

```
[좌: 전략 목록] | [중: 조건 편집기] | [우: 팔레트/미리보기]
```

### 전략 목록 (좌측)

| 기능 | 설명 |
|------|------|
| **새 전략** | 빈 전략 생성 |
| **전략 선택** | 클릭 시 편집기에 로드 |
| **정렬** | 이름 / 날짜 정렬 |
| **삭제** | 체크박스로 선택 후 삭제 |
| **저장** | 편집 내용 DB 저장 |

> 전략은 DB에 저장되며, 로컬스토리지(`gc_strat_v2`) 백업도 유지됩니다.

### 조건 편집기 (중앙)

#### 논리 트리 구조

| 노드 타입 | 설명 |
|-----------|------|
| **AND** | 모든 하위 조건 동시 충족 |
| **OR** | 하위 조건 중 하나라도 충족 |
| **NOT** | 하위 조건 부정 |
| **CONDITION** | 실제 지표 비교 조건 |

#### 조건 타입

| 타입 | 설명 |
|------|------|
| 비교 (GREATER/LESS/EQUAL) | A > B, A < B, A == B |
| 상향 돌파 (CROSS_UP) | A가 B를 아래에서 위로 교차 |
| 하향 돌파 (CROSS_DOWN) | A가 B를 위에서 아래로 교차 |
| N일 유지 | 조건이 N봉 동안 연속 충족 |
| 기울기 (SLOPE_UP/DOWN) | 지표값이 상승/하강 추세 |
| 일목 구름 (KUMO_ABOVE/BELOW) | 가격이 구름 위/아래 |

#### 조건 편집

- **드래그앤드롭**: 조건 순서 변경
- **노드 추가**: AND/OR/NOT/CONDITION 노드 추가 버튼
- **우클릭**: 조건 삭제
- **매수/매도 탭**: 각각 별도 조건 트리 구성

### 컴포넌트 팔레트 (우측)

| 탭 | 내용 |
|----|------|
| **지표 팔레트** | 사용 가능한 지표 목록, 클릭 또는 드래그로 편집기에 추가 |
| **전략 목록** | 저장된 전략 목록 |
| **템플릿** | 골든크로스, RSI 과매도 등 자동 생성 템플릿 |
| **미리보기** | 구성한 조건의 수식 텍스트 미리보기 |

### 지표 파라미터

전략에서 지표를 추가하면 **현재 차트 지표 설정값**이 기본값으로 적용됩니다.
- 예: 차트 CCI 기간이 15이면 전략 CCI 기간도 15로 초기화
- **과열선/중앙선/침체선** 설정값도 반영

---

### 4.1 화면 내 설정

투자전략 화면 자체에는 별도의 “환경설정” 메뉴가 없습니다. 대신 아래 항목이 **전략 데이터·차트 설정과 연동**됩니다.

| 기능 | 설정·연동 내용 | 저장 위치 |
|------|----------------|-----------|
| **지표 파라미터** | 조건 노드에 붙은 지표는 차트 지표 설정(DB)을 초기값으로 사용 | `gc_indicator_settings` |
| **전략 저장** | 매수/매도 조건 트리, 이름 | DB + `localStorage` 백업 |
| **템플릿 적용** | 골든크로스·RSI 등 프리셋 조건 일괄 생성 | — (저장 전까지 메모리) |
| **정렬** | 이름/날짜 — UI만, 데이터 변경 없음 | — |

백테스팅·실시간 체크에 쓰이는 **포지션 모드·수수료·체크 방식** 등은 [6.3](#63-백테스팅-설정)·[6.4](#64-전략-설정)에서 설정합니다.

---

## 5. 백테스팅 이력 화면

상단 메뉴 **백테스팅** 클릭 → 백테스팅 실행 이력 대시보드

### 화면 구성

```
[좌: 이력 목록] | [우: 선택된 결과 대시보드]
```

### 이력 목록 (좌측)

| 기능 | 설명 |
|------|------|
| **목록 표시** | 실행 일시, 전략명, 종목, 시그널 수, 승률 |
| **체크박스** | 다중 선택 |
| **삭제** | 선택 항목 삭제 |
| **전체 삭제** | 전체 이력 삭제 |
| **새로고침** | 목록 갱신 |

### 결과 대시보드 (우측)

이력 목록에서 항목 클릭 시 오른쪽에 상세 결과가 카드 형태로 표시됩니다.

| 카드 | 표시 내용 |
|------|-----------|
| **기본 정보** | 전략명, 종목, 실행 시각, 기간 |
| **핵심 지표** | 총 거래 수, 승률, 총 수익률 |
| **손익 분석** | 평균 수익, 평균 손실, Profit Factor |
| **리스크 지표** | MDD, Sharpe Ratio, Calmar Ratio |
| **거래 통계** | 최대 연속 이익/손실, 평균 보유 기간 |

---

## 6. 설정 화면

상단 메뉴 **설정** 클릭 → macOS 스타일 2열 레이아웃 (**좌: 카테고리** / **우: 설정 패널**).

| 카테고리 | 주요 내용 |
|----------|-----------|
| 일반 설정 | 언어·시작 화면·UI 동작 |
| 차트 설정 | 캔들 색·격자·자석·가격축 |
| 백테스팅 | 시뮬레이션 자본·비용·리스크·포지션 모드 |
| 전략 설정 | 실시간 체크·알림 팝업·리스크·백테스트 기본값(UI) |
| 알림 설정 | 알림 채널·조건 (미연동) |
| 네트워크 | API·WebSocket·연결 테스트 |

---

### 6.0 설정 화면 개요 및 저장 범위

설정값이 **어디에 저장되는지**에 따라 앱을 재시작해도 유지되는 항목이 달라집니다.

| 저장 위치 | 적용 항목 | 재시작 후 |
|-----------|-----------|-----------|
| **DB** (`gc_app_settings`) | 테마, 백테스트 팝업/마커 표시, 매매 알림 팝업, 멀티차트 동기화, 메인 차트 스타일 | 유지 |
| **DB** (`gc_backtest_settings`) | 백테스팅 시뮬레이션 전 항목 | 유지 |
| **DB** (`gc_live_strategy_settings`, 종목별) | 실시간 체크·전략·체크 방식·포지션 모드 | 유지 |
| **DB** (지표별) | 지표 입력값·스타일 | 유지 |
| **컴포넌트 상태만** (일반·차트·알림·네트워크 탭 대부분) | 언어, 차트 색(설정 탭), 알림 토글 등 | **초기화** |
| **localStorage** | 전략 백업, deviceId, 일부 앱 상태 | 유지 |

변경 시 **자동 저장**되는 패널: 백테스팅(저장 중/✓ 저장됨 표시), 실시간 전략(토글·선택 즉시 API 호출).

---

### 6.1 일반 설정

> ⚠️ 이 탭의 값은 **React 컴포넌트 내부 상태**만 갱신합니다. DB·localStorage에 저장되지 않아 **페이지 새로고침 시 초기값으로 돌아갑니다.**

#### 언어 및 지역

| 항목 | UI 컨트롤 | 선택값 | 상세 설명 |
|------|-----------|--------|-----------|
| **언어** | 드롭다운 | 한국어 / English / 日本語 | UI 문자열 언어(현재 다국어 리소스 연동은 제한적). |
| **날짜 형식** | 드롭다운 | `YYYY-MM-DD`, `DD/MM/YYYY`, `MM/DD/YYYY` | 차트 축·팝업 등 날짜 표기 형식. |
| **시간대** | 드롭다운 | `Asia/Seoul`, `UTC`, `America/New_York` | 차트 시간·알림 기준 시간대. |

#### 시작 화면

| 항목 | 선택값 | 상세 설명 |
|------|--------|-----------|
| **시작 페이지** | 대시보드 / 실시간 차트 / 투자 전략 / 백테스팅 | 앱 최초 진입 시 열릴 화면(라우팅 연동 미완 — UI만). |

#### UI 동작

| 항목 | 컨트롤 | 상세 설명 |
|------|--------|-----------|
| **애니메이션** | 토글 | 화면 전환·차트 업데이트 애니메이션 사용 여부. |
| **툴팁 표시** | 토글 | 버튼·지표에 마우스 오버 시 설명 툴팁 표시. |

---

### 6.2 차트 설정

> ⚠️ 캔들 **색상**은 이 탭보다 [3.11 메인 차트 설정 모달](#메인-차트-설정-mainchartsettingsmodal)(DB 저장)이 실제 차트에 반영됩니다.  
> **자석 모드**만 앱 전역(`magnetMode`)과 연동되어 즉시 적용됩니다.

#### 캔들 색상

| 항목 | 컨트롤 | 기본값 예 | 상세 설명 |
|------|--------|-----------|-----------|
| **상승 캔들 색상** | 컬러 피커 + HEX | `#26a69a` | 양봉 몸통 색(설정 탭 — 로컬만). |
| **하락 캔들 색상** | 컬러 피커 | `#ef5350` | 음봉 몸통 색. |
| **배경 색상** | 컬러 피커 | `#131722` | 차트 plot 배경. |

#### 차트 표시 옵션

| 항목 | 컨트롤 | 상세 설명 |
|------|--------|-----------|
| **격자선 표시** | 토글 | 수평·수직 격자선 ON/OFF. 툴바 **그리드** 버튼과 유사 목적. |
| **거래량 표시** | 토글 | 하단 volume pane 표시. |
| **크로스헤어 모드** | 드롭다운: 기본 / 마그넷 / 숨기기 | 십자선 표시 방식. |
| **자석모드 (Magnet Mode)** | 토글 | ON → `strong`, OFF → `off`. 십자선이 OHLC에 스냅되어 드로잉·분석 정밀도 향상. 드로잉 툴바 하단 자석(끄기/약/강/지표)과 별도 — 여기는 단순 ON/OFF. |

#### 가격축

| 항목 | 선택값 | 상세 설명 |
|------|--------|-----------|
| **가격축 위치** | 우측 / 좌측 / 양쪽 | 가격 눈금자 배치. |
| **소수점 자리수** | 0 / 2 / 4 / 8자리 | Y축·범례 가격 소수 표시. BTC 등 고가·저가 코인에 8자리 유용. |

---

### 6.3 백테스팅 설정

**DB (`gc_backtest_settings`)에 자동 저장**됩니다. 차트 툴바에서 백테스팅 **실행** 시 이 설정이 백엔드 `BacktestingService`에 전달됩니다. 차트 ⚙ 모달과 **동일 데이터**입니다.

**시스템 기본값** (초기화 시):

| 항목 | 기본값 |
|------|--------|
| 초기 자본 | 10,000,000원 |
| 수수료 | LINEAR 0.15% (0.0015) |
| 슬리피지 | 0.05% (0.0005) |
| 진입/청산 가격 | 종가(CLOSE) |
| 포지션 방향 | LONG |
| 거래 규모 | 자본 100% |
| 포지션 모드 | LONG_ONLY |

---

#### 표시 설정

| 항목 | 저장 | 상세 설명 |
|------|------|-----------|
| **결과 팝업 자동 표시** | `AppSettings.btAutoPopup` (DB) | ON: 실행 완료 후 결과 대시보드 자동 오픈. OFF: 툴바 **결과(📊)** 수동 클릭. |
| **매수/매도 금액 표시** | `AppSettings.btShowPrice` (DB) | ON: 마커 `"매수 : 1,234,000"` 형식. OFF: `"매수"` / `"매도"`만. |

---

#### 자본 · 거래 규모

| 항목 | 입력 범위 | 상세 설명 |
|------|-----------|-----------|
| **초기 자본 (원)** | 최소 100,000, step 1,000,000 | 시뮬레이션 시작 자금. 총 수익률·최종 자산 계산 기준. |
| **거래 규모 유형** | `CAPITAL_PCT` / `FIXED_AMOUNT` | 비율: 복리 반영. 고정: 매 거래 동일 원화. |
| **사용 자본 비율 (%)** | 1~100 (비율 모드) | 예: 50 → 가용 자본의 절반만 매수에 사용. |
| **거래당 금액 (원)** | (고정 모드) | 예: 1,000,000 → 매 신호마다 100만원 규모 체결 가정. |

---

#### 비용 모델

| 항목 | 상세 설명 |
|------|-----------|
| **수수료 유형 `LINEAR`** | 체결금액 × 수수료율. 매수·매도 각 1회 차감. |
| **수수료 유형 `ZERO`** | 수수료 없음. 순수 전략 성과만 비교할 때. |
| **수수료율 (%)** | UI는 % 입력, 내부는 소수 저장. 업비트 현물 약 **0.05%** 권장. |
| **슬리피지 (%)** | 매수는 더 비싸게, 매도는 더 싸게 체결되는 가정. 변동성·유동성 반영용. |

---

#### 거래 가격 기준

| 항목 | 옵션 | 상세 설명 |
|------|------|-----------|
| **진입 가격 기준** | CLOSE / NEXT_OPEN | CLOSE: 신호 봉 종가 즉시 진입(단순, look-ahead 논란 가능). NEXT_OPEN: 다음 봉 시가 — 실매매에 가깝게. |
| **청산 가격 기준** | CLOSE / NEXT_OPEN | 매도 신호 시 청산 가격 동일 논리. |
| **포지션 방향** | LONG / SHORT / BOTH | LONG: 매수→매도. SHORT: 공매도 시뮬. BOTH: 신호에 따라 양방향. |

---

#### 리스크 관리 (Ta4j 규칙)

전략 매도 조건보다 **먼저** 손절·익절·트레일링이 발동하면 해당 규칙으로 청산됩니다.

| 항목 | 활성화 시 | 상세 설명 |
|------|-----------|-----------|
| **손절 활성화 + 손절 비율 (%)** | StopLossRule | 진입가 대비 N% 하락 시 강제 청산. 예: 2% → 100만원 매수 후 98만원 이하. |
| **익절 활성화 + 익절 비율 (%)** | StopGainRule | 진입가 대비 N% 상승 시 이익 실현. |
| **트레일링 스탑 + 비율 (%)** | TrailingStop | 보유 중 **최고가** 대비 N% 하락 시 청산. 추세 추종형 손절. |

---

#### 재진입 · 분할 청산

| 항목 | 상세 설명 |
|------|-----------|
| **재진입 대기 봉 수** | 매도 후 N봉 동안 신규 매수 금지. 0 = 즉시 재진입 허용. |
| **최대 동시 포지션** | 동시 보유 포지션 상한(현재 엔진은 단일 포지션 중심). |
| **분할 청산 활성화** | 첫 매도 신호에 포지션 일부만 청산. |
| **1차 청산 비율 (%)** | 분할 청산 시 첫 번에 팔 비율(기본 50%). |

---

#### 포지션 종속성 모드 (백테스팅)

가로 2열 카드 라디오로 선택합니다.

| 모드 | 매수 시그널 | 매도 시그널 | 권장 용도 |
|------|-------------|-------------|-----------|
| **보유 자산 기준 (Long-Only)** | 진입 규칙 + 포지션 없음 | 청산 규칙 + **포지션 있음** | 실제 롱 포지션 추적, 수익률·승률 해석 |
| **순수 지표 기준 (Signal-Only)** | 진입 규칙 (포지션 무관) | 청산 규칙 (포지션 무관) | 지표 신호 전부 차트에 표시, 알림·분석용 |

Signal-Only 선택 시 경고 문구: *「매도 시그널이 이전 매수 없이도 발생합니다」*

> 백테스팅·실시간 체크·`StrategySignalDeterminer`가 동일 개념을 공유합니다. 자세한 동작은 `백테스팅 시그널 동작방식.md` 참고.

---

### 6.4 전략 설정

실시간 체크·알림 팝업은 **DB 저장**. 리스크 관리·백테스팅 기본값 카드는 **UI만**(백테스팅 탭 DB 설정과 아직 미연동).

---

#### 실시간 전략 체크 (`gc_live_strategy_settings`, **종목별**)

| 항목 | 컨트롤 | 상세 설명 |
|------|--------|-----------|
| **실시간 체크** | 토글 | ON: 백엔드가 선택 전략을 지속 평가, STOMP로 BUY/SELL 푸시, 차트 마커 표시. OFF: 평가 중단. 변경 시 **기존 마커 삭제**. |
| **모니터링 종목** | 읽기 전용 텍스트 | 현재 실시간 차트 활성 종목(예: `KRW-BTC`). 종목 바꾸면 해당 종목 설정 레코드 로드. |
| **전략 선택** | 드롭다운 | 투자전략 빌더에 저장된 전략. 미선택 시 모니터링 대기 상태. |
| **체크 방식** | 가로 2열 라디오 | 아래 표 참고. |
| **모니터링 상태 바** | (체크 ON 시) | 선택 전략명 + 펄스 표시. |

**체크 방식**

| 값 | 라벨 | 동작 |
|----|------|------|
| `CANDLE_CLOSE` | 봉 마감 직후 | **완성된** 직전 봉 기준, 봉당 최대 1회 판정. 확정 신호에 적합. |
| `REALTIME_TICK` | 실시간 틱 (3초) | **진행 중인** 봉 포함, 약 3초마다 재판정. 같은 봉·같은 방향 중복 마커 방지. |

**포지션 종속성 모드** (실시간)

| 값 | 동작 요약 |
|----|-----------|
| `LONG_ONLY` | 매수 이력(포지션) 있을 때만 매도 마커 |
| `SIGNAL_ONLY` | 지표 청산 규칙만 충족해도 매도 마커 (매수 없이도 가능) |

> ⚡ **LiveStrategyPanel**과 설정·DB가 동일합니다. [3.11절](#실시간-전략-패널-livestrategypanel) 참고.

---

#### 매매 알림 팝업

| 항목 | 저장 | 상세 설명 |
|------|------|-----------|
| **알림 팝업** | `AppSettings.tradeAlertPopup` (DB) | ON: 실시간 체크 BUY/SELL 시 `TradeAlertModal` 자동 표시. OFF: 마커만 표시. |

팝업 내 **주문 탭**은 UI 프로토타입이며 실제 거래소 API 미연동.

---

#### 리스크 관리 (2열 카드)

> ⚠️ 입력값은 **화면 상태만** 유지. 백테스팅 DB·실시간 엔진에 아직 반영되지 않습니다.

| 항목 | 설명 |
|------|------|
| **기본 리스크 비율 (%)** | 진입 시 자본 대비 리스크 비율(계획 값). |
| **최대 동시 포지션** | 동시 보유 포지션 수 상한. |
| **트레일링 스탑** | 수익 구간에서 손절선 상향 조정 여부. |
| **재진입 허용** | 청산 후 동일 조건 재진입 허용. |

---

#### 백테스팅 기본값 (2열 카드)

> ⚠️ **백테스팅** 카테고리(6.3)의 DB 설정과 **별개** UI입니다. 현재 저장 API 없음.

| 항목 | 설명 |
|------|------|
| **수수료율 (%)** | 표시용 기본 수수료. |
| **슬리피지 (%)** | 표시용 기본 슬리피지. |
| **성과 지표 기준** | 샤프 비율 / 총 손익률 / 승률 / 최대 낙폭 — 전략 비교 기준(미연동). |

---

### 6.5 알림 설정

> ⚠️ **UI만 구현**. 토글·이메일·쿨다운 변경은 **저장되지 않으며**, 실제 소리·푸시·이메일 발송 로직 없음.  
> 차트 **가격 알림(🔔)** 은 별도 패널로 동작(목록·수평선만, 발송 없음).

#### 알림 방식

| 항목 | 상세 설명 |
|------|-----------|
| **사운드 알림** | 조건 충족 시 효과음(미구현). |
| **브라우저 알림** | `Notification API` OS 푸시(미구현). |
| **이메일 알림** | ON 시 **이메일 주소** 입력 행 표시. SMTP 발송(미구현). |

#### 알림 조건

| 항목 | 상세 설명 |
|------|-----------|
| **가격 알림** | 목표가 도달 알림 허용 플래그(미연동). |
| **매매 신호 알림** | 전략 BUY/SELL 시 알림(미연동 — 팝업은 6.4 **알림 팝업** 사용). |
| **알림 재발송 대기 (초)** | 동일 조건 반복 방지 쿨다운. 0~3600. |

---

### 6.6 네트워크 설정

> ⚠️ 입력값은 **컴포넌트 상태**만. 실제 `backendApi` base URL은 빌드·환경 변수에 따르며, 이 화면 변경이 API 클라이언트에 자동 반영되지 않을 수 있습니다. **연결 테스트**만 입력 URL로 `fetch`합니다.

#### API 서버

| 항목 | 기본값 예 | 상세 설명 |
|------|-----------|-----------|
| **서버 주소** | `http://localhost:8080` | REST API 호스트(포트 포함). |
| **연결 상태** | ● 연결됨/끊김 배지 | UI 표시용(자동 갱신 제한적). |
| **연결 테스트** | 버튼 | `{서버주소}/actuator/health` GET → 성공/실패 alert. |

#### WebSocket

| 항목 | 기본값 예 | 상세 설명 |
|------|-----------|-----------|
| **WebSocket 주소** | `ws://localhost:8080/ws` | 실시간 시세·전략 시그널 STOMP 엔드포인트. |

#### 연결 설정

| 항목 | 상세 설명 |
|------|-----------|
| **연결 타임아웃 (ms)** | 응답 없을 때 요청 중단 시간. 기본 10000. |
| **재시도 횟수** | 실패 시 재시도 상한. 0~10. |
| **프록시 URL** | 비우면 직접 연결. 예: `http://proxy:8888` |

---

## 7. 드로잉 툴 상세 사용법

> 모든 드로잉 툴은 **트레이딩뷰 모드**에서만 동작합니다.

### 라인 그룹

| 툴 | 클릭 횟수 | 설명 |
|----|-----------|------|
| **추세선** | 2클릭 | 두 점을 연결하는 선, 양쪽 무한 연장 없음 |
| **확장선 (Ray)** | 2클릭 | 한 방향으로 무한 연장 |
| **화살표** | 2클릭 | 끝점에 화살촉 표시 |
| **수평선** | 1클릭 | 클릭한 가격에 수평선 |
| **수직선** | 1클릭 | 클릭한 시간에 수직선 |
| **채널 (수평/오름/내림)** | 3클릭 | 평행한 두 선으로 채널 구성 |
| **선형 회귀** | 2클릭 | 지정 구간의 최소자승 추세선 |

### 피보나치 그룹

| 툴 | 클릭 횟수 | 설명 |
|----|-----------|------|
| **피보나치 되돌림** | 2클릭 | 0%~100% 사이 피보나치 레벨 (23.6, 38.2, 50, 61.8, 78.6%) |
| **피보나치 확장** | 3클릭 | 추세 연장 목표가 레벨 |
| **피보나치 채널** | 3클릭 | 대각선 기반 피보나치 채널 |
| **피보나치 타임존** | 2클릭 | 시간축 기반 피보나치 구간 |
| **피치포크** | 3클릭 | 앤드류 피치포크 메디안 라인 |
| **갠 박스** | 2클릭 | 갠 이론 기반 사각형 격자 |
| **갠 팬** | 2클릭 | 갠 각도 팬 라인 (1×1, 1×2, 2×1 등) |

### 패턴 그룹

| 툴 | 클릭 횟수 | 설명 |
|----|-----------|------|
| **XABCD 패턴** | 5클릭 | 하모닉 XABCD 패턴 |
| **헤드앤숄더** | 7클릭 | 머리어깨 패턴 |
| **엘리엇 파동 (ABC)** | 4클릭 | 엘리엇 3파 조정 |
| **엘리엇 파동 (WXYXZ)** | 6클릭 | 엘리엇 복합 조정 |

### 프로젝션 그룹

| 툴 | 설명 |
|----|------|
| **롱 포지션** | 진입가·목표가·손절가로 수익/손실 시각화 (초록 영역/빨강 영역) |
| **숏 포지션** | 숏 방향 포지션 시각화 |
| **앵커드 VWAP** | 지정 시점부터의 거래량 가중 평균 가격 |
| **고정 볼륨 프로파일** | 지정 구간의 가격대별 거래량 분포 |
| **지그재그** | 고점·저점을 연결하는 지그재그 패턴 |

### 도형 그룹

| 툴 | 클릭 횟수 | 설명 |
|----|-----------|------|
| **사각형** | 2클릭 | 대각선 두 점으로 사각형 |
| **회전 사각형** | 3클릭 | 회전 각도 조절 가능 사각형 |
| **원** | 2클릭 | 중심점 + 반지름 원 |
| **타원** | 2클릭 | 타원 |
| **삼각형** | 3클릭 | 삼각형 |
| **평행사변형** | 3클릭 | 평행사변형 |
| **다각형** | N클릭 + 더블클릭 | 자유 다각형 |
| **호** | 3클릭 | 원호 |

### 텍스트 & 노트 그룹

| 툴 | 설명 |
|----|------|
| **텍스트** | 차트 위 자유 텍스트 |
| **노트(핀)** | 핀 아이콘 + 메모 텍스트 |
| **가격 노트** | 가격축에 연결된 노트 |
| **콜아웃** | 말풍선 형태의 주석 |
| **가격 라벨** | 특정 가격을 라벨로 표시 |

### 측정 그룹

| 툴 | 설명 |
|----|------|
| **날짜·가격 범위** | 드래그 구간의 가격 변동량·기간·비율 표시 |
| **데이터 창** | 클릭 지점의 OHLCV 데이터 팝업 표시 |

### 확대/축소 그룹

| 툴 | 설명 |
|----|------|
| **돋보기** | 차트 일부를 확대한 오버레이 팝업 표시 |

> 돋보기 팝업은 **팝업 어디서나 드래그**하여 이동할 수 있습니다.

---

## 8. 키보드 단축키 모음

| 단축키 | 기능 |
|--------|------|
| **F** | 차트 전체 맞춤 (Fit) |
| **L** | 로그 스케일 전환 |
| **Escape** | 현재 드로잉 취소 / 선택 해제 |
| **Ctrl + Z** | 드로잉 되돌리기 (Undo) |
| **Ctrl + Y** | 드로잉 다시 실행 (Redo) |
| **Delete** | 선택된 드로잉 삭제 |
| **Alt + S** | 차트 스크린샷 저장 |
| **Enter** | 다중 점 드로잉 확정 |

---

## 9. 미구현 기능 안내

현재 UI는 구성되어 있지만 기능이 완전히 구현되지 않은 항목입니다.

| 기능 | 상태 | 비고 |
|------|------|------|
| **대시보드 메뉴** | UI 없음 | 상단 메뉴에만 존재 |
| **로그인/회원가입** | 버튼만 | 실제 인증 미연동 |
| **우측 패널 알림/매수/매도** | 플레이스홀더 | 실제 거래소 API 미연동 |
| **TradeAlertModal 주문** | UI 프로토타입 | 실제 주문 API 미연동 |
| **알림 설정 (설정 화면)** | UI만 | 발송·저장 미구현 |
| **일반 설정** | 로컬 상태만 | DB 저장 미구현 |
| **차트 설정 탭(색상 등)** | 로컬 상태만 | 실제 캔들 색은 메인 차트 설정 모달·DB |
| **전략 설정 — 리스크/백테스트 기본값 카드** | UI만 | 백테스팅 DB와 미연동 |
| **네트워크 설정** | UI만 | API 클라이언트 자동 반영 제한적 |
| **멀티차트 백테스팅** | 비활성 | 싱글 레이아웃에서만 동작 |

---

> 문서 최종 업데이트: 2026-05-21  
> 프로젝트: GoldenChart (`/Users/macbook/dev/goldenChart`)
