작업 목록
한눈에
암호화폐 자동 청산·통합 매매 대시보드
여러 거래소에 흩어진 코인 보유분을 한 화면에서 보고, 매도 판단을 봇에 맡기는 개인용 자동 청산 서비스입니다. 거래소 어댑터를 추가하는 방식으로 다른 거래소로 확장할 수 있습니다.
- 기간
- 2026.09 ~ 2026.10
- 분류
- 웹앱, 관리자
국내 거래소 두 곳에서 코인을 직접 사는 개인 투자자가 쓰는 서비스입니다. 매수는 사용자가 거래소 앱에서 하되, 익절·손절·트레일링 같은 '파는 판단'을 사람이 24시간 지켜볼 수 없다는 문제를 풉니다. 거래소 계좌에서 매수가 감지되면 자동으로 매매 사이클이 열리고, 설정한 목표가·손절가·추적 폭에 따라 봇이 시장가로 매도한 뒤 실현손익을 기록합니다. 화면은 React 기반 대시보드 하나, 서버는 거래소별 API 서버와 매매 봇 프로세스, 데이터는 거래소별 PostgreSQL로 나뉘어 Docker로 함께 배포됩니다. 거래소마다 프로세스와 DB를 완전히 분리해 한쪽 장애가 다른 쪽 주문에 번지지 않게 하고, 화면에서만 두 거래소를 합쳐 보여주는 구조를 택했습니다.
서비스 화면





관리자


사용한 기술
- React
- react-admin
- Node.js
- Fastify
- PostgreSQL
- Drizzle ORM
- WebSocket
- Docker Compose
- Telegram Bot API
- Bithumb API
- Upbit API
화면
- React + react-admin 관리자형 대시보드, 두 거래소 데이터를 합쳐 표시
- 실시간 호가·체결·차트는 브라우저가 거래소 WebSocket에 직접 연결
- 토스증권 스타일의 다크 디자인 시스템을 문서화해 모든 화면에 적용
서버 · 데이터
- Fastify REST API — 조회·설정·주문 요청, 거래소마다 프로세스 1개
- 매매 봇 프로세스 — 거래소 Private WebSocket으로 체결 감지, 청산 판정·주문
- PostgreSQL + Drizzle — 사이클·체결·이벤트·설정을 영속화, 봇 재시작에도 상태 유지
- 거래소 어댑터 계층 — 인증·주문·시세 차이를 안에서 흡수하고 공통 모델로 정규화
인프라
- Docker Compose — 거래소별 API·봇·DB 컨테이너와 앱을 한 번에 기동
- 단일 관리자 비밀번호 로그인과 HTTP-only 쿠키 세션, IP별 로그인 제한
- 실주문은 환경 변수 3중 확인을 모두 켜야 활성화, 기본은 모의 주문