Compare commits

...

2 Commits

Author SHA1 Message Date
hyowons 5384b1d670 auto: 일일 백업 2026-10-03 02:00
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-03 02:00:04 +09:00
hyowons 5e47a15547 자산웹 공모주 탭 추가 + 상장일 관심종목 자동등록
- 자산정보 > 공모주 sub-tab: 오늘청약(증권사별 아이템, 기본 접힘) / 청약완료(상장일까지)
- 관리자(청약)·가희(청약) 버튼 — 사람별 종목당 1건 기록 (state/behive_ipo_subscribed.json)
- 타이틀 [청약] 배지: 미완료 청약 또는 청약 종목 상장일
- ipo_alert listing(08:30)에서 청약완료 종목을 상장일에 관심종목 등록
- 데이터는 네이버 IPO API, 증거금·수수료는 ipo_alert._manager_blocks 재사용(키움 콜 0)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 12:32:15 +09:00
139 changed files with 2950 additions and 1867 deletions
+4 -1
View File
File diff suppressed because one or more lines are too long
+2
View File
@@ -95,6 +95,7 @@ LLM-LLM 자연어 통신은 프롬프트 인젝션·할루시네이션 증폭
- **키움 조회:** `scripts/kiwoom_client.py {token|accounts|summary|balance|positions}` — 조회 전용 (주문 X)
- **일일 포트폴리오:** `scripts/stock_portfolio_report.py {run|send} [--by-account]` — 평일 20:10 launchd, 메일만 발송(텔레그램 요약 없음)
- **IPO 캘린더:** `scripts/ipo_calendar_sync.py` — 매월 1일 cron
- **IPO 텔레그램 알림:** `scripts/ipo_alert.py` — 매일 08:30 상장일, 10:00 청약 첫날만 알림. 증권사별 최소청약 증거금·온라인 일반 수수료 표시(공모가·증거금률은 숨김), `state/ipo_alerts.json`으로 중복 방지. 상장일(08:30 listing) 실행 때 자산웹에서 **청약완료한 종목은 관심종목에 자동등록**(종목당 1회)
- **비하이브 다이제스트:** `scripts/behive_youtube_digest.py {fetch|save|email|notify|list|show|remove}` — 평일 07/12/18시 cron
- **워치리스트 모니터:** `scripts/watchlist_monitor.py check` — 장중 15분, LLM 없이 직접 알림
- **워치리스트 웹뷰:** `scripts/behive_web.py serve` — launchd 상시, 외부는 `https://stock.hyowons.net/`
@@ -136,6 +137,7 @@ LLM-LLM 자연어 통신은 프롬프트 인젝션·할루시네이션 증폭
- `scripts/kiwoom_client.py {token|accounts|summary|balance|positions}` — 키움 REST 조회 전용 클라이언트. 잔고/보유/계좌평가. **주문 함수 절대 부재**(매매 절대 원칙, SOUL.md 참조). 자세한 사용법은 `skills/kiwoom-rest`.
- `scripts/stock_portfolio_report.py {run|send} [--by-account]` — 리포트 생성/이메일. 평일 20:10 launchd로 `send`. owner 그룹(본인 / 가희)별 블록 표시가 기본 (그룹 내 종목 합산), `--by-account`는 owner 블록 안에서 4계좌별 분리 뷰까지.
- `scripts/ipo_calendar_sync.py` — 공모주 일정 구글 캘린더 등록. 매월 1일 cron.
- `scripts/ipo_alert.py {subscription|listing}` — 청약 첫날 10:00·상장일 08:30 텔레그램 알림. `--dry-run`, `--date YYYY-MM-DD` 지원.
- `scripts/behive_youtube_digest.py {fetch|save|email|notify|list|show|remove}` — 비하이브투자자문 '종목분석' 영상 감지·요약·워치리스트 저장·이메일/텔레그램 발송. 평일 07/12/18시 cron.
## 관리자님 관련
+1 -1
View File
@@ -52,7 +52,7 @@
| `ipo-calendar-sync` | 매주 금요일 17:00 | `ipo_calendar_sync.py` | IPO 청약·상장 일정 → Google Calendar |
| `fomc-calendar-sync` | 매월 1일 09:10 | `fomc_calendar_sync.py` | 연준 FOMC 회의 일정 → Google Calendar `[FOMC] YYYY-MM 회의`(+` (SEP)`). 2026-07-29 신설. **캘린더엔 2026-03-23 관리자님이 2027-12까지 11건을 이미 손으로 등록해 두셨고 날짜도 정확** — 스크립트는 그 표기를 승계해 흡수했으므로 당분간 실제 신규 등록은 2028년분부터. **이벤트 기간 = 회의 시작일(ET) ~ 발표일(KST)** 3일 — 성명 발표가 KST로는 회의 종료 다음날 새벽(EDT 03:00·EST 04:00)이라, ET 날짜만 넣으면 한국 장이 결과를 반영하는 날에 캘린더가 비어 브리핑 '오늘 일정'에 안 뜬다(2026-07-29 관리자님 지적으로 수정). colorId 9 보존(`--event-color` 미지정). 삭제 루프가 `old_start <= today`를 건너뛰어 지난 회의는 안 지움. `--list`=파싱만(gog 미호출) |
| `holiday-sync` | 매주 일요일 03:00 | `holiday_sync.py` | investing.com → `state/market_holidays.json`. 실패 시 기존 파일 보존 |
| `behive-web` | 상시 (`KeepAlive`) | `behive_web.py serve` | 3-탭 워치리스트 웹뷰. Tailscale `100.75.148.12:18790` → `https://stock.hyowons.net/`(Synology reverse proxy). 코드 변경 후 bootout/bootstrap 필요 |
| `behive-web` | 상시 (`KeepAlive`) | `behive_web.py serve` | 3-탭 워치리스트 웹뷰. Tailscale `100.75.148.12:18790` → `https://stock.hyowons.net/`(Synology reverse proxy). 코드 변경 후 bootout/bootstrap 필요. **공모주 sub-tab**(2026-10-02): 자산정보 탭에서 청약기간 중 종목을 증권사별로 보여주고 `[관리자(청약)] [가희(청약)]`→완료 시 `관리자(완료)`로 사람별 종목당 1건 기록(`state/behive_ipo_subscribed.json`, 상장일까지 표시). 증거금 계산은 `ipo_alert._manager_blocks` 재사용. 청약완료 종목은 상장일 08:30 `ipo-alert`(listing) 실행 때 관심종목 자동등록(`register_listed_ipo_interests`, 종목당 1회) |
| `trade-journal` | 평일 21:00 (스크립트가 휴장일 self-skip) | `trade_journal.py collect` | ka10170 당일매매일지 4계좌 → `state/trade_journal.jsonl` 누적. NXT 야간 마감 후 발화. 키움이 기간 거래내역 API 미제공이라 일자별 적재만이 유일. `briefing-fallback-2100`(21:00)과 같은 시각이지만 둘 다 read-only 충돌 없음. 재실행 시 (date,account) 단위 idempotent. **시드**: 2026-05-13 1회 `trade_journal.py seed` 로 적재 시작일 이전 보유분을 현재 평단가×(qty - tdy_buyq + tdy_sellq)로 단일 시드 행 압축(28건, seed=true 플래그, `*` 마커). 시드는 가중평균이라 과거 매수 단가와 정확히 일치 X. CLI: `collect`/`seed`/`show <code>`/`query --from --to --account --code`. **2026-06-15 4번째 명령 추가**: `python3 -m sim universe all` — sim 관찰목록 자동편입/제외. 키움 순위정보(ka90009 외인·기관순매수 + ka10023 거래량급증)에서 ETF·하락·급증률 이상치 거르고 각 15·총 120 상한 편입(origin='auto'), origin=auto·미보유·10거래일 무신호만 자동제외(보유/watch/interest/manual 불가침). 신호추적=scan_all `universe.mark_signals`→`auto_seen.json`. **2026-09-10 5번째 명령 추가**: `kiwoom_client.py refresh-codes --if-stale 7` — 종목코드 캐시(`state/stock_codes.json`) 주 1회 갱신. `--if-stale N` 이 파일 mtime 을 보고 N일 미만이면 건너뛰므로 매일 발화해도 실제 ka10099 조회는 주 1회. ⚠️ 이 캐시의 `nxt_enable` 이 자산웹의 NXT 거래 종목 판정 근거(`behive_web._is_nxt_traded`)라 낡으면 🔥거래량 배지·거래가능 초록점이 틀어진다(금액·매매엔 영향 없음). 기존 lazy 갱신은 '모르는 종목명 검색' 때만 돌아 8/20~9/10 3주간 방치돼 있었고, 갱신하니 4300종목 중 nxt_enable 3건 변경·신규 17·삭제 13이 실제로 나왔다 |
| `sim-scan` | 평일 09:00–15:30 **매 2분** (`StartCalendarInterval` 196엔트리, 엔진이 장외/휴장 self-skip) ⚠️2026-06-09 15분→5분, 2026-06-17 5분→2분 단축(스캔 1회 실측 ~3.6초라 2분 cadence 오버랩·rate limit 여유, 1분이 캘린더 한계지만 일봉 신호라 2분 충분) + `StartInterval` 900s→`StartCalendarInterval` 전환(StartInterval은 GUI세션 idle/디스플레이 sleep 시 timer coalescing으로 발화 보류돼 장중 안 돎. calendar는 git-autopush가 새벽 02:00 정상발화로 검증됨) | `python3 -m sim scan` (내부 `scan_all` — 메인+병렬변이 동시) | **자동매매 시뮬(페이퍼)** 1회 스캔. 가상자본 1억(2026-06-10 1천만→1억), 규칙 엔진(LLM 미경유). universe=비하이브 워치+관심+보유(**ETF/ETN은 2026-06-09부터 자동매수 제외** — 애널 방향성 부재로 전략 부정합, `universe.is_etf()` 프리픽스 판별, 보유분은 청산까지 추적). 방향=애널 약한게이트+가점, 타이밍=수급·기술(2026-06-09 시장강약 필터: 하드차단→소프트게이트+장중 실시간 상승비율 + **지수추세 이중확인**). **2026-06-09 4종 추가**: 리스크 기반 사이징(`signals.target_value` 수량=자산×`RISK_PER_TRADE_PCT`÷손절폭, 균등비중 캡)·RSI 필터(돌파 과열/눌림목 과매도 보류)·**시장 국면 6단계**(`market_regime_map`→`engine.REGIME`: 🔥강세·📈반등·🌤완만상승=매수허용 / ➖혼조·📉약세·❄️급락=보류. 상승비율+지수추세+당일등락 조합. market_ok·시장탭 공용. 강세/약세 2단계가 84% 반등을 약세로 오판해 세분화)·**약세장 매수모드**(`BEAR_ENTRY_MODE` 0현금화/1돌파만/2눌림허용, market_ok False일 때 signals 분기. backtest는 시장중립이라 무영향→병렬변이로 라이브 비교. 2026-06-10 **유형36×모드3=108변이 풀매트릭스**로 확장, 첫 라이브 2026-06-11)·시간손절(`MAX_HOLD_DAYS` 미진전 청산)·**추세 질 보강**(2026-06-09 trend_ok 게이트에 ①20일선 우상향 기울기 ②5>60 중기정배열 추가〔종목데이터, backtest 반영〕 + ③상대강도〔종목−지수 N일수익률, 라이브 전용 체크〕). 사이징·시간손절은 엔진·백테스트 공용 헬퍼. TUNABLE 27개. **2026-06-10 코드리뷰 보강**: ①수급DB 일일증분(trade-journal 21시 묶음 3번째 명령 `-m sim.backfill_flow --pages 1 --force` — stale시 백테스트 수급게이트 중립화됨) ②일별 성과이력 `state/sim/equity_history.json`(EOD 덮어쓰기, ph=파라미터해시) ③당일 재진입 쿨다운(`Portfolio.last_exit`, backtest 동일) ④장중 거래량 하루치 환산(`vol_time_frac` — 이전엔 오전 돌파 불가). ⑤백테스트 체결 현실화(당일종가 판단→다음날 시가 체결 pending큐 + `BT_SLIPPAGE` 0.2% — 낙관분 ~5%p 제거) ⑥3분할 꾸준함 순위(`worst_ret` 1순위 — 한 구간 운빨 배제) ⑧**기준전략(M) 폐지**(2026-06-10 — scan_all 메인 패스 execute=False 판단전용·계좌 동결, 비교/매매는 변이 36개만, 메인 제외 규칙 삭제, 마킹 아이콘 6종 `favorites.json {아이콘:vid}`+`/fav_set`〔2026-06-11 ☆토글→아이콘 피커, 아이콘당 전략 1개〕, 관심종목 기본 시각=첫 마킹→1위) ⑦비교군 동기화는 **수동 전용**(2026-06-10 자동 동기화 끔 — sweep은 결과 파일만 갱신, 비교군 변경은 관리자님 명시 요청 시만 `python3 -m sim variants sync`. `sync_label_tops`=유형(~36종)별 1위 동기화, 동일params 계좌 유지. 백테스트 탭은 유형별 대표 읽기전용 요약, 수동 추가/제거·튜닝적용 버튼 제거). 잔여 한계: 검증 데이터가 여전히 ~1년 강세 위주(진짜 하락장 검증은 라이브 누적)·생존편향 universe(의도된 설계). 매수=돌파 즉시/눌림목 지정가, 매도=손절·2:1 후 트레일링·추세수급 이탈. 결과 `state/sim/`(portfolio.json·trades.jsonl·last_scan.json). 실주문 `orders/` 불가침. 일봉은 캐시 우선 읽기(ka10081 rate limit 회피). cwd=`agents/stock/workspace` |
| `sim-web` | 상시 (`KeepAlive`) | `python3 -m sim.sim_web serve` | 시뮬 대시보드 **별도 서버 포트 18792** (behive-web 18790과 분리). `sim.hyowons.net` → mac:18792 (Synology reverse proxy, **관리자님 수동 등록 대기**). Tailnet 한정 무인증. ⚠️ 18791은 node 점유라 18792. **3탭**(2026-06-10~11 개편, 내계좌·튜닝 탭 삭제): **전략**(기본=비교만, 서브탭 버튼 없음 — 백테스트 순위표는 [📊 모의결과보기] 토글)·**관심종목**(전 전략 합산 상태그룹 + 시각 드롭다운 + 👁토스트 맨 위 '▶ 시각' 판단 표시)·**시장**(지수/ADR/투자자). 비교 행 표기: 순위배지 `N위` → 약세장대처 칩(회피/안정/적극 — 2026-06-11 '돌파'→'안정' 개명, 칩 클릭=설명 토스트) → 고유번호 `#N` → 짧은 유형명(`상승장·빠른·공격·추세추종`) → 마킹 아이콘(6종 ⭐🔥💎🎯👀🚀, **아이콘당 전략 1개**, `favorites.json {아이콘:vid}`, `/fav_set`). 펼침 body: 유형(ⓘ=시장적합)→약세장대처(ⓘ)→성적→모의평가(`btN위/36` — 약세모드 3형제는 같은 bt등수 공유). **108변이 = 유형36 × 약세모드3**(2026-06-10 풀매트릭스, v37/38=bt1위의 회피/적극 쌍 순서). 새로고침 탭 보존(라디오↔URL 동기화 + `Cache-Control: no-store`, 2026-06-11). 읽기전용 원칙, 쓰기는 `do_POST` save_params/run_sweep/variants_*/watch_*/fav_set만. 시장 탭은 장중엔 네이버 m.stock 실시간(지수+상승하락·ADR·투자자 순매수, `_get_live_market` 60s 캐시), 장외엔 EOD jsonl 폴백 (2026-06-09: 이전엔 상승하락·투자자가 EOD 고정이라 장중 안 바뀌던 것 수정) |
File diff suppressed because it is too large Load Diff
+232
View File
@@ -0,0 +1,232 @@
#!/usr/bin/env python3
from __future__ import annotations
import argparse
import json
import sys
from datetime import date, datetime
from decimal import Decimal, ROUND_HALF_UP
from pathlib import Path
from ipo_calendar_sync import (
KST,
NAVER_IPO_API_URL,
_naver_api_rows,
fetch,
send_telegram,
)
STATE_FILE = Path('/Users/snowoyh/.openclaw/agents/stock/workspace/state/ipo_alerts.json')
# 온라인 일반 고객 기준. 고객등급·배정 여부에 따라 면제될 수 있다.
# 확인이 끝난 증권사만 숫자를 두고, 미확인 증권사는 알림에서 추정하지 않는다.
BROKER_ONLINE_FEES = {
'대신증권': 2_000,
'하나증권': 2_000,
'미래에셋증권': 2_000,
'삼성증권': 2_000,
'KB증권': 1_500,
'유진투자증권': 2_000,
'한국투자증권': 2_000,
'IBK투자증권': 0,
}
def load_state() -> dict:
try:
return json.loads(STATE_FILE.read_text())
except (FileNotFoundError, json.JSONDecodeError):
return {'sent': {}}
def save_state(state: dict) -> None:
STATE_FILE.parent.mkdir(parents=True, exist_ok=True)
STATE_FILE.write_text(json.dumps(state, ensure_ascii=False, indent=2))
def _int(value) -> int | None:
try:
return int(str(value).replace(',', '').strip())
except (TypeError, ValueError):
return None
def _money(value: int | None) -> str:
return '미확인' if value is None else f'{value:,}원'
def _detail(ipo_code: str) -> dict:
url = f'https://stock.naver.com/api/domestic/ipo/{ipo_code}/detail/info'
return json.loads(fetch(url, encoding='utf-8'))
def _date_range(start: str, end: str) -> str:
return start if not end or start == end else f'{start} ~ {end}'
def _required_deposit(total: int, ratio) -> int | None:
try:
pct = Decimal(str(ratio))
except Exception:
return None
return int((Decimal(total) * pct / Decimal(100)).quantize(Decimal('1'), rounding=ROUND_HALF_UP))
def _manager_blocks(row: dict, detail: dict) -> list[dict]:
info = detail.get('registrationStatement') or {}
ratio = info.get('sbscMrgnRatio') or '50'
price = _int((detail.get('demandForecastingResult') or {}).get('fixPubPrice'))
if price is None:
price = _int(row.get('fixPubPrice'))
managers = detail.get('joinManagers') or []
if not managers:
names = [x.strip() for x in (row.get('orgNm') or '').split(',') if x.strip()]
managers = [{'orgNm': name, 'sbscMinNum': None} for name in names]
if not managers:
managers = [{'orgNm': '미확인', 'sbscMinNum': None}]
blocks = []
for manager in managers:
broker = (manager.get('orgNm') or '미확인').strip()
min_qty = _int(manager.get('sbscMinNum'))
total = price * min_qty if price is not None and min_qty is not None else None
deposit = _required_deposit(total, ratio) if total is not None else None
fee = BROKER_ONLINE_FEES.get(broker)
blocks.append({
'broker': broker,
'min_qty': min_qty,
'price': price,
'total': total,
'ratio': ratio,
'deposit': deposit,
'fee': fee,
})
return blocks
def format_alert(kind: str, row: dict, detail: dict) -> str:
name = (row.get('compName') or (detail.get('ipoInfo') or {}).get('compName') or '미확인').strip()
info = detail.get('ipoInfo') or {}
if kind == 'subscription':
heading = '[공모주 청약]'
date_label = '청약일'
date_value = _date_range(info.get('poStartDate') or row.get('poStartDate') or '', info.get('poEndDate') or row.get('poEndDate') or '')
else:
heading = '[신규 상장]'
date_label = '상장일'
date_value = info.get('lcalDate') or row.get('lcalDate') or ''
sections = []
for block in _manager_blocks(row, detail):
price = block['price']
qty = block['min_qty']
if block['deposit'] is not None and qty is not None:
cost = f"{block['deposit']:,}원(최소 {qty:,}주)"
elif price is not None:
cost = '최소청약수량 미확인'
else:
cost = '미확정'
fee = block['fee']
cost += f" / 수수료 {_money(fee)}(온라인 일반 기준)"
sections.append('\n'.join([
heading,
f'종목명 : {name}',
f"증권사 : {block['broker']}",
f'{date_label} : {date_value}',
f'증거금 : {cost}',
]))
return '\n\n'.join(sections)
def collect_for_date(kind: str, target: date) -> list[tuple[dict, dict]]:
payload = json.loads(fetch(NAVER_IPO_API_URL, encoding='utf-8'))
matches = []
field = 'poStartDate' if kind == 'subscription' else 'lcalDate'
for row in _naver_api_rows(payload):
if row.get(field) != target.isoformat():
continue
code = (row.get('ipoCode') or row.get('itemCode') or '').strip()
if not code:
continue
matches.append((row, _detail(code)))
return matches
def main() -> int:
parser = argparse.ArgumentParser()
parser.add_argument('kind', choices=('subscription', 'listing'))
parser.add_argument('--date', help='YYYY-MM-DD, 기본값은 오늘(KST)')
parser.add_argument('--dry-run', action='store_true')
args = parser.parse_args()
target = date.fromisoformat(args.date) if args.date else datetime.now(KST).date()
try:
rows = collect_for_date(args.kind, target)
except Exception as exc:
print(f'IPO alert source failed: {type(exc).__name__}: {exc}', file=sys.stderr)
rows = None
if args.kind == 'listing' and not args.dry_run:
# 자산웹에서 청약완료한 종목을 상장일에 관심종목으로 등록. 알림 소스가 죽어도
# 청약완료 기록의 상장일로 시도한다(그래서 위에서 바로 return 하지 않는다).
listed = {(r.get('ipoCode') or r.get('itemCode') or '').strip() for r, _ in (rows or [])}
try:
from behive_web import register_listed_ipo_interests
added = register_listed_ipo_interests(target.isoformat(), listed)
if added:
print(f'IPO interests added: {", ".join(added)}')
except Exception as exc:
print(f'IPO interests add failed: {type(exc).__name__}: {exc}', file=sys.stderr)
if rows is None:
return 1
state = load_state()
sent = state.setdefault('sent', {})
delivered = 0
skipped = 0
for row, detail in rows:
code = (row.get('ipoCode') or row.get('itemCode') or '').strip()
key = f'{args.kind}|{target.isoformat()}|{code}'
if key in sent and not args.dry_run:
skipped += 1
continue
message = format_alert(args.kind, row, detail)
if args.dry_run:
print(message)
print()
continue
if not send_telegram(message):
print(f'IPO alert send failed: {key}', file=sys.stderr)
return 1
sent[key] = datetime.now(KST).isoformat()
delivered += 1
if not args.dry_run:
# 상태 파일이 무한히 커지지 않도록 최근 120일만 보존한다.
cutoff = date.fromordinal(target.toordinal() - 120).isoformat()
state['sent'] = {
key: value for key, value in sent.items()
if len(key.split('|')) < 2 or key.split('|')[1] >= cutoff
}
state['last_run_at'] = datetime.now(KST).isoformat()
state['last_kind'] = args.kind
state['last_target_date'] = target.isoformat()
state['last_found'] = len(rows)
state['last_delivered'] = delivered
state['last_skipped'] = skipped
save_state(state)
print(json.dumps({
'kind': args.kind,
'target_date': target.isoformat(),
'found': len(rows),
'delivered': delivered,
'skipped': skipped,
'dry_run': args.dry_run,
}, ensure_ascii=False))
return 0
if __name__ == '__main__':
raise SystemExit(main())
@@ -0,0 +1,128 @@
#!/usr/bin/env python3
"""자산웹 손익차트 과거 구간 채우기 — 키움 kt00002(일별추정예탁자산현황) → state/net_worth_history.json.
portfolio_daily_snapshot 은 2026-05-01 부터만 쓸 수 있는 형식이라(4월은 예수금 없는 옛 형식) 그 이전
차트가 비어 있다. 키움 계좌별 일별 추정예탁자산으로 그 앞 구간을 채운다. 조회 전용, 1회성 CLI.
- 조회기간 한 번에 6개월 미만(`501067`) → 170일 창으로 쪼갠다. 계좌당 3~4콜.
- kt00002 는 주말·휴장일도 행이 온다 → KOSPI 일별종가가 있는 날(sim index_history)만 남긴다.
market_holidays.json 은 2026년부터라 2025 휴장일을 못 거른다.
- 값 기준이 스냅샷과 다르다(KRX 종가 − 추정 매도비용 ≈0.18%, 스냅샷은 20:10 NXT 가격) →
겹치는 첫날(스냅샷 첫 날짜)의 비율로 owner 별 스케일을 맞춰 경계일 단차를 없앤다.
- 입출금은 investment_principal 캐시(kt00015, 키움 콜 0)에서 — 스냅샷 cash_in 과 같은 의미
(배당·이자 포함 전체 입출금).
CLI: python3 net_worth_backfill.py [--from YYYY-MM-DD] [--dry-run]
"""
from __future__ import annotations
import argparse
import json
import os
import sys
import time
from datetime import date, datetime, timedelta
from pathlib import Path
from zoneinfo import ZoneInfo
sys.path.insert(0, str(Path(__file__).resolve().parent))
import investment_principal as ip # noqa: E402
import kiwoom_client as kc # noqa: E402
KST = ZoneInfo('Asia/Seoul')
STATE = Path(__file__).resolve().parent.parent / 'state'
SNAPSHOT_FILE = STATE / 'portfolio_daily_snapshot.json'
INDEX_FILE = STATE / 'sim' / 'index_history.json'
OUT_FILE = STATE / 'net_worth_history.json'
OWNERS = {'본인': ['일반', 'ISA'], '가희': ['가희_일반', '가희_ISA']}
WINDOW_DAYS = 170
def _first_snapshot_date(snap: dict, owner: str) -> str | None:
"""스냅샷에서 차트가 쓰는 형식(holdings+deposit)이 시작되는 날짜."""
return next((d for d in sorted(snap) if 'holdings' in ((snap.get(d) or {}).get(owner) or {})), None)
def _fetch_account(label: str, start: date, end: date) -> dict[str, int]:
"""{YYYY-MM-DD: 추정예탁자산}. 계좌 개설 전 구간은 '내역 없음' 에러라 빈 창으로 친다."""
out: dict[str, int] = {}
cur = start
while cur <= end:
w_end = min(cur + timedelta(days=WINDOW_DAYS), end)
try:
r = kc._call_paginated(label, 'kt00002',
{'start_dt': cur.strftime('%Y%m%d'), 'end_dt': w_end.strftime('%Y%m%d')},
'daly_prsm_dpst_aset_amt_prst')
for x in r.get('daly_prsm_dpst_aset_amt_prst') or []:
v = kc._to_int(x.get('prsm_dpst_aset_amt'))
if v:
d = x['dt']
out[f'{d[:4]}-{d[4:6]}-{d[6:]}'] = v
except RuntimeError as e:
if '506476' not in str(e): # 506476 = 내역 없음(개설 전)
raise
time.sleep(0.4)
cur = w_end + timedelta(days=1)
return out
def main() -> int:
ap = argparse.ArgumentParser()
ap.add_argument('--from', dest='frm', default='2025-01-01')
ap.add_argument('--dry-run', action='store_true')
a = ap.parse_args()
snap = json.loads(SNAPSHOT_FILE.read_text())
idx = json.loads(INDEX_FILE.read_text()).get('KOSPI') or {}
trading = {f'{d[:4]}-{d[4:6]}-{d[6:]}' for d in idx}
start = date.fromisoformat(a.frm)
if f'{start:%Y-%m-%d}' < min(trading):
print(f'⚠️ 거래일 달력(KOSPI)이 {min(trading)} 부터라 그 이전은 거를 수 없다', file=sys.stderr)
return 1
days: dict[str, dict] = {}
scale: dict[str, float] = {}
for owner, labels in OWNERS.items():
first = _first_snapshot_date(snap, owner)
if not first:
print(f'{owner}: 스냅샷 없음 — 건너뜀', file=sys.stderr)
continue
end = date.fromisoformat(first) # 겹치는 첫날까지 받아 스케일 기준으로 쓴다
per_acct = {lb: _fetch_account(lb, start, end) for lb in labels}
# 기준일(스냅샷 첫날)은 휴장일일 수 있어(2026-05-01 근로자의 날) 거래일 필터는 저장 행에만 건다.
total = {d: sum(per_acct[lb].get(d, 0) for lb in labels) for d in set().union(*per_acct.values())}
o_snap = snap[first][owner]
snap_net = sum(int(h.get('eval_value', 0) or 0) for h in o_snap['holdings'].values()) + int(o_snap.get('deposit', 0) or 0)
if not total.get(first):
print(f'{owner}: 기준일 {first} kt00002 값 없음 — 중단', file=sys.stderr)
return 1
scale[owner] = snap_net / total[first]
flows: dict[str, dict] = {}
for f in ip.get_flows(labels)['rows']:
d = f'{f["date"][:4]}-{f["date"][4:6]}-{f["date"][6:]}'
k = 'cash_in' if f['io'] == 'IN' else 'cash_out'
flows.setdefault(d, {'cash_in': 0, 'cash_out': 0})[k] += int(f['amount'])
n = 0
for d in sorted(total):
if d >= first or d not in trading:
continue
rec = {'net': round(total[d] * scale[owner])}
rec.update(flows.get(d) or {})
days.setdefault(d, {})[owner] = rec
n += 1
print(f'{owner}: {n}일 ({min(days)} ~ {first} 직전), 스케일 {scale[owner]:.5f} (기준 {first} 스냅샷 {snap_net:,} / 키움 {total[first]:,})')
doc = {'source': 'kiwoom kt00002', 'fetched_at': datetime.now(KST).isoformat(timespec='seconds'),
'scale': scale, 'days': dict(sorted(days.items()))}
if a.dry_run:
print('dry-run — 저장 안 함')
return 0
tmp = OUT_FILE.with_suffix('.tmp')
tmp.write_text(json.dumps(doc, ensure_ascii=False, indent=1))
os.replace(tmp, OUT_FILE)
print(f'저장: {OUT_FILE} ({len(days)}일)')
return 0
if __name__ == '__main__':
sys.exit(main())
@@ -0,0 +1,68 @@
import sys
import unittest
from datetime import date
from pathlib import Path
from unittest.mock import patch
SCRIPTS = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(SCRIPTS))
import ipo_alert
class IpoAlertTests(unittest.TestCase):
def setUp(self):
self.row = {
'ipoCode': 'A250030',
'compName': '진코스텍',
'poStartDate': '2026-10-02',
'poEndDate': '2026-10-06',
'lcalDate': '2026-10-15',
'fixPubPrice': '23500',
'orgNm': '하나증권',
}
self.detail = {
'ipoInfo': {
'compName': '진코스텍',
'poStartDate': '2026-10-02',
'poEndDate': '2026-10-06',
'lcalDate': '2026-10-15',
},
'registrationStatement': {'sbscMrgnRatio': '50.00'},
'demandForecastingResult': {'fixPubPrice': '23500'},
'joinManagers': [{'orgNm': '하나증권', 'sbscMinNum': '10'}],
}
def test_subscription_format_uses_first_day_and_minimum_cash(self):
text = ipo_alert.format_alert('subscription', self.row, self.detail)
self.assertIn('종목명 : 진코스텍', text)
self.assertIn('증권사 : 하나증권', text)
self.assertIn('청약일 : 2026-10-02 ~ 2026-10-06', text)
self.assertIn('증거금 : 117,500원(최소 10주)', text)
self.assertNotIn('23,500원', text)
self.assertNotIn('50%', text)
self.assertIn('수수료 2,000원(온라인 일반 기준)', text)
def test_listing_uses_listing_date(self):
text = ipo_alert.format_alert('listing', self.row, self.detail)
self.assertIn('[신규 상장]', text)
self.assertIn('상장일 : 2026-10-15', text)
def test_collect_subscription_matches_only_first_day(self):
payload = {
'examinationList': [], 'demandForecastingList': [],
'forecastingCompleteList': [],
'subscriptionList': [self.row],
'subscriptionCompleteList': [], 'listingList': [],
}
with patch.object(ipo_alert, 'fetch', return_value=ipo_alert.json.dumps(payload)), patch.object(
ipo_alert, '_detail', return_value=self.detail
):
first = ipo_alert.collect_for_date('subscription', date(2026, 10, 2))
second = ipo_alert.collect_for_date('subscription', date(2026, 10, 3))
self.assertEqual(len(first), 1)
self.assertEqual(second, [])
if __name__ == '__main__':
unittest.main()
@@ -180,3 +180,5 @@
{"date": "2026-09-30", "market": "KOSPI", "market_label": "코스피", "rise": 352, "upper": 1, "fall": 513, "lower": 0, "steady": 49, "adr": 68.81, "personal": 12109, "foreign": -20646, "institutional": -7993, "captured_at": "2026-09-30T21:00:02.664980+09:00"}
{"date": "2026-10-01", "market": "KOSDAQ", "market_label": "코스닥", "rise": 1230, "upper": 2, "fall": 423, "lower": 0, "steady": 89, "adr": 291.25, "personal": -7770, "foreign": 2280, "institutional": 5684, "captured_at": "2026-10-01T21:00:02.087388+09:00"}
{"date": "2026-10-01", "market": "KOSPI", "market_label": "코스피", "rise": 542, "upper": 0, "fall": 332, "lower": 0, "steady": 42, "adr": 163.25, "personal": -14102, "foreign": -5558, "institutional": 3239, "captured_at": "2026-10-01T21:00:02.087388+09:00"}
{"date": "2026-10-02", "market": "KOSDAQ", "market_label": "코스닥", "rise": 958, "upper": 4, "fall": 681, "lower": 0, "steady": 102, "adr": 141.26, "personal": 841, "foreign": -1767, "institutional": 936, "captured_at": "2026-10-02T21:00:06.325959+09:00"}
{"date": "2026-10-02", "market": "KOSPI", "market_label": "코스피", "rise": 500, "upper": 1, "fall": 362, "lower": 0, "steady": 56, "adr": 138.4, "personal": -17897, "foreign": -1080, "institutional": 4155, "captured_at": "2026-10-02T21:00:06.325959+09:00"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
{
"cash": 8293681.140499972,
"cash": 13069677.455499973,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,32 +18,11 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 5572914.42378125,
"last_add_price": 130800
},
"214450": {
"code": "214450",
"name": "파마리서치",
"sources": [
"auto"
],
"qty": 31,
"entry_price": 347064.51612903224,
"entry_at": "2026-07-16T09:04:02.184863+09:00",
"stop": 305213,
"target": 472619,
"peak": 465250,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"tranches": 2,
"tranche_value": 5640114.3750312505,
"last_add_price": 353000
},
"194370": {
"code": "194370",
"name": "제이에스코퍼레이션",
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4803063.4110624995,
"last_add_price": 13420
@@ -76,12 +55,12 @@
"entry_at": "2026-09-03T09:02:19.208652+09:00",
"stop": 10093,
"target": 16265,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4801549.203874999,
"last_add_price": 11930
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,168 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 3703169.8275951464,
"last_add_price": 13820
@@ -123,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 117300,
"cur_price": 114100,
"tranches": 2,
"tranche_value": 4783418.996406249,
"last_add_price": 133000
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 4659198.910937498,
"last_add_price": 36450
@@ -165,14 +144,35 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 4695809.036093748,
"last_add_price": 5740
},
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 34,
"entry_price": 136600,
"entry_at": "2026-10-02T14:48:37.320234+09:00",
"stop": 116526,
"target": 196823,
"peak": 136900,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 136600,
"tranches": 1,
"tranche_value": 4696049.632218748,
"last_add_price": 136600
}
},
"realized_pnl": -28631149.003000036,
"closed_trades": 32,
"realized_pnl": -29970669.878000036,
"closed_trades": 33,
"wins": 1,
"peak_equity": 100102462.48,
"max_drawdown": 0.2711544112406138,
@@ -184,7 +184,7 @@
"403870": "2026-07-07",
"240810": "2026-07-24",
"093370": "2026-07-20",
"214450": "2026-07-15",
"214450": "2026-10-02",
"055550": "2026-07-20",
"024060": "2026-07-27",
"003680": "2026-08-24",
@@ -198,5 +198,5 @@
"003550": "2026-09-15"
},
"created_at": "2026-06-11T09:00:01.943184+09:00",
"updated_at": "2026-10-01T15:28:32.985352+09:00"
"updated_at": "2026-10-02T15:28:37.336187+09:00"
}
@@ -99,3 +99,5 @@
{"ts": "2026-09-15T09:10:30.136504+09:00", "side": "BUY", "code": "316140", "name": "우리금융지주", "price": 36450, "qty": 127, "cost": 4629844, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 32978, "target": 46866, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "36,200 vs 32,230"}, {"label": "정배열(5>10)", "ok": true, "detail": "33,260 / 32,230"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "33,260 / 30,948"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+20.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +3,281 · 기 -786 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+21%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": false, "detail": "약세 — 돌파만 허용"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.54% (환산) vs 평균 0.34% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 33,850"}, {"label": "거래량 급증", "ok": true, "detail": "3,898,453 (환산) vs 평균 2,489,243"}, {"label": "회전율 급증", "ok": true, "detail": "0.54% (환산) vs 평균 0.34%"}, {"label": "RSI", "ok": true, "detail": "72"}]}
{"ts": "2026-09-22T09:32:35.251487+09:00", "side": "SELL", "code": "078930", "name": "GS", "price": 109700, "qty": 75, "proceeds": 8211456, "entry_price": 127165, "pnl": -1327374, "pnl_pct": -13.73, "hold_from": "2026-09-04T12:34:21.902508+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "110,486 (현재 110,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 177,203"}, {"label": "추세(10일선)", "ok": true, "detail": "83,080"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +266 · 기 -141"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-22T09:32:35.675940+09:00", "side": "BUY", "code": "088350", "name": "한화생명", "price": 5740, "qty": 817, "cost": 4690283, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 5129, "target": 7573, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "5,720 vs 4,822"}, {"label": "정배열(5>10)", "ok": true, "detail": "5,161 / 4,822"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,161 / 4,734"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+26.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -544 · 기 +443 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+11%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.68% (환산) vs 평균 0.43% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "5,933,633 (환산) vs 평균 3,731,411"}, {"label": "회전율 급증", "ok": true, "detail": "0.68% (환산) vs 평균 0.43%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
{"ts": "2026-10-02T14:48:36.881112+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 304500, "qty": 31, "proceeds": 9421093, "entry_price": 347065, "pnl": -1339521, "pnl_pct": -12.26, "hold_from": "2026-07-16T09:04:02.184863+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "305,213 (현재 305,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 472,619"}, {"label": "추세(10일선)", "ok": true, "detail": "301,850"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +84 · 기 -122"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T14:48:37.320243+09:00", "side": "BUY", "code": "161890", "name": "한국콜마", "price": 136600, "qty": 34, "cost": 4645097, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 116526, "target": 196823, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "136,300 vs 112,690"}, {"label": "정배열(5>10)", "ok": true, "detail": "114,560 / 112,690"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "114,560 / 92,538"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+50.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +32 · 기 -67 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+27%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "4.28% (환산) vs 평균 1.76% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 124,600"}, {"label": "거래량 급증", "ok": true, "detail": "1,006,968 (환산) vs 평균 415,172"}, {"label": "회전율 급증", "ok": true, "detail": "4.28% (환산) vs 평균 1.76%"}, {"label": "RSI", "ok": true, "detail": "76"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3504336.4241500003,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-09-03T09:02:24.974496+09:00",
"stop": 10215,
"target": 14072,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3334430.645615085,
"last_add_price": 11930
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 4741640.48120924,
"last_add_price": 36150
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5610,
"cur_price": 5600,
"tranches": 2,
"tranche_value": 1651454.8079885093,
"last_add_price": 7390
@@ -95,14 +95,14 @@
"qty": 304,
"entry_price": 13496.184210526315,
"entry_at": "2026-09-07T15:06:35.044589+09:00",
"stop": 18085,
"stop": 18166,
"target": 18110,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,160 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2059070.58259455,
"last_add_price": 13930
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 410,925 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 5205421.720847539,
"last_add_price": 406000
@@ -139,12 +139,12 @@
"entry_at": "2026-10-01T09:12:47.860612+09:00",
"stop": 13324,
"target": 18625,
"peak": 15870,
"peak": 16450,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 15710,
"cur_price": 16410,
"tranches": 2,
"tranche_value": 3193742.1412302153,
"last_add_price": 15740
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T10:38:41.833335+09:00",
"stop": 29749,
"target": 41627,
"peak": 34500,
"peak": 34650,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 1,
"tranche_value": 3118790.5134803206,
"last_add_price": 34500
@@ -199,5 +199,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-11T09:00:01.944232+09:00",
"updated_at": "2026-10-01T15:28:42.483326+09:00"
"updated_at": "2026-10-02T15:28:47.956676+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 49382349.41850006,
"cash": 47177818.788500056,
"initial": 100000000,
"positions": {
"194370": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3497500.5799993444,
"last_add_price": 13420
@@ -32,14 +32,14 @@
"qty": 272,
"entry_price": 14105.33088235294,
"entry_at": "2026-09-04T11:14:26.495104+09:00",
"stop": 18085,
"stop": 18166,
"target": 18636,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,946 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1928587.8820308954,
"last_add_price": 14660
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5610,
"cur_price": 5600,
"tranches": 2,
"tranche_value": 1653071.9448850204,
"last_add_price": 7390
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T09:04:39.495077+09:00",
"stop": 10441,
"target": 14267,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,977 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3370314.5438456116,
"last_add_price": 12170
@@ -97,12 +97,12 @@
"entry_at": "2026-09-22T09:02:46.938295+09:00",
"stop": 121395,
"target": 214288,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 157,986 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1773948.7536711907,
"last_add_price": 164000
@@ -113,20 +113,20 @@
"sources": [
"auto"
],
"qty": 110,
"entry_price": 20050,
"qty": 213,
"entry_price": 20702.816901408452,
"entry_at": "2026-09-23T12:32:47.146539+09:00",
"stop": 16123,
"target": 25941,
"peak": 21450,
"stop": 16947,
"target": 26336,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,336 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2212317.899773747,
"last_add_price": 20050
"last_add_price": 21400
},
"025860": {
"code": "025860",
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,148 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5419734.413812503,
"last_add_price": 6050
@@ -200,5 +200,5 @@
"316140": "2026-10-01"
},
"created_at": "2026-06-11T09:00:01.944251+09:00",
"updated_at": "2026-10-01T15:28:42.486019+09:00"
"updated_at": "2026-10-02T15:28:47.959620+09:00"
}
@@ -126,3 +126,4 @@
{"ts": "2026-09-28T09:20:48.364329+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 164000, "qty": 10, "cost": 1640246, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 115572, "target": 210643, "signals": [{"label": "손절선", "ok": true, "detail": "115,572 (현재 163,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 210,643"}, {"label": "추세(10일선)", "ok": true, "detail": "153,880"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +222 · 기 -12"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 162,889"}]}
{"ts": "2026-10-01T09:00:53.929412+09:00", "side": "SELL", "code": "316140", "name": "우리금융지주", "price": 32800, "qty": 329, "proceeds": 10770157, "entry_price": 32319, "pnl": 135762, "pnl_pct": 1.49, "hold_from": "2026-08-24T13:12:20.462989+09:00", "reason": "트레일링 익절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "34,483 (현재 33,850)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(10일선)", "ok": true, "detail": "31,995"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -303 · 기 -158"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-01T09:02:45.598935+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 271500, "qty": 14, "cost": 3801570, "path": "pullback", "reason": "눌림목 지정가 277,258 도달", "stop": 242017, "target": 315725, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "270,000 vs 256,700"}, {"label": "정배열(5>10)", "ok": true, "detail": "267,300 / 256,700"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "267,300 / 248,933"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+10.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -51 · 기 +19 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+20%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.15% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": false, "detail": "22,107 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": false, "detail": "0.15% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "60"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 277,258 (현재 270,000)"}]}
{"ts": "2026-10-02T09:01:23.796646+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 103, "cost": 2204531, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16123, "target": 25941, "signals": [{"label": "손절선", "ok": true, "detail": "16,123 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 25,941"}, {"label": "추세(10일선)", "ok": true, "detail": "19,228"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 20,989"}]}
@@ -1,5 +1,5 @@
{
"cash": 29777858.192150038,
"cash": 26995440.892150037,
"initial": 100000000,
"positions": {
"327260": {
@@ -11,14 +11,14 @@
"qty": 97,
"entry_price": 34562.886597938144,
"entry_at": "2026-08-20T09:02:17.450989+09:00",
"stop": 46039,
"stop": 50495,
"target": 49986,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1699505.011186723,
"last_add_price": 35800
@@ -32,14 +32,14 @@
"qty": 335,
"entry_price": 14067.880597014926,
"entry_at": "2026-09-03T09:02:24.986233+09:00",
"stop": 18085,
"stop": 18166,
"target": 18598,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2363869.6412348715,
"last_add_price": 14660
@@ -55,12 +55,12 @@
"entry_at": "2026-09-10T09:00:55.814433+09:00",
"stop": 10997,
"target": 14266,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,003 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4373273.034451844,
"last_add_price": 12290
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T10:28:40.300992+09:00",
"stop": 4646,
"target": 6431,
"peak": 5710,
"peak": 5730,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,108 도달",
"cur_price": 5440,
"cur_price": 5590,
"tranches": 2,
"tranche_value": 3476292.7545329626,
"last_add_price": 5390
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 138,
"entry_price": 20200,
"qty": 268,
"entry_price": 20782.089552238805,
"entry_at": "2026-09-16T13:08:39.885461+09:00",
"stop": 17261,
"target": 26078,
"peak": 21450,
"stop": 17965,
"target": 26416,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,341 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2789435.574661536,
"last_add_price": 20200
"last_add_price": 21400
},
"300720": {
"code": "300720",
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,386 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 5079314.422828128,
"last_add_price": 16170
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,241 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 3260787.278232004,
"last_add_price": 1243
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T09:58:43.236173+09:00",
"stop": 6543,
"target": 8151,
"peak": 7220,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 5159308.130815627,
"last_add_price": 7170
@@ -207,5 +207,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-11T09:00:01.944270+09:00",
"updated_at": "2026-10-01T15:28:42.488753+09:00"
"updated_at": "2026-10-02T15:28:47.962589+09:00"
}
@@ -178,3 +178,4 @@
{"ts": "2026-10-01T09:58:43.236189+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 6990, "qty": 737, "cost": 5152403, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 6454, "target": 8062, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "7,000 vs 4,806"}, {"label": "정배열(5>20)", "ok": true, "detail": "5,552 / 4,806"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,552 / 4,914"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+49.7%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -49 · 기 +12 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.76% (환산) vs 평균 0.30% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "95,240 (환산) vs 평균 38,349"}, {"label": "회전율 급증", "ok": true, "detail": "0.76% (환산) vs 평균 0.30%"}, {"label": "RSI", "ok": true, "detail": "86"}]}
{"ts": "2026-10-01T10:16:47.426944+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7170, "qty": 719, "cost": 5156003, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 6454, "target": 8062, "signals": [{"label": "손절선", "ok": true, "detail": "6,454 (현재 7,180)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 8,062"}, {"label": "추세(20일선)", "ok": true, "detail": "4,814"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -49 · 기 +12"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 7,169"}]}
{"ts": "2026-10-01T12:24:42.427319+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1243, "qty": 2622, "cost": 3259635, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 1047, "target": 1501, "signals": [{"label": "손절선", "ok": true, "detail": "1,047 (현재 1,250)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 1,501"}, {"label": "추세(20일선)", "ok": true, "detail": "1,143"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -68 · 기 +4"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 1,249"}]}
{"ts": "2026-10-02T09:01:23.801920+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 130, "cost": 2782417, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17261, "target": 26078, "signals": [{"label": "손절선", "ok": true, "detail": "17,261 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,078"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -1,5 +1,5 @@
{
"cash": 26562940.740249995,
"cash": 23737717.020249996,
"initial": 100000000,
"positions": {
"086790": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 5180051.180047499,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4464385.527789056,
"last_add_price": 13420
@@ -53,14 +53,14 @@
"qty": 357,
"entry_price": 14066.050420168067,
"entry_at": "2026-09-03T09:02:24.991070+09:00",
"stop": 18085,
"stop": 18166,
"target": 18596,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2517324.6404987266,
"last_add_price": 14660
@@ -76,12 +76,12 @@
"entry_at": "2026-09-04T11:14:26.856101+09:00",
"stop": 2875,
"target": 3831,
"peak": 3420,
"peak": 3435,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,140 도달",
"cur_price": 3400,
"cur_price": 3345,
"tranches": 2,
"tranche_value": 4146153.6468727933,
"last_add_price": 3255
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 140,
"entry_price": 20200,
"qty": 272,
"entry_price": 20782.352941176472,
"entry_at": "2026-09-16T13:08:39.890765+09:00",
"stop": 17261,
"target": 26078,
"peak": 21450,
"stop": 17966,
"target": 26416,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,341 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2842559.6395269656,
"last_add_price": 20200
"last_add_price": 21400
},
"041520": {
"code": "041520",
@@ -118,12 +118,12 @@
"entry_at": "2026-09-16T13:08:40.269206+09:00",
"stop": 10788,
"target": 14231,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,955 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4111186.507374883,
"last_add_price": 12170
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,155 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5205107.041859375,
"last_add_price": 6130
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,390 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 5207239.454359375,
"last_add_price": 16110
@@ -200,5 +200,5 @@
"079650": "2026-09-30"
},
"created_at": "2026-06-11T09:00:01.944290+09:00",
"updated_at": "2026-10-01T15:28:42.491313+09:00"
"updated_at": "2026-10-02T15:28:47.965307+09:00"
}
@@ -140,3 +140,4 @@
{"ts": "2026-09-18T09:14:43.475558+09:00", "side": "BUY", "code": "025860", "name": "남해화학", "price": 6130, "qty": 848, "cost": 5199020, "path": "pullback", "reason": "눌림목 지정가 6,155 도달", "stop": 5730, "target": 6930, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "6,130 vs 6,034"}, {"label": "정배열(5>10)", "ok": true, "detail": "6,112 / 6,034"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "6,112 / 5,900"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+13.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +4 · 기 +62 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.13% (환산) vs 평균 1.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 6,700"}, {"label": "거래량 급증", "ok": false, "detail": "62,267 (환산) vs 평균 758,257"}, {"label": "회전율 급증", "ok": false, "detail": "0.13% (환산) vs 평균 1.53%"}, {"label": "RSI", "ok": true, "detail": "55"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 6,155 (현재 6,130)"}]}
{"ts": "2026-09-30T11:40:45.422955+09:00", "side": "SELL", "code": "079650", "name": "서산", "price": 5760, "qty": 602, "proceeds": 3460758, "entry_price": 7082, "pnl": -803401, "pnl_pct": -18.67, "hold_from": "2026-09-04T12:36:28.830726+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "5,765 (현재 5,730)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 9,716"}, {"label": "추세(10일선)", "ok": true, "detail": "4,954"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +67 · 기 +0"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T11:40:45.860932+09:00", "side": "BUY", "code": "300720", "name": "한일시멘트", "price": 16110, "qty": 323, "cost": 5204311, "path": "pullback", "reason": "눌림목 지정가 16,390 도달", "stop": 15271, "target": 17789, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "16,100 vs 15,864"}, {"label": "정배열(5>10)", "ok": true, "detail": "16,302 / 15,864"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "16,302 / 14,436"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+15.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +18 · 기 -4 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+27%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.05% (환산) vs 평균 0.12% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 17,140"}, {"label": "거래량 급증", "ok": false, "detail": "39,139 (환산) vs 평균 89,609"}, {"label": "회전율 급증", "ok": false, "detail": "0.05% (환산) vs 평균 0.12%"}, {"label": "RSI", "ok": true, "detail": "61"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 16,390 (현재 16,100)"}]}
{"ts": "2026-10-02T09:01:23.806528+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 132, "cost": 2825224, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17261, "target": 26078, "signals": [{"label": "손절선", "ok": true, "detail": "17,261 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,078"}, {"label": "추세(10일선)", "ok": true, "detail": "19,228"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 118,115 도달",
"cur_price": 126300,
"cur_price": 128800,
"tranches": 2,
"tranche_value": 4675255.455593748,
"last_add_price": 120500
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4550435.925312498,
"last_add_price": 125200
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 4604300.898906248,
"last_add_price": 136000
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4446388.7381874975,
"last_add_price": 13420
@@ -97,12 +97,12 @@
"entry_at": "2026-08-20T09:02:17.459458+09:00",
"stop": 24273,
"target": 65401,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2315542.8746463708,
"last_add_price": 35800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 31,939 도달",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 4361206.427093747,
"last_add_price": 32750
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,977 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 3390239.348206665,
"last_add_price": 13930
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T14:04:46.071926+09:00",
"stop": 10600,
"target": 15880,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,331 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 4672256.2572812475,
"last_add_price": 11920
@@ -199,5 +199,5 @@
"161890": "2026-07-30"
},
"created_at": "2026-06-15T14:55:00.582771+09:00",
"updated_at": "2026-10-01T15:28:43.790792+09:00"
"updated_at": "2026-10-02T15:28:49.080051+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4920739.488124997,
"last_add_price": 13420
@@ -32,14 +32,14 @@
"qty": 147,
"entry_price": 34559.183673469386,
"entry_at": "2026-08-20T09:02:17.463463+09:00",
"stop": 46039,
"stop": 50495,
"target": 49982,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2545799.7712668725,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4975122.724249996,
"last_add_price": 30200
@@ -74,14 +74,14 @@
"qty": 543,
"entry_price": 13534.364640883978,
"entry_at": "2026-09-10T09:00:57.191927+09:00",
"stop": 18085,
"stop": 18166,
"target": 18148,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,977 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 3681766.0445766635,
"last_add_price": 13930
@@ -97,12 +97,12 @@
"entry_at": "2026-09-15T09:04:40.682851+09:00",
"stop": 10442,
"target": 14267,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,977 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 5111363.335968746,
"last_add_price": 12170
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"cur_price": 305500,
"tranches": 1,
"tranche_value": 5117033.466531246,
"last_add_price": 339000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,241 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 4912123.718578215,
"last_add_price": 1243
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T09:58:43.271582+09:00",
"stop": 6364,
"target": 8151,
"peak": 7220,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 5179414.163887496,
"last_add_price": 7170
@@ -203,5 +203,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.582787+09:00",
"updated_at": "2026-10-01T15:28:43.806289+09:00"
"updated_at": "2026-10-02T15:28:49.097744+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4697478.874937497,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4594021.1274374975,
"last_add_price": 13420
@@ -53,14 +53,14 @@
"qty": 137,
"entry_price": 34556.20437956204,
"entry_at": "2026-08-20T09:02:17.467056+09:00",
"stop": 24274,
"stop": 50495,
"target": 55120,
"peak": 53100,
"trailing_on": false,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2377721.795719703,
"last_add_price": 35800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 31,939 도달",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 4467750.718124997,
"last_add_price": 32750
@@ -95,14 +95,14 @@
"qty": 501,
"entry_price": 13647.724550898203,
"entry_at": "2026-09-09T14:22:31.922572+09:00",
"stop": 18085,
"stop": 18166,
"target": 19800,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,936 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 3428684.1695128847,
"last_add_price": 14070
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"cur_price": 305500,
"tranches": 1,
"tranche_value": 4832581.963906247,
"last_add_price": 339000
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T09:01:18.726328+09:00",
"stop": 10600,
"target": 14440,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,370 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 4880085.487656247,
"last_add_price": 11880
@@ -160,7 +160,7 @@
"entry_at": "2026-10-01T14:16:43.896361+09:00",
"stop": 243017,
"target": 331466,
"peak": 272500,
"peak": 273500,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
@@ -202,5 +202,5 @@
"034020": "2026-09-29"
},
"created_at": "2026-06-15T14:55:00.582803+09:00",
"updated_at": "2026-10-01T15:28:43.815436+09:00"
"updated_at": "2026-10-02T15:28:49.107175+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 37495101.475499995,
"cash": 34605668.12549999,
"initial": 100000000,
"positions": {
"086790": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4929642.288776176,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4296364.655919675,
"last_add_price": 13420
@@ -53,14 +53,14 @@
"qty": 100,
"entry_price": 34552.0,
"entry_at": "2026-08-20T09:02:17.470693+09:00",
"stop": 46039,
"stop": 50495,
"target": 49975,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1744609.622982949,
"last_add_price": 35800
@@ -74,14 +74,14 @@
"qty": 346,
"entry_price": 14066.936416184972,
"entry_at": "2026-09-03T09:02:25.006986+09:00",
"stop": 18085,
"stop": 18166,
"target": 18597,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2434547.9721527454,
"last_add_price": 14660
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 142,
"entry_price": 20400,
"qty": 277,
"entry_price": 20887.364620938628,
"entry_at": "2026-09-17T09:08:41.268639+09:00",
"stop": 17487,
"target": 26226,
"peak": 21450,
"stop": 18071,
"target": 26521,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,358 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2897546.077914521,
"last_add_price": 20400
"last_add_price": 21400
},
"025860": {
"code": "025860",
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,155 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5190716.56796875,
"last_add_price": 6130
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T12:12:41.433189+09:00",
"stop": 10600,
"target": 14800,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,331 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 3543845.6178428577,
"last_add_price": 12000
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,239 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 1,
"tranche_value": 3209073.2187857144,
"last_add_price": 1200
@@ -205,5 +205,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.582834+09:00",
"updated_at": "2026-10-01T15:28:43.822659+09:00"
"updated_at": "2026-10-02T15:28:49.114862+09:00"
}
@@ -172,3 +172,4 @@
{"ts": "2026-09-30T12:12:41.433190+09:00", "side": "BUY", "code": "024060", "name": "흥구석유", "price": 12000, "qty": 295, "cost": 3540531, "path": "pullback", "reason": "눌림목 지정가 12,331 도달", "stop": 10600, "target": 14800, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "11,990 vs 11,837"}, {"label": "정배열(5>20)", "ok": true, "detail": "13,866 / 11,837"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,866 / 11,181"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+15.5%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +134 · 기 -4 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "5.96% (환산) vs 평균 29.44% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 17,310"}, {"label": "거래량 급증", "ok": false, "detail": "893,831 (환산) vs 평균 4,415,653"}, {"label": "회전율 급증", "ok": false, "detail": "5.96% (환산) vs 평균 29.44%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 12,331 (현재 11,990)"}]}
{"ts": "2026-10-01T09:58:43.283640+09:00", "side": "SELL", "code": "257720", "name": "실리콘투", "price": 37550, "qty": 83, "proceeds": 3110573, "entry_price": 39150, "pnl": -139365, "pnl_pct": -4.09, "hold_from": "2026-09-23T11:02:53.746930+09:00", "reason": "추세·수급 이탈", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "34,221 (현재 37,550)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 49,008"}, {"label": "추세(20일선)", "ok": false, "detail": "37,565"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -231 · 기 -208"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 40,843"}]}
{"ts": "2026-10-01T09:58:43.284535+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1200, "qty": 2673, "cost": 3208081, "path": "pullback", "reason": "눌림목 지정가 1,239 도달", "stop": 1046, "target": 1508, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "1,196 vs 1,140"}, {"label": "정배열(5>20)", "ok": true, "detail": "1,312 / 1,140"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "1,312 / 1,000"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+33.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -78 · 기 +4 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.63% (환산) vs 평균 1.90% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 1,390"}, {"label": "거래량 급증", "ok": false, "detail": "469,107 (환산) vs 평균 1,410,399"}, {"label": "회전율 급증", "ok": false, "detail": "0.63% (환산) vs 평균 1.90%"}, {"label": "RSI", "ok": true, "detail": "56"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 1,239 (현재 1,196)"}]}
{"ts": "2026-10-02T09:01:24.667985+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 135, "cost": 2889433, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17487, "target": 26226, "signals": [{"label": "손절선", "ok": true, "detail": "17,487 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,226"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,339"}]}
@@ -1,5 +1,5 @@
{
"cash": 26646855.187949922,
"cash": 23950050.72794992,
"initial": 100000000,
"positions": {
"194370": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4489026.732352336,
"last_add_price": 13420
@@ -32,14 +32,14 @@
"qty": 102,
"entry_price": 34552.94117647059,
"entry_at": "2026-08-20T09:02:17.473909+09:00",
"stop": 46039,
"stop": 50495,
"target": 46120,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1773404.3510667775,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 4928101.458627134,
"last_add_price": 50000
@@ -76,12 +76,12 @@
"entry_at": "2026-09-03T09:02:25.010915+09:00",
"stop": 10600,
"target": 13493,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4133528.1959721213,
"last_add_price": 11930
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,342 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 2547466.077043123,
"last_add_price": 4795
@@ -113,20 +113,20 @@
"sources": [
"auto"
],
"qty": 133,
"entry_price": 20200,
"qty": 259,
"entry_price": 20783.783783783783,
"entry_at": "2026-09-16T13:08:40.913284+09:00",
"stop": 17261,
"target": 24608,
"peak": 21450,
"stop": 17967,
"target": 25009,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 20,361 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2705294.1080848053,
"last_add_price": 20200
"last_add_price": 21400
},
"004370": {
"code": "004370",
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,907 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4952859.68257812,
"last_add_price": 404000
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,186 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2987167.71407031,
"last_add_price": 1235
@@ -203,5 +203,5 @@
"034020": "2026-09-23"
},
"created_at": "2026-06-15T14:55:00.582849+09:00",
"updated_at": "2026-10-01T15:28:43.828698+09:00"
"updated_at": "2026-10-02T15:28:49.120926+09:00"
}
@@ -159,3 +159,4 @@
{"ts": "2026-09-23T11:02:53.754521+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1183, "qty": 2524, "cost": 2986340, "path": "pullback", "reason": "눌림목 지정가 1,186 도달", "stop": 1027, "target": 1417, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "1,183 vs 1,140"}, {"label": "정배열(5>20)", "ok": true, "detail": "1,310 / 1,140"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "1,310 / 1,000"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+35.5%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -138 · 기 +1 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.46% (환산) vs 평균 1.90% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 1,390"}, {"label": "거래량 급증", "ok": false, "detail": "344,349 (환산) vs 평균 1,410,399"}, {"label": "회전율 급증", "ok": false, "detail": "0.46% (환산) vs 평균 1.90%"}, {"label": "RSI", "ok": true, "detail": "55"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 1,186 (현재 1,183)"}]}
{"ts": "2026-09-23T15:12:49.485646+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1235, "qty": 2418, "cost": 2986678, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 1027, "target": 1417, "signals": [{"label": "손절선", "ok": true, "detail": "1,027 (현재 1,235)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 1,417"}, {"label": "추세(20일선)", "ok": true, "detail": "1,142"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -132 · 기 +1"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 1,235"}]}
{"ts": "2026-09-29T09:30:45.982248+09:00", "side": "BUY", "code": "004370", "name": "농심", "price": 404000, "qty": 12, "cost": 4848727, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 372500, "target": 422500, "signals": [{"label": "손절선", "ok": true, "detail": "372,500 (현재 402,500)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 422,500"}, {"label": "추세(20일선)", "ok": true, "detail": "383,350"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +10 · 기 -2"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 401,537"}]}
{"ts": "2026-10-02T09:01:24.677248+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 126, "cost": 2696804, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17261, "target": 24608, "signals": [{"label": "손절선", "ok": true, "detail": "17,261 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 24,608"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4188989.7646745183,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:17.477466+09:00",
"stop": 26851,
"target": 57698,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1684859.3510976394,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 4686399.784966664,
"last_add_price": 50000
@@ -76,12 +76,12 @@
"entry_at": "2026-09-01T09:00:35.729808+09:00",
"stop": 10519,
"target": 14942,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,563 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3841219.293311723,
"last_add_price": 11890
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,342 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 2440070.444136775,
"last_add_price": 4795
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,907 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4768466.620374998,
"last_add_price": 404000
@@ -139,12 +139,12 @@
"entry_at": "2026-09-23T10:50:50.021690+09:00",
"stop": 6344,
"target": 8361,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 4730360.187249998,
"last_add_price": 6950
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T14:14:41.112713+09:00",
"stop": 12081,
"target": 17281,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 3681479.659017434,
"last_add_price": 13610
@@ -202,5 +202,5 @@
"034020": "2026-09-23"
},
"created_at": "2026-06-15T14:55:00.582864+09:00",
"updated_at": "2026-10-01T15:28:43.834101+09:00"
"updated_at": "2026-10-02T15:28:49.126303+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"cur_price": 305500,
"tranches": 2,
"tranche_value": 3813943.0504600187,
"last_add_price": 350000
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3759463.8630866953,
"last_add_price": 136000
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3342042.065213833,
"last_add_price": 13420
@@ -76,12 +76,12 @@
"entry_at": "2026-09-03T09:02:26.527931+09:00",
"stop": 10214,
"target": 16387,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3177696.924168879,
"last_add_price": 11930
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 2,
"tranche_value": 3233975.9230847433,
"last_add_price": 152000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4302231.2098323405,
"last_add_price": 31150
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 3818951.600721525,
"last_add_price": 5740
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 3290,
"cur_price": 3160,
"tranches": 1,
"tranche_value": 2920282.8680892424,
"last_add_price": 3295
@@ -199,5 +199,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.582879+09:00",
"updated_at": "2026-10-01T15:28:44.425765+09:00"
"updated_at": "2026-10-02T15:28:50.897470+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3342042.065213833,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-09-03T09:02:26.541405+09:00",
"stop": 10214,
"target": 14844,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3169899.6784588406,
"last_add_price": 11930
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 2,
"tranche_value": 3225992.8046420617,
"last_add_price": 152000
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4294882.6988680065,
"last_add_price": 31150
@@ -97,12 +97,12 @@
"entry_at": "2026-09-09T14:22:32.552571+09:00",
"stop": 6099,
"target": 8064,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 4287737.740777487,
"last_add_price": 6830
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 3843626.7763923104,
"last_add_price": 5740
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 410,925 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4932331.024813137,
"last_add_price": 406000
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 3290,
"cur_price": 3160,
"tranches": 1,
"tranche_value": 2943544.628643916,
"last_add_price": 3295
@@ -200,5 +200,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.582910+09:00",
"updated_at": "2026-10-01T15:28:44.441289+09:00"
"updated_at": "2026-10-02T15:28:50.920516+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 37193869.49075002,
"cash": 34109166.85475002,
"initial": 100000000,
"positions": {
"194370": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3393650.506937234,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-09-03T09:02:26.549668+09:00",
"stop": 10214,
"target": 14072,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3188265.499071182,
"last_add_price": 11930
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4425264.84827894,
"last_add_price": 30200
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 2,
"tranche_value": 3217490.050630382,
"last_add_price": 152000
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 117300,
"cur_price": 114100,
"tranches": 2,
"tranche_value": 2972315.521438034,
"last_add_price": 133000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 3841058.1045267605,
"last_add_price": 5740
@@ -134,20 +134,20 @@
"sources": [
"watch"
],
"qty": 222,
"entry_price": 13840,
"qty": 435,
"entry_price": 14153.379310344828,
"entry_at": "2026-09-30T09:20:46.247053+09:00",
"stop": 12020,
"target": 16570,
"peak": 14150,
"stop": 12313,
"target": 16914,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"tranches": 1,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 3084806.650713627,
"last_add_price": 13840
"last_add_price": 14480
},
"256840": {
"code": "256840",
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 3290,
"cur_price": 3160,
"tranches": 1,
"tranche_value": 2903831.4709745073,
"last_add_price": 3295
@@ -175,7 +175,7 @@
"closed_trades": 43,
"wins": 4,
"peak_equity": 100000000,
"max_drawdown": 0.19890120509249984,
"max_drawdown": 0.20234683145249976,
"last_exit": {
"030000": "2026-09-04",
"086790": "2026-07-29",
@@ -200,5 +200,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.582926+09:00",
"updated_at": "2026-10-01T15:28:44.449882+09:00"
"updated_at": "2026-10-02T15:28:50.928569+09:00"
}
@@ -121,3 +121,4 @@
{"ts": "2026-09-30T09:20:46.247056+09:00", "side": "BUY", "code": "077360", "name": "덕산하이메탈", "price": 13840, "qty": 222, "cost": 3072941, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 12020, "target": 16570, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "13,840 vs 11,069"}, {"label": "정배열(5>10)", "ok": true, "detail": "11,944 / 11,069"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "11,944 / 9,755"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+37.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -250 · 기 +360 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+35%"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "3.46% (환산) vs 평균 1.87% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 12,590"}, {"label": "거래량 급증", "ok": true, "detail": "1,570,260 (환산) vs 평균 848,026"}, {"label": "회전율 급증", "ok": true, "detail": "3.46% (환산) vs 평균 1.87%"}, {"label": "RSI", "ok": true, "detail": "76"}]}
{"ts": "2026-10-01T09:14:40.787566+09:00", "side": "SELL", "code": "001790", "name": "대한제당", "price": 2785, "qty": 1816, "proceeds": 5047698, "entry_price": 2960, "pnl": -328469, "pnl_pct": -5.91, "hold_from": "2026-09-01T09:18:25.193270+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "2,782 (현재 2,780)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 3,226"}, {"label": "추세(10일선)", "ok": false, "detail": "2,810"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -61 · 기 +86"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,002"}]}
{"ts": "2026-10-01T09:14:40.787977+09:00", "side": "BUY", "code": "256840", "name": "한국비엔씨", "price": 3295, "qty": 881, "cost": 2903330, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 2839, "target": 3979, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "3,290 vs 2,724"}, {"label": "정배열(5>10)", "ok": true, "detail": "2,823 / 2,724"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "2,823 / 2,553"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+14.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -1,073 · 기 +1 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "4.19% (환산) vs 평균 2.21% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 3,150"}, {"label": "거래량 급증", "ok": true, "detail": "2,864,007 (환산) vs 평균 1,514,272"}, {"label": "회전율 급증", "ok": true, "detail": "4.19% (환산) vs 평균 2.21%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
{"ts": "2026-10-02T10:20:50.203375+09:00", "side": "BUY", "code": "077360", "name": "덕산하이메탈", "price": 14480, "qty": 213, "cost": 3084703, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 12020, "target": 16570, "signals": [{"label": "손절선", "ok": true, "detail": "12,020 (현재 14,360)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 16,570"}, {"label": "추세(10일선)", "ok": true, "detail": "11,121"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -328 · 기 +369"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 14,300"}]}
@@ -1,5 +1,5 @@
{
"cash": 37750382.68524999,
"cash": 35117787.85524999,
"initial": 100000000,
"positions": {
"194370": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4271897.688361821,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:18.553157+09:00",
"stop": 26852,
"target": 57698,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1725875.4362712654,
"last_add_price": 35800
@@ -55,12 +55,12 @@
"entry_at": "2026-09-01T09:00:39.404439+09:00",
"stop": 10518,
"target": 14942,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,563 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3922687.5648087934,
"last_add_price": 11890
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,342 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 2474296.0650329688,
"last_add_price": 4795
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 411,247 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4981802.023234375,
"last_add_price": 411000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,104 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 4892789.090421874,
"last_add_price": 16140
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 275000,
"cur_price": 275250,
"tranches": 1,
"tranche_value": 4927580.232015625,
"last_add_price": 282500
@@ -155,20 +155,20 @@
"sources": [
"auto"
],
"qty": 132,
"entry_price": 19940,
"qty": 255,
"entry_price": 20644.235294117647,
"entry_at": "2026-09-23T10:50:50.043744+09:00",
"stop": 17002,
"target": 28754,
"peak": 21450,
"stop": 17827,
"target": 29095,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 20,362 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2651624.2370578027,
"last_add_price": 19940
"last_add_price": 21400
}
},
"realized_pnl": -22744517.438500024,
@@ -202,5 +202,5 @@
"034020": "2026-09-23"
},
"created_at": "2026-06-15T14:55:00.583136+09:00",
"updated_at": "2026-10-01T15:28:44.457645+09:00"
"updated_at": "2026-10-02T15:28:50.934715+09:00"
}
@@ -143,3 +143,4 @@
{"ts": "2026-09-22T09:04:47.363237+09:00", "side": "BUY", "code": "005930", "name": "삼성전자", "price": 282500, "qty": 17, "cost": 4803220, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 264082, "target": 337753, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "282,000 vs 261,225"}, {"label": "정배열(5>20)", "ok": true, "detail": "265,300 / 261,225"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "265,300 / 262,833"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+3.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -1,624 · 기 +8,791 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+73%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.60% (환산) vs 평균 0.29% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 279,000"}, {"label": "거래량 급증", "ok": true, "detail": "35,127,313 (환산) vs 평균 16,802,321"}, {"label": "회전율 급증", "ok": true, "detail": "0.60% (환산) vs 평균 0.29%"}, {"label": "RSI", "ok": true, "detail": "60"}]}
{"ts": "2026-09-23T10:50:50.042957+09:00", "side": "SELL", "code": "034020", "name": "두산에너빌리티", "price": 81900, "qty": 48, "proceeds": 3923534, "entry_price": 90400, "pnl": -416317, "pnl_pct": -9.4, "hold_from": "2026-09-10T14:02:38.914134+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "82,166 (현재 81,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 115,103"}, {"label": "추세(20일선)", "ok": true, "detail": "79,860"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -1,708 · 기 -509"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 92,980"}]}
{"ts": "2026-09-23T10:50:50.043746+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 19940, "qty": 132, "cost": 2632475, "path": "pullback", "reason": "눌림목 지정가 20,362 도달", "stop": 17002, "target": 28754, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "19,980 vs 16,754"}, {"label": "정배열(5>20)", "ok": true, "detail": "19,632 / 16,754"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "19,632 / 19,445"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+35.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +1 · 기 -1 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.05% (환산) vs 평균 0.56% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 23,400"}, {"label": "거래량 급증", "ok": false, "detail": "4,180 (환산) vs 평균 44,688"}, {"label": "회전율 급증", "ok": false, "detail": "0.05% (환산) vs 평균 0.56%"}, {"label": "RSI", "ok": true, "detail": "56"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 20,362 (현재 19,980)"}]}
{"ts": "2026-10-02T09:01:25.717758+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 123, "cost": 2632595, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17002, "target": 28754, "signals": [{"label": "손절선", "ok": true, "detail": "17,002 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 28,754"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 20,879"}]}
@@ -1,28 +1,7 @@
{
"cash": 19086137.043999992,
"cash": 20046415.27399999,
"initial": 100000000,
"positions": {
"214450": {
"code": "214450",
"name": "파마리서치",
"sources": [
"auto"
],
"qty": 22,
"entry_price": 347250.0,
"entry_at": "2026-07-13T09:12:04.319241+09:00",
"stop": 305399,
"target": 472804,
"peak": 465250,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"tranches": 2,
"tranche_value": 3889733.683715179,
"last_add_price": 353000
},
"138040": {
"code": "138040",
"name": "메리츠금융지주",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 118,115 도달",
"cur_price": 126300,
"cur_price": 128800,
"tranches": 2,
"tranche_value": 5327150.576000001,
"last_add_price": 120500
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4940372.790080874,
"last_add_price": 125200
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3791237.2526261737,
"last_add_price": 136000
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 31,939 도달",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 5133126.668375,
"last_add_price": 32750
@@ -123,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,946 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1870914.8665673207,
"last_add_price": 14660
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4478278.821943787,
"last_add_price": 31000
@@ -155,24 +134,45 @@
"sources": [
"auto"
],
"qty": 106,
"entry_price": 20800,
"qty": 208,
"entry_price": 21216.826923076922,
"entry_at": "2026-09-17T09:00:51.220811+09:00",
"stop": 16916,
"target": 32453,
"peak": 21450,
"stop": 17461,
"target": 32484,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,358 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2222419.950014418,
"last_add_price": 20800
"last_add_price": 21650
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 13,
"entry_price": 270500,
"entry_at": "2026-10-02T14:48:49.224031+09:00",
"stop": 240374,
"target": 360878,
"peak": 271000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 276,937 도달",
"cur_price": 271000,
"tranches": 1,
"tranche_value": 3748016.1942515597,
"last_add_price": 270500
}
},
"realized_pnl": -20485550.068500023,
"closed_trades": 37,
"realized_pnl": -21440259.043500025,
"closed_trades": 38,
"wins": 0,
"peak_equity": 101140808.32700005,
"max_drawdown": 0.1947881632733674,
@@ -184,7 +184,7 @@
"403870": "2026-07-07",
"093370": "2026-07-20",
"240810": "2026-07-24",
"214450": "2026-07-06",
"214450": "2026-10-02",
"034730": "2026-07-07",
"003490": "2026-08-18",
"105560": "2026-07-20",
@@ -199,5 +199,5 @@
"327260": "2026-09-07"
},
"created_at": "2026-06-15T14:55:00.583184+09:00",
"updated_at": "2026-10-01T15:28:44.463448+09:00"
"updated_at": "2026-10-02T15:28:50.939997+09:00"
}
@@ -112,3 +112,6 @@
{"ts": "2026-09-17T09:00:50.797196+09:00", "side": "SELL", "code": "095610", "name": "테스", "price": 137000, "qty": 21, "proceeds": 2871390, "entry_price": 158014, "pnl": -447408, "pnl_pct": -13.3, "hold_from": "2026-09-07T15:06:37.179898+09:00", "reason": "추세·수급 이탈", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "120,000 (현재 135,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 272,057"}, {"label": "추세(10일선)", "ok": false, "detail": "151,150"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -114 · 기 -31"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-17T09:00:51.220826+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 20800, "qty": 106, "cost": 2205131, "path": "pullback", "reason": "눌림목 지정가 21,358 도달", "stop": 16916, "target": 32453, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "20,350 vs 19,093"}, {"label": "정배열(5>10)", "ok": true, "detail": "19,706 / 19,093"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "19,706 / 19,451"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+42.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +3 · 기 +2 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.08% (환산) vs 평균 0.56% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 23,400"}, {"label": "거래량 급증", "ok": false, "detail": "6,607 (환산) vs 평균 44,688"}, {"label": "회전율 급증", "ok": false, "detail": "0.08% (환산) vs 평균 0.56%"}, {"label": "RSI", "ok": true, "detail": "57"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 21,358 (현재 20,350)"}]}
{"ts": "2026-09-22T13:20:49.814198+09:00", "side": "BUY", "code": "003490", "name": "대한항공", "price": 31000, "qty": 144, "cost": 4464670, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 27327, "target": 38819, "signals": [{"label": "손절선", "ok": true, "detail": "27,327 (현재 31,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 38,819"}, {"label": "추세(10일선)", "ok": true, "detail": "25,755"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -198 · 기 +430"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 30,936"}]}
{"ts": "2026-10-02T09:02:44.634364+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21650, "qty": 102, "cost": 2208631, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16916, "target": 32453, "signals": [{"label": "손절선", "ok": true, "detail": "16,916 (현재 21,750)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 32,453"}, {"label": "추세(10일선)", "ok": true, "detail": "19,233"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,739"}]}
{"ts": "2026-10-02T14:48:49.223172+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 304500, "qty": 22, "proceeds": 6685937, "entry_price": 347250, "pnl": -954709, "pnl_pct": -12.31, "hold_from": "2026-07-13T09:12:04.319241+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "305,399 (현재 305,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 472,804"}, {"label": "추세(10일선)", "ok": true, "detail": "301,850"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +84 · 기 -122"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T14:48:49.224034+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 270500, "qty": 13, "cost": 3517027, "path": "pullback", "reason": "눌림목 지정가 276,937 도달", "stop": 240374, "target": 360878, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "270,000 vs 256,700"}, {"label": "정배열(5>10)", "ok": true, "detail": "267,300 / 256,700"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "267,300 / 248,933"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+3.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -47 · 기 +17 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+23%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.49% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": false, "detail": "73,192 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": false, "detail": "0.49% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "60"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 276,937 (현재 270,000)"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 5075960.404438956,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3433240.983007488,
"last_add_price": 13420
@@ -53,14 +53,14 @@
"qty": 78,
"entry_price": 34569.230769230766,
"entry_at": "2026-08-20T09:02:18.566265+09:00",
"stop": 24287,
"stop": 50495,
"target": 55133,
"peak": 53100,
"trailing_on": false,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1369448.2358109318,
"last_add_price": 35800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 31,939 도달",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 5207054.06571875,
"last_add_price": 32750
@@ -95,14 +95,14 @@
"qty": 299,
"entry_price": 13533.411371237458,
"entry_at": "2026-09-10T09:00:59.533567+09:00",
"stop": 18085,
"stop": 18166,
"target": 19685,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,977 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2028063.468468333,
"last_add_price": 13930
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 420,141 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 5110932.165583902,
"last_add_price": 410500
@@ -139,12 +139,12 @@
"entry_at": "2026-09-15T10:28:42.212262+09:00",
"stop": 10606,
"target": 14939,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,977 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3423153.5325177917,
"last_add_price": 12300
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T09:01:19.666350+09:00",
"stop": 10600,
"target": 14440,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,370 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 4147227.4034580463,
"last_add_price": 11880
@@ -200,5 +200,5 @@
"034020": "2026-09-29"
},
"created_at": "2026-06-15T14:55:00.583198+09:00",
"updated_at": "2026-10-01T15:28:44.472424+09:00"
"updated_at": "2026-10-02T15:28:50.944902+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 44789696.39750004,
"cash": 42692181.81750004,
"initial": 100000000,
"positions": {
"194370": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3393597.375168939,
"last_add_price": 13420
@@ -32,14 +32,14 @@
"qty": 78,
"entry_price": 34569.230769230766,
"entry_at": "2026-08-20T09:02:18.571212+09:00",
"stop": 24287,
"stop": 50495,
"target": 55133,
"peak": 53100,
"trailing_on": false,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1360762.8418676818,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,342 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 2667186.0151028302,
"last_add_price": 4795
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 411,461 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4957124.381763087,
"last_add_price": 410500
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2314620.8603280014,
"last_add_price": 17350
@@ -113,20 +113,20 @@
"sources": [
"auto"
],
"qty": 104,
"entry_price": 20200,
"qty": 202,
"entry_price": 20782.178217821784,
"entry_at": "2026-09-16T13:08:42.123563+09:00",
"stop": 16281,
"target": 28037,
"peak": 21450,
"stop": 17026,
"target": 28294,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 20,361 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2104217.9889743566,
"last_add_price": 20200
"last_add_price": 21400
},
"041520": {
"code": "041520",
@@ -139,12 +139,12 @@
"entry_at": "2026-09-17T09:08:42.400423+09:00",
"stop": 10684,
"target": 15043,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,592 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3193443.5587442005,
"last_add_price": 12330
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T09:28:45.956399+09:00",
"stop": 15262,
"target": 22631,
"peak": 18850,
"peak": 20750,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 18800,
"cur_price": 19930,
"tranches": 2,
"tranche_value": 3067366.8402105216,
"last_add_price": 18060
@@ -202,5 +202,5 @@
"034020": "2026-09-29"
},
"created_at": "2026-06-15T14:55:00.583212+09:00",
"updated_at": "2026-10-01T15:28:44.477416+09:00"
"updated_at": "2026-10-02T15:28:50.949200+09:00"
}
@@ -142,3 +142,4 @@
{"ts": "2026-09-30T09:12:46.535522+09:00", "side": "SELL", "code": "319660", "name": "피에스케이", "price": 149900, "qty": 34, "proceeds": 5086662, "entry_price": 150400, "pnl": -27705, "pnl_pct": -0.33, "hold_from": "2026-09-30T09:02:50.963748+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "150,399 (현재 150,200)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(20일선)", "ok": true, "detail": "149,300"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -37 · 기 +116"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T09:28:45.956401+09:00", "side": "BUY", "code": "033160", "name": "엠케이전자", "price": 17390, "qty": 176, "cost": 3061099, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 15035, "target": 22100, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "17,370 vs 14,164"}, {"label": "정배열(5>20)", "ok": true, "detail": "15,826 / 14,164"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "15,826 / 15,120"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+16.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -134 · 기 +354 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+32%"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "6.98% (환산) vs 평균 3.24% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 17,350"}, {"label": "거래량 급증", "ok": true, "detail": "1,715,160 (환산) vs 평균 794,461"}, {"label": "회전율 급증", "ok": true, "detail": "6.98% (환산) vs 평균 3.24%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-10-01T11:24:45.038830+09:00", "side": "BUY", "code": "033160", "name": "엠케이전자", "price": 18060, "qty": 169, "cost": 3052598, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 15035, "target": 22100, "signals": [{"label": "손절선", "ok": true, "detail": "15,035 (현재 18,050)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 22,100"}, {"label": "추세(20일선)", "ok": true, "detail": "14,198"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -338 · 기 +180"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 18,004"}]}
{"ts": "2026-10-02T09:01:25.736393+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 98, "cost": 2097515, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16281, "target": 28037, "signals": [{"label": "손절선", "ok": true, "detail": "16,281 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 28,037"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -1,5 +1,5 @@
{
"cash": 33182506.395999983,
"cash": 30952221.903499983,
"initial": 100000000,
"positions": {
"086790": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4940372.790080874,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 31,939 도달",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 5113659.21834375,
"last_add_price": 32750
@@ -53,14 +53,14 @@
"qty": 264,
"entry_price": 14104.734848484848,
"entry_at": "2026-09-04T11:14:28.107284+09:00",
"stop": 18085,
"stop": 18166,
"target": 20145,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,946 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1867525.9036903584,
"last_add_price": 14660
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4469498.464141663,
"last_add_price": 31000
@@ -97,12 +97,12 @@
"entry_at": "2026-09-10T14:12:34.510311+09:00",
"stop": 36405,
"target": 63833,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2073999.8646011376,
"last_add_price": 46800
@@ -113,20 +113,20 @@
"sources": [
"auto"
],
"qty": 107,
"entry_price": 20800,
"qty": 210,
"entry_price": 21216.904761904763,
"entry_at": "2026-09-17T09:00:51.566468+09:00",
"stop": 16916,
"target": 28569,
"peak": 21450,
"stop": 17461,
"target": 28728,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,358 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2239564.1285592173,
"last_add_price": 20800
"last_add_price": 21650
},
"095610": {
"code": "095610",
@@ -139,12 +139,12 @@
"entry_at": "2026-09-22T09:02:49.895908+09:00",
"stop": 121395,
"target": 232866,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 157,986 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1710371.4944222153,
"last_add_price": 164000
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,148 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5227595.035531249,
"last_add_price": 6050
@@ -202,5 +202,5 @@
"000720": "2026-09-28"
},
"created_at": "2026-06-15T14:55:00.583227+09:00",
"updated_at": "2026-10-01T15:28:44.481531+09:00"
"updated_at": "2026-10-02T15:28:50.953275+09:00"
}
@@ -130,3 +130,4 @@
{"ts": "2026-09-28T09:04:46.901221+09:00", "side": "SELL", "code": "000720", "name": "현대건설", "price": 119200, "qty": 43, "proceeds": 5115605, "entry_price": 138584, "pnl": -844389, "pnl_pct": -13.99, "hold_from": "2026-09-09T09:02:33.510479+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "119,275 (현재 119,100)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 177,201"}, {"label": "추세(10일선)", "ok": true, "detail": "113,530"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -440 · 기 -358"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-28T09:04:46.902181+09:00", "side": "BUY", "code": "025860", "name": "남해화학", "price": 6050, "qty": 863, "cost": 5221933, "path": "pullback", "reason": "눌림목 지정가 6,148 도달", "stop": 5730, "target": 6690, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "6,060 vs 6,027"}, {"label": "정배열(5>10)", "ok": true, "detail": "6,098 / 6,027"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "6,098 / 5,899"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+9.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -32 · 기 +15 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.09% (환산) vs 평균 1.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 6,700"}, {"label": "거래량 급증", "ok": false, "detail": "45,067 (환산) vs 평균 758,257"}, {"label": "회전율 급증", "ok": false, "detail": "0.09% (환산) vs 평균 1.53%"}, {"label": "RSI", "ok": true, "detail": "53"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 6,148 (현재 6,060)"}]}
{"ts": "2026-09-28T09:20:50.708741+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 164000, "qty": 10, "cost": 1640246, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 115572, "target": 229657, "signals": [{"label": "손절선", "ok": true, "detail": "115,572 (현재 163,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 229,657"}, {"label": "추세(10일선)", "ok": true, "detail": "153,880"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +222 · 기 -12"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 162,889"}]}
{"ts": "2026-10-02T09:02:44.653719+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21650, "qty": 103, "cost": 2230284, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16916, "target": 28569, "signals": [{"label": "손절선", "ok": true, "detail": "16,916 (현재 21,750)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 28,569"}, {"label": "추세(10일선)", "ok": true, "detail": "19,233"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,739"}]}
@@ -1,5 +1,5 @@
{
"cash": 27259893.598199975,
"cash": 24306250.618199974,
"initial": 100000000,
"positions": {
"327260": {
@@ -11,14 +11,14 @@
"qty": 105,
"entry_price": 34565.71428571428,
"entry_at": "2026-08-20T09:02:18.579921+09:00",
"stop": 46039,
"stop": 50495,
"target": 46133,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1835134.7132164796,
"last_add_price": 35800
@@ -34,12 +34,12 @@
"entry_at": "2026-09-01T09:00:39.955979+09:00",
"stop": 10518,
"target": 13283,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,563 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4188194.7669907366,
"last_add_price": 11890
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 5380475.415249998,
"last_add_price": 30000
@@ -74,14 +74,14 @@
"qty": 358,
"entry_price": 13434.525139664804,
"entry_at": "2026-09-09T09:04:30.445123+09:00",
"stop": 18085,
"stop": 18166,
"target": 16895,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,153 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2413342.693478599,
"last_add_price": 13820
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 146,
"entry_price": 20200,
"qty": 284,
"entry_price": 20783.098591549297,
"entry_at": "2026-09-16T13:08:42.133982+09:00",
"stop": 17261,
"target": 24608,
"peak": 21450,
"stop": 17966,
"target": 25008,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 20,361 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2964066.934819155,
"last_add_price": 20200
"last_add_price": 21400
},
"004370": {
"code": "004370",
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,961 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 5479109.772843748,
"last_add_price": 404000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,186 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 3324577.898896041,
"last_add_price": 1235
@@ -158,14 +158,14 @@
"qty": 496,
"entry_price": 17718.245967741936,
"entry_at": "2026-09-30T09:28:45.964972+09:00",
"stop": 15876,
"stop": 18624,
"target": 20481,
"peak": 18850,
"trailing_on": false,
"peak": 20750,
"trailing_on": true,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 18800,
"cur_price": 19930,
"tranches": 2,
"tranche_value": 4402939.823960427,
"last_add_price": 18060
@@ -205,5 +205,5 @@
"180640": "2026-09-29"
},
"created_at": "2026-06-15T14:55:00.583241+09:00",
"updated_at": "2026-10-01T15:28:44.485578+09:00"
"updated_at": "2026-10-02T15:28:50.957172+09:00"
}
@@ -170,3 +170,4 @@
{"ts": "2026-09-30T09:12:46.544858+09:00", "side": "SELL", "code": "319660", "name": "피에스케이", "price": 149900, "qty": 37, "proceeds": 5535485, "entry_price": 150400, "pnl": -30150, "pnl_pct": -0.33, "hold_from": "2026-09-30T09:02:50.972493+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "150,399 (현재 150,200)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(20일선)", "ok": true, "detail": "149,300"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -37 · 기 +116"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T09:28:45.964974+09:00", "side": "BUY", "code": "033160", "name": "엠케이전자", "price": 17390, "qty": 253, "cost": 4400330, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 15624, "target": 20039, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "17,370 vs 14,164"}, {"label": "정배열(5>20)", "ok": true, "detail": "15,826 / 14,164"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "15,826 / 15,120"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+16.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -134 · 기 +354 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+32%"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "6.98% (환산) vs 평균 3.24% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 17,350"}, {"label": "거래량 급증", "ok": true, "detail": "1,715,160 (환산) vs 평균 794,461"}, {"label": "회전율 급증", "ok": true, "detail": "6.98% (환산) vs 평균 3.24%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-10-01T11:24:45.052283+09:00", "side": "BUY", "code": "033160", "name": "엠케이전자", "price": 18060, "qty": 243, "cost": 4389238, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 15624, "target": 20039, "signals": [{"label": "손절선", "ok": true, "detail": "15,624 (현재 18,050)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 20,039"}, {"label": "추세(20일선)", "ok": true, "detail": "14,198"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -338 · 기 +180"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 18,004"}]}
{"ts": "2026-10-02T09:01:25.747296+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 138, "cost": 2953643, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17261, "target": 24608, "signals": [{"label": "손절선", "ok": true, "detail": "17,261 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 24,608"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -1,5 +1,5 @@
{
"cash": 45940213.617500015,
"cash": 43714279.77750001,
"initial": 100000000,
"positions": {
"327260": {
@@ -11,14 +11,14 @@
"qty": 81,
"entry_price": 34555.555555555555,
"entry_at": "2026-08-20T09:02:18.583985+09:00",
"stop": 46039,
"stop": 50495,
"target": 49979,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1405152.4684093075,
"last_add_price": 35800
@@ -32,14 +32,14 @@
"qty": 275,
"entry_price": 14067.2,
"entry_at": "2026-09-03T09:02:26.582362+09:00",
"stop": 18085,
"stop": 18166,
"target": 18598,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1936750.8143745721,
"last_add_price": 14660
@@ -55,12 +55,12 @@
"entry_at": "2026-09-10T09:01:00.003107+09:00",
"stop": 10634,
"target": 14266,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,003 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3508251.3322146544,
"last_add_price": 12290
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T10:28:42.648525+09:00",
"stop": 4448,
"target": 6431,
"peak": 5710,
"peak": 5730,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,108 도달",
"cur_price": 5440,
"cur_price": 5590,
"tranches": 2,
"tranche_value": 2789847.3916354305,
"last_add_price": 5390
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 110,
"entry_price": 20200,
"qty": 214,
"entry_price": 20783.17757009346,
"entry_at": "2026-09-16T13:08:42.138680+09:00",
"stop": 16281,
"target": 26078,
"peak": 21450,
"stop": 17027,
"target": 26417,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,341 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2236369.174025517,
"last_add_price": 20200
"last_add_price": 21400
},
"025860": {
"code": "025860",
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,156 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 2,
"tranche_value": 5435662.905375001,
"last_add_price": 6250
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T09:01:19.684565+09:00",
"stop": 10600,
"target": 13800,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,370 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 4102844.0325468755,
"last_add_price": 11880
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,239 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 1,
"tranche_value": 2583173.443243903,
"last_add_price": 1200
@@ -206,5 +206,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583273+09:00",
"updated_at": "2026-10-01T15:28:44.489316+09:00"
"updated_at": "2026-10-02T15:28:50.960843+09:00"
}
@@ -161,3 +161,4 @@
{"ts": "2026-09-30T09:01:19.684567+09:00", "side": "BUY", "code": "024060", "name": "흥구석유", "price": 11880, "qty": 345, "cost": 4099215, "path": "pullback", "reason": "눌림목 지정가 12,370 도달", "stop": 10600, "target": 13800, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "12,140 vs 11,844"}, {"label": "정배열(5>20)", "ok": true, "detail": "13,896 / 11,844"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,896 / 11,184"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+17.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +73 · 기 -4 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.00% (환산) vs 평균 29.44% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 17,310"}, {"label": "거래량 급증", "ok": false, "detail": "587 (환산) vs 평균 4,415,653"}, {"label": "회전율 급증", "ok": false, "detail": "0.00% (환산) vs 평균 29.44%"}, {"label": "RSI", "ok": true, "detail": "50"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 12,370 (현재 12,140)"}]}
{"ts": "2026-10-01T09:58:43.941962+09:00", "side": "SELL", "code": "257720", "name": "실리콘투", "price": 37550, "qty": 77, "proceeds": 2885712, "entry_price": 39150, "pnl": -129290, "pnl_pct": -4.09, "hold_from": "2026-09-28T09:01:02.918513+09:00", "reason": "추세·수급 이탈", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "33,500 (현재 37,550)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 47,625"}, {"label": "추세(20일선)", "ok": false, "detail": "37,565"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -231 · 기 -208"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 40,843"}]}
{"ts": "2026-10-01T09:58:43.942728+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1200, "qty": 2152, "cost": 2582787, "path": "pullback", "reason": "눌림목 지정가 1,239 도달", "stop": 995, "target": 1508, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "1,196 vs 1,140"}, {"label": "정배열(5>20)", "ok": true, "detail": "1,312 / 1,140"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "1,312 / 1,000"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+33.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -78 · 기 +4 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.63% (환산) vs 평균 1.90% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 1,390"}, {"label": "거래량 급증", "ok": false, "detail": "469,107 (환산) vs 평균 1,410,399"}, {"label": "회전율 급증", "ok": false, "detail": "0.63% (환산) vs 평균 1.90%"}, {"label": "RSI", "ok": true, "detail": "56"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 1,239 (현재 1,196)"}]}
{"ts": "2026-10-02T09:01:25.752116+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 104, "cost": 2225934, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16281, "target": 26078, "signals": [{"label": "손절선", "ok": true, "detail": "16,281 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,078"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3377559.3310465557,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-09-03T09:02:26.586284+09:00",
"stop": 10214,
"target": 14844,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3207769.240733453,
"last_add_price": 11930
@@ -53,14 +53,14 @@
"qty": 295,
"entry_price": 13497.186440677966,
"entry_at": "2026-09-07T15:06:37.205681+09:00",
"stop": 18085,
"stop": 18166,
"target": 19649,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,160 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1999967.3303914513,
"last_add_price": 13930
@@ -76,12 +76,12 @@
"entry_at": "2026-09-10T14:12:34.522062+09:00",
"stop": 36405,
"target": 63833,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2072539.7610259354,
"last_add_price": 46800
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 77500,
"cur_price": 76900,
"tranches": 2,
"tranche_value": 5282905.658046878,
"last_add_price": 70400
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 16990,
"cur_price": 17800,
"tranches": 2,
"tranche_value": 2861142.595753686,
"last_add_price": 18560
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,113 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 5286437.524546878,
"last_add_price": 16230
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T10:38:43.161647+09:00",
"stop": 5740,
"target": 8440,
"peak": 6820,
"peak": 7000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 6570,
"cur_price": 6670,
"tranches": 2,
"tranche_value": 3102975.1067182715,
"last_add_price": 6830
@@ -200,5 +200,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583289+09:00",
"updated_at": "2026-10-01T15:28:44.492755+09:00"
"updated_at": "2026-10-02T15:28:50.964213+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3428336.7554835076,
"last_add_price": 13420
@@ -34,12 +34,12 @@
"entry_at": "2026-09-03T09:02:26.589529+09:00",
"stop": 10215,
"target": 14072,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3262304.762250248,
"last_add_price": 11930
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4492093.16528453,
"last_add_price": 30000
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5610,
"cur_price": 5600,
"tranches": 2,
"tranche_value": 1623025.8813087621,
"last_add_price": 7390
@@ -95,14 +95,14 @@
"qty": 299,
"entry_price": 13497.357859531772,
"entry_at": "2026-09-07T15:06:37.209053+09:00",
"stop": 18085,
"stop": 18166,
"target": 18111,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,160 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2022912.4075034007,
"last_add_price": 13930
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 410,925 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 5171089.539773135,
"last_add_price": 406000
@@ -139,12 +139,12 @@
"entry_at": "2026-10-01T09:12:47.915713+09:00",
"stop": 13324,
"target": 18625,
"peak": 15870,
"peak": 16450,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 15710,
"cur_price": 16410,
"tranches": 2,
"tranche_value": 3170446.925976356,
"last_add_price": 15740
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T10:38:43.165172+09:00",
"stop": 29749,
"target": 41627,
"peak": 34500,
"peak": 34650,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 1,
"tranche_value": 3089587.5798321413,
"last_add_price": 34500
@@ -201,5 +201,5 @@
"001790": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583304+09:00",
"updated_at": "2026-10-01T15:28:44.495957+09:00"
"updated_at": "2026-10-02T15:28:50.967403+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 45674308.49775003,
"cash": 43422370.75775003,
"initial": 100000000,
"positions": {
"003490": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4580366.904239814,
"last_add_price": 30000
@@ -32,14 +32,14 @@
"qty": 266,
"entry_price": 14104.887218045113,
"entry_at": "2026-09-04T11:14:28.125177+09:00",
"stop": 18085,
"stop": 18166,
"target": 18635,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,946 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1889084.2845179967,
"last_add_price": 14660
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5610,
"cur_price": 5600,
"tranches": 2,
"tranche_value": 1621037.6222288562,
"last_add_price": 7390
@@ -71,20 +71,20 @@
"sources": [
"auto"
],
"qty": 109,
"entry_price": 20800,
"qty": 213,
"entry_price": 21215.023474178404,
"entry_at": "2026-09-17T09:00:52.122059+09:00",
"stop": 16916,
"target": 26626,
"peak": 21450,
"stop": 17459,
"target": 26849,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,358 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2273315.5710422248,
"last_add_price": 20800
"last_add_price": 21650
},
"095610": {
"code": "095610",
@@ -97,12 +97,12 @@
"entry_at": "2026-09-22T09:02:49.920117+09:00",
"stop": 121395,
"target": 214288,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 157,986 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1724127.0503401707,
"last_add_price": 164000
@@ -118,12 +118,12 @@
"entry_at": "2026-09-23T12:32:49.233139+09:00",
"stop": 2793,
"target": 3858,
"peak": 3420,
"peak": 3435,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,143 도달",
"cur_price": 3400,
"cur_price": 3345,
"tranches": 2,
"tranche_value": 3161018.580691236,
"last_add_price": 3275
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,148 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5296647.055406252,
"last_add_price": 6050
@@ -203,5 +203,5 @@
"316140": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583318+09:00",
"updated_at": "2026-10-01T15:28:44.499121+09:00"
"updated_at": "2026-10-02T15:28:50.970436+09:00"
}
@@ -143,3 +143,4 @@
{"ts": "2026-09-28T11:18:46.582289+09:00", "side": "BUY", "code": "478560", "name": "블랙야크아이앤씨", "price": 3275, "qty": 965, "cost": 3160849, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 2740, "target": 3802, "signals": [{"label": "손절선", "ok": true, "detail": "2,740 (현재 3,275)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 3,802"}, {"label": "추세(10일선)", "ok": true, "detail": "3,018"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -28 · 기 +29"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,271"}]}
{"ts": "2026-10-01T09:00:56.208764+09:00", "side": "SELL", "code": "316140", "name": "우리금융지주", "price": 32800, "qty": 322, "proceeds": 10541005, "entry_price": 32320, "pnl": 132494, "pnl_pct": 1.49, "hold_from": "2026-08-24T13:12:22.306023+09:00", "reason": "트레일링 익절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "34,483 (현재 33,850)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(10일선)", "ok": true, "detail": "31,995"}, {"label": "수급(외/기)", "ok": false, "detail": "외 -303 · 기 -158"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-01T09:02:45.698348+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 271500, "qty": 14, "cost": 3801570, "path": "pullback", "reason": "눌림목 지정가 277,258 도달", "stop": 242017, "target": 315725, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "270,000 vs 256,700"}, {"label": "정배열(5>10)", "ok": true, "detail": "267,300 / 256,700"}, {"label": "추세 기울기(10일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "267,300 / 248,933"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+10.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -51 · 기 +19 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+20%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.15% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": false, "detail": "22,107 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": false, "detail": "0.15% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "60"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 277,258 (현재 270,000)"}]}
{"ts": "2026-10-02T09:02:44.668176+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21650, "qty": 104, "cost": 2251938, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16916, "target": 26626, "signals": [{"label": "손절선", "ok": true, "detail": "16,916 (현재 21,750)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,626"}, {"label": "추세(10일선)", "ok": true, "detail": "19,233"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,739"}]}
@@ -1,5 +1,5 @@
{
"cash": 29507275.115649976,
"cash": 26682051.395649977,
"initial": 100000000,
"positions": {
"327260": {
@@ -11,14 +11,14 @@
"qty": 101,
"entry_price": 34564.35643564357,
"entry_at": "2026-08-20T09:02:18.598460+09:00",
"stop": 46039,
"stop": 50495,
"target": 49987,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1761589.922015132,
"last_add_price": 35800
@@ -32,14 +32,14 @@
"qty": 344,
"entry_price": 14066.802325581395,
"entry_at": "2026-09-03T09:02:26.595154+09:00",
"stop": 18085,
"stop": 18166,
"target": 18597,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2433888.3605985767,
"last_add_price": 14660
@@ -55,12 +55,12 @@
"entry_at": "2026-09-09T09:10:30.121434+09:00",
"stop": 2838,
"target": 3818,
"peak": 3420,
"peak": 3435,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,136 도달",
"cur_price": 3400,
"cur_price": 3345,
"tranches": 2,
"tranche_value": 3860262.073953841,
"last_add_price": 3210
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T10:28:42.676166+09:00",
"stop": 10967,
"target": 14217,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,977 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4301175.50574383,
"last_add_price": 12300
@@ -92,20 +92,20 @@
"sources": [
"auto"
],
"qty": 140,
"entry_price": 20200,
"qty": 272,
"entry_price": 20782.352941176472,
"entry_at": "2026-09-16T13:08:42.154029+09:00",
"stop": 17261,
"target": 26078,
"peak": 21450,
"stop": 17966,
"target": 26416,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,341 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2831252.2401680327,
"last_add_price": 20200
"last_add_price": 21400
},
"300720": {
"code": "300720",
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,386 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 5154404.266803124,
"last_add_price": 16170
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,241 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 3304656.6099581546,
"last_add_price": 1243
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T09:58:43.956343+09:00",
"stop": 6543,
"target": 8151,
"peak": 7220,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 5242619.638546873,
"last_add_price": 7170
@@ -204,5 +204,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583333+09:00",
"updated_at": "2026-10-01T15:28:44.502360+09:00"
"updated_at": "2026-10-02T15:28:50.973560+09:00"
}
@@ -182,3 +182,4 @@
{"ts": "2026-10-01T09:58:43.956344+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 6990, "qty": 749, "cost": 5236295, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 6454, "target": 8062, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "7,000 vs 4,806"}, {"label": "정배열(5>20)", "ok": true, "detail": "5,552 / 4,806"}, {"label": "추세 기울기(20일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,552 / 4,914"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+49.7%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -49 · 기 +12 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.76% (환산) vs 평균 0.30% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "95,240 (환산) vs 평균 38,349"}, {"label": "회전율 급증", "ok": true, "detail": "0.76% (환산) vs 평균 0.30%"}, {"label": "RSI", "ok": true, "detail": "86"}]}
{"ts": "2026-10-01T10:16:48.737237+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7170, "qty": 731, "cost": 5242056, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 6454, "target": 8062, "signals": [{"label": "손절선", "ok": true, "detail": "6,454 (현재 7,180)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 8,062"}, {"label": "추세(20일선)", "ok": true, "detail": "4,814"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -49 · 기 +12"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 7,169"}]}
{"ts": "2026-10-01T12:24:43.726812+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1243, "qty": 2658, "cost": 3304390, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 1047, "target": 1501, "signals": [{"label": "손절선", "ok": true, "detail": "1,047 (현재 1,250)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 1,501"}, {"label": "추세(20일선)", "ok": true, "detail": "1,143"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -68 · 기 +4"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 1,249"}]}
{"ts": "2026-10-02T09:01:25.767670+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 132, "cost": 2825224, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 17261, "target": 26078, "signals": [{"label": "손절선", "ok": true, "detail": "17,261 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 26,078"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,139"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 122,665 도달",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 5051285.121721717,
"last_add_price": 125200
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 4362596.463271157,
"last_add_price": 13420
@@ -53,14 +53,14 @@
"qty": 344,
"entry_price": 14066.802325581395,
"entry_at": "2026-09-03T09:02:26.597960+09:00",
"stop": 18085,
"stop": 18166,
"target": 18597,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,982 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2432613.4618839705,
"last_add_price": 14660
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,404 도달",
"cur_price": 21450,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 3058381.8542864355,
"last_add_price": 22300
@@ -97,12 +97,12 @@
"entry_at": "2026-09-04T11:14:28.131726+09:00",
"stop": 2875,
"target": 3831,
"peak": 3420,
"peak": 3435,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,140 도달",
"cur_price": 3400,
"cur_price": 3345,
"tranches": 2,
"tranche_value": 4008637.751201471,
"last_add_price": 3255
@@ -118,12 +118,12 @@
"entry_at": "2026-09-16T13:08:42.157542+09:00",
"stop": 10788,
"target": 14231,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,955 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3954670.320777218,
"last_add_price": 12170
@@ -139,12 +139,12 @@
"entry_at": "2026-09-16T13:08:42.157933+09:00",
"stop": 4455,
"target": 6189,
"peak": 5710,
"peak": 5730,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,102 도달",
"cur_price": 5440,
"cur_price": 5590,
"tranches": 2,
"tranche_value": 3199498.373584197,
"last_add_price": 5140
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,155 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 5017816.601578125,
"last_add_price": 6130
@@ -202,5 +202,5 @@
"004370": "2026-09-18"
},
"created_at": "2026-06-15T14:55:00.583347+09:00",
"updated_at": "2026-10-01T15:28:44.505287+09:00"
"updated_at": "2026-10-02T15:28:50.976463+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3547525.853504033,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:09.540195+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1688085.214726109,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3967368.72635773,
"last_add_price": 112800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2862100.411366492,
"last_add_price": 135100
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4185836.328126983,
"last_add_price": 30200
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 1,
"tranche_value": 2940234.9193805554,
"last_add_price": 143200
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 411,247 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4452166.016150367,
"last_add_price": 411000
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T12:22:46.654174+09:00",
"stop": 11365,
"target": 18647,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2729545.934073818,
"last_add_price": 13440
@@ -210,5 +210,5 @@
"257720": "2026-09-10"
},
"created_at": "2026-06-15T14:40:00.621011+09:00",
"updated_at": "2026-10-01T15:28:50.445408+09:00"
"updated_at": "2026-10-02T15:28:58.024948+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3470885.263866936,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.144403+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1668794.556510239,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3062184.227151159,
"last_add_price": 13420
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3007474.6079847123,
"last_add_price": 101700
@@ -97,12 +97,12 @@
"entry_at": "2026-08-20T09:02:20.302047+09:00",
"stop": 24267,
"target": 65396,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1249060.2562777183,
"last_add_price": 35800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4738145.301375,
"last_add_price": 405000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3865376.1305725425,
"last_add_price": 34650
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 1,
"tranche_value": 2705226.090506498,
"last_add_price": 33750
@@ -215,5 +215,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.583395+09:00",
"updated_at": "2026-10-01T15:28:51.044523+09:00"
"updated_at": "2026-10-02T15:28:59.108694+09:00"
}
@@ -1,28 +1,7 @@
{
"cash": 34467773.333999984,
"cash": 29288967.845999986,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 43,
"entry_price": 132695.3488372093,
"entry_at": "2026-08-20T09:18:26.045143+09:00",
"stop": 114521,
"target": 187219,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 2892213.1259382935,
"last_add_price": 135100
},
"010950": {
"code": "010950",
"name": "S-Oil",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3261176.5302310046,
"last_add_price": 145300
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4176661.959968715,
"last_add_price": 30200
@@ -76,12 +55,12 @@
"entry_at": "2026-09-15T09:04:46.797435+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1555563.4787240115,
"last_add_price": 144600
@@ -92,20 +71,20 @@
"sources": [
"interest"
],
"qty": 39,
"entry_price": 52200,
"qty": 76,
"entry_price": 53709.21052631579,
"entry_at": "2026-09-30T09:22:54.305565+09:00",
"stop": 42293,
"target": 81921,
"peak": 53100,
"stop": 43431,
"target": 84544,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2060667.1256784087,
"last_add_price": 52200
"last_add_price": 55300
},
"077360": {
"code": "077360",
@@ -118,12 +97,12 @@
"entry_at": "2026-09-30T11:16:50.346361+09:00",
"stop": 11539,
"target": 18448,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2786504.4656391204,
"last_add_price": 13500
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,189 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2263662.6527048526,
"last_add_price": 1243
@@ -155,24 +134,45 @@
"sources": [
"watch"
],
"qty": 1259,
"entry_price": 3840,
"qty": 2473,
"entry_price": 3908.7262434290337,
"entry_at": "2026-10-01T11:18:50.376143+09:00",
"stop": 3735,
"target": 4155,
"peak": 3855,
"target": 4430,
"peak": 3980,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,947 도달",
"cur_price": 3835,
"tranches": 1,
"cur_price": 3920,
"tranches": 2,
"tranche_value": 4835927.9910625,
"last_add_price": 3840
"last_add_price": 3980
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 15,
"entry_price": 264000,
"entry_at": "2026-10-02T09:50:51.880598+09:00",
"stop": 238500,
"target": 340500,
"peak": 271000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 269,486 도달",
"cur_price": 271000,
"tranches": 1,
"tranche_value": 4011087.18891294,
"last_add_price": 264000
}
},
"realized_pnl": -25189186.11750005,
"closed_trades": 144,
"realized_pnl": -25235301.817500055,
"closed_trades": 145,
"wins": 4,
"peak_equity": 100000000,
"max_drawdown": 0.24471290425000028,
@@ -205,7 +205,7 @@
"003680": "2026-09-09",
"138040": "2026-09-30",
"010950": "2026-08-26",
"161890": "2026-07-31",
"161890": "2026-10-02",
"078930": "2026-09-03",
"252990": "2026-08-21",
"257720": "2026-09-09",
@@ -215,5 +215,5 @@
"004370": "2026-10-01"
},
"created_at": "2026-06-15T14:40:00.621059+09:00",
"updated_at": "2026-10-01T15:28:51.058189+09:00"
"updated_at": "2026-10-02T15:28:59.123998+09:00"
}
@@ -329,3 +329,7 @@
{"ts": "2026-10-01T11:18:50.059639+09:00", "side": "SELL", "code": "042500", "name": "링네트", "price": 4190, "qty": 1148, "proceeds": 4800740, "entry_price": 4210, "pnl": -33065, "pnl_pct": -0.48, "hold_from": "2026-10-01T11:14:52.397875+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "4,205 (현재 4,195)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,225"}, {"label": "추세(60일선)", "ok": true, "detail": "4,186"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -31 · 기 +5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 4,288"}]}
{"ts": "2026-10-01T11:18:50.376159+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3840, "qty": 1259, "cost": 4835285, "path": "pullback", "reason": "눌림목 지정가 3,947 도달", "stop": 3735, "target": 4155, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "3,835 vs 3,434"}, {"label": "정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +17 · 기 -8 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.23% (환산) vs 평균 0.59% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,550"}, {"label": "거래량 급증", "ok": false, "detail": "156,177 (환산) vs 평균 402,216"}, {"label": "회전율 급증", "ok": false, "detail": "0.23% (환산) vs 평균 0.59%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 3,947 (현재 3,835)"}]}
{"ts": "2026-10-01T12:24:50.672402+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1243, "qty": 1820, "cost": 2262599, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 987, "target": 1802, "signals": [{"label": "손절선", "ok": true, "detail": "987 (현재 1,250)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 1,802"}, {"label": "추세(60일선)", "ok": true, "detail": "1,001"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -68 · 기 +4"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 1,242"}]}
{"ts": "2026-10-02T09:12:53.604758+09:00", "side": "BUY", "code": "327260", "name": "RF머트리얼즈", "price": 55300, "qty": 37, "cost": 2046407, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 42293, "target": 81921, "signals": [{"label": "손절선", "ok": true, "detail": "42,293 (현재 55,200)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 81,921"}, {"label": "추세(60일선)", "ok": true, "detail": "30,078"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -93 · 기 +83"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 54,770"}]}
{"ts": "2026-10-02T09:50:51.486998+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 131900, "qty": 43, "proceeds": 5660640, "entry_price": 132695, "pnl": -46116, "pnl_pct": -0.6, "hold_from": "2026-08-20T09:18:26.045143+09:00", "reason": "시간손절 — 43일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "114,521 (현재 132,600)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 187,219"}, {"label": "추세(60일선)", "ok": true, "detail": "92,477"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:50:51.880618+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 264000, "qty": 15, "cost": 3960594, "path": "pullback", "reason": "눌림목 지정가 269,486 도달", "stop": 238500, "target": 340500, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "264,500 vs 248,842"}, {"label": "정배열(5>60)", "ok": true, "detail": "266,200 / 248,842"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "266,200 / 248,842"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+1.7%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -47 · 기 +23 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+25%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.86% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": true, "detail": "129,293 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": true, "detail": "0.86% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "57"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 269,486 (현재 264,500)"}]}
{"ts": "2026-10-02T10:24:53.213009+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3980, "qty": 1214, "cost": 4832445, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 3735, "target": 4155, "signals": [{"label": "손절선", "ok": true, "detail": "3,735 (현재 3,975)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,155"}, {"label": "추세(60일선)", "ok": true, "detail": "3,437"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +5 · 기 -5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,958"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3042388.163482306,
"last_add_price": 101700
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:20.356139+09:00",
"stop": 24285,
"target": 65413,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1267059.834384944,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4047548.093650061,
"last_add_price": 30200
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T09:04:46.810142+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1510162.3677440109,
"last_add_price": 144600
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4658782.560843747,
"last_add_price": 405000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 2,
"tranche_value": 2621656.204176753,
"last_add_price": 34350
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T11:16:50.765285+09:00",
"stop": 70797,
"target": 125469,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 2228224.8810089864,
"last_add_price": 86300
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T11:14:53.059456+09:00",
"stop": 5730,
"target": 6810,
"peak": 6050,
"peak": 6070,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,003 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 4610591.010015622,
"last_add_price": 6000
@@ -221,5 +221,5 @@
"316140": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583512+09:00",
"updated_at": "2026-10-01T15:28:51.068899+09:00"
"updated_at": "2026-10-02T15:28:59.134250+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3546894.320639113,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.162967+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1687768.019262798,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3966630.036179657,
"last_add_price": 112800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2861643.9610576206,
"last_add_price": 135100
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4185204.743405741,
"last_add_price": 30200
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 1,
"tranche_value": 2939786.4219278474,
"last_add_price": 143200
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 411,247 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4451467.75105609,
"last_add_price": 411000
@@ -160,12 +160,12 @@
"entry_at": "2026-09-30T12:22:48.397273+09:00",
"stop": 11365,
"target": 18647,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2729123.1106153554,
"last_add_price": 13440
@@ -211,5 +211,5 @@
"257720": "2026-09-10"
},
"created_at": "2026-06-15T14:40:00.621103+09:00",
"updated_at": "2026-10-01T15:28:51.075940+09:00"
"updated_at": "2026-10-02T15:28:59.141971+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3468191.0592600796,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.167956+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1667469.2912320814,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3059768.9052410396,
"last_add_price": 13420
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3005090.6555779856,
"last_add_price": 101700
@@ -97,12 +97,12 @@
"entry_at": "2026-08-20T09:02:20.368732+09:00",
"stop": 24267,
"target": 65396,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1248111.8252958565,
"last_add_price": 35800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4734491.937843747,
"last_add_price": 405000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3862395.055136152,
"last_add_price": 34650
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 1,
"tranche_value": 2703138.0438222312,
"last_add_price": 33750
@@ -216,5 +216,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.583628+09:00",
"updated_at": "2026-10-01T15:28:51.082604+09:00"
"updated_at": "2026-10-02T15:28:59.148490+09:00"
}
@@ -1,28 +1,7 @@
{
"cash": 34467773.333999984,
"cash": 29288967.845999986,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 43,
"entry_price": 132695.3488372093,
"entry_at": "2026-08-20T09:18:26.065190+09:00",
"stop": 114521,
"target": 187219,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 2892213.1259382935,
"last_add_price": 135100
},
"010950": {
"code": "010950",
"name": "S-Oil",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3261176.5302310046,
"last_add_price": 145300
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4176661.959968715,
"last_add_price": 30200
@@ -76,12 +55,12 @@
"entry_at": "2026-09-15T09:04:46.830348+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1555563.4787240115,
"last_add_price": 144600
@@ -92,20 +71,20 @@
"sources": [
"interest"
],
"qty": 39,
"entry_price": 52200,
"qty": 76,
"entry_price": 53709.21052631579,
"entry_at": "2026-09-30T09:22:54.339840+09:00",
"stop": 42293,
"target": 81921,
"peak": 53100,
"stop": 43431,
"target": 84544,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2060667.1256784087,
"last_add_price": 52200
"last_add_price": 55300
},
"077360": {
"code": "077360",
@@ -118,12 +97,12 @@
"entry_at": "2026-09-30T11:16:50.799613+09:00",
"stop": 11539,
"target": 18448,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2786504.4656391204,
"last_add_price": 13500
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,189 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2263662.6527048526,
"last_add_price": 1243
@@ -155,24 +134,45 @@
"sources": [
"watch"
],
"qty": 1259,
"entry_price": 3840,
"qty": 2473,
"entry_price": 3908.7262434290337,
"entry_at": "2026-10-01T11:18:50.415814+09:00",
"stop": 3735,
"target": 4155,
"peak": 3855,
"target": 4430,
"peak": 3980,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,947 도달",
"cur_price": 3835,
"tranches": 1,
"cur_price": 3920,
"tranches": 2,
"tranche_value": 4835927.9910625,
"last_add_price": 3840
"last_add_price": 3980
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 15,
"entry_price": 264000,
"entry_at": "2026-10-02T09:50:51.924578+09:00",
"stop": 238500,
"target": 340500,
"peak": 271000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 269,486 도달",
"cur_price": 271000,
"tranches": 1,
"tranche_value": 4011087.18891294,
"last_add_price": 264000
}
},
"realized_pnl": -25189186.11750005,
"closed_trades": 144,
"realized_pnl": -25235301.817500055,
"closed_trades": 145,
"wins": 4,
"peak_equity": 100000000,
"max_drawdown": 0.24471290425000028,
@@ -205,7 +205,7 @@
"003680": "2026-09-09",
"138040": "2026-09-30",
"010950": "2026-08-26",
"161890": "2026-07-31",
"161890": "2026-10-02",
"078930": "2026-09-03",
"252990": "2026-08-21",
"257720": "2026-09-09",
@@ -215,5 +215,5 @@
"004370": "2026-10-01"
},
"created_at": "2026-06-15T14:40:00.621148+09:00",
"updated_at": "2026-10-01T15:28:51.087892+09:00"
"updated_at": "2026-10-02T15:28:59.153630+09:00"
}
@@ -329,3 +329,7 @@
{"ts": "2026-10-01T11:18:50.415510+09:00", "side": "SELL", "code": "042500", "name": "링네트", "price": 4190, "qty": 1148, "proceeds": 4800740, "entry_price": 4210, "pnl": -33065, "pnl_pct": -0.48, "hold_from": "2026-10-01T11:14:53.092115+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "4,205 (현재 4,195)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,225"}, {"label": "추세(60일선)", "ok": true, "detail": "4,186"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -31 · 기 +5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 4,288"}]}
{"ts": "2026-10-01T11:18:50.415817+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3840, "qty": 1259, "cost": 4835285, "path": "pullback", "reason": "눌림목 지정가 3,947 도달", "stop": 3735, "target": 4155, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "3,835 vs 3,434"}, {"label": "정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +17 · 기 -8 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.23% (환산) vs 평균 0.59% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,550"}, {"label": "거래량 급증", "ok": false, "detail": "156,177 (환산) vs 평균 402,216"}, {"label": "회전율 급증", "ok": false, "detail": "0.23% (환산) vs 평균 0.59%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 3,947 (현재 3,835)"}]}
{"ts": "2026-10-01T12:24:50.703892+09:00", "side": "BUY", "code": "307870", "name": "비투엔", "price": 1243, "qty": 1820, "cost": 2262599, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 987, "target": 1802, "signals": [{"label": "손절선", "ok": true, "detail": "987 (현재 1,250)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 1,802"}, {"label": "추세(60일선)", "ok": true, "detail": "1,001"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -68 · 기 +4"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 1,242"}]}
{"ts": "2026-10-02T09:12:53.650001+09:00", "side": "BUY", "code": "327260", "name": "RF머트리얼즈", "price": 55300, "qty": 37, "cost": 2046407, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 42293, "target": 81921, "signals": [{"label": "손절선", "ok": true, "detail": "42,293 (현재 55,200)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 81,921"}, {"label": "추세(60일선)", "ok": true, "detail": "30,078"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -93 · 기 +83"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 54,770"}]}
{"ts": "2026-10-02T09:50:51.924204+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 131900, "qty": 43, "proceeds": 5660640, "entry_price": 132695, "pnl": -46116, "pnl_pct": -0.6, "hold_from": "2026-08-20T09:18:26.065190+09:00", "reason": "시간손절 — 43일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "114,521 (현재 132,600)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 187,219"}, {"label": "추세(60일선)", "ok": true, "detail": "92,477"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:50:51.924581+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 264000, "qty": 15, "cost": 3960594, "path": "pullback", "reason": "눌림목 지정가 269,486 도달", "stop": 238500, "target": 340500, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "264,500 vs 248,842"}, {"label": "정배열(5>60)", "ok": true, "detail": "266,200 / 248,842"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "266,200 / 248,842"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+1.7%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -47 · 기 +23 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+25%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.86% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": true, "detail": "129,293 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": true, "detail": "0.86% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "57"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 269,486 (현재 264,500)"}]}
{"ts": "2026-10-02T10:24:53.253540+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3980, "qty": 1214, "cost": 4832445, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 3735, "target": 4155, "signals": [{"label": "손절선", "ok": true, "detail": "3,735 (현재 3,975)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,155"}, {"label": "추세(60일선)", "ok": true, "detail": "3,437"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +5 · 기 -5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,958"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3042388.163482306,
"last_add_price": 101700
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:20.377162+09:00",
"stop": 24285,
"target": 65413,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1267059.834384944,
"last_add_price": 35800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4047548.093650061,
"last_add_price": 30200
@@ -76,12 +76,12 @@
"entry_at": "2026-09-15T09:04:46.835417+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1510162.3677440109,
"last_add_price": 144600
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4658782.560843747,
"last_add_price": 405000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 34450,
"cur_price": 33450,
"tranches": 2,
"tranche_value": 2621656.204176753,
"last_add_price": 34350
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T11:16:50.805786+09:00",
"stop": 70797,
"target": 125469,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 2228224.8810089864,
"last_add_price": 86300
@@ -160,12 +160,12 @@
"entry_at": "2026-10-01T11:14:53.099393+09:00",
"stop": 5730,
"target": 6810,
"peak": 6050,
"peak": 6070,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 6,003 도달",
"cur_price": 6050,
"cur_price": 6000,
"tranches": 1,
"tranche_value": 4610591.010015622,
"last_add_price": 6000
@@ -221,5 +221,5 @@
"316140": "2026-10-01"
},
"created_at": "2026-06-15T14:55:00.583751+09:00",
"updated_at": "2026-10-01T15:28:51.092939+09:00"
"updated_at": "2026-10-02T15:28:59.158700+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 30395575.974999964,
"cash": 23702052.096999966,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3229829.7909181127,
"last_add_price": 145300
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4114454.4034401365,
"last_add_price": 30200
@@ -55,12 +55,12 @@
"entry_at": "2026-09-15T09:04:46.840761+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1520913.5675996346,
"last_add_price": 144600
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2134348.726385529,
"last_add_price": 17900
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 77500,
"cur_price": 76900,
"tranches": 2,
"tranche_value": 4740446.690085275,
"last_add_price": 78500
@@ -113,20 +113,20 @@
"sources": [
"interest"
],
"qty": 38,
"entry_price": 50900,
"qty": 74,
"entry_price": 52359.45945945946,
"entry_at": "2026-09-30T09:14:50.016735+09:00",
"stop": 40993,
"target": 80621,
"peak": 53100,
"stop": 42167,
"target": 82938,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1962429.9571641255,
"last_add_price": 50900
"last_add_price": 53900
},
"077360": {
"code": "077360",
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T11:16:50.813591+09:00",
"stop": 11539,
"target": 18448,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2723162.0299032954,
"last_add_price": 13500
@@ -155,20 +155,20 @@
"sources": [
"watch"
],
"qty": 1237,
"entry_price": 3840,
"qty": 2431,
"entry_price": 3908.761826408885,
"entry_at": "2026-10-01T11:18:50.426393+09:00",
"stop": 3735,
"target": 4155,
"peak": 3855,
"target": 4430,
"peak": 3980,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,947 도달",
"cur_price": 3835,
"tranches": 1,
"cur_price": 3920,
"tranches": 2,
"tranche_value": 4753663.030437497,
"last_add_price": 3840
"last_add_price": 3980
}
},
"realized_pnl": -26416646.830000058,
@@ -216,5 +216,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:40:00.621367+09:00",
"updated_at": "2026-10-01T15:28:51.097043+09:00"
"updated_at": "2026-10-02T15:28:59.162820+09:00"
}
@@ -334,3 +334,5 @@
{"ts": "2026-10-01T11:14:53.106365+09:00", "side": "BUY", "code": "042500", "name": "링네트", "price": 4210, "qty": 1130, "cost": 4758014, "path": "pullback", "reason": "눌림목 지정가 4,227 도달", "stop": 4205, "target": 4225, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "4,200 vs 4,186"}, {"label": "정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -31 · 기 +5 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.38% (환산) vs 평균 0.55% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,590"}, {"label": "거래량 급증", "ok": false, "detail": "84,245 (환산) vs 평균 122,940"}, {"label": "회전율 급증", "ok": false, "detail": "0.38% (환산) vs 평균 0.55%"}, {"label": "RSI", "ok": true, "detail": "44"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 4,227 (현재 4,200)"}]}
{"ts": "2026-10-01T11:18:50.426179+09:00", "side": "SELL", "code": "042500", "name": "링네트", "price": 4190, "qty": 1130, "proceeds": 4725467, "entry_price": 4210, "pnl": -32546, "pnl_pct": -0.48, "hold_from": "2026-10-01T11:14:53.106362+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "4,205 (현재 4,195)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,225"}, {"label": "추세(60일선)", "ok": true, "detail": "4,186"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -31 · 기 +5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 4,288"}]}
{"ts": "2026-10-01T11:18:50.426395+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3840, "qty": 1237, "cost": 4750793, "path": "pullback", "reason": "눌림목 지정가 3,947 도달", "stop": 3735, "target": 4155, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "3,835 vs 3,434"}, {"label": "정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +17 · 기 -8 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.23% (환산) vs 평균 0.59% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,550"}, {"label": "거래량 급증", "ok": false, "detail": "156,177 (환산) vs 평균 402,216"}, {"label": "회전율 급증", "ok": false, "detail": "0.23% (환산) vs 평균 0.59%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 3,947 (현재 3,835)"}]}
{"ts": "2026-10-02T09:04:52.560338+09:00", "side": "BUY", "code": "327260", "name": "RF머트리얼즈", "price": 53900, "qty": 36, "cost": 1940691, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 40993, "target": 80621, "signals": [{"label": "손절선", "ok": true, "detail": "40,993 (현재 54,500)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 80,621"}, {"label": "추세(60일선)", "ok": true, "detail": "30,066"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -93 · 기 +83"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 53,448"}]}
{"ts": "2026-10-02T10:24:53.263818+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3980, "qty": 1194, "cost": 4752833, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 3735, "target": 4155, "signals": [{"label": "손절선", "ok": true, "detail": "3,735 (현재 3,975)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,155"}, {"label": "추세(60일선)", "ok": true, "detail": "3,437"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +5 · 기 -5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,958"}]}
@@ -1,5 +1,5 @@
{
"cash": 33626114.81824996,
"cash": 30471641.71824996,
"initial": 100000000,
"positions": {
"078930": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3042388.163482306,
"last_add_price": 101700
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:20.385184+09:00",
"stop": 24285,
"target": 65413,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1267059.834384944,
"last_add_price": 35800
@@ -55,12 +55,12 @@
"entry_at": "2026-09-08T09:16:34.080941+09:00",
"stop": 6094,
"target": 8714,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3881914.001622301,
"last_add_price": 6830
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4079729.186576085,
"last_add_price": 29450
@@ -97,12 +97,12 @@
"entry_at": "2026-09-15T09:04:46.845888+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1518714.2537293003,
"last_add_price": 144600
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2126392.023682259,
"last_add_price": 17900
@@ -134,20 +134,20 @@
"sources": [
"auto"
],
"qty": 19,
"entry_price": 160900,
"qty": 38,
"entry_price": 163450.0,
"entry_at": "2026-09-28T09:20:58.328839+09:00",
"stop": 141844,
"target": 218069,
"peak": 164600,
"stop": 143951,
"target": 221948,
"peak": 166700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"tranches": 1,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3193330.2718670745,
"last_add_price": 160900
"last_add_price": 166000
},
"316140": {
"code": "316140",
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3889307.499867359,
"last_add_price": 34650
@@ -218,5 +218,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.584337+09:00",
"updated_at": "2026-10-01T15:28:51.101364+09:00"
"updated_at": "2026-10-02T15:28:59.167196+09:00"
}
@@ -307,3 +307,4 @@
{"ts": "2026-09-30T09:18:53.002889+09:00", "side": "BUY", "code": "319660", "name": "피에스케이", "price": 148200, "qty": 32, "cost": 4743111, "path": "pullback", "reason": "눌림목 지정가 158,475 도달", "stop": 148199, "target": 148203, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "147,800 vs 113,022"}, {"label": "정배열(5>60)", "ok": true, "detail": "167,200 / 113,022"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "167,200 / 113,022"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+47.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -37 · 기 +116 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+33%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.83% (환산) vs 평균 2.68% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 196,500"}, {"label": "거래량 급증", "ok": false, "detail": "239,947 (환산) vs 평균 777,376"}, {"label": "회전율 급증", "ok": false, "detail": "0.83% (환산) vs 평균 2.68%"}, {"label": "RSI", "ok": true, "detail": "51"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 158,475 (현재 147,800)"}]}
{"ts": "2026-09-30T11:38:52.299728+09:00", "side": "SELL", "code": "319660", "name": "피에스케이", "price": 148000, "qty": 32, "proceeds": 4726765, "entry_price": 148200, "pnl": -16347, "pnl_pct": -0.13, "hold_from": "2026-09-30T09:18:53.002887+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "148,199 (현재 148,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(60일선)", "ok": true, "detail": "113,025"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -40 · 기 +116"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T11:38:52.300422+09:00", "side": "BUY", "code": "316140", "name": "우리금융지주", "price": 34650, "qty": 112, "cost": 3881382, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 31271, "target": 44788, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "34,650 vs 30,922"}, {"label": "정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+12.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -366 · 기 +142 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+26%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.60% (환산) vs 평균 0.34% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 33,850"}, {"label": "거래량 급증", "ok": true, "detail": "4,356,459 (환산) vs 평균 2,489,243"}, {"label": "회전율 급증", "ok": true, "detail": "0.60% (환산) vs 평균 0.34%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-10-02T14:48:56.094635+09:00", "side": "BUY", "code": "010950", "name": "S-Oil", "price": 166000, "qty": 19, "cost": 3154473, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 141844, "target": 218069, "signals": [{"label": "손절선", "ok": true, "detail": "141,844 (현재 165,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 218,069"}, {"label": "추세(60일선)", "ok": true, "detail": "113,795"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +186 · 기 +77"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 165,775"}]}
@@ -1,5 +1,5 @@
{
"cash": 30395575.974999964,
"cash": 23702052.096999966,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3229829.7909181127,
"last_add_price": 145300
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4114454.4034401365,
"last_add_price": 30200
@@ -55,12 +55,12 @@
"entry_at": "2026-09-15T09:04:46.850539+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1520913.5675996346,
"last_add_price": 144600
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2134348.726385529,
"last_add_price": 17900
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 77500,
"cur_price": 76900,
"tranches": 2,
"tranche_value": 4740446.690085275,
"last_add_price": 78500
@@ -113,20 +113,20 @@
"sources": [
"interest"
],
"qty": 38,
"entry_price": 50900,
"qty": 74,
"entry_price": 52359.45945945946,
"entry_at": "2026-09-30T09:14:50.045019+09:00",
"stop": 40993,
"target": 80621,
"peak": 53100,
"stop": 42167,
"target": 82938,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1962429.9571641255,
"last_add_price": 50900
"last_add_price": 53900
},
"077360": {
"code": "077360",
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T11:16:50.824644+09:00",
"stop": 11539,
"target": 18448,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2723162.0299032954,
"last_add_price": 13500
@@ -155,20 +155,20 @@
"sources": [
"watch"
],
"qty": 1237,
"entry_price": 3840,
"qty": 2431,
"entry_price": 3908.761826408885,
"entry_at": "2026-10-01T11:18:50.434910+09:00",
"stop": 3735,
"target": 4155,
"peak": 3855,
"target": 4430,
"peak": 3980,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,947 도달",
"cur_price": 3835,
"tranches": 1,
"cur_price": 3920,
"tranches": 2,
"tranche_value": 4753663.030437497,
"last_add_price": 3840
"last_add_price": 3980
}
},
"realized_pnl": -26416646.830000058,
@@ -216,5 +216,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:40:00.621411+09:00",
"updated_at": "2026-10-01T15:28:51.104935+09:00"
"updated_at": "2026-10-02T15:28:59.170925+09:00"
}
@@ -334,3 +334,5 @@
{"ts": "2026-10-01T11:14:53.117281+09:00", "side": "BUY", "code": "042500", "name": "링네트", "price": 4210, "qty": 1130, "cost": 4758014, "path": "pullback", "reason": "눌림목 지정가 4,227 도달", "stop": 4205, "target": 4225, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "4,200 vs 4,186"}, {"label": "정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.9%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -31 · 기 +5 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.38% (환산) vs 평균 0.55% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,590"}, {"label": "거래량 급증", "ok": false, "detail": "84,245 (환산) vs 평균 122,940"}, {"label": "회전율 급증", "ok": false, "detail": "0.38% (환산) vs 평균 0.55%"}, {"label": "RSI", "ok": true, "detail": "44"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 4,227 (현재 4,200)"}]}
{"ts": "2026-10-01T11:18:50.434727+09:00", "side": "SELL", "code": "042500", "name": "링네트", "price": 4190, "qty": 1130, "proceeds": 4725467, "entry_price": 4210, "pnl": -32546, "pnl_pct": -0.48, "hold_from": "2026-10-01T11:14:53.117279+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "4,205 (현재 4,195)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,225"}, {"label": "추세(60일선)", "ok": true, "detail": "4,186"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -31 · 기 +5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 4,288"}]}
{"ts": "2026-10-01T11:18:50.434912+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3840, "qty": 1237, "cost": 4750793, "path": "pullback", "reason": "눌림목 지정가 3,947 도달", "stop": 3735, "target": 4155, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "3,835 vs 3,434"}, {"label": "정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.6%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +17 · 기 -8 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.23% (환산) vs 평균 0.59% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,550"}, {"label": "거래량 급증", "ok": false, "detail": "156,177 (환산) vs 평균 402,216"}, {"label": "회전율 급증", "ok": false, "detail": "0.23% (환산) vs 평균 0.59%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 3,947 (현재 3,835)"}]}
{"ts": "2026-10-02T09:04:52.573586+09:00", "side": "BUY", "code": "327260", "name": "RF머트리얼즈", "price": 53900, "qty": 36, "cost": 1940691, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 40993, "target": 80621, "signals": [{"label": "손절선", "ok": true, "detail": "40,993 (현재 54,500)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 80,621"}, {"label": "추세(60일선)", "ok": true, "detail": "30,066"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -93 · 기 +83"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 53,448"}]}
{"ts": "2026-10-02T10:24:53.272608+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3980, "qty": 1194, "cost": 4752833, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 3735, "target": 4155, "signals": [{"label": "손절선", "ok": true, "detail": "3,735 (현재 3,975)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,155"}, {"label": "추세(60일선)", "ok": true, "detail": "3,437"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +5 · 기 -5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,958"}]}
@@ -1,5 +1,5 @@
{
"cash": 33626114.81824996,
"cash": 30471641.71824996,
"initial": 100000000,
"positions": {
"078930": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3042388.163482306,
"last_add_price": 101700
@@ -34,12 +34,12 @@
"entry_at": "2026-08-20T09:02:20.392120+09:00",
"stop": 24285,
"target": 65413,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1267059.834384944,
"last_add_price": 35800
@@ -55,12 +55,12 @@
"entry_at": "2026-09-08T09:16:34.103339+09:00",
"stop": 6094,
"target": 8714,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3881914.001622301,
"last_add_price": 6830
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4079729.186576085,
"last_add_price": 29450
@@ -97,12 +97,12 @@
"entry_at": "2026-09-15T09:04:46.855157+09:00",
"stop": 100700,
"target": 253252,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1518714.2537293003,
"last_add_price": 144600
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2126392.023682259,
"last_add_price": 17900
@@ -134,20 +134,20 @@
"sources": [
"auto"
],
"qty": 19,
"entry_price": 160900,
"qty": 38,
"entry_price": 163450.0,
"entry_at": "2026-09-28T09:20:58.338540+09:00",
"stop": 141844,
"target": 218069,
"peak": 164600,
"stop": 143951,
"target": 221948,
"peak": 166700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"tranches": 1,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3193330.2718670745,
"last_add_price": 160900
"last_add_price": 166000
},
"316140": {
"code": "316140",
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3889307.499867359,
"last_add_price": 34650
@@ -218,5 +218,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.584451+09:00",
"updated_at": "2026-10-01T15:28:51.108645+09:00"
"updated_at": "2026-10-02T15:28:59.174658+09:00"
}
@@ -307,3 +307,4 @@
{"ts": "2026-09-30T09:18:53.010579+09:00", "side": "BUY", "code": "319660", "name": "피에스케이", "price": 148200, "qty": 32, "cost": 4743111, "path": "pullback", "reason": "눌림목 지정가 158,475 도달", "stop": 148199, "target": 148203, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "147,800 vs 113,022"}, {"label": "정배열(5>60)", "ok": true, "detail": "167,200 / 113,022"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "167,200 / 113,022"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+47.4%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -37 · 기 +116 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+33%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.83% (환산) vs 평균 2.68% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 196,500"}, {"label": "거래량 급증", "ok": false, "detail": "239,947 (환산) vs 평균 777,376"}, {"label": "회전율 급증", "ok": false, "detail": "0.83% (환산) vs 평균 2.68%"}, {"label": "RSI", "ok": true, "detail": "51"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 158,475 (현재 147,800)"}]}
{"ts": "2026-09-30T11:38:52.307932+09:00", "side": "SELL", "code": "319660", "name": "피에스케이", "price": 148000, "qty": 32, "proceeds": 4726765, "entry_price": 148200, "pnl": -16347, "pnl_pct": -0.13, "hold_from": "2026-09-30T09:18:53.010577+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "148,199 (현재 148,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(60일선)", "ok": true, "detail": "113,025"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -40 · 기 +116"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T11:38:52.308490+09:00", "side": "BUY", "code": "316140", "name": "우리금융지주", "price": 34650, "qty": 112, "cost": 3881382, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 31271, "target": 44788, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "34,650 vs 30,922"}, {"label": "정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+12.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -366 · 기 +142 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+26%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.60% (환산) vs 평균 0.34% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 33,850"}, {"label": "거래량 급증", "ok": true, "detail": "4,356,459 (환산) vs 평균 2,489,243"}, {"label": "회전율 급증", "ok": true, "detail": "0.60% (환산) vs 평균 0.34%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-10-02T14:48:56.105759+09:00", "side": "BUY", "code": "010950", "name": "S-Oil", "price": 166000, "qty": 19, "cost": 3154473, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 141844, "target": 218069, "signals": [{"label": "손절선", "ok": true, "detail": "141,844 (현재 165,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 218,069"}, {"label": "추세(60일선)", "ok": true, "detail": "113,795"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +186 · 기 +77"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 165,775"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3546894.320639113,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.191677+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1687768.019262798,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3966630.036179657,
"last_add_price": 112800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4104392.319035925,
"last_add_price": 30200
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 3521468.04972381,
"last_add_price": 51000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2751857.4030862907,
"last_add_price": 146300
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T12:22:48.435484+09:00",
"stop": 11365,
"target": 18646,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2659921.8114048885,
"last_add_price": 13440
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,188 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2154285.6131948764,
"last_add_price": 1243
@@ -213,5 +213,5 @@
"079650": "2026-10-01"
},
"created_at": "2026-06-15T14:40:00.621453+09:00",
"updated_at": "2026-10-01T15:28:51.111805+09:00"
"updated_at": "2026-10-02T15:28:59.178068+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 30556345.101749964,
"cash": 26797191.313249964,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3468191.0592600796,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.194352+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1667469.2912320814,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3059768.9052410396,
"last_add_price": 13420
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3005090.6555779856,
"last_add_price": 101700
@@ -97,12 +97,12 @@
"entry_at": "2026-08-20T09:02:20.398238+09:00",
"stop": 24267,
"target": 65396,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1248111.8252958565,
"last_add_price": 35800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4734491.937843747,
"last_add_price": 405000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3862395.055136152,
"last_add_price": 34650
@@ -155,20 +155,20 @@
"sources": [
"auto"
],
"qty": 530,
"entry_price": 7090,
"qty": 1047,
"entry_price": 7178.882521489972,
"entry_at": "2026-09-30T12:22:48.784576+09:00",
"stop": 6382,
"target": 9213,
"peak": 7220,
"stop": 6462,
"target": 9328,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"tranches": 1,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3764874.55709998,
"last_add_price": 7090
"last_add_price": 7270
}
},
"realized_pnl": -28234224.410750058,
@@ -216,5 +216,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.584565+09:00",
"updated_at": "2026-10-01T15:28:51.115140+09:00"
"updated_at": "2026-10-02T15:28:59.181638+09:00"
}
@@ -272,3 +272,4 @@
{"ts": "2026-09-30T11:38:52.316171+09:00", "side": "BUY", "code": "316140", "name": "우리금융지주", "price": 34650, "qty": 111, "cost": 3846727, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 31271, "target": 44788, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "34,650 vs 30,922"}, {"label": "정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+12.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -366 · 기 +142 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+26%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.60% (환산) vs 평균 0.34% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 33,850"}, {"label": "거래량 급증", "ok": true, "detail": "4,356,459 (환산) vs 평균 2,489,243"}, {"label": "회전율 급증", "ok": true, "detail": "0.60% (환산) vs 평균 0.34%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-09-30T12:22:48.437997+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 308500, "qty": 20, "proceeds": 6157968, "entry_price": 350250, "pnl": -848082, "pnl_pct": -11.92, "hold_from": "2026-07-21T12:06:01.234767+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "308,113 (현재 308,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 476,661"}, {"label": "추세(60일선)", "ok": true, "detail": "304,883"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +21 · 기 -13"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T12:22:48.784592+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7090, "qty": 530, "cost": 3758264, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 6382, "target": 9213, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "7,060 vs 4,915"}, {"label": "정배열(5>60)", "ok": true, "detail": "5,564 / 4,915"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,564 / 4,915"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+53.8%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -42 · 기 +22 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.50% (환산) vs 평균 0.30% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "62,751 (환산) vs 평균 38,349"}, {"label": "회전율 급증", "ok": true, "detail": "0.50% (환산) vs 평균 0.30%"}, {"label": "RSI", "ok": true, "detail": "86"}]}
{"ts": "2026-10-02T10:40:51.998836+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7270, "qty": 517, "cost": 3759154, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 6382, "target": 9213, "signals": [{"label": "손절선", "ok": true, "detail": "6,382 (현재 7,280)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 9,213"}, {"label": "추세(60일선)", "ok": true, "detail": "4,919"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -88 · 기 +2"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 7,269"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3546894.320639113,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.196890+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1687768.019262798,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3966630.036179657,
"last_add_price": 112800
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 4104392.319035925,
"last_add_price": 30200
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 3521468.04972381,
"last_add_price": 51000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2751857.4030862907,
"last_add_price": 146300
@@ -139,12 +139,12 @@
"entry_at": "2026-09-30T12:22:48.804479+09:00",
"stop": 11365,
"target": 18646,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2659921.8114048885,
"last_add_price": 13440
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,188 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2154285.6131948764,
"last_add_price": 1243
@@ -213,5 +213,5 @@
"079650": "2026-10-01"
},
"created_at": "2026-06-15T14:40:00.621497+09:00",
"updated_at": "2026-10-01T15:28:51.118081+09:00"
"updated_at": "2026-10-02T15:28:59.184767+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 30556345.101749964,
"cash": 26797191.313249964,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3468191.0592600796,
"last_add_price": 136000
@@ -34,12 +34,12 @@
"entry_at": "2026-07-31T12:36:11.199406+09:00",
"stop": 100700,
"target": 251570,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1667469.2912320814,
"last_add_price": 147600
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3059768.9052410396,
"last_add_price": 13420
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 3005090.6555779856,
"last_add_price": 101700
@@ -97,12 +97,12 @@
"entry_at": "2026-08-20T09:02:20.403886+09:00",
"stop": 24267,
"target": 65396,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,138 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1248111.8252958565,
"last_add_price": 35800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,425 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4734491.937843747,
"last_add_price": 405000
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3862395.055136152,
"last_add_price": 34650
@@ -155,20 +155,20 @@
"sources": [
"auto"
],
"qty": 530,
"entry_price": 7090,
"qty": 1047,
"entry_price": 7178.882521489972,
"entry_at": "2026-09-30T12:22:48.813700+09:00",
"stop": 6382,
"target": 9213,
"peak": 7220,
"stop": 6462,
"target": 9328,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"tranches": 1,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3764874.55709998,
"last_add_price": 7090
"last_add_price": 7270
}
},
"realized_pnl": -28234224.410750058,
@@ -216,5 +216,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-15T14:55:00.584680+09:00",
"updated_at": "2026-10-01T15:28:51.121254+09:00"
"updated_at": "2026-10-02T15:28:59.188074+09:00"
}
@@ -272,3 +272,4 @@
{"ts": "2026-09-30T11:38:52.322962+09:00", "side": "BUY", "code": "316140", "name": "우리금융지주", "price": 34650, "qty": 111, "cost": 3846727, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 31271, "target": 44788, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "34,650 vs 30,922"}, {"label": "정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "32,950 / 30,922"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+12.1%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -366 · 기 +142 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+26%"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.60% (환산) vs 평균 0.34% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 33,850"}, {"label": "거래량 급증", "ok": true, "detail": "4,356,459 (환산) vs 평균 2,489,243"}, {"label": "회전율 급증", "ok": true, "detail": "0.60% (환산) vs 평균 0.34%"}, {"label": "RSI", "ok": true, "detail": "67"}]}
{"ts": "2026-09-30T12:22:48.811913+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 308500, "qty": 20, "proceeds": 6157968, "entry_price": 350250, "pnl": -848082, "pnl_pct": -11.92, "hold_from": "2026-07-21T12:06:01.238289+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "308,113 (현재 308,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 476,661"}, {"label": "추세(60일선)", "ok": true, "detail": "304,883"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +21 · 기 -13"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T12:22:48.813704+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7090, "qty": 530, "cost": 3758264, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 6382, "target": 9213, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "7,060 vs 4,915"}, {"label": "정배열(5>60)", "ok": true, "detail": "5,564 / 4,915"}, {"label": "추세 기울기(60일선↑)", "ok": null, "detail": "게이트 끔(완화) · 실제 하향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,564 / 4,915"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+53.8%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -42 · 기 +22 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.50% (환산) vs 평균 0.30% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "62,751 (환산) vs 평균 38,349"}, {"label": "회전율 급증", "ok": true, "detail": "0.50% (환산) vs 평균 0.30%"}, {"label": "RSI", "ok": true, "detail": "86"}]}
{"ts": "2026-10-02T10:40:52.006608+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 7270, "qty": 517, "cost": 3759154, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 6382, "target": 9213, "signals": [{"label": "손절선", "ok": true, "detail": "6,382 (현재 7,280)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 9,213"}, {"label": "추세(60일선)", "ok": true, "detail": "4,919"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -88 · 기 +2"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 7,269"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 4371332.168068898,
"last_add_price": 105800
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3448434.606240806,
"last_add_price": 130800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4425860.654266699,
"last_add_price": 125200
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 221500,
"cur_price": 219500,
"tranches": 2,
"tranche_value": 2243002.5784807494,
"last_add_price": 244500
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2796943.490474186,
"last_add_price": 133800
@@ -118,12 +118,12 @@
"entry_at": "2026-08-20T09:04:23.376147+09:00",
"stop": 113467,
"target": 266209,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 147,729 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1467735.2954887256,
"last_add_price": 157600
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 2,
"tranche_value": 3093167.6730282507,
"last_add_price": 134900
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 2288070.2774689887,
"last_add_price": 13090
@@ -221,5 +221,5 @@
"003680": "2026-08-24"
},
"created_at": "2026-06-16T09:00:03.113416+09:00",
"updated_at": "2026-10-01T15:28:51.124071+09:00"
"updated_at": "2026-10-02T15:28:59.774988+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 5402457.352781249,
"last_add_price": 104900
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 4939827.041843749,
"last_add_price": 130800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 128100,
"cur_price": 129100,
"tranches": 2,
"tranche_value": 4504266.321593748,
"last_add_price": 125200
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 126300,
"cur_price": 128800,
"tranches": 2,
"tranche_value": 4268049.827468748,
"last_add_price": 122900
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 4349667.340562498,
"last_add_price": 118900
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 4532714.182749998,
"last_add_price": 34350
@@ -139,12 +139,12 @@
"entry_at": "2026-09-04T10:30:32.659857+09:00",
"stop": 5662,
"target": 7990,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 4617879.361156248,
"last_add_price": 6330
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 10220,
"cur_price": 10140,
"tranches": 2,
"tranche_value": 4456984.8542187475,
"last_add_price": 8400
@@ -205,5 +205,5 @@
"079650": "2026-09-21"
},
"created_at": "2026-06-16T09:00:03.113433+09:00",
"updated_at": "2026-10-01T15:28:51.126870+09:00"
"updated_at": "2026-10-02T15:28:59.788349+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 1558.9514999557287,
"cash": 3086871.4114999548,
"initial": 100000000,
"positions": {
"055550": {
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 5666061.52171875,
"last_add_price": 99700
@@ -39,32 +39,11 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 4789675.2297187485,
"last_add_price": 130800
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 28,
"entry_price": 291500.0,
"entry_at": "2026-07-31T15:22:10.000237+09:00",
"stop": 264160,
"target": 373521,
"peak": 335000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 271000,
"tranches": 2,
"tranche_value": 4236521.005156248,
"last_add_price": 295000
},
"078930": {
"code": "078930",
"name": "GS",
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 101800,
"cur_price": 106300,
"tranches": 2,
"tranche_value": 4279461.011749998,
"last_add_price": 101700
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 4367140.436124997,
"last_add_price": 135000
@@ -123,7 +102,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 2,
"tranche_value": 4637315.235843748,
"last_add_price": 34350
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 10220,
"cur_price": 10140,
"tranches": 2,
"tranche_value": 4411518.207562497,
"last_add_price": 8400
@@ -160,19 +139,40 @@
"entry_at": "2026-09-28T09:04:56.208686+09:00",
"stop": 126140,
"target": 273168,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 158,422 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 2951850.2265706444,
"last_add_price": 168400
},
"001450": {
"code": "001450",
"name": "현대해상",
"sources": [
"auto"
],
"qty": 92,
"entry_price": 46800,
"entry_at": "2026-10-02T10:03:01.788994+09:00",
"stop": 41792,
"target": 61825,
"peak": 47700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 47550,
"tranches": 1,
"tranche_value": 4333551.078218747,
"last_add_price": 46800
}
},
"realized_pnl": -35927001.774000034,
"closed_trades": 47,
"realized_pnl": -36698667.774000034,
"closed_trades": 48,
"wins": 3,
"peak_equity": 102093754.3635,
"max_drawdown": 0.346576129965988,
@@ -210,8 +210,9 @@
"003680": "2026-08-24",
"068270": "2026-09-04",
"079650": "2026-09-21",
"000720": "2026-09-28"
"000720": "2026-09-28",
"051900": "2026-10-02"
},
"created_at": "2026-06-16T09:00:03.113489+09:00",
"updated_at": "2026-10-01T15:28:51.129666+09:00"
"updated_at": "2026-10-02T15:28:59.797269+09:00"
}
@@ -136,3 +136,5 @@
{"ts": "2026-09-28T09:04:56.208700+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 157700, "qty": 18, "cost": 2839026, "path": "pullback", "reason": "눌림목 지정가 158,422 도달", "stop": 120543, "target": 269171, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "158,300 vs 136,330"}, {"label": "정배열(5>20)", "ok": true, "detail": "172,300 / 136,330"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "172,300 / 99,755"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+33.0%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +222 · 기 -12 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+36%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.38% (환산) vs 평균 3.06% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 202,500"}, {"label": "거래량 급증", "ok": false, "detail": "73,727 (환산) vs 평균 591,925"}, {"label": "회전율 급증", "ok": false, "detail": "0.38% (환산) vs 평균 3.06%"}, {"label": "RSI", "ok": true, "detail": "61"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 158,422 (현재 158,300)"}]}
{"ts": "2026-09-29T09:02:53.136283+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 168400, "qty": 17, "cost": 2863229, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 120543, "target": 269171, "signals": [{"label": "손절선", "ok": true, "detail": "120,543 (현재 168,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 269,171"}, {"label": "추세(20일선)", "ok": true, "detail": "136,850"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +236 · 기 -7"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 166,889"}]}
{"ts": "2026-09-30T09:44:50.929195+09:00", "side": "BUY", "code": "200470", "name": "에이팩트", "price": 8400, "qty": 300, "cost": 2520378, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 7041, "target": 11318, "signals": [{"label": "손절선", "ok": true, "detail": "7,041 (현재 8,410)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 11,318"}, {"label": "추세(20일선)", "ok": true, "detail": "6,432"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -111 · 기 +160"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 8,378"}]}
{"ts": "2026-10-02T10:03:01.367932+09:00", "side": "SELL", "code": "051900", "name": "LG생활건강", "price": 264500, "qty": 28, "proceeds": 7391558, "entry_price": 291500, "pnl": -771666, "pnl_pct": -9.26, "hold_from": "2026-07-31T15:22:10.000237+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "264,160 (현재 264,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 373,521"}, {"label": "추세(20일선)", "ok": true, "detail": "251,350"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -49 · 기 +23"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T10:03:01.789013+09:00", "side": "BUY", "code": "001450", "name": "현대해상", "price": 46800, "qty": 92, "cost": 4306246, "path": "immediate", "reason": "조건 충족 — 즉시매수(눌림 안 기다림)", "stop": 41792, "target": 61825, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "46,650 vs 38,895"}, {"label": "정배열(5>20)", "ok": true, "detail": "41,930 / 38,895"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "41,930 / 37,566"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+19.0%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +100 · 기 -43 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+26%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.70% (환산) vs 평균 0.64% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 45,300"}, {"label": "거래량 급증", "ok": false, "detail": "592,891 (환산) vs 평균 542,016"}, {"label": "회전율 급증", "ok": false, "detail": "0.70% (환산) vs 평균 0.64%"}, {"label": "RSI", "ok": true, "detail": "73"}, {"label": "눌림목 도달", "ok": false, "detail": "지정가 41,546 (현재 46,650)"}]}
@@ -13,12 +13,12 @@
"entry_at": "2026-07-31T12:36:11.212064+09:00",
"stop": 108279,
"target": 227508,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 2602335.520457338,
"last_add_price": 147600
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3682720.3330000006,
"last_add_price": 13420
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 3788581.3199375006,
"last_add_price": 50400
@@ -76,12 +76,12 @@
"entry_at": "2026-09-03T09:00:44.984169+09:00",
"stop": 10600,
"target": 15229,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,581 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3822139.0130625004,
"last_add_price": 11930
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,350 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 3773712.918396452,
"last_add_price": 4810
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 3798944.7854062505,
"last_add_price": 144100
@@ -139,12 +139,12 @@
"entry_at": "2026-09-08T15:20:38.343663+09:00",
"stop": 6258,
"target": 8223,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3730753.9550937507,
"last_add_price": 6830
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 1002,
"cur_price": 1001,
"tranches": 1,
"tranche_value": 3720793.6927812505,
"last_add_price": 1046
@@ -209,5 +209,5 @@
"257720": "2026-09-09"
},
"created_at": "2026-06-16T10:45:02.136776+09:00",
"updated_at": "2026-10-01T15:28:51.744428+09:00"
"updated_at": "2026-10-02T15:29:00.389710+09:00"
}
@@ -1,5 +1,5 @@
{
"cash": 3170501.8144999915,
"cash": 7025736.16049999,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,32 +18,11 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 4497110.087925,
"last_add_price": 130800
},
"214450": {
"code": "214450",
"name": "파마리서치",
"sources": [
"auto"
],
"qty": 25,
"entry_price": 347020.0,
"entry_at": "2026-07-16T09:04:04.870738+09:00",
"stop": 305169,
"target": 472574,
"peak": 465250,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"tranches": 2,
"tranche_value": 4537990.22125,
"last_add_price": 353000
},
"194370": {
"code": "194370",
"name": "제이에스코퍼레이션",
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3916421.3406499997,
"last_add_price": 13420
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 3939438.35845,
"last_add_price": 135000
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 3906404.1509499997,
"last_add_price": 50500
@@ -118,12 +97,12 @@
"entry_at": "2026-09-03T09:02:29.324709+09:00",
"stop": 10251,
"target": 16355,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,601 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 4014765.8981999992,
"last_add_price": 11970
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 117300,
"cur_price": 114100,
"tranches": 2,
"tranche_value": 3960548.7447749996,
"last_add_price": 133000
@@ -160,12 +139,12 @@
"entry_at": "2026-09-09T10:00:41.408422+09:00",
"stop": 5976,
"target": 8545,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3880908.2525249994,
"last_add_price": 6740
@@ -186,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 33225,
"cur_price": 33550,
"tranches": 1,
"tranche_value": 3788155.7863749997,
"last_add_price": 36450
@@ -207,17 +186,38 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 3777838.417625,
"last_add_price": 5740
},
"093370": {
"code": "093370",
"name": "후성",
"sources": [
"interest"
],
"qty": 229,
"entry_price": 16340,
"entry_at": "2026-10-02T14:48:57.276573+09:00",
"stop": 14124,
"target": 22988,
"peak": 16450,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 16410,
"tranches": 1,
"tranche_value": 3742601.8719749996,
"last_add_price": 16340
}
},
"realized_pnl": -26275286.64100001,
"closed_trades": 35,
"realized_pnl": -27354432.341000013,
"closed_trades": 36,
"wins": 2,
"peak_equity": 100162411.55350003,
"max_drawdown": 0.25997017578886494,
"max_drawdown": 0.26132627332978176,
"last_exit": {
"030000": "2026-08-13",
"086790": "2026-07-29",
@@ -226,7 +226,7 @@
"403870": "2026-07-07",
"240810": "2026-07-24",
"093370": "2026-07-20",
"214450": "2026-07-15",
"214450": "2026-10-02",
"055550": "2026-07-20",
"024060": "2026-07-27",
"003680": "2026-08-24",
@@ -241,5 +241,5 @@
"003550": "2026-09-15"
},
"created_at": "2026-06-16T14:30:00.114884+09:00",
"updated_at": "2026-10-01T15:28:51.750978+09:00"
"updated_at": "2026-10-02T15:29:00.396616+09:00"
}
@@ -111,3 +111,5 @@
{"ts": "2026-09-15T09:20:45.275903+09:00", "side": "BUY", "code": "041520", "name": "이엘씨", "price": 11970, "qty": 335, "cost": 4010551, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 10071, "target": 16146, "signals": [{"label": "손절선", "ok": true, "detail": "10,071 (현재 11,990)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 16,146"}, {"label": "추세(10일선)", "ok": true, "detail": "11,367"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +26 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 11,971"}]}
{"ts": "2026-09-22T09:32:52.840979+09:00", "side": "SELL", "code": "078930", "name": "GS", "price": 109700, "qty": 62, "proceeds": 6788137, "entry_price": 127116, "pnl": -1094245, "pnl_pct": -13.7, "hold_from": "2026-09-04T12:34:31.990015+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "110,437 (현재 110,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 177,154"}, {"label": "추세(10일선)", "ok": true, "detail": "83,080"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +266 · 기 -141"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-22T09:32:52.842665+09:00", "side": "BUY", "code": "088350", "name": "한화생명", "price": 5740, "qty": 658, "cost": 3777487, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 5129, "target": 7573, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "5,720 vs 4,822"}, {"label": "정배열(5>10)", "ok": true, "detail": "5,161 / 4,822"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "5,161 / 4,734"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+26.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -544 · 기 +443 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+11%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.68% (환산) vs 평균 0.43% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 5,630"}, {"label": "거래량 급증", "ok": true, "detail": "5,933,633 (환산) vs 평균 3,731,411"}, {"label": "회전율 급증", "ok": true, "detail": "0.68% (환산) vs 평균 0.43%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
{"ts": "2026-10-02T14:48:57.233361+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 304500, "qty": 25, "proceeds": 7597656, "entry_price": 347020, "pnl": -1079146, "pnl_pct": -12.25, "hold_from": "2026-07-16T09:04:04.870738+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "305,169 (현재 305,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 472,574"}, {"label": "추세(10일선)", "ok": true, "detail": "301,850"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +84 · 기 -122"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T14:48:57.276582+09:00", "side": "BUY", "code": "093370", "name": "후성", "price": 16340, "qty": 229, "cost": 3742421, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 14124, "target": 22988, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "16,320 vs 13,207"}, {"label": "정배열(5>10)", "ok": true, "detail": "13,838 / 13,207"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,838 / 12,660"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+25.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +163 · 기 +708 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+23%"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "4.92% (환산) vs 평균 2.72% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 14,740"}, {"label": "거래량 급증", "ok": true, "detail": "5,277,102 (환산) vs 평균 2,916,070"}, {"label": "회전율 급증", "ok": true, "detail": "4.92% (환산) vs 평균 2.72%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
@@ -1,5 +1,5 @@
{
"cash": 1426805.1197500098,
"cash": 5265697.014750009,
"initial": 100000000,
"positions": {
"010950": {
@@ -18,32 +18,11 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 4360729.7882,
"last_add_price": 130800
},
"214450": {
"code": "214450",
"name": "파마리서치",
"sources": [
"auto"
],
"qty": 25,
"entry_price": 347020.0,
"entry_at": "2026-07-16T09:04:04.880674+09:00",
"stop": 305169,
"target": 472574,
"peak": 465250,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"tranches": 2,
"tranche_value": 4542977.951950001,
"last_add_price": 353000
},
"194370": {
"code": "194370",
"name": "제이에스코퍼레이션",
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 12580,
"cur_price": 12820,
"tranches": 2,
"tranche_value": 3756374.284550001,
"last_add_price": 13420
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 47250,
"cur_price": 47550,
"tranches": 2,
"tranche_value": 3779374.505025001,
"last_add_price": 50500
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 3753616.173025001,
"last_add_price": 135000
@@ -118,12 +97,12 @@
"entry_at": "2026-08-24T09:02:26.769879+09:00",
"stop": 23816,
"target": 65659,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 33,047 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 2355344.402237601,
"last_add_price": 35650
@@ -144,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,342 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 3832048.9757250003,
"last_add_price": 4795
@@ -165,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 3818388.2761875005,
"last_add_price": 32000
@@ -181,12 +160,12 @@
"entry_at": "2026-09-08T15:20:38.352756+09:00",
"stop": 6094,
"target": 8714,
"peak": 7260,
"peak": 7280,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 7140,
"cur_price": 7110,
"tranches": 2,
"tranche_value": 3751556.2420625,
"last_add_price": 6830
@@ -207,14 +186,35 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,907 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 3737257.7022625008,
"last_add_price": 404000
},
"093370": {
"code": "093370",
"name": "후성",
"sources": [
"interest"
],
"qty": 230,
"entry_price": 16340,
"entry_at": "2026-10-02T14:48:57.286918+09:00",
"stop": 14124,
"target": 22988,
"peak": 16450,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 16410,
"tranches": 1,
"tranche_value": 3759777.2872375003,
"last_add_price": 16340
}
},
"realized_pnl": -28238701.288500033,
"closed_trades": 43,
"realized_pnl": -29317846.988500036,
"closed_trades": 44,
"wins": 3,
"peak_equity": 100864171.466,
"max_drawdown": 0.27186488255885194,
@@ -227,7 +227,7 @@
"093370": "2026-07-20",
"034730": "2026-07-08",
"319660": "2026-07-27",
"214450": "2026-07-15",
"214450": "2026-10-02",
"105560": "2026-07-20",
"055550": "2026-07-20",
"024060": "2026-07-27",
@@ -243,5 +243,5 @@
"004370": "2026-09-07"
},
"created_at": "2026-06-16T14:30:00.114893+09:00",
"updated_at": "2026-10-01T15:28:51.756797+09:00"
"updated_at": "2026-10-02T15:29:00.402204+09:00"
}
@@ -129,3 +129,5 @@
{"ts": "2026-09-23T09:10:58.084536+09:00", "side": "BUY", "code": "003490", "name": "대한항공", "price": 32000, "qty": 119, "cost": 3808571, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 27920, "target": 39641, "signals": [{"label": "손절선", "ok": true, "detail": "27,920 (현재 31,850)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 39,641"}, {"label": "추세(20일선)", "ok": true, "detail": "26,098"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2,051 · 기 +1,570"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 31,618"}]}
{"ts": "2026-09-23T11:12:56.553358+09:00", "side": "BUY", "code": "048910", "name": "대원미디어", "price": 6830, "qty": 549, "cost": 3750232, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 6012, "target": 8643, "signals": [{"label": "손절선", "ok": true, "detail": "6,012 (현재 6,850)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 8,643"}, {"label": "추세(20일선)", "ok": true, "detail": "4,798"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +6 · 기 +13"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 6,834"}]}
{"ts": "2026-09-29T09:30:57.004863+09:00", "side": "BUY", "code": "004370", "name": "농심", "price": 404000, "qty": 9, "cost": 3636545, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 372500, "target": 452500, "signals": [{"label": "손절선", "ok": true, "detail": "372,500 (현재 402,500)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 452,500"}, {"label": "추세(20일선)", "ok": true, "detail": "383,350"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +10 · 기 -2"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 401,537"}]}
{"ts": "2026-10-02T14:48:57.285579+09:00", "side": "SELL", "code": "214450", "name": "파마리서치", "price": 304500, "qty": 25, "proceeds": 7597656, "entry_price": 347020, "pnl": -1079146, "pnl_pct": -12.25, "hold_from": "2026-07-16T09:04:04.880674+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "305,169 (현재 305,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 472,574"}, {"label": "추세(20일선)", "ok": true, "detail": "294,375"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +84 · 기 -122"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T14:48:57.286922+09:00", "side": "BUY", "code": "093370", "name": "후성", "price": 16340, "qty": 230, "cost": 3758764, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 14124, "target": 22988, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "16,320 vs 12,887"}, {"label": "정배열(5>20)", "ok": true, "detail": "13,838 / 12,887"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,838 / 12,660"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+25.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +163 · 기 +708 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+23%"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "4.92% (환산) vs 평균 2.72% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 14,740"}, {"label": "거래량 급증", "ok": true, "detail": "5,277,102 (환산) vs 평균 2,916,070"}, {"label": "회전율 급증", "ok": true, "detail": "4.92% (환산) vs 평균 2.72%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3561275.575471075,
"last_add_price": 130800
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 314500,
"cur_price": 305500,
"tranches": 2,
"tranche_value": 3616873.7658032966,
"last_add_price": 349500
@@ -55,12 +55,12 @@
"entry_at": "2026-07-31T12:36:11.219851+09:00",
"stop": 100700,
"target": 250167,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 144,129 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1695866.1189129704,
"last_add_price": 147600
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3896691.6945500015,
"last_add_price": 112800
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2745363.955329169,
"last_add_price": 132000
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 7,365 도달",
"cur_price": 4530,
"cur_price": 4420,
"tranches": 1,
"tranche_value": 2237058.4160459745,
"last_add_price": 4895
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 3946598.3595250016,
"last_add_price": 30200
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 5610,
"cur_price": 5600,
"tranches": 2,
"tranche_value": 1617867.8531665015,
"last_add_price": 6580
@@ -186,7 +186,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 1,
"tranche_value": 2963407.3031992856,
"last_add_price": 143200
@@ -202,12 +202,12 @@
"entry_at": "2026-09-10T13:26:37.623734+09:00",
"stop": 35987,
"target": 72444,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1901666.048918765,
"last_add_price": 46500
@@ -253,5 +253,5 @@
"257720": "2026-09-10"
},
"created_at": "2026-06-16T14:30:00.114901+09:00",
"updated_at": "2026-10-01T15:28:51.762072+09:00"
"updated_at": "2026-10-02T15:29:00.407507+09:00"
}
@@ -1,28 +1,7 @@
{
"cash": 60765389.411749914,
"cash": 59726239.62674992,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 19,
"entry_price": 132315.7894736842,
"entry_at": "2026-08-20T09:14:25.021135+09:00",
"stop": 109669,
"target": 166286,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 1302564.8461088152,
"last_add_price": 135000
},
"010950": {
"code": "010950",
"name": "S-Oil",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 1481365.9160708203,
"last_add_price": 145300
@@ -53,14 +32,14 @@
"qty": 142,
"entry_price": 13828.028169014084,
"entry_at": "2026-09-03T13:38:33.380609+09:00",
"stop": 18085,
"stop": 18166,
"target": 19060,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,939 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 988188.6519627835,
"last_add_price": 14370
@@ -76,12 +55,12 @@
"entry_at": "2026-09-15T09:04:46.899527+09:00",
"stop": 100700,
"target": 196700,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 156,479 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 888103.2638242849,
"last_add_price": 144600
@@ -97,12 +76,12 @@
"entry_at": "2026-09-15T09:22:44.343877+09:00",
"stop": 4181,
"target": 6661,
"peak": 5710,
"peak": 5730,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,108 도달",
"cur_price": 5440,
"cur_price": 5590,
"tranches": 2,
"tranche_value": 1104635.9623891795,
"last_add_price": 5280
@@ -118,12 +97,12 @@
"entry_at": "2026-09-16T13:08:48.027753+09:00",
"stop": 34191,
"target": 63454,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 853163.9032473661,
"last_add_price": 47000
@@ -139,12 +118,12 @@
"entry_at": "2026-09-16T15:22:45.015024+09:00",
"stop": 2579,
"target": 3940,
"peak": 3420,
"peak": 3435,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,133 도달",
"cur_price": 3400,
"cur_price": 3345,
"tranches": 2,
"tranche_value": 1199694.5417108096,
"last_add_price": 3195
@@ -165,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 16990,
"cur_price": 17800,
"tranches": 2,
"tranche_value": 1197077.8466134714,
"last_add_price": 18560
@@ -186,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,397 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 2583251.5484106448,
"last_add_price": 16280
@@ -207,7 +186,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 39,585 도달",
"cur_price": 38300,
"cur_price": 37150,
"tranches": 1,
"tranche_value": 1498127.2623570368,
"last_add_price": 39250
@@ -223,12 +202,12 @@
"entry_at": "2026-09-30T09:14:51.881950+09:00",
"stop": 10600,
"target": 13825,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,332 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 2038377.848723007,
"last_add_price": 11890
@@ -253,11 +232,32 @@
"tranches": 1,
"tranche_value": 1840676.8882680172,
"last_add_price": 271000
},
"004370": {
"code": "004370",
"name": "농심",
"sources": [
"auto"
],
"qty": 9,
"entry_price": 395000,
"entry_at": "2026-10-02T09:52:55.805064+09:00",
"stop": 372500,
"target": 428750,
"peak": 404000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 419,391 도달",
"cur_price": 403500,
"tranches": 1,
"tranche_value": 3693441.3698645798,
"last_add_price": 395000
}
},
"realized_pnl": -13861780.234500073,
"closed_trades": 231,
"wins": 7,
"realized_pnl": -13859773.869500073,
"closed_trades": 232,
"wins": 8,
"peak_equity": 100036582.48,
"max_drawdown": 0.15270831167742246,
"last_exit": {
@@ -293,7 +293,7 @@
"252990": "2026-09-01",
"055550": "2026-09-21",
"003680": "2026-09-09",
"161890": "2026-08-13",
"161890": "2026-10-02",
"078930": "2026-09-03",
"138040": "2026-09-08",
"180640": "2026-09-29",
@@ -305,5 +305,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-22T09:00:04.885275+09:00",
"updated_at": "2026-10-01T15:28:51.766625+09:00"
"updated_at": "2026-10-02T15:29:00.412009+09:00"
}
@@ -516,3 +516,5 @@
{"ts": "2026-09-30T09:14:51.881953+09:00", "side": "BUY", "code": "024060", "name": "흥구석유", "price": 11890, "qty": 171, "cost": 2033495, "path": "pullback", "reason": "눌림목 지정가 12,332 도달", "stop": 10600, "target": 13825, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "11,910 vs 11,180"}, {"label": "정배열(5>60)", "ok": true, "detail": "13,850 / 11,180"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,850 / 11,180"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+14.7%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 +73 · 기 -4 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "7.32% (환산) vs 평균 29.44% (보류 4배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 17,310"}, {"label": "거래량 급증", "ok": false, "detail": "1,098,987 (환산) vs 평균 4,415,653"}, {"label": "회전율 급증", "ok": false, "detail": "7.32% (환산) vs 평균 29.44%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 12,332 (현재 11,910)"}]}
{"ts": "2026-09-30T11:16:52.623777+09:00", "side": "SELL", "code": "034730", "name": "SK", "price": 590000, "qty": 6, "proceeds": 3533097, "entry_price": 590000, "pnl": -7434, "pnl_pct": 0.0, "hold_from": "2026-09-30T09:01:33.608449+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "589,999 (현재 589,000)"}, {"label": "목표/트레일링", "ok": null, "detail": "트레일링 ON"}, {"label": "추세(60일선)", "ok": true, "detail": "528,017"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -67 · 기 +108"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-09-30T11:16:52.673183+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 271000, "qty": 6, "cost": 1626244, "path": "pullback", "reason": "눌림목 지정가 277,401 도달", "stop": 238500, "target": 319750, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "271,000 vs 248,950"}, {"label": "정배열(5>60)", "ok": true, "detail": "267,500 / 248,950"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "267,500 / 248,950"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+9.8%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 -38 · 기 +24 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+20%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.87% (환산) vs 평균 0.53% (보류 4배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": true, "detail": "129,786 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": true, "detail": "0.87% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "60"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 277,401 (현재 271,000)"}]}
{"ts": "2026-10-02T09:52:55.385244+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 132700, "qty": 19, "proceeds": 2516383, "entry_price": 132316, "pnl": 2006, "pnl_pct": 0.29, "hold_from": "2026-08-20T09:14:25.021135+09:00", "reason": "시간손절 — 43일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "109,669 (현재 131,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 166,286"}, {"label": "추세(60일선)", "ok": true, "detail": "92,465"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:52:55.805080+09:00", "side": "BUY", "code": "004370", "name": "농심", "price": 395000, "qty": 9, "cost": 3555533, "path": "pullback", "reason": "눌림목 지정가 419,391 도달", "stop": 372500, "target": 428750, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "394,500 vs 369,633"}, {"label": "정배열(5>60)", "ok": true, "detail": "401,400 / 369,633"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "401,400 / 369,633"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+6.8%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 -3 · 기 +10 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+44%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.36% (환산) vs 평균 0.51% (보류 4배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 440,000"}, {"label": "거래량 급증", "ok": false, "detail": "21,600 (환산) vs 평균 31,191"}, {"label": "회전율 급증", "ok": false, "detail": "0.36% (환산) vs 평균 0.51%"}, {"label": "RSI", "ok": true, "detail": "54"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 419,391 (현재 394,500)"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 2055644.4533983106,
"last_add_price": 132000
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 2440249.8896798776,
"last_add_price": 145300
@@ -53,14 +53,14 @@
"qty": 209,
"entry_price": 13796.315789473685,
"entry_at": "2026-09-03T13:06:31.272281+09:00",
"stop": 18085,
"stop": 18166,
"target": 20306,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,939 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 1448661.5729395074,
"last_add_price": 14370
@@ -76,12 +76,12 @@
"entry_at": "2026-09-14T09:18:44.719793+09:00",
"stop": 35590,
"target": 66491,
"peak": 53100,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1438578.7331247122,
"last_add_price": 47000
@@ -97,12 +97,12 @@
"entry_at": "2026-09-16T13:08:48.759982+09:00",
"stop": 100700,
"target": 213200,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 156,257 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1304118.2847785852,
"last_add_price": 143800
@@ -123,7 +123,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 16990,
"cur_price": 17800,
"tranches": 2,
"tranche_value": 1964912.7448622035,
"last_add_price": 18560
@@ -144,7 +144,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 2900140.3534760317,
"last_add_price": 32450
@@ -165,7 +165,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,386 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 2,
"tranche_value": 4094046.242354855,
"last_add_price": 16390
@@ -186,7 +186,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 39,546 도달",
"cur_price": 38300,
"cur_price": 37150,
"tranches": 1,
"tranche_value": 2342411.5791977677,
"last_add_price": 38750
@@ -202,12 +202,12 @@
"entry_at": "2026-09-29T09:20:56.769258+09:00",
"stop": 11730,
"target": 17600,
"peak": 14200,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 2226895.6330068237,
"last_add_price": 13900
@@ -263,5 +263,5 @@
"004370": "2026-09-29"
},
"created_at": "2026-06-22T09:00:04.885286+09:00",
"updated_at": "2026-10-01T15:28:51.770759+09:00"
"updated_at": "2026-10-02T15:29:00.416180+09:00"
}
@@ -1,28 +1,7 @@
{
"cash": 38154838.27354996,
"cash": 41065208.14854996,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 45,
"entry_price": 133597.77777777778,
"entry_at": "2026-08-19T09:06:24.866386+09:00",
"stop": 115352,
"target": 170090,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 3112377.8236046005,
"last_add_price": 136000
},
"327260": {
"code": "327260",
"name": "RF머트리얼즈",
@@ -32,14 +11,14 @@
"qty": 78,
"entry_price": 34569.230769230766,
"entry_at": "2026-08-20T09:02:20.789589+09:00",
"stop": 24287,
"stop": 50495,
"target": 55133,
"peak": 53100,
"trailing_on": false,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1369462.9055232927,
"last_add_price": 35800
@@ -55,12 +34,12 @@
"entry_at": "2026-09-15T12:26:45.617657+09:00",
"stop": 10568,
"target": 14901,
"peak": 13050,
"peak": 13100,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 11,977 도달",
"cur_price": 12890,
"cur_price": 12830,
"tranches": 2,
"tranche_value": 3213033.799832977,
"last_add_price": 12180
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 296500,
"cur_price": 310500,
"tranches": 1,
"tranche_value": 2696407.517061467,
"last_add_price": 319500
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 419,069 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 5153141.020656248,
"last_add_price": 401000
@@ -123,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 1,238 도달",
"cur_price": 1226,
"cur_price": 1231,
"tranches": 2,
"tranche_value": 2355715.3719631354,
"last_add_price": 1278
@@ -139,12 +118,12 @@
"entry_at": "2026-09-28T09:04:57.303460+09:00",
"stop": 126293,
"target": 236564,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 158,422 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1734111.3114757552,
"last_add_price": 168400
@@ -160,19 +139,40 @@
"entry_at": "2026-09-29T09:20:56.775971+09:00",
"stop": 11908,
"target": 17245,
"peak": 14200,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 3160676.8227413706,
"last_add_price": 13900
},
"024060": {
"code": "024060",
"name": "흥구석유",
"sources": [
"interest"
],
"qty": 250,
"entry_price": 12250,
"entry_at": "2026-10-02T09:48:56.010143+09:00",
"stop": 10600,
"target": 15550,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 12,371 도달",
"cur_price": 12270,
"tranches": 1,
"tranche_value": 3071525.1883742027,
"last_add_price": 12250
}
},
"realized_pnl": -19984420.55700004,
"closed_trades": 51,
"realized_pnl": -20023893.09200004,
"closed_trades": 52,
"wins": 2,
"peak_equity": 102728958.65750001,
"max_drawdown": 0.20665400157251712,
@@ -194,7 +194,7 @@
"086790": "2026-07-28",
"010950": "2026-08-26",
"003680": "2026-08-19",
"161890": "2026-07-30",
"161890": "2026-10-02",
"078930": "2026-09-03",
"090850": "2026-08-04",
"138040": "2026-09-23",
@@ -209,5 +209,5 @@
"034020": "2026-09-29"
},
"created_at": "2026-06-22T09:00:04.885297+09:00",
"updated_at": "2026-10-01T15:28:51.774954+09:00"
"updated_at": "2026-10-02T15:29:00.420249+09:00"
}
@@ -152,3 +152,5 @@
{"ts": "2026-09-29T09:20:56.775974+09:00", "side": "BUY", "code": "077360", "name": "덕산하이메탈", "price": 13480, "qty": 234, "cost": 3154793, "path": "breakout", "reason": "거래량·회전율 동반 전고점 돌파", "stop": 11738, "target": 16963, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "13,380 vs 10,498"}, {"label": "정배열(5>20)", "ok": true, "detail": "11,852 / 10,498"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "11,852 / 9,747"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+35.5%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 -494 · 기 +357 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+40%"}, {"label": "시장 강세", "ok": false, "detail": "약세 — 돌파만 허용"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "3.21% (환산) vs 평균 1.87% (보류 4배↑)"}, {"label": "돌파(전고점)", "ok": true, "detail": "고점 12,590"}, {"label": "거래량 급증", "ok": true, "detail": "1,457,720 (환산) vs 평균 848,026"}, {"label": "회전율 급증", "ok": true, "detail": "3.21% (환산) vs 평균 1.87%"}, {"label": "RSI", "ok": true, "detail": "74"}]}
{"ts": "2026-09-29T09:22:57.718503+09:00", "side": "BUY", "code": "004370", "name": "농심", "price": 401000, "qty": 12, "cost": 4812722, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 372500, "target": 428000, "signals": [{"label": "손절선", "ok": true, "detail": "372,500 (현재 400,500)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 428,000"}, {"label": "추세(20일선)", "ok": true, "detail": "383,250"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +10 · 기 -2"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 400,037"}]}
{"ts": "2026-09-29T12:46:52.755224+09:00", "side": "BUY", "code": "077360", "name": "덕산하이메탈", "price": 13900, "qty": 227, "cost": 3155773, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 11738, "target": 16963, "signals": [{"label": "손절선", "ok": true, "detail": "11,738 (현재 13,930)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 16,963"}, {"label": "추세(20일선)", "ok": true, "detail": "10,525"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -509 · 기 +435"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 13,925"}]}
{"ts": "2026-10-02T09:48:55.593399+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 133000, "qty": 45, "proceeds": 5973329, "entry_price": 133598, "pnl": -39473, "pnl_pct": -0.45, "hold_from": "2026-08-19T09:06:24.866386+09:00", "reason": "시간손절 — 44일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "115,352 (현재 133,100)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 170,090"}, {"label": "추세(20일선)", "ok": true, "detail": "100,220"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:48:56.010159+09:00", "side": "BUY", "code": "024060", "name": "흥구석유", "price": 12250, "qty": 250, "cost": 3062959, "path": "pullback", "reason": "눌림목 지정가 12,371 도달", "stop": 10600, "target": 15550, "signals": [{"label": "추세(20일선 위)", "ok": true, "detail": "12,240 vs 11,850"}, {"label": "정배열(5>20)", "ok": true, "detail": "13,916 / 11,850"}, {"label": "추세 기울기(20일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "13,916 / 11,185"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+8.3%p"}, {"label": "수급(5일 외/기)", "ok": true, "detail": "외 +68 · 기 +1 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "17.31% (환산) vs 평균 29.44% (보류 4배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 17,310"}, {"label": "거래량 급증", "ok": false, "detail": "2,597,100 (환산) vs 평균 4,415,653"}, {"label": "회전율 급증", "ok": false, "detail": "17.31% (환산) vs 평균 29.44%"}, {"label": "RSI", "ok": true, "detail": "51"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 12,371 (현재 12,240)"}]}
@@ -1,28 +1,7 @@
{
"cash": 53569328.236999914,
"cash": 46170035.54799991,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 27,
"entry_price": 132355.55555555556,
"entry_at": "2026-08-20T09:14:25.028236+09:00",
"stop": 114238,
"target": 168590,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 1879557.3308712046,
"last_add_price": 135000
},
"010950": {
"code": "010950",
"name": "S-Oil",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 2119787.0272304374,
"last_add_price": 145300
@@ -60,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 2730942.1302758893,
"last_add_price": 30200
@@ -76,12 +55,12 @@
"entry_at": "2026-09-15T09:04:47.244160+09:00",
"stop": 100700,
"target": 215900,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1028691.8844119626,
"last_add_price": 144600
@@ -92,20 +71,20 @@
"sources": [
"interest"
],
"qty": 25,
"entry_price": 52200,
"qty": 49,
"entry_price": 53718.36734693877,
"entry_at": "2026-09-30T09:22:56.124640+09:00",
"stop": 42293,
"target": 72014,
"peak": 53100,
"stop": 43440,
"target": 74275,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1349832.8421725836,
"last_add_price": 52200
"last_add_price": 55300
},
"077360": {
"code": "077360",
@@ -118,12 +97,12 @@
"entry_at": "2026-09-30T11:16:52.693650+09:00",
"stop": 11538,
"target": 16721,
"peak": 14150,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 1829346.791289097,
"last_add_price": 13500
@@ -155,25 +134,46 @@
"sources": [
"watch"
],
"qty": 1381,
"entry_price": 3840,
"qty": 2713,
"entry_price": 3908.73571691854,
"entry_at": "2026-10-01T11:18:51.641939+09:00",
"stop": 3735,
"target": 4050,
"peak": 3855,
"target": 4256,
"peak": 3980,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 3,947 도달",
"cur_price": 3835,
"tranches": 1,
"cur_price": 3920,
"tranches": 2,
"tranche_value": 5305107.105812495,
"last_add_price": 3840
"last_add_price": 3980
},
"004370": {
"code": "004370",
"name": "농심",
"sources": [
"auto"
],
"qty": 11,
"entry_price": 395000,
"entry_at": "2026-10-02T09:52:55.840244+09:00",
"stop": 372500,
"target": 440000,
"peak": 404000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 410,336 도달",
"cur_price": 403500,
"tranches": 1,
"tranche_value": 4470137.448438662,
"last_add_price": 395000
}
},
"realized_pnl": -16791486.552000083,
"closed_trades": 152,
"wins": 5,
"realized_pnl": -16789709.247000083,
"closed_trades": 153,
"wins": 6,
"peak_equity": 100266527.41749999,
"max_drawdown": 0.16501361602568418,
"last_exit": {
@@ -202,7 +202,7 @@
"003680": "2026-09-09",
"010950": "2026-08-26",
"138040": "2026-09-30",
"161890": "2026-07-31",
"161890": "2026-10-02",
"078930": "2026-09-03",
"475150": "2026-08-03",
"252990": "2026-08-21",
@@ -213,5 +213,5 @@
"004370": "2026-10-01"
},
"created_at": "2026-06-22T09:00:04.885305+09:00",
"updated_at": "2026-10-01T15:28:51.778579+09:00"
"updated_at": "2026-10-02T15:29:00.423922+09:00"
}
@@ -347,3 +347,7 @@
{"ts": "2026-10-01T11:14:54.384810+09:00", "side": "BUY", "code": "042500", "name": "링네트", "price": 4210, "qty": 1260, "cost": 5305396, "path": "pullback", "reason": "눌림목 지정가 4,227 도달", "stop": 4205, "target": 4220, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "4,200 vs 4,186"}, {"label": "정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "4,377 / 4,186"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.9%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 -31 · 기 +5 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.38% (환산) vs 평균 0.55% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,590"}, {"label": "거래량 급증", "ok": false, "detail": "84,245 (환산) vs 평균 122,940"}, {"label": "회전율 급증", "ok": false, "detail": "0.38% (환산) vs 평균 0.55%"}, {"label": "RSI", "ok": true, "detail": "44"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 4,227 (현재 4,200)"}]}
{"ts": "2026-10-01T11:18:51.641716+09:00", "side": "SELL", "code": "042500", "name": "링네트", "price": 4190, "qty": 1260, "proceeds": 5269105, "entry_price": 4210, "pnl": -36291, "pnl_pct": -0.48, "hold_from": "2026-10-01T11:14:54.384808+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "4,205 (현재 4,195)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,220"}, {"label": "추세(60일선)", "ok": true, "detail": "4,186"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -31 · 기 +5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 4,288"}]}
{"ts": "2026-10-01T11:18:51.641941+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3840, "qty": 1381, "cost": 5303835, "path": "pullback", "reason": "눌림목 지정가 3,947 도달", "stop": 3735, "target": 4050, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "3,835 vs 3,434"}, {"label": "정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "3,935 / 3,434"}, {"label": "상대강도(시장대비)", "ok": false, "detail": "-10.6%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 +17 · 기 -8 (천주)"}, {"label": "애널", "ok": null, "detail": "데이터 없음(통과)"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.23% (환산) vs 평균 0.59% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 4,550"}, {"label": "거래량 급증", "ok": false, "detail": "156,177 (환산) vs 평균 402,216"}, {"label": "회전율 급증", "ok": false, "detail": "0.23% (환산) vs 평균 0.59%"}, {"label": "RSI", "ok": true, "detail": "49"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 3,947 (현재 3,835)"}]}
{"ts": "2026-10-02T09:12:54.954376+09:00", "side": "BUY", "code": "327260", "name": "RF머트리얼즈", "price": 55300, "qty": 24, "cost": 1327399, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 42293, "target": 72014, "signals": [{"label": "손절선", "ok": true, "detail": "42,293 (현재 55,200)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 72,014"}, {"label": "추세(60일선)", "ok": true, "detail": "30,078"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -93 · 기 +83"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 54,770"}]}
{"ts": "2026-10-02T09:52:55.839648+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 132700, "qty": 27, "proceeds": 3575913, "entry_price": 132356, "pnl": 1777, "pnl_pct": 0.26, "hold_from": "2026-08-20T09:14:25.028236+09:00", "reason": "시간손절 — 43일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "114,238 (현재 131,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 168,590"}, {"label": "추세(60일선)", "ok": true, "detail": "92,465"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:52:55.840247+09:00", "side": "BUY", "code": "004370", "name": "농심", "price": 395000, "qty": 11, "cost": 4345652, "path": "pullback", "reason": "눌림목 지정가 410,336 도달", "stop": 372500, "target": 440000, "signals": [{"label": "추세(60일선 위)", "ok": true, "detail": "394,500 vs 369,633"}, {"label": "정배열(5>60)", "ok": true, "detail": "401,400 / 369,633"}, {"label": "추세 기울기(60일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "401,400 / 369,633"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+6.8%p"}, {"label": "수급(10일 외/기)", "ok": true, "detail": "외 -3 · 기 +10 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+44%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "어닝 서프라이즈", "ok": true, "detail": "+ ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.36% (환산) vs 평균 0.51% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 440,000"}, {"label": "거래량 급증", "ok": false, "detail": "21,600 (환산) vs 평균 31,191"}, {"label": "회전율 급증", "ok": false, "detail": "0.36% (환산) vs 평균 0.51%"}, {"label": "RSI", "ok": true, "detail": "54"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 410,336 (현재 394,500)"}]}
{"ts": "2026-10-02T10:24:54.560457+09:00", "side": "BUY", "code": "099440", "name": "스맥", "price": 3980, "qty": 1332, "cost": 5302155, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 3735, "target": 4050, "signals": [{"label": "손절선", "ok": true, "detail": "3,735 (현재 3,975)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 4,050"}, {"label": "추세(60일선)", "ok": true, "detail": "3,437"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +5 · 기 -5"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 3,958"}]}
@@ -1,5 +1,5 @@
{
"cash": 38762314.689499915,
"cash": 36429364.799499914,
"initial": 100000000,
"positions": {
"327260": {
@@ -11,14 +11,14 @@
"qty": 83,
"entry_price": 34556.6265060241,
"entry_at": "2026-08-20T09:02:20.801043+09:00",
"stop": 46039,
"stop": 50495,
"target": 53064,
"peak": 53100,
"peak": 57200,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 35,709 도달",
"cur_price": 49300,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1449597.1229143601,
"last_add_price": 35800
@@ -34,12 +34,12 @@
"entry_at": "2026-09-14T09:04:44.419980+09:00",
"stop": 130960,
"target": 180407,
"peak": 164600,
"peak": 166700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 3502770.0196038075,
"last_add_price": 150200
@@ -55,12 +55,12 @@
"entry_at": "2026-09-16T13:48:44.348152+09:00",
"stop": 13195,
"target": 18788,
"peak": 15870,
"peak": 16450,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 15710,
"cur_price": 16410,
"tranches": 2,
"tranche_value": 3145303.58774031,
"last_add_price": 15350
@@ -71,20 +71,20 @@
"sources": [
"auto"
],
"qty": 114,
"entry_price": 20400,
"qty": 223,
"entry_price": 20888.789237668163,
"entry_at": "2026-09-18T09:14:52.782229+09:00",
"stop": 16923,
"target": 27353,
"peak": 21450,
"stop": 17509,
"target": 27649,
"peak": 22350,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 21,369 도달",
"cur_price": 21450,
"tranches": 1,
"cur_price": 21950,
"tranches": 2,
"tranche_value": 2340657.5506936996,
"last_add_price": 20400
"last_add_price": 21400
},
"300720": {
"code": "300720",
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,388 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 1,
"tranche_value": 4974765.724749995,
"last_add_price": 16150
@@ -118,12 +118,12 @@
"entry_at": "2026-09-23T11:04:56.063347+09:00",
"stop": 126883,
"target": 227206,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 157,922 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1791140.9751977646,
"last_add_price": 165300
@@ -139,12 +139,12 @@
"entry_at": "2026-09-28T09:12:59.779425+09:00",
"stop": 74237,
"target": 111835,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 2765643.6783186207,
"last_add_price": 88700
@@ -160,12 +160,12 @@
"entry_at": "2026-09-29T09:20:56.786635+09:00",
"stop": 12086,
"target": 16889,
"peak": 14200,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 3407878.85259177,
"last_add_price": 13900
@@ -213,5 +213,5 @@
"034020": "2026-09-29"
},
"created_at": "2026-06-22T09:00:04.885314+09:00",
"updated_at": "2026-10-01T15:28:51.782119+09:00"
"updated_at": "2026-10-02T15:29:00.427411+09:00"
}
@@ -188,3 +188,4 @@
{"ts": "2026-09-29T12:46:52.766313+09:00", "side": "BUY", "code": "077360", "name": "덕산하이메탈", "price": 13900, "qty": 245, "cost": 3406011, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 11912, "target": 16615, "signals": [{"label": "손절선", "ok": true, "detail": "11,912 (현재 13,930)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 16,615"}, {"label": "추세(20일선)", "ok": true, "detail": "10,525"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -509 · 기 +435"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 13,925"}]}
{"ts": "2026-09-30T09:42:52.639221+09:00", "side": "BUY", "code": "093370", "name": "후성", "price": 15350, "qty": 204, "cost": 3131870, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 12922, "target": 18496, "signals": [{"label": "손절선", "ok": true, "detail": "12,922 (현재 15,460)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 18,496"}, {"label": "추세(20일선)", "ok": true, "detail": "12,844"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +414 · 기 -708"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 15,298"}]}
{"ts": "2026-10-01T11:18:51.678126+09:00", "side": "BUY", "code": "440110", "name": "파두", "price": 88700, "qty": 31, "cost": 2750112, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 72714, "target": 109271, "signals": [{"label": "손절선", "ok": true, "detail": "72,714 (현재 88,400)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 109,271"}, {"label": "추세(20일선)", "ok": true, "detail": "67,165"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -336 · 기 +625"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 88,381"}]}
{"ts": "2026-10-02T09:01:38.843323+09:00", "side": "BUY", "code": "372170", "name": "윤성에프앤씨", "price": 21400, "qty": 109, "cost": 2332950, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 16923, "target": 27353, "signals": [{"label": "손절선", "ok": true, "detail": "16,923 (현재 21,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 27,353"}, {"label": "추세(20일선)", "ok": true, "detail": "16,840"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +2 · 기 +0"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 21,339"}]}
@@ -1,28 +1,7 @@
{
"cash": 29303934.339499958,
"cash": 30027415.519499958,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 71,
"entry_price": 133264.78873239437,
"entry_at": "2026-08-19T09:16:19.511527+09:00",
"stop": 119602,
"target": 167422,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 4806997.344940743,
"last_add_price": 135800
},
"138040": {
"code": "138040",
"name": "메리츠금융지주",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 126300,
"cur_price": 128800,
"tranches": 2,
"tranche_value": 6651621.94570833,
"last_add_price": 123300
@@ -53,14 +32,14 @@
"qty": 414,
"entry_price": 13298.985507246376,
"entry_at": "2026-09-08T09:10:37.312187+09:00",
"stop": 18085,
"stop": 18166,
"target": 19066,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 14,250 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 2756420.9418846015,
"last_add_price": 13690
@@ -76,12 +55,12 @@
"entry_at": "2026-09-28T09:18:59.790401+09:00",
"stop": 77495,
"target": 114649,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 4179621.8180606444,
"last_add_price": 90000
@@ -102,7 +81,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 211000,
"cur_price": 216000,
"tranches": 1,
"tranche_value": 5941985.856035156,
"last_add_price": 216500
@@ -113,24 +92,45 @@
"sources": [
"auto"
],
"qty": 18,
"entry_price": 174800,
"qty": 35,
"entry_price": 179462.85714285713,
"entry_at": "2026-10-01T09:58:51.960375+09:00",
"stop": 148068,
"target": 241630,
"peak": 183800,
"stop": 152838,
"target": 246025,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 183200,
"tranches": 1,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 3220248.263306289,
"last_add_price": 174800
"last_add_price": 184400
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 21,
"entry_price": 265000,
"entry_at": "2026-10-02T09:48:56.577921+09:00",
"stop": 242486,
"target": 321285,
"peak": 271000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 279,992 도달",
"cur_price": 271000,
"tranches": 1,
"tranche_value": 5750451.613834028,
"last_add_price": 265000
}
},
"realized_pnl": -25317979.968500037,
"closed_trades": 47,
"realized_pnl": -25356613.088500038,
"closed_trades": 48,
"wins": 3,
"peak_equity": 100204129.27299997,
"max_drawdown": 0.2284917488392297,
@@ -163,8 +163,9 @@
"257720": "2026-09-08",
"003550": "2026-09-11",
"372170": "2026-09-28",
"051900": "2026-09-29"
"051900": "2026-09-29",
"161890": "2026-10-02"
},
"created_at": "2026-06-22T09:00:04.885323+09:00",
"updated_at": "2026-10-01T15:28:51.785421+09:00"
"updated_at": "2026-10-02T15:29:00.430680+09:00"
}
@@ -131,3 +131,6 @@
{"ts": "2026-10-01T09:58:51.541150+09:00", "side": "SELL", "code": "055550", "name": "신한지주", "price": 103600, "qty": 58, "proceeds": 5997083, "entry_price": 112200, "pnl": -511493, "pnl_pct": -7.66, "hold_from": "2026-09-11T11:28:40.958692+09:00", "reason": "손절", "partial": false, "signals": [{"label": "손절선", "ok": false, "detail": "103,898 (현재 103,600)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 132,955"}, {"label": "추세(10일선)", "ok": true, "detail": "99,320"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -774 · 기 +485"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 114,767"}]}
{"ts": "2026-10-01T09:58:51.960391+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 174800, "qty": 18, "cost": 3146872, "path": "immediate", "reason": "조건 충족 — 즉시매수(눌림 안 기다림)", "stop": 148068, "target": 241630, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "175,100 vs 155,090"}, {"label": "정배열(5>10)", "ok": true, "detail": "175,660 / 155,090"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "175,660 / 100,035"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+43.1%p"}, {"label": "수급(3일 외/기)", "ok": true, "detail": "외 +114 · 기 +48 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+21%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "5.86% (환산) vs 평균 3.06% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 202,500"}, {"label": "거래량 급증", "ok": true, "detail": "1,134,920 (환산) vs 평균 591,925"}, {"label": "회전율 급증", "ok": true, "detail": "5.86% (환산) vs 평균 3.06%"}, {"label": "RSI", "ok": true, "detail": "71"}, {"label": "눌림목 도달", "ok": false, "detail": "지정가 162,743 (현재 175,100)"}]}
{"ts": "2026-10-01T14:52:51.783631+09:00", "side": "BUY", "code": "440110", "name": "파두", "price": 90000, "qty": 46, "cost": 4140621, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 76049, "target": 111928, "signals": [{"label": "손절선", "ok": true, "detail": "76,049 (현재 89,900)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 111,928"}, {"label": "추세(10일선)", "ok": true, "detail": "68,130"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -349 · 기 +672"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 89,838"}]}
{"ts": "2026-10-02T09:02:52.342167+09:00", "side": "BUY", "code": "095610", "name": "테스", "price": 184400, "qty": 17, "cost": 3135270, "path": "add", "reason": "추격매수 — 2/2차 (추세 지속)", "stop": 148068, "target": 241630, "signals": [{"label": "손절선", "ok": true, "detail": "148,068 (현재 184,700)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 241,630"}, {"label": "추세(10일선)", "ok": true, "detail": "156,050"}, {"label": "수급(외/기)", "ok": true, "detail": "외 -47 · 기 +210"}, {"label": "분할(1/2)", "ok": null, "detail": "추가 트리거 183,675"}]}
{"ts": "2026-10-02T09:48:56.042433+09:00", "side": "SELL", "code": "161890", "name": "한국콜마", "price": 133000, "qty": 71, "proceeds": 9424586, "entry_price": 133265, "pnl": -38633, "pnl_pct": -0.2, "hold_from": "2026-08-19T09:16:19.511527+09:00", "reason": "시간손절 — 44일 보유·진전 없음(자본 회전)", "partial": false, "signals": [{"label": "손절선", "ok": true, "detail": "119,602 (현재 133,100)"}, {"label": "목표/트레일링", "ok": null, "detail": "목표 167,422"}, {"label": "추세(10일선)", "ok": true, "detail": "112,370"}, {"label": "수급(외/기)", "ok": true, "detail": "외 +30 · 기 -15"}, {"label": "분할(2/2)", "ok": null, "detail": "추가 종료"}]}
{"ts": "2026-10-02T09:48:56.577938+09:00", "side": "BUY", "code": "051900", "name": "LG생활건강", "price": 265000, "qty": 21, "cost": 5565835, "path": "pullback", "reason": "눌림목 지정가 279,992 도달", "stop": 242486, "target": 321285, "signals": [{"label": "추세(10일선 위)", "ok": true, "detail": "264,500 vs 256,150"}, {"label": "정배열(5>10)", "ok": true, "detail": "266,200 / 256,150"}, {"label": "추세 기울기(10일선↑)", "ok": true, "detail": "우상향"}, {"label": "중기 정배열(5>60)", "ok": true, "detail": "266,200 / 248,842"}, {"label": "상대강도(시장대비)", "ok": true, "detail": "+1.7%p"}, {"label": "수급(3일 외/기)", "ok": true, "detail": "외 -47 · 기 +23 (천주)"}, {"label": "상승여력", "ok": true, "detail": "+25%"}, {"label": "목표가 리비전", "ok": true, "detail": "상향 ➕"}, {"label": "시장 강세", "ok": true, "detail": "강세"}, {"label": "과열 아님(회전율)", "ok": true, "detail": "0.83% (환산) vs 평균 0.53% (보류 3배↑)"}, {"label": "돌파(전고점)", "ok": false, "detail": "고점 314,500"}, {"label": "거래량 급증", "ok": true, "detail": "124,453 (환산) vs 평균 78,860"}, {"label": "회전율 급증", "ok": true, "detail": "0.83% (환산) vs 평균 0.53%"}, {"label": "RSI", "ok": true, "detail": "57"}, {"label": "눌림목 도달", "ok": true, "detail": "지정가 279,992 (현재 264,500)"}]}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 99,600 도달",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 3798555.0123003162,
"last_add_price": 101000
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 26,600 도달",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 2,
"tranche_value": 3075924.51097547,
"last_add_price": 26850
@@ -55,12 +55,12 @@
"entry_at": "2026-09-04T09:08:34.212964+09:00",
"stop": 113765,
"target": 243596,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 177,000 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1033801.29869291,
"last_add_price": 155000
@@ -81,7 +81,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,940 도달",
"cur_price": 6340,
"cur_price": 6430,
"tranches": 2,
"tranche_value": 2849364.796820624,
"last_add_price": 5780
@@ -97,12 +97,12 @@
"entry_at": "2026-09-30T11:38:54.131569+09:00",
"stop": 10600,
"target": 16040,
"peak": 12040,
"peak": 12410,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 13,600 도달",
"cur_price": 11950,
"cur_price": 12270,
"tranches": 1,
"tranche_value": 2229783.31539055,
"last_add_price": 11960
@@ -181,5 +181,5 @@
"068270": "2026-10-01"
},
"created_at": "2026-06-22T09:00:04.885332+09:00",
"updated_at": "2026-10-01T15:28:51.797021+09:00"
"updated_at": "2026-10-02T15:29:00.442260+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 99,600 도달",
"cur_price": 103500,
"cur_price": 104700,
"tranches": 2,
"tranche_value": 6198757.029677045,
"last_add_price": 101000
@@ -39,7 +39,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"cur_price": 136600,
"tranches": 2,
"tranche_value": 3936709.9183330103,
"last_add_price": 133800
@@ -60,7 +60,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 437,500 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 6807620.85033333,
"last_add_price": 398500
@@ -76,12 +76,12 @@
"entry_at": "2026-09-29T09:28:52.241075+09:00",
"stop": 12382,
"target": 17719,
"peak": 14200,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 4246814.260452085,
"last_add_price": 13950
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 5,630 도달",
"cur_price": 5270,
"cur_price": 5310,
"tranches": 1,
"tranche_value": 4701622.487345789,
"last_add_price": 5470
@@ -118,12 +118,12 @@
"entry_at": "2026-10-01T09:58:52.384688+09:00",
"stop": 77567,
"target": 120114,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 3395224.0576983336,
"last_add_price": 90000
@@ -133,7 +133,7 @@
"closed_trades": 52,
"wins": 2,
"peak_equity": 100133491.83,
"max_drawdown": 0.1951075970682049,
"max_drawdown": 0.20232016388077684,
"last_exit": {
"033640": "2026-06-23",
"005930": "2026-06-23",
@@ -167,5 +167,5 @@
"257720": "2026-10-01"
},
"created_at": "2026-06-22T09:00:04.885342+09:00",
"updated_at": "2026-10-01T15:28:51.799988+09:00"
"updated_at": "2026-10-02T15:29:00.445200+09:00"
}
@@ -18,7 +18,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 123,300 도달",
"cur_price": 126300,
"cur_price": 128800,
"tranches": 2,
"tranche_value": 7954457.869899998,
"last_add_price": 123300
@@ -32,14 +32,14 @@
"qty": 483,
"entry_price": 13356.95652173913,
"entry_at": "2026-09-08T09:18:33.326196+09:00",
"stop": 18085,
"stop": 18166,
"target": 19355,
"peak": 20700,
"trailing_on": true,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 15,500 도달",
"cur_price": 20000,
"cur_price": 19790,
"tranches": 2,
"tranche_value": 3232197.24058738,
"last_add_price": 13790
@@ -55,12 +55,12 @@
"entry_at": "2026-09-28T09:04:57.339276+09:00",
"stop": 139021,
"target": 234589,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 177,000 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 3287927.770655406,
"last_add_price": 168400
@@ -76,12 +76,12 @@
"entry_at": "2026-09-30T09:38:52.304644+09:00",
"stop": 78332,
"target": 114872,
"peak": 90100,
"peak": 90600,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 89400,
"cur_price": 86000,
"tranches": 2,
"tranche_value": 4876026.713150114,
"last_add_price": 89300
@@ -102,7 +102,7 @@
"scaled_out": false,
"entry_path": "immediate",
"entry_reason": "조건 충족 — 즉시매수(눌림 안 기다림)",
"cur_price": 133400,
"cur_price": 132100,
"tranches": 1,
"tranche_value": 6093842.908866839,
"last_add_price": 134500
@@ -142,5 +142,5 @@
"088350": "2026-09-30"
},
"created_at": "2026-06-22T09:00:04.885351+09:00",
"updated_at": "2026-10-01T15:28:51.809733+09:00"
"updated_at": "2026-10-02T15:29:00.454884+09:00"
}
@@ -1,28 +1,7 @@
{
"cash": 51017537.740499966,
"cash": 50298760.125499964,
"initial": 100000000,
"positions": {
"161890": {
"code": "161890",
"name": "한국콜마",
"sources": [
"auto"
],
"qty": 23,
"entry_price": 132647.8260869565,
"entry_at": "2026-08-20T09:18:26.143296+09:00",
"stop": 109930,
"target": 173540,
"peak": 164700,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 146500,
"tranches": 2,
"tranche_value": 1565704.8516703448,
"last_add_price": 135100
},
"010950": {
"code": "010950",
"name": "S-Oil",
@@ -39,7 +18,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 148800,
"cur_price": 166200,
"tranches": 2,
"tranche_value": 1794750.344984049,
"last_add_price": 145300
@@ -55,12 +34,12 @@
"entry_at": "2026-09-15T09:04:47.290375+09:00",
"stop": 100700,
"target": 208220,
"peak": 183800,
"peak": 187400,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 146,218 도달",
"cur_price": 183200,
"cur_price": 177500,
"tranches": 2,
"tranche_value": 1068670.3914512638,
"last_add_price": 144600
@@ -81,7 +60,7 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 21950,
"cur_price": 21800,
"tranches": 2,
"tranche_value": 1490686.1619100037,
"last_add_price": 25000
@@ -97,12 +76,12 @@
"entry_at": "2026-09-17T09:02:48.284088+09:00",
"stop": 4035,
"target": 6652,
"peak": 5710,
"peak": 5730,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 4,889 도달",
"cur_price": 5440,
"cur_price": 5590,
"tranches": 2,
"tranche_value": 1625998.4041680093,
"last_add_price": 5140
@@ -123,7 +102,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 409,854 도달",
"cur_price": 400500,
"cur_price": 403500,
"tranches": 2,
"tranche_value": 4397334.131474998,
"last_add_price": 402500
@@ -139,12 +118,12 @@
"entry_at": "2026-09-23T09:38:54.126681+09:00",
"stop": 10973,
"target": 16934,
"peak": 14200,
"peak": 14560,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 14070,
"cur_price": 14040,
"tranches": 2,
"tranche_value": 1595334.1017781345,
"last_add_price": 13310
@@ -165,7 +144,7 @@
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 16,104 도달",
"cur_price": 16080,
"cur_price": 16050,
"tranches": 2,
"tranche_value": 3005604.6167290416,
"last_add_price": 16390
@@ -176,20 +155,20 @@
"sources": [
"interest"
],
"qty": 21,
"entry_price": 52200,
"qty": 41,
"entry_price": 53712.19512195122,
"entry_at": "2026-09-30T09:22:56.160672+09:00",
"stop": 39816,
"target": 74491,
"peak": 53100,
"stop": 40864,
"target": 76839,
"peak": 57200,
"trailing_on": false,
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 49300,
"tranches": 1,
"cur_price": 52100,
"tranches": 2,
"tranche_value": 1116737.5764154792,
"last_add_price": 52200
"last_add_price": 55300
},
"003490": {
"code": "003490",
@@ -207,14 +186,35 @@
"scaled_out": false,
"entry_path": "breakout",
"entry_reason": "거래량·회전율 동반 전고점 돌파",
"cur_price": 31100,
"cur_price": 30450,
"tranches": 1,
"tranche_value": 2129388.805508489,
"last_add_price": 31850
},
"051900": {
"code": "051900",
"name": "LG생활건강",
"sources": [
"auto"
],
"qty": 10,
"entry_price": 264000,
"entry_at": "2026-10-02T09:50:53.261098+09:00",
"stop": 238500,
"target": 309900,
"peak": 271000,
"trailing_on": false,
"scaled_out": false,
"entry_path": "pullback",
"entry_reason": "눌림목 지정가 269,486 도달",
"cur_price": 271000,
"tranches": 1,
"tranche_value": 2733708.853780234,
"last_add_price": 264000
}
},
"realized_pnl": -13555078.94900007,
"closed_trades": 164,
"realized_pnl": -13578652.29900007,
"closed_trades": 165,
"wins": 6,
"peak_equity": 100186518.14249998,
"max_drawdown": 0.12935489871318767,
@@ -243,7 +243,7 @@
"010950": "2026-08-26",
"105560": "2026-07-29",
"086790": "2026-09-23",
"161890": "2026-07-31",
"161890": "2026-10-02",
"078930": "2026-09-03",
"138040": "2026-09-08",
"252990": "2026-08-25",
@@ -255,5 +255,5 @@
"047770": "2026-09-30"
},
"created_at": "2026-06-22T09:00:04.885359+09:00",
"updated_at": "2026-10-01T15:28:51.812140+09:00"
"updated_at": "2026-10-02T15:29:00.457263+09:00"
}

Some files were not shown because too many files have changed in this diff Show More