AI 에이전트 팀의 전략 연구 과정
Stratmill의 전문 에이전트들은 각 전략을 정해진 단계 순서에 따라 전달하며, 단계 사이사이에 점검을 수행합니다.
에이전트 팀
Research Lead는 가설을 작성합니다. Strategy Developer는 NautilusTrader 전략으로 코드를 구현합니다. QA Agent는 코드의 정확성을 검토합니다. Strategy Analyst는 백테스트 및 최적화 결과를 살펴보고 다음 단계를 결정합니다. Risk Officer는 승격 전에 전략의 안전성을 감사(점검)합니다. Portfolio Manager는 전체 포트폴리오에서 승격과 배분을 결정합니다.
이들을 지원하기 위해 백테스트 엔진은 모든 백테스트와 최적화를 실제 수수료를 반영해 실행하고, 데이터 엔지니어는 시장 데이터 카탈로그를 완전하게 유지합니다. Library Refiner는 전략을 반복 개선할 때 Knowledge Library의 출처를 인용한 개선안을 제안하고, 내보내기 도구는 전략을 다른 플랫폼으로 포팅합니다.
단계 순서
실행은 코딩, 검증, 백테스트, 백테스트 검토, 최적화, 분석 단계를 거칩니다. 분석 단계에서는 코딩으로 돌아가 반복 개선하거나, 수정된 가설을 위해 Research Lead로 돌아가거나, 포기하거나, 위험 검토와 승격을 거쳐 페이퍼 트레이딩으로 이동할 수 있습니다. 후속 단계의 작업을 먼저 처리하므로 새 코드가 쌓여도 검증과 백테스트가 밀리지 않습니다.
검증 계층
전체 과거 데이터를 처리하기 전에 코드를 검증합니다. 이전 반복과 동일한 내용을 다시 제출하면 즉시 실패 처리됩니다. 일관성 점검으로 코드가 가설에 명시된 거래 장소 및 상품을 거래하는지 확인합니다. 정적 분석으로 구조와 필수 메서드를 점검하고, 파일, 네트워크, 시스템 접근과 미래 데이터를 읽는 방법을 금지합니다.
이어서 합성 테스트는 격리된 샌드박스에서 생성된 시장(상승장, 하락장, 횡보장, 변동성 급등, 거래량 제로 및 가격 갭, 그리고 전략이 보조 데이터를 사용하는 경우 해당 데이터 누락)에서 전략을 실행합니다. 최근 실제 봉 데이터에 대한 짧은 샌드박스 백테스트에서는 최소 한 번 이상 거래가 발생해야 합니다. 마지막으로 QA 에이전트가 가설에 비추어 로직을 검토합니다. 룩어헤드, 신호 방향, 포지션 크기, 거래소 규칙 및 일정을 확인합니다. QA는 성과를 평가하지 않습니다.
검증 실패 시
실패 시 발견 사항과 함께 실행이 개발자에게 반환됩니다. 3회 시도가 모두 실패하면 해당 실행은 중단됩니다. 한 번도 트리거되지 않는 규칙이나 개발자가 충족할 수 없는 계약 조건은 대신 수정된 가설을 위해 리서치 리드에게 되돌아갑니다. 플랫폼 자체로 인한 실패는 재시도되며, 전략의 실패 횟수에는 절대 포함되지 않습니다.
애널리스트의 두 가지 결정
첫 백테스트 후 분석가는 최적화, 반복 개선, 가설 수정 또는 포기 중 하나를 결정합니다. 따라서 실제 신호가 있는 아이디어에만 최적화 시간을 들입니다. 실행 가능성 검증 로직은 수치에 근거해 결정을 확인합니다. 거래 수가 충분하고 평균 거래 수익률이 거래소 수수료 하한을 넘는 전략은 변덕에 따라 포기하지 않으며, 수수료 하한 미만인 전략은 최적화 단계로 보내지 않습니다.
최적화 후 분석가는 표본 외 데이터와 홀드아웃 증거를 바탕으로 승격, 반복 개선, 수정 또는 포기를 결정합니다. 모든 결정과 그 근거는 전략 페이지에 저장됩니다.
거래소별 수수료 하한
분석가는 Forex 비용 하한과 실행에 기록된 스프레드, 수수료 및 금융 비용 근거를 확인합니다. 순수익 우위가 충분하지 않은 가설은 수정하거나 폐기합니다. 비용 근거가 누락된 경우 운영상 보류해야 하며, 비용을 영으로 대체해서는 안 됩니다.
Risk Officer 검토
승격 전에 Risk Officer가 전략의 안전성을 감사하고 명시적으로 승인해야 합니다. 코드로 강제되는 한도도 적용됩니다. 레버리지는 위험 프로필의 상한 이내여야 하고, 정의된 위험 통제(거래당 자본의 제한된 비율만 위험에 노출하는 손절 또는 포지션 규모가 제한된 신호 청산)가 있어야 하며, 중대한 문제가 없어야 하고 위험 점수가 허용 범위 안에 있어야 합니다. Risk Officer는 분석가가 작성한 게이트 예외도 거부할 수 있습니다. 거부되면 실행은 개발자에게 돌아갑니다.
Portfolio Manager와 배분
Portfolio Manager 단계에서는 모든 게이트와 위험 한도를 코드로 다시 확인하고, 이미 배포된 전략과 상관성이 지나치게 높은 전략은 보류하며, 페이퍼 트레이딩으로 승격할지 결정합니다. 자본은 역변동성 방식으로 배분하고 전략별 상한을 둡니다. 신규 전략은 동일 비중으로 시작하고, 인큐베이팅 중인 전략은 절반 비중을 받습니다. 페이퍼 트레이딩에서 실거래로의 전환은 자동으로 이루어지지 않습니다.
반복 횟수 제한 및 중단
평균 거래 수익률이 거래 비용보다 낮거나, 표본 외 성과가 기준을 충족하지 못하거나, 검증에 반복적으로 실패하거나, 분석가가 실행 가능성을 찾지 못하면 전략을 중단합니다. 그 사유를 기록해 리서치 에이전트에 피드백하므로 같은 막다른 길을 반복하지 않습니다.
플랫폼 실행과 사용자 실행
플랫폼은 자체 리서치를 지속적으로 실행합니다. 사용자의 아이디어가 플랫폼 작업 뒤에 대기열에 놓이지 않도록 사용자 작업 공간에는 별도 용량과 더 높은 우선순위가 배정됩니다. 전략 페이지에서 언제든 직접 실행을 일시 중지하거나 재개하거나 중단할 수 있습니다.