AI한테 '골든크로스 전략 만들어줘'라고 시켰더니 — 코드가 나왔다
AI한테 "골든크로스 전략 만들어줘"라고 시켰더니 — 코드가 나왔다
"이 전략이 과거에 통했을까?" — 확인하고 싶은데 코드를 못 짜요
주식 투자하면서 이런 생각 해본 적 있지 않나요?
"20일 이동평균선이 60일선을 돌파하면(골든크로스) 사고, 반대로 되면(데드크로스) 팔면 수익이 날까?"
이걸 확인하려면 과거 데이터로 시뮬레이션(백테스트)을 돌려봐야 하는데, 그러려면 코드를 짤 줄 알아야 해요. Python으로 데이터 불러오고, 이동평균 계산하고, 매수/매도 시점 찍고, 수익률 계산하고...
비개발자한테는 벽이었어요. 그래서 AI한테 시켰습니다.
"골든크로스 전략 만들어줘" — 첫 시도
골든크로스 전략 만들어줘
AI가 코드를 만들어주긴 했는데, 제 시스템의 구조를 모르니까 독립적인 스크립트가 나왔어요. 기존 데이터 파이프라인과 안 맞고, 백테스트 엔진과도 호환이 안 되고. 따로 노는 코드.
프롬프트를 바꿨더니 — 시스템에 딱 맞는 전략이 나왔다
당신은 퀀트 전략 개발자입니다.
[시스템 구조]
- 백테스트 엔진: vectorbt 기반
- 전략 파일 위치: src/backtest/strategies/
- 전략 클래스 규격:
- generate_signals(prices) → buy_signals, sell_signals (boolean Series)
- get_params() → dict (파라미터 기본값)
[전략 설명]
골든크로스 전략:
- 20일 이동평균이 60일 이동평균을 상향 돌파하면 매수
- 반대로 하향 돌파하면 매도
- RSI가 70 이상이면 매수 시그널 무시 (과매수 필터)
[요구사항]
- 위 클래스 규격에 맞게 코드 생성
- 파라미터(단기/장기 이동평균 기간, RSI 임계값)를 조절 가능하게
- 백테스트 실행 가능한 상태로 만들어줘
| 비교 | "만들어줘" | 바꾼 프롬프트 |
|---|---|---|
| 역할 부여 | 없음 | "퀀트 전략 개발자" |
| 시스템 구조 | 없음 | 클래스 규격, 파일 위치 |
| 전략 설명 | 한 줄 | 매수/매도 조건 + RSI 필터 |
| 파라미터 | 없음 | 조절 가능하게 요청 |
| 결과 | 독립 스크립트 | 시스템에 바로 끼워넣는 전략 코드 |
텔레그램에서 한 줄이면 된다
이걸 더 편하게 만들었어요. 텔레그램에서 이렇게 치면:
/strategy 골든크로스 + RSI 필터 전략
AI가 자연어를 분석해서 → 전략 코드를 생성하고 → 파일로 저장해요. 그 다음:
/backtest 골든크로스전략 --기간 2년
2년치 과거 데이터로 백테스트를 돌려서 결과를 텔레그램으로 보내줘요:
📊 백테스트 결과: 골든크로스전략
기간: 2024-03-19 ~ 2026-03-19 (2년)
총 수익률: +23.4%
최대 낙폭(MDD): -12.8%
승률: 58.3% (총 24회 매매)
샤프비율: 1.42
자연어 한 줄 → 코드 생성 → 백테스트까지. 비개발자가 코드를 한 줄도 안 짜고 전략을 검증할 수 있는 거예요.
피드백 사이클 — "RSI 필터 빼고 다시 해봐"
첫 결과가 마음에 안 들면 피드백을 줍니다:
/strategy 수정: RSI 필터 제거하고, 거래량 조건 추가
- 5일 평균 거래량 대비 2배 이상일 때만 매수
AI가 기존 전략을 수정해서 새 버전을 만들어주고, 다시 백테스트를 돌릴 수 있어요.
[버전 1] 골든크로스 + RSI 필터 → 수익률 +23.4%
[버전 2] 골든크로스 + 거래량 필터 → 수익률 +31.2%
이렇게 전략 아이디어 → 코드 → 검증 → 피드백 → 개선 사이클을 빠르게 돌릴 수 있어요. 예전에는 코드를 짤 줄 아는 사람만 할 수 있었던 작업인데, AI가 그 벽을 없앤 거예요.
솔직한 한계점
이게 "돈 버는 전략을 자동으로 찾아주는" 마법은 아닙니다.
그래서 이 도구는 "전략 아이디어를 빠르게 검증하는 도구"로 쓰고 있어요. "이거 해볼까?" → "과거에 어땠는지 한번 볼까" → "결과 보고 판단" 이 사이클을 빠르게 돌리는 거예요.
배운 것 — AI한테 "시스템 규격"을 알려주면 끼워맞는 코드가 나온다
이 경험에서 핵심은:
"만들어줘"가 아니라 "이 규격에 맞게 만들어줘"로 시키세요. 기존 시스템의 클래스 구조, 파일 위치, 함수 형태를 알려주면 AI가 바로 끼워넣을 수 있는 코드를 만들어줘요.그리고 자연어 → 코드 → 검증 사이클을 빠르게 돌리세요. 한 번에 완벽한 전략이 나오는 게 아니라, "이건 빼고 저건 넣고" 피드백을 반복하면서 개선하는 거예요. AI 덕분에 이 사이클이 며칠에서 몇 분으로 줄었습니다.