티스토리 뷰
Claude Haiku가 월 640원에 매매를 도와준다
MVP 봇이 돌아가기 시작하자 바로 느낀 게 있었다. 시장 상태를 MA 크로스오버 하나로 판단하는 건 너무 단순하다. 뉴스가 터지면? 거래량이 갑자기 폭증하면? 사람이라면 "이건 좀 이상한데" 하고 매매를 멈출 텐데, 봇은 그런 맥락을 전혀 모른다. AI를 붙여보기로 했다.
왜 Claude Haiku인가
GPT-4는 비싸다. Claude Opus도 비싸다. 하지만 이 봇에게 필요한 건 논문을 쓰는 능력이 아니라 "지금 시장 분위기 어때?"에 대한 빠른 판단이다. Claude Haiku는 이 용도에 딱이었다.
- 응답 속도가 빠르다 — 1분 틱 안에 충분히 처리 가능
- 가격이 압도적으로 싸다 — input $0.25/M tokens, output $1.25/M tokens
- 시장 상태 분류 정도는 충분히 해낸다
실제로 한 달 운영하면서 API 비용을 계산해봤다. 1분마다 호출하되, 매번 하는 건 아니고 매수 시그널이 발생했을 때만 AI 분석을 요청한다. 하루 평균 15~20회 호출, 한 달이면 약 640원. 커피 한 잔 값도 안 된다.
AI 시장 분석 파이프라인
AI에게 넘기는 데이터는 이렇게 구성했다.
analysis_prompt = f"""
현재 BTC/KRW 시장 데이터:
- 현재가: {price:,}원 (24h 변동: {change_24h:+.2f}%)
- RSI(14): {rsi:.1f}
- 볼린저밴드: 상단 {bb_upper:,} / 중단 {bb_mid:,} / 하단 {bb_lower:,}
- 거래량 변화: 전일 대비 {vol_change:+.1f}%
- MA 배열: {ma_arrangement}
시장 상태를 BULLISH / BEARISH / SIDEWAYS 중 하나로 판단하고,
확신도(0~100)와 근거를 한 줄로 제공해.
"""
프롬프트 엔지니어링에서 가장 중요했던 건 출력 형식을 고정하는 것이었다. JSON으로 응답하게 하고, 파싱에 실패하면 기본값(SIDEWAYS)으로 폴백한다. AI가 가끔 형식을 안 지키는 건 피할 수 없으니까.
AI 파라미터 튜닝
더 재밌는 건 파라미터 자동 튜닝이다. 매일 자정 정산 시, 최근 7일 매매 기록을 AI에게 넘기고 K값과 손절률 조정을 제안받는다.
def ai_tune_params(recent_trades, current_params):
# 최근 7일 매매 요약: 승률, 평균 수익률, 최대 손실 등
summary = summarize_trades(recent_trades)
response = claude.messages.create(
model="claude-3-haiku-20240307",
max_tokens=200,
messages=[{"role": "user", "content": build_tuning_prompt(summary, current_params)}]
)
new_params = parse_params(response)
# 안전 범위 내에서만 적용 (K: 0.3~0.7, 손절: -2%~-5%)
return clamp_params(new_params)
핵심은 안전 범위 제한이다. AI가 뭘 제안하든 K값은 0.3~0.7, 손절률은 -2%~-5% 범위를 벗어나지 못한다. AI를 신뢰하되, 맹신하지 않는 구조다.
효과가 있었나?
솔직히 말하면, AI 분석이 드라마틱한 수익률 개선을 가져다주진 않았다. 하지만 확실히 도움이 된 부분이 있다.
- 급변하는 시장에서 매수를 막아준 횟수가 꽤 됐다. RSI가 과매수인데 거래량도 비정상적으로 높을 때, AI가 BEARISH 판정을 내려서 진입을 안 한 케이스.
- 파라미터 튜닝이 수동 조정보다 일관성이 있었다. 사람은 최근 손실에 과민 반응하는데, AI는 7일 데이터를 차분하게 본다.
월 640원치 AI가 "완벽한 트레이더"가 되어주진 않는다. 하지만 "추가 필터 하나"로는 충분하다. 그리고 이 비용이면 실험하지 않을 이유가 없다.
다음 글에서는 현실을 마주한 이야기를 한다. 초기 승률 22%라는 처참한 성적표를 받아들고, 멀티코인 지원과 전략 진화로 개선해나간 과정이다.
👉 다음 글 보러가기
'CryptoBot' 카테고리의 다른 글
| 실전 투입하자마자 터진 버그 6개 — 테스트에서 못 잡는 것들 (0) | 2026.04.13 |
|---|---|
| 실전 운영에서 터진 것들 — 리스크 관리와 리팩토링 (0) | 2026.04.11 |
| FastAPI + React로 봇 관리 대시보드 만들기 (0) | 2026.04.10 |
| 승률 22%에서 배운 것 — 멀티코인 + 전략 진화 (0) | 2026.04.09 |
| 코인 자동매매 봇, 처음부터 만들기 — Python 하나로 MVP 완성 (2) | 2026.04.05 |
- Total
- Today
- Yesterday
- jdbc
- 5중검증
- P0P4우선순위
- 일일주간월간스케줄러
- 코인별전략배정
- Page_DownPage_DownPage_Down
- CryptoBot
- DataFramebool
- 코드자체감사
- LLM파라미터머지
- 일경계처리
- BOJ #JS
- 수수료슬리피지
- 메이저화이트리스트
- LLM비활성결정
- AnthropicCaching
- CDC
- kafka connect
- Haiku4096토큰
- 트레일링스탑버그
- LLM비용오차
- 코인별손익분석
- SlidingWindowTTL
- Kafka
- LLM동적호출
- 한달운영진단
- 데모모드
- 데이터엔지니어링
- 비용80%절감
- Telegram알림
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |