신규 상장이나 락업 해제(언락) 물량이 거래소에 입금되는 순간 목표가에 팔고 싶다는 요청이었습니다.
암호화폐 거래소 13곳을 한 프로그램에 담은 입금 스나이퍼 봇으로 만들었습니다.
승인된 계정과 API키만 봇을 쓸 수 있게 하는 관리자 서버도 함께 납품했습니다.
플랫폼
13개 CEX 현물 REST (MEXC, 바이낸스, 바이빗, OKX 등)
특징
입금 감지 즉시 지정가 반복 매도 계정, API키 관리자 서버
유형
코인 상장, 언락 청산
제작 기간
약 3~4주
납품한 봇 프로그램. 입금 전에는 주문이 실패로 돌아오고, 잔고가 잡힌 뒤의 시도에서 접수됩니다. 이 봇은 그 시도를 반복합니다 (주문과 수량은 예시)
01배경과 요구사항
고객은 신규 상장이나 언락 물량을 여러 거래소에 나눠 갖고 있었습니다.
코인이 거래소에 입금되는 순간 미리 정해 둔 가격에 팔아 정리하려는 것이 목적이었습니다.
상장이나 언락 직후에는 가격이 초 단위로 바뀌어서 몇 초만 늦어도 원하는 가격을 놓칩니다.
사람이 하기는 어려운 일이었습니다. 입금이 언제 반영될지 알 수 없어 계속 화면을 보고 있어야 했고,
입금이 뜬 걸 보고 손으로 주문을 넣으면 가격은 이미 밀려 있곤 했습니다.
물량은 13개 거래소에 흩어져 있었고, 거래소마다 인증 방식과 종목 표기, 주문 규칙이 달랐습니다.
그래서 요청은 이렇게 정리됐습니다. 입금되면 곧바로 목표 지정가로 매도하고, 주문이 들어갈 때까지 반복한다.
13개 거래소를 한 프로그램에서 다룬다. 관리자가 승인한 계정과 API키만 봇을 쓸 수 있게 한다.
02구현 방식
봇이 하는 일은 단순합니다. 입금을 기다리면서 목표가 매도 주문을 계속 넣어 봅니다.
설정한 거래소와 코인에 물량이 들어왔는지 지켜봅니다.
미리 정한 가격과 수량으로 지정가 매도 주문을 보냅니다.
주문이 실패하면 아직 입금 전이라고 보고, 잠깐 쉰 뒤 성공할 때까지 다시 보냅니다.
매도가 끝나면 체결 내역을 관리자 서버로 보내 아이디별로 기록합니다.
시스템 구성. 입금 감지부터 반복 매도, 관리자 서버 보고까지관리자 서버의 API 키 화면. 거래소 13곳의 인증 방식이 달라도 여기서는 한 표입니다
13개 거래소를 한 봇에 담으려고 거래소마다 다른 부분을 따로 떼어 냈습니다.
인증 서명, 종목 표기, 주문이 성공했는지 판정하는 방법이 거래소별로 들어가 있고, 매도를 반복하는 부분은 어느 거래소든 똑같이 돕니다.
사용자는 TRX처럼 코인 이름만 넣으면 됩니다. TRXUSDT, TRX-USDT, KRW-TRX처럼 거래소마다 다른 표기로는 봇이 바꿔 줍니다.
로그인과 키 확인, 거래 보고는 관리자 서버가 맡습니다.
서버에는 거래소의 공개키만 승인 목록으로 저장합니다. Secret Key는 사용자가 자기 PC의 봇에 직접 입력하므로 서버도 개발자도 갖고 있지 않습니다.
03해결한 기술 난제
거래소 13곳이 전부 달랐습니다
인증 서명 방식도, 종목 표기도, 주문이 성공했다고 알려 주는 응답 형태도 거래소마다 달랐습니다.
서명만 해도 네댓 가지 방식이 섞여 있었습니다.
이 차이를 봇 안쪽에서 정리해 두고, 사용자가 보는 동작은 어느 거래소에서나 같게 만드는 데 시간이 가장 많이 들었습니다.
주문 성공을 알리는 응답이 거래소마다 달라서, 실제로 접수된 주문을 실패로 잘못 읽는 일이 있었습니다. 거래소별로 성공 응답의 형태를 표로 정리해 넣은 뒤로는 생기지 않습니다.
키나 서명이 틀리면 어떤 거래소는 빈 응답이나 오류 웹페이지를 돌려줍니다. 처음에는 봇이 이걸 읽다가 멈췄습니다. 지금은 키나 서명이 잘못됐을 수 있다고 안내합니다.
HTX는 주문할 때 계정 번호를 따로 넣어야 해서 먼저 계정 목록을 조회합니다. 조회는 되는데 거래가 거부되는 경우가 있어, 그 키가 실제로 어느 계정의 것인지 확인하는 진단 도구도 만들었습니다.
재시도 사이의 대기 시간을 잘게 쪼개 두어, 반복 중에 중지 버튼을 누르면 바로 멈춥니다.
존재하지 않는 계정이나 거래할 수 없는 종목처럼 다시 해도 소용없는 오류는 반복하지 않습니다. 바로 멈추고 원인을 알려 줍니다.
04주요 기능
봇이 서버로 보고한 입금 후 매도 이벤트 목록
입금이 잡히면 목표가로 매도 주문을 넣고, 안 되면 될 때까지 다시 넣습니다. 재시도 간격은 사용자가 정합니다.
※ 본 사례는 과거 고객 요구사항을 익명 처리하여 재구성한 것이며, 수익률과 수익금은 공개하지 않습니다.
알고랩은 매매 자동화 프로그램 제작 서비스이며, 종목 추천, 투자 자문, 수익 보장 서비스가 아닙니다.
신규 상장, 언락 직후는 가격 변동이 극심하며 설정가에 체결되지 않을 경우 손실은 사용자가 감수합니다. 가상자산 투자는 원금 손실 위험이 있습니다.
여러 거래소를 한꺼번에 다뤄야 한다면
쓰시는 거래소와 하려는 매매를 상담에서 알려 주세요.
거래소별로 되는 것과 안 되는 것부터 확인해 드립니다.