사례 3주차 2026-08-09 · 미국 주식 AI 모의매매 에이전트 연재

완성 기준 정하기부터, 반복되는 하루를 스킬로 만들기까지 — 3일

3주차 1~3일차, 완성 기준을 한 문장으로 정하고 채운 뒤, 매일 반복되는 작업 패턴을 스스로 찾아 자동화 방법을 정하고 스킬로 만든 기록.

한 줄 요약: 로드맵상 3주차 목표는 사실 2주차 안에 이미 다 끝나 있었다. 그래서 3주차는 “뭘 더 해야 완성인가”부터 다시 정의해야 했는데, 완성 기준을 한 문장으로 정해 이틀 만에 다 채웠다. 그리고 3일째엔 한 발 더 나가서, 그 3일 동안 내가 매일 똑같이 반복하고 있던 작업 패턴 자체를 찾아내 자동화 방법을 정하고 스킬로 만들었다.

이런 분께 도움돼요: 마감은 다가오는데 “뭘 더 해야 끝난 건지” 감이 안 잡히는 분, 매일 똑같은 걸 반복하고 있다는 느낌은 드는데 그걸 어떻게 자동화할지 감이 안 잡히는 분, “규칙으로 적어둘지 / 스킬로 만들지 / 예약 실행으로 돌릴지” 중 뭘 골라야 할지 궁금한 분.

Before → After

3주차 시작 전3일 뒤
목표”3주차엔 뭘 해야 하지?” 막연함완성 기준 한 문장 + 우선순위 3단계
대시보드종목별 상태표만 있음필터/정렬 + 종목별 개별 그래프 + 매매 히스토리 한줄요약 + 최고·최저 수익률 카드
매일 하는 일매번 “이 폴더에서 이어서 만들 거야, 완성 기준 보고 오늘 할 일 정해줘”를 직접 다 타이핑”2번 해줘” 한마디로 상태 점검부터 오늘 할 일 제안까지 자동 진행

어떻게 했나

1. “완성”부터 다시 정의했다

로드맵엔 3주차 목표가 “대시보드 완성 + 배포 공개 + 자동화”라고 적혀 있었는데, 확인해보니 이건 2주차 안에 이미 다 끝나 있었다. 그래서 3주차를 “그냥 하고 싶은 거 아무거나” 식으로 보내지 않으려고, 새 기능 후보를 세 가지로 나눴다.

분류기준
필수 (이것만 되면 완성)지금 흐름에서 자연스럽게 이어지고, 남은 시간에 확실히 끝낼 수 있는 것
있으면 좋음없어도 지장 없지만, 시간 남으면 추가
이번엔 빼는 것그럴듯해 보이지만 근거 없는 것, 혹은 지금 규모엔 과한 것

그리고 “지금 하던 게 완료되면 완성”이라는 형태로 기준을 문장 하나에 못 박았다.

종목별 개별 수익률 그래프가 대시보드에 붙어서, 필터로 고른 종목 하나의 수익률 추이를 볼 수 있게 되면 — 이번 주는 완성이다.

2. 필수부터 순서대로, 그리고 여유 시간까지 채웠다

1일차 — 종목별 필터·정렬(업종·상태로 거르고 수익률 순 정렬)을 먼저 붙이고, 이어서 완성 기준이었던 종목별 개별 수익률 그래프를 만들었다. 전체 포트폴리오 그래프를 그릴 때 썼던 SVG 좌표 계산 코드를 그대로 재사용했다. 이 조각이 끝난 순간 완성 기준을 충족했다.

2일차 — 시간이 남아서 “있으면 좋음”으로 미뤄뒀던 매매 히스토리 한줄요약 뱃지까지 만들었다. AI를 다시 부르지 않고, 이미 있는 판단 이유 문장을 첫 문장(또는 45자) 기준으로 잘라서 뱃지로 보여줬다. 반대로 “AI 판단 신뢰도 점수”는 실제로 AI가 계산해준 적이 없는 값이라 근거 없는 숫자를 만들게 되므로 이번엔 빼기로 했다.

