거래 이력 (필터/검색)
Trades 페이지 본문. 청산된 거래의 통계와 행 단위 이력을 보여줍니다.
📸 Trades 페이지 본문 (추후 자동 캡처 예정)
통계 카드 (상단)
| 카드 | 의미 |
|---|---|
| Total Trades | 전체 청산 거래 수 |
| Win Rate | 수익 거래 비율 (%) |
| Profit Factor | 총 이익 / |
| Total P&L | 누적 손익 (양수 emerald, 음수 rose) |
자산군 필터에 따라 카드 값이 자동 재계산됩니다.
P&L 분포 차트 (TradeDistribution)
각 거래의 P&L%를 히스토그램으로 그립니다.
- 양수 bin: emerald
- 음수 bin: rose
- 빈도가 가장 높은 구간 강조
승률은 높지만 분포가 한쪽으로 치우치면 (예: 손실 한 건이 수익 다수를 상쇄) profit factor 카드가 1 미만으로 떨어지는 것을 확인할 수 있습니다.
거래 테이블
| 컬럼 | 의미 |
|---|---|
| Asset | 자산군 배지 |
| Symbol | 티커 |
| Side | BUY (emerald) / SELL (rose) |
| Entry | 진입가 |
| Exit | 청산가 |
| Size | 수량 |
| P&L | 손익 (절대값) |
| P&L % | 손익률 |
| Strategy | 전략 이름 |
| Duration | 진입~청산 소요 시간 |
페이지네이션
| 컨트롤 | 동작 |
|---|---|
| Previous | page-- (1 미만 불가) |
| Page n | 현재 페이지 표시 |
| Next | page++ (마지막 페이지에서 비활성) |
20건이 채워지지 않으면 Next 버튼이 자동 비활성화됩니다.
API 호출
curl -s -H "Authorization: Bearer $TOKEN" \
"http://localhost:8000/api/trades?page=1&limit=20&asset_class=crypto"
응답:
[
{
"id": "tr_9c1e",
"symbol": "BTC/USDT",
"side": "BUY",
"entry_price": 67000,
"exit_price": 68500,
"size": 0.05,
"pnl": 75,
"pnl_pct": 2.24,
"strategy": "momentum",
"duration": "2h 14m",
"asset_class": "crypto",
"currency": "USDT"
}
]
자주 묻는 질문
Q. 검색창은 어디에 있나요?
A. 현재는 자산군 필터로만 분류 가능합니다. 심볼/전략 검색은 후속 작업입니다.
Q. CSV 내보내기 기능?
A. UI에서는 미지원. GET /api/trades?limit=10000로 직접 받아 jq 등으로 변환하세요.
Q. duration이 0초로 표시되는 거래는 뭔가요?
A. 동일 candle 안에서 entry/exit가 모두 발생한 scalping입니다. timeframe을 더 작게 설정하면 정확한 duration이 기록됩니다.