AI에게 시켜서 만든 코인 자동매매 시스템 운영 후기

코딩 실력은 구구단 출력 정도밖에 안 되는 사람이 AI를 이용해 코인 자동매매 시스템을 만들어 실제로 운영해 본 기록입니다.

전문 개발자가 만든 완성형 프로그램은 아니지만, GPT와 Claude 같은 AI에게 질문하고 수정해가며 자동매매 시스템을 하나씩 만들어 보았습니다.

이 글은 투자 권유가 아니라 개인 제작 후기이자 운영 구조를 정리한 글입니다. 비슷한 시스템을 고민하는 분들에게 참고가 되었으면 합니다.

한 줄로 정리하면

업비트에서 여러 코인을 운용하면서 매수, 매도, 관망 같은 판단은 GPT가 하루 한 번 내리고, 실제 주문 실행과 수량 계산, 가격 감시, 기록 저장은 파이썬 시스템이 처리하는 구조입니다.

쉽게 말하면 다음과 같습니다.

  • 판단은 AI가 한다.
  • 실행은 코드가 한다.
  • 기억은 데이터베이스가 한다.
  • 보호선 감시는 시스템이 1분마다 한다.

AI가 모든 것을 알아서 해주는 구조라기보다는, AI는 판단을 맡고 시스템은 실행과 검증을 맡는 방식입니다.

1. 만들 때 정한 원칙

처음 시스템을 만들 때 가장 먼저 정한 원칙은 “AI를 믿되, 그대로 방치하지는 않는다”였습니다.

GPT는 이전 대화를 계속 기억하지 못하기 때문에 어제의 판단이나 이유를 데이터베이스에 저장해두고, 다음 판단 때 다시 참고하도록 만들었습니다.

또한 AI에게 미래 가격을 맞히라고 시키지는 않았습니다. 대신 현재 시장 데이터와 기술적 지표를 보고 지금 상황을 어떻게 해석할지 판단하게 했습니다.

기술적 지표도 너무 많이 넣지 않았습니다. 비슷한 성격의 지표를 여러 개 넣기보다 추세, 과열, 수급, 추세 강도처럼 서로 다른 역할을 하는 지표를 골라 사용했습니다.

2. GPT와 시스템의 역할 분리

이 시스템에서 GPT와 파이썬 코드는 역할이 다릅니다.

GPT는 시장을 해석하고 매수, 매도, 관망 중 하나를 선택합니다. 필요하다면 매매 금액, 손절 가격, 부분매도 가격, 다음 판단에 참고할 메모도 남깁니다.

반면 시스템은 실제 데이터를 수집하고, GPT의 응답을 검증하고, 주문 수량을 계산하고, 업비트 API를 통해 주문을 실행합니다.

즉, GPT가 “무엇을 할지” 판단한다면, 시스템은 “정말 실행해도 되는지 확인하고 실제로 처리하는 역할”을 합니다.

3. 여러 코인을 따로 운용하는 방식

시스템은 여러 코인을 동시에 관리할 수 있도록 만들었습니다.

예를 들어 비트코인 60%, 이더리움 40%처럼 비중을 정해두면 전체 자산을 해당 비율로 나누고, 각 코인별로 독립적으로 판단하게 합니다.

비트코인에 대한 판단과 이더리움에 대한 판단은 서로 영향을 주지 않습니다. 각 코인은 자기 몫의 자금과 자기 차트 데이터만 보고 판단합니다.

실행은 순서대로 진행되며, 중간에 오류가 나도 이미 처리한 코인이 중복 거래되지 않도록 기록을 남기게 했습니다.

4. 하루 한 번 판단하는 이유

현재 구조에서는 하루에 한 번 GPT가 판단하도록 했습니다.

업비트 일봉은 오전 9시에 마감되기 때문에, 저는 마감 직전인 오전 8시 56분에 판단하도록 설정했습니다.

9시 직후에는 가격이 출렁일 수 있다고 생각했기 때문에, 봉 마감 4분 전에 판단하고 주문을 실행하는 구조로 잡았습니다.

물론 이 방식이 항상 유리하다는 뜻은 아닙니다. 다만 제 시스템에서는 하루 단위 판단을 기준으로 운영하기 위해 이렇게 설계했습니다.

5. 사용한 기술적 지표

자동매매 시스템에 사용한 지표는 다음과 같습니다.

  • MA20 / MA60: 단기와 중기 추세 확인
  • RSI: 과열 또는 침체 구간 확인
  • MACD 히스토그램: 추세 가속과 반전 흐름 확인
  • ADX와 DI: 추세 강도 확인
  • VWAP: 거래량을 반영한 평균 가격 확인
  • 4시간봉 RSI / MACD: 일봉보다 짧은 흐름 보조 확인

중요하게 생각한 점은 지표를 많이 넣는 것이 아니라, 서로 다른 성격의 지표를 조합하는 것이었습니다.

6. 상승장과 횡보장을 구분하도록 만든 이유

같은 RSI 수치라도 상승장에서의 의미와 횡보장에서의 의미는 다를 수 있습니다.

예를 들어 상승장에서는 눌림목으로 보이는 구간이, 횡보장에서는 박스권 상단일 수도 있습니다.

그래서 시스템에 현재 시장 국면을 먼저 계산하도록 했습니다. 상승장인지, 하락장인지, 횡보장인지에 따라 AI가 같은 지표를 다르게 해석하도록 하기 위해서입니다.

특히 박스권 상단에서 잘못 매수하고 하락할 때 손절하는 상황을 줄이기 위해 이 기능을 넣었습니다.

7. 1분마다 작동하는 보호선 감시

AI는 하루에 한 번만 판단하지만, 가격은 24시간 계속 움직입니다.