3일차 — 완성 기준은 이미 채웠지만, 데이터가 이미 다 계산돼 있던 김에 최고·최저 수익률 종목 요약 카드를 하나 더 얹었다. 새 계산 없이, 기존 종목별 수익률에서 최댓값·최솟값만 뽑아 카드 2개로 보여주는 가벼운 기능이었다.

// 종목의 실제 판단 이력을 처음부터 재생해서 날짜별 총자산을 계산 —
// 자동매매 스크립트·만약 계산기와 같은 규칙(applyDecision)을 그대로 재사용
export function getSymbolAssetSeries(종목) {
  const 기록들 = getPricedHistoryBySymbol()[종목] ?? [];
  const state = { 현금: 종목당초기자본, 보유수량: 0 };
  return 기록들.map((r) => {
    applyDecision(state, r.판단, r.가격);
    return { 날짜: r.날짜, 총자산: state.현금 + state.보유수량 * r.가격 };
  });
}

3. 반복되는 하루 자체를 스킬로 만들었다

3일을 지내면서, 매일 세션을 시작할 때 거의 똑같은 문장을 그대로 반복해서 타이핑하고 있다는 걸 알아챘다 — “오늘은 O일이야, 이 폴더에서 프로젝트 이어서 만들 거야, 완성 기준이랑 지금까지 만든 거 보고 오늘 할 일 정해줘.” 그래서 이번엔 반복 그 자체를 재료로 삼아, 어떤 반복을 뭘로 자동화할지 정리했다.

반복자동화 방법
하루 시작 스크립트스킬상태 점검 → 후보 제안 → 사람이 고르는 상호작용이 필수라 사람이 있어야 굴러감. 예약 실행(cron)으로는 못 돌림
커밋·push를 각각 따로 확인받는 것이미 규칙 (그대로 유지)의도적으로 넣어둔 확인 지점이라, 자동화로 없애면 오히려 안전장치를 잃는 셈
매일 가상 매매 기록이미 예약 실행(GitHub Actions cron)사람 없이 무인으로 돌아도 되는 일이라 이미 맞는 방법으로 자동화돼 있었음

그렇게 골라낸 “하루 시작 스크립트”를 .claude/skills/오늘작업/SKILL.md라는 스킬로 만들었다. 이제 “2번 해줘” 한마디면 상태 점검 → 오늘 할 일 제안 → (코드 변경이면) 계획·승인 → 구현·검증까지 같은 순서로 진행된다.

만드는 과정에서 한 가지 더 정리했다 — 처음엔 이 규칙을 프로젝트 규칙 파일(AGENTS.md)에 문장으로 바로 적었는데, 곧 스킬 파일에도 같은 절차를 다시 적어야 한다는 걸 깨달았다. 같은 내용을 두 군데에 적어두면 나중에 하나만 고치고 다른 하나는 안 고쳐서 어긋날 수 있다. 그래서 스킬 파일을 “정답”으로 남기고, AGENTS.md는 “이 트리거 문구 → 이 스킬”이라는 연결 한 줄만 남기도록 정리했다.

배운 점 / 재사용 자산

  • “완성”을 한 문장으로 못 박기 — “이것만 되면 완성이다”를 미리 정해두면, 마감이 다가올 때마다 “이거 할까 말까”를 새로 고민하지 않아도 된다.
  • 근거 없는 지표는 안 만든다 — “그럴듯해 보이는 것”과 “진짜 있는 데이터”는 다르다.
  • 반복을 알아채면, 뭘로 자동화할지부터 고른다 — 사람의 선택이 필요하면 스킬, 매번 잊지 말고 챙겨야 하는 거면 규칙, 무인으로 돌아도 되면 예약 실행. 이 세 갈래만 구분해도 어떤 도구를 써야 할지 헷갈리지 않는다.
  • 같은 규칙을 두 곳에 적지 않기 (단일 소스 원칙) — 절차는 스킬 파일 하나에만 자세히 적고, 다른 곳(AGENTS.md)에서는 “어디로 가면 되는지”만 가리키게 하면 나중에 어긋날 일이 없다.

지금 여기서 직접 확인 가능: kevin-one-murex.vercel.app/dashboard — 로그인 없이 누구나 바로 볼 수 있다.