Claude Code로 거인의 투자전략 따라하기: MT4 CopyTrade 프로그램 구축기

Claude Code로 거인의 투자전략 따라하기: MT4 자동 복사 프로그램 구축기

소개

2주차 실습에서는 주현영 스터디장님의 가이드를 따라, Metatrader4 기반의 CopyTrade 프로그램을 직접 구현해 보았습니다. 주요 목표는 리더 계좌의 트레이딩 전략을 복수의 팔로워 계좌에 자동으로 복사하는 시스템을 만드는 것이었습니다.

이번 2주차에는 아래 두가지 기능 구현을 따라해보았습니다.

1. 내가 원하는 조건에 맞는 자동매매 전략 구현

2. 관리자 기능 서브 에이전트 생성

먼저 Cusor 기반 Claude Code에게 아래 프롬프트를 입력해주었습니다.

진행 방법

🔧 사용 도구

  • Claude Code (Cursor 기반)

  • Metatrader 4 (Vantage Terminal x2)

  • .mq4 코드 컴파일 및 배포

  • 서브 에이전트 생성 기능 활용 (/agents)

🧠 프롬프트 (자동매매 전략 기획 요청)
- 내가 원하는 조건대로 프로젝트 기획 요청 (metatrader 4 기반 자동매매 전략)


metatrader 4기반으로 자동매매 전략을 만들어야 합니다.
##목표를 구현해주세요.

##목표:
1. A(Leader) 계좌의 포지션 변화를 감지하여 OPEN / HEARTBEAT / FLAT 신호를 전달 
2. B(Follower) 계좌(복수, \\~10개)는 잔고 비례 + 리더 lot 배수 규칙으로 자동으로 실시간 복사하는 작업을 해야합니다. 
3. 이 때, webhook과 mql4 코드, n8n등을 사용하려고 하는데 클로드 코드 기반 프로그램이 더 쉽다면 그렇게 해도됩니다. 

##맥락:
현재는 인간이 수동으로 A(leader) 계좌에 포지션이 들어오면 스프레드시트에서 통화쌍별 lot 사이즈를 계산한 후 일일이 입력하고 있는 상황입니다.\n\n

##조건 \n\n
1. A계좌의 잔고와 B계좌의 잔고에 비례해서 계약수를 늘릴 것\n\n
2. 복사하려는 거래가 신규진입이 아닌 이전에 진입되어있던 통화쌍일 경우, 이전 진입 계약수 대비 현재 계약수에 비례하여 진입할 것\n\n
3. A계좌에서 생긴 거래가 이미 B계좌에서 진입되어 있으면 제외할 것(Lot 비율 15% 이내 또는 시간차 120초 이내면 카피 스킵)\n\n
4. 이전에 A계좌에서 B계좌로 복사한 거래에 대해서만 청산할 것(동일 통화쌍이 진입되어 있어도 A계좌와 무관한 다른 거래라면 제외할 것)\n\n
5. 브로커별로 심볼이 다른 경우에는 ea set 변경(Prefix/Suffix 입력만으로 동작)혹은 실패 시 자동 탐색기능이 필요합니다

클로드코드가 Leader용과 Follower용 mq4 2개의 소스를 만들어주었습니다.

🖥️ 실행 환경 구성

  • MT4를 서로 다른 폴더에 설치하고, 각기 다른 계정으로 로그인

  • Leader/Follower 이름을 바탕화면에서 구분하여 설정

  • 듀얼 모니터 환경으로 양 계좌 동시 모니터링

이것을 실행하기 위해 Vantage Terminal을 2개 설치하고 각각 다른 계정으로 로그인했습니다.

(서로 다른 폴더에 설치해주어야 합니다.)


바탕화면에 이렇게 구분이 되도록 이름 변경했습니다.

역시 트레이딩은 최소한 듀얼모니터 화면으로 봐야 편합니다.

🧪 테스트 & 반복 개선

  • 진입 테스트: Leader 진입 시 Follower도 즉시 진입 확인

  • 청산 문제: 초기엔 청산 반영이 안 되었으나, Claude에게 코드 수정 요청 → 정상 동작 확인

  • 지정가 주문 문제: 초기엔 미반영 → Claude 코드로 지정가 주문도 반영되도록 재생성 → 성공 ✅


    Leader 계좌에서 진입하니 Follower 계좌도 진입합니다.

    Leader 계좌에서 청산하니 Follower 계좌에서 청산이 안이루어집니다.

    저는 Cursor에게 소스 수정하라 하였습니다.

수정된 소스 재컴파일하고 반영하니 청산도 리더를 따라 잘 반영합니다.

하지만 이번엔 리더에서 지정가 주문을 했는데

따라하지 않았습니다.

아래와 같이 시장가주문처리만 하고 있는지 물어보니 알아서 지정가주문 처리하였습니다.

휴대폰에 있는 한국어 앱의 스크린샷


이제 지정가 주문도 잘 처리합니다.

🧭 관리자 서브 에이전트 생성

Claude Code 내 /agents 명령어 실행하여 새로운 프로젝트용 서브 에이전트 생성:

● Copy Trading 시스템 총괄관리자
역할: 시스템 상태 진단 및 컨텍스트 복구, 무결성 관리
- 로트 계산, 심볼 매핑, 포지션 매칭 등 진단 가능
- 핵심 명령어 (curl API 테스트 포함) 내장

결과와 배운 점

✅ 결과

  • 시장가 주문, 지정가 주문 모두 복사 성공

  • 리더 계좌 기준 청산, 진입 조건도 정확히 반영

  • 실시간 연동 속도 및 정확도 만족

  • 코드 수정/반영도 Claude + Cursor 조합으로 빠르게 가능

💡 배운 점

  • 프롬프트만 잘 구성하면 EA 코드 생성도 정말 쉽게 가능!

  • 반복 실습을 통해 Claude의 코드 생성/수정 능력이 매우 뛰어나다는 걸 체감함

  • 실무 수준의 조건들을 넣어 테스트하면서 EA 구현에 대한 감각도 익힘

  • /agents 기능을 통해 시스템 운영/진단 자동화 가능성 확인

🚧 시행착오

  • 처음에는 청산이 반영 안 되어 원인 파악에 시간 소요

  • 지정가 주문이 빠져있던 점도 직접 Claude와 대화하며 고침

  • 브로커마다 심볼 차이가 있어 prefix/suffix 처리 필요 확인

도움 받은 글

  • Claude 공식 문서 (프롬프트 구조 참고)

  • Cursor와 Claude Code 통합 활용법

  • 주현영 스터디장님의 2주차 실습 가이드


다음 실습에서는 이 구조를 n8n이나 webhook 기반으로 확장해보고 싶습니다.
이런 과정을 통해 실제 트레이딩 자동화가 손에 잡히는 느낌이에요 💪✨

1

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요