본문으로 건너뛰기
r/vibecoding조회 2

같은 입력으로 항상 같은 출력을 내는 트레이딩 플랜 엔진 w-bonkers (Claude Code 지원)

w-bonkers는 state.json을 단일 진실 원본으로 삼고 Todoist를 피드백 버스로 활용해 Claude Code 기반 에이전트의 실행을 결정론적으로 재현 가능하게 만드는 오픈소스 도구이다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

여러 AI 트레이딩 도구가 동일한 상태에서 반복 실행 시 일관되지 않은 출력을 내는 문제를 해결하기 위해 w-bonkers가 개발되었으며 이 도구는 state.json을 단일 진실 원본으로 삼아 Python 렌더러로 액션 보드와 Todoist 페이로드를 결정론적으로 생성한다. 외부 피드백은 Todoist를 통해 이벤트 형태로 기록되고 'bought at 332' 같은 주석은 다음 실행에서 반영되어 재처리가 차단되며 가격은 Groww MCP 실데이터와 yfinance 폴백으로만 취득한다. 규칙 기반의 매매 로직은 스탑·추세·뉴스 종료와 200-DMA 레짐 게이트, 포트폴리오 브레이크를 포함하고 해당 레짐 게이트는 리포지토리의 백테스트 하네스로 검토 가능하도록 구현되어 있어 규칙의 과거 성과 확인과 감사 추적이 가능하다. 프로젝트는 에이전트가 직접 거래를 실행하지 않고 모든 실행 결과를 디스크에 아카이브하는 안전·감사 지향 설계이며 교육용으로 공개되어 투자 조언 목적이 아님이 명시되어 있다.

실용적 조언

  • 레포지토리에 포함된 state.json 중심 워크플로를 채택하면 테스트 환경에서 동일한 초기 상태로 반복 실험을 수행해 규칙의 행동을 검증할 수 있다.
  • 브로커 연동 시에는 Groww MCP와 yfinance 같은 다중 데이터 소스를 구성해 페일오버를 마련하고 가격 소스의 신뢰도를 로그에 기록해야 한다.
  • 실제 주문 실행은 별도의 검증 레이어로 분리하고 에이전트의 출력은 휴먼 확인이나 서명된 트랜잭션으로 거치는 절차를 추가해야 운영 리스크가 줄어든다.

섹션별 상세

01
기존 AI 트레이딩 도구에서 동일한 상태로 여러 번 실행하면 서로 다른 출력이 나오는 문제를 지적하고 그 문제를 해결하기 위해 프로젝트가 설계되었다. 입력으로는 state.json이 단일 진실 원본으로 사용되며, 에이전트는 이 파일만 수정하여 상태를 변경한다. Python 스크립트가 state.json을 읽어 액션 보드·태스크·캘린더·Todoist 페이로드를 결정론적으로 렌더링하기 때문에 같은 상태와 같은 고정 입력이면 항상 동일한 출력이 생성된다.
02
피드백 루프는 Todoist를 피드백 버스로 활용하는 구조로 구현되어 있으며 사용자 주석과 태스크 완료가 다음 실행의 구조화된 입력으로 처리된다. 예를 들어 사용자가 'bought at 332'라는 코멘트를 달면 다음 실행에서 해당 거래가 체결된 것으로 기록되고 시스템은 '✓ applied'로 회신하며 같은 이벤트를 재처리하지 않는다. 이 방식은 이벤트의 원자성(idempotency)을 확보하여 중복 주문·재처리를 방지하고 감사 가능성을 제공한다.
03
시장 데이터는 Groww MCP의 실시간 브로커 피드와 yfinance의 폴백을 혼용하여 확보하며 가격 값은 생성되지 않고 외부 피드에서 직접 읽어온다. 트레이드 결정은 미리 정의된 결정론적 규칙 세트에 의해 수행되며 규칙에는 스탑·추세·뉴스 기반 종료, 200-DMA를 기준으로 한 레짐 게이트, 포트폴리오 브레이크(오픈 리스크 캡·주간 손실 예산·서킷 브레이커) 등이 포함된다. 레포지토리에는 레짐 게이트의 백테스트 하네스가 포함되어 있어 규칙의 과거 성과를 재현할 수 있다.
04
배포 방식은 에이전트가 직접 거래를 실행하지 않는 안전 설계로 되어 있으며 사용자는 레포를 클론하고 Claude Code를 열어 'read prompt.md'라고 지시하면 에이전트가 인터뷰 형식으로 플랜을 구축한다. 매 실행 결과는 디스크에 아카이브되어 오프라인으로 완전하게 감사 가능하며 실행 기록을 통해 의사결정 근거를 추적할 수 있다. 프로젝트는 교육용 도구로 명시되어 있고 투자 조언 목적이 아님이 표기되어 있어 책임 범위를 분명히 하고 있다.

용어 해설

결정론적 에이전트(Deterministic Agent)
결정론적 에이전트는 동일한 상태와 고정 입력이 주어질 때 항상 동일한 출력을 생성하는 에이전트 설계 방식이다. 내부 상태를 파일로 명확히 저장하고 외부 입력·랜덤 시드를 차단하거나 고정하여 동작을 반복 가능하게 만든다. 트레이딩 같은 감사·재현이 필요한 도메인에서 행동 예측과 이력 검증을 가능하게 한다.
피드백 버스(Feedback Bus)
피드백 버스는 에이전트와 외부 시스템 간의 상태 업데이트를 전달하고 기록하기 위한 메시지 채널이다. 워크플로에서는 주석·태스크 완료·외부 이벤트를 구조화된 입력으로 받아 에이전트의 다음 실행에서 재현 가능한 방식으로 처리한다. 이 방식은 중복 처리 방지와 사건의 원자적 기록을 통해 시스템 일관성을 유지한다.
200일 이동평균(200-DMA)
200일 이동평균은 최근 200거래일의 종가 평균으로 산출되는 기술적 지표로 장기적인 시장 추세를 판단하는 데 사용된다. 본문 맥락에서는 이 지표를 매수 금지 조건으로 삼아 상승 추세가 아니면 신규 매수를 보류하는 '레짐 게이트'로 활용한다. 트레이드 규칙에 자동화된 리스크 제어 수단으로 통합된다.
백테스팅(Backtesting)
백테스팅은 과거 시계열 데이터에 자동화된 매매 규칙을 적용해 성과를 재현하고 통계적 유의성을 평가하는 절차이다. 이 프로젝트는 규칙 기반의 레짐 게이트를 과거 데이터로 검증한 하네스를 레포지토리에 포함하여 규칙의 역사적 행태를 확인할 수 있도록 했다. 백테스트 결과는 규칙의 유효성 판단과 위험 한계 설계에 직접적인 근거를 제공한다.

언급된 도구

Claude Code추천

에이전트 실행 및 프롬프트 기반 인터뷰로 플랜 생성

Todoist중립링크

에이전트와 외부 사용자/시스템 간 피드백 버스로 태스크와 주석을 기록하는 데 사용

yfinance중립링크

실시간 브로커 피드 다운 시 가격 페일오버 소스로 활용

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 07. 06.수집 2026. 07. 06.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.