그래서 시스템이 1분마다 현재가를 확인하면서 보호선을 감시하도록 만들었습니다.

보호선은 크게 두 가지입니다.

첫 번째는 부분매도선입니다. 일정 수익을 본 뒤 가격이 내려오면 보유 수량의 일부를 매도해 수익을 잠그는 역할을 합니다.

두 번째는 손절선입니다. 가격이 정해진 손절선까지 내려오면 전량 매도해 손실을 제한하는 역할을 합니다.

프로그램이 꺼졌다 다시 켜져도 이전 상태를 복원하고, 같은 매도가 두 번 실행되지 않도록 거래 기록을 데이터베이스에 남기게 했습니다.

8. AI가 남기는 다음 판단용 메모

GPT는 다음 날 어제의 판단을 기억하지 못합니다.

그래서 매매 판단 후에는 다음 판단에서 참고할 메모를 남기도록 했습니다.

다만 모든 메모를 계속 유지하면 오래된 판단에 끌려갈 수 있습니다. 그래서 메모를 유지할 것, 버릴 것, 새로 남길 것으로 나누게 했습니다.

이렇게 하면 AI가 이전 판단을 참고하되, 상황이 바뀌면 기존 생각을 버릴 수 있습니다.

9. 이전 판단을 먼저 평가하게 만든 이유

새로운 판단을 내리기 전에 지난 판단이 맞았는지도 먼저 평가하도록 했습니다.

예를 들어 어제 매수를 선택했는데 이후 흐름이 좋지 않았다면, 오늘은 같은 방향을 고집하기보다 관망하거나 반대 판단을 고려하게 하는 방식입니다.

이 기능은 AI가 매일 새로운 판단을 하면서도 이전 판단의 결과를 어느 정도 반영하게 만들기 위한 장치입니다.

10. AI 응답 검증 기능

AI는 가끔 실제 데이터와 다른 숫자를 말할 때가 있습니다.

예를 들어 RSI나 ADX 값을 잘못 말하거나, 현재 가격보다 말이 안 되는 손절선을 제시하는 경우가 있습니다.

그래서 시스템이 AI 응답을 그대로 믿지 않고 한 번 더 검증하도록 했습니다.

검증하는 내용은 다음과 같습니다.

  • AI가 말한 지표 값이 실제 계산값과 크게 다르지 않은가
  • 손절선이 현재가보다 아래에 있는가
  • 부분매도선과 손절선의 순서가 논리적으로 맞는가
  • 매매 금액이 최소 주문 금액을 만족하는가
  • 응답 형식이 시스템이 처리할 수 있는 구조인가

검증을 통과하지 못하면 해당 판단은 실행하지 않거나 일부 값을 무시하도록 했습니다.

11. 웹 대시보드와 자동 블로그 일지

시스템을 운영하면서 현재 상태를 쉽게 확인하기 위해 Streamlit으로 웹 대시보드도 만들었습니다.

대시보드에서는 현재 포지션, 차트, AI 판단 기록, 거래 내역 등을 확인할 수 있습니다.

또한 매일 AI 판단 내용을 블로그용 HTML 일지로 자동 생성하는 기능도 붙였습니다.

나중에는 이 일지를 네이버 블로그와 워드프레스에 자동으로 올리는 구조까지 확장할 계획입니다.

12. 사용한 기술

이 시스템을 만들면서 사용한 기술은 다음과 같습니다.

  • Python
  • pyupbit
  • OpenAI API
  • pandas
  • numpy
  • ta
  • APScheduler
  • SQLite
  • Streamlit
  • Plotly

처음부터 이 기술들을 잘 알고 사용한 것은 아닙니다. 대부분은 AI에게 물어보고, 오류를 고치고, 다시 실행해보면서 하나씩 붙였습니다.

13. 가장 어려웠던 부분은 프롬프트

생각보다 가장 어려웠던 부분은 코드가 아니라 프롬프트였습니다.

처음에는 “RSI가 30 아래면 매수”, “MACD가 음수면 매도”처럼 규칙을 많이 넣었습니다.

그런데 이렇게 하니 AI가 직접 판단하기보다 정해진 규칙만 따라가는 느낌이 강했습니다.

그래서 방향을 바꿨습니다.

최소한의 안전 조건은 코드가 강제하고, 나머지는 AI가 현재 데이터를 보고 스스로 판단하게 했습니다.

이 방식이 완벽하다는 뜻은 아니지만, AI를 활용하는 자동매매 시스템에서는 프롬프트 설계가 매우 중요하다는 것을 느꼈습니다.

마무리

저는 전문 개발자도 아니고, 투자 전문가도 아닙니다.

이 시스템은 AI를 활용해 어디까지 자동화할 수 있는지 직접 실험해본 개인 프로젝트입니다.

자동매매는 편리해 보이지만 위험도 큽니다. AI는 틀릴 수 있고, 코드는 오류가 날 수 있으며, 시장은 예상과 다르게 움직일 수 있습니다.

그래서 자동매매를 시도한다면 반드시 충분히 테스트하고, 감당 가능한 소액으로 시작하는 것이 중요하다고 생각합니다.

앞으로 이 블로그에서는 제가 만든 코인 자동매매 시스템의 구조, 개선 과정, 시행착오, 운영 기록을 계속 정리해보겠습니다.

읽기 전에 꼭 확인해 주세요

이 글은 개인 제작 및 운영 기록이며, 특정 코인이나 투자 방식을 추천하는 글이 아닙니다.

AI 기반 자동매매는 원금 손실 위험이 있으며, AI 판단과 프로그램 실행 모두 오류가 발생할 수 있습니다.

이 글을 참고해 내리는 모든 투자 판단과 실행 결과는 본인 책임입니다.

위로 스크롤