Captain's Log
← Observatory
Observatory·

네 개의 프로젝트를 하나로 — COCOMSS라는 여정

카드 추천·백서 학습(widigg)·설명가능 AI(TrustFin)·증시 리서치 — 흩어져 있던 네 실험을 '투자 전에 배우고 판단한다'는 하나의 제품 논리로 합쳐 COCOMSS를 만들었다. 기능을 늘리는 것과 이야기를 만드는 것은 다른 일이었다.

ProjectFintechCryptoXAIFull-stack

왜 합쳤나

한동안 나는 서로 다른 것을 만들었다. 카드 혜택을 순혜택으로 계산하는 추천 서비스, 어려운 가상자산 백서를 문장 단위로 풀어주는 widigg, 대출 심사를 요인별로 설명하는 TrustFin의 XAI, 그리고 한국 증시를 이벤트 스터디로 파는 증시 리서치 파이프라인. 각각은 잘 돌았지만, 이력서에 나열된 조각들처럼 흩어져 있었다.

이들을 이어 붙일 하나의 질문이 있었다: "가상자산 초보자가 돈을 넣기 전에 무엇을 봐야 하는가?" 답은 각 프로젝트에 이미 조금씩 들어 있었다. 배우고(widigg), 이해하고(XAI), 검증하고(백테스트·리서치), 판단한다. COCOMSS는 이 네 조각을 하나의 여정으로 다시 배열한 것이다.

여정으로 다시 짜기

가장 오래 고민한 건 코드가 아니라 순서였다. 추천을 첫 화면에 두면 초보자는 '왜인지 모른 채' 추천만 보고 나간다. 그래서 학습을 여정의 맨 앞에 뒀다.

배운다 → 이해한다 → 검증한다 → 판단하고 연습한다
백서 학습   XAI 추천     백테스트     미션·모의투자
  • 배운다 — widigg를 통째로 이식하되, 상장된 코인만 노출하도록 바꿨다. "가르치고 나서 거래 화면으로 보내지 않는다"는 원칙 때문이다
  • 이해한다 — TrustFin의 XAI를 이식했다. 다만 원본은 LIME '근사'였는데, COCOMSS의 선별 점수는 가중합이라 근사 없이 정확히 분해할 수 있었다. 막대 합계가 곧 점수다
  • 검증한다 — 증시 리서치의 방법론(이벤트 스터디·백테스트)을 크립토로 옮기고, 부트스트랩으로 "이 성과가 우연일 확률"까지 붙였다
  • 판단·연습한다 — 학습 여정 미션과 실거래 없는 모의 포트폴리오로 마무리했다

데이터는 하나의 출처로

여러 프로젝트를 합칠 때 가장 지저분했던 건 데이터 출처였다. 학습 화면은 CoinGecko, 본체는 거래소 API로 시세가 두 갈래였다. 사용자 눈에는 "같은 서비스 안에서 코인 가격의 출처가 두 개"인 셈이다. 결국 거래소 어댑터(빗썸·업비트 토글) 하나로 통일하고, 학습 카탈로그도 상장 코인만 남겼다. 시세는 처음부터 끝까지 한 소스에서 온다.

배운 것

기능을 늘리는 것과 이야기를 만드는 것은 다른 일이었다. 조각을 다 이어 붙였을 때 비로소 "배운다→판단한다"는 문장이 생겼고, 그 문장이 없었다면 COCOMSS는 그냥 기능 많은 데모였을 것이다. 흩어진 실험을 하나의 서사로 꿰는 감각 — 이게 이번에 가장 크게 남았다.