암호화폐 & 선물
크립토 피드 핸들러란 WebSocket 스트림을 통해 거래소로부터 실시간 시장 데이터, 마크 가격, 티커, 그리고 체결이나 포지션 변경 같은 계좌 이벤트를 수신하고, 그 데이터를 최신 상태로 유지하며, 포지션에 가격을 매기고 청산을 감지하고 손절을 이동시키는 플랫폼의 각 부분에 이를 전달하는 구성 요소입니다.
자동화 플랫폼은 그 데이터 피드만큼만 진실할 수 있습니다. 피드가 오래되면 미실현 손익과 청산까지의 거리가 잘못됩니다; 계좌 이벤트를 놓치면 거래소에서 청산된 포지션이 여전히 열려 있는 것으로 표시되거나, 익절 체결이 완전 청산으로 오인됩니다; 스트림이 끊겼을 때 값을 조작해내면 대시보드는 거래소가 갖고 있지 않은 숫자를 보여주게 됩니다. 피드는 또한 비용과 요청 한도(rate-limit) 예산을 소모하므로, 사용자마다 하나의 가격 스트림을 여는 설계는 확장되지 않고, 계좌별로 REST 엔드포인트를 폴링하는 설계는 한도에 빠르게 부딪힙니다.
AlgoVesta는 공개 데이터와 비공개 데이터를 분리합니다. 공개 마크 가격과 티커는 공유 피더가 거래소의 공개 스트림에서 한 번만 읽어와 모든 계좌에 제공되므로, 비용이 사용자 수에 따라 증가하지 않습니다; 선물과 스팟은 서로 다른 스트림을 사용하며 같은 심볼이라도 결코 혼합되지 않습니다. 주문 업데이트, 체결, 포지션 변경 같은 비공개 계좌 이벤트는 각 계좌 자체의 인증된 스트림에서 읽어오며 짧은 주기로 REST와 대조하여 확인되므로, 거래소에서 0이 된 포지션은 청산된 것으로 감지되며 부분 익절 체결은 그렇게 취급되지 않습니다. 오래되었거나 누락된 데이터는 추정되지 않고 알 수 없음으로 표시되며, 이는 사용자에게 보여지는 수치가 반드시 거래소 자체의 수치여야 한다는 원칙에 부합합니다. 피드 상태는 모니터링되며, 조용한 스트림은 "소식 없음"이 아니라 사고로 취급됩니다. 지원 거래소 페이지와 마크 가격 항목을 참조하십시오.
200개의 계좌가 BTCUSDT 포지션을 보유하고 있습니다. 공유 피더는 하나의 마크 가격 스트림을 열어두고 이를 통해 모든 계좌의 미실현 손익을 업데이트합니다. 한 계좌의 익절 주문이 절반 크기로 체결되면, 그 계좌의 비공개 스트림이 체결을 보고합니다; 플랫폼은 부분 청산을 기록하고 나머지 절반에 대해 포지션을 계속 열어두며, 공유 피드로부터 계속 가격을 매깁니다. 거래소의 스트림이 멈추면 영향받은 수치는 마지막 값에 고정되는 대신 몇 초 안에 오래됨으로 표시됩니다.