SHARKRULE / 학습 가이드

시장가와 지정가 주문의 차이: 코인 호가창과 체결 과정 이해하기

시장가 주문은 현재 거래할 수 있는 상대 주문을 이용해 체결을 시도합니다. 지정가 주문은 여기에 매수 최고가 또는 매도 최저가라는 조건을 붙입니다. 차이를 이해하려면 화면에 표시된 가격뿐 아니라 그 가격에 거래할 수 있는 수량도 봐야 합니다. 이 글은 거래소 주문이 처리되는 과정을 설명하는 기초 자료이며, 특정 코인이나 매매 전략을 권하지 않습니다.

SharkRule · 문서 확인일

시장가와 지정가, 무엇을 정하는 주문일까?

지정가 매수에서 입력한 가격은 한 단위당 지불할 수 있는 최고 가격입니다. 지정가 매도에서는 받을 수 있는 최저 가격입니다. 조건보다 유리한 가격으로 체결될 수 있지만, 주문이 전부 체결된다는 뜻은 아닙니다. 시장가는 사용자가 정한 지정가 제한 없이 현재 상대 주문을 이용하며, 실제 처리에는 해당 거래소의 보호 장치와 주문 규칙도 적용됩니다.

가격 조건과 체결 가능성으로 비교하기
확인할 점시장가 주문지정가 주문
사용자가 정하는 내용매수·매도 방향과 수량 또는 주문 총액방향, 수량, 가격 조건
실제 체결가처리 시점에 남아 있는 상대 호가에 따라 결정지정한 가격 또는 더 유리한 가격
전량 체결 여부유동성과 거래소 제한에 따라 달라짐일부만 체결되거나 전혀 체결되지 않을 수 있음
최근 거래가의 의미이전에 체결된 거래의 가격지정가 체결을 보장하는 가격이 아님

현재가보다 먼저 볼 것: 매수호가, 매도호가, 수량

호가창은 사람들이 얼마에 얼마나 사고팔려고 기다리는지 보여 줍니다. 가장 높은 매수호가는 현재 사려는 쪽의 최고 가격이고, 가장 낮은 매도호가는 팔려는 쪽의 최저 가격입니다. 즉시 매수하려면 매도호가를, 즉시 매도하려면 매수호가를 상대하게 됩니다.

예를 들어 최고 매수호가가 99.80이고 최저 매도호가가 100.00이면 스프레드는 0.20입니다. 그러나 100.00에 살 수 있는 수량이 적으면 주문 전체를 그 가격에 처리할 수 없습니다. 최근 거래가가 100이었다는 사실도 새로운 매도 물량을 만들어 주지는 않습니다. 호가 가격과 수량, 관측 시점을 함께 확인해야 하는 이유입니다.

가상 호가창으로 평균 체결가 계산하기

아래는 계산을 위한 가상의 매도호가입니다. 실제 코인 가격이나 주문 추천이 아닙니다. 가격은 가상의 통화 단위 단위로 표시하고 수수료는 우선 제외합니다. 계산하는 동안 다른 주문이 끼어들지 않고 표시된 수량이 유지된다고 가정합니다.

가상의 매도호가 세 단계
한 단위당 가격매도 수량해당 수량의 거래 금액
100.000.440.00
101.000.660.60
103.000.551.50

같은 호가창에 세 가지 주문을 넣으면

시장가로 1개를 매수하면 이 예제에서는 100에 0.4개, 101에 0.6개가 체결됩니다. 거래 금액은 0.4 × 100 + 0.6 × 101 = 100.60입니다. 총수량이 1개이므로 평균 체결가도 100.60입니다. 처음 본 최저 매도호가 100을 비교 기준으로 삼으면 0.60, 즉 0.6% 높은 가격입니다. 실제 주문은 그사이 호가가 바뀌어 다른 결과가 나올 수 있습니다.

지정가 100으로 1개를 매수하면 표시된 물량 중 최대 0.4개만 조건에 맞습니다. 나머지 0.6개를 101에 사지는 않습니다. 잔량이 호가창에서 기다릴지, 설정된 조건에 따라 취소되거나 만료될지는 별도로 정해야 합니다. 100의 물량이 다른 주문에 먼저 체결되면 0.4개조차 확보되지 않을 수 있습니다.

지정가를 102로 입력한 1개 매수 주문은 같은 가정에서 앞의 두 호가를 즉시 이용할 수 있습니다. 이때도 총금액은 100.60이지 102가 아닙니다. 지정가는 반드시 그 가격에 거래하라는 뜻이 아니라 허용 가격의 경계입니다. 이런 주문은 기존 유동성을 가져가는 테이커로 체결될 수 있습니다. 지정가라는 이름만으로 메이커 수수료를 적용받는다고 판단하면 안 됩니다.

스프레드, 슬리피지, 수수료를 분리해서 기록하기

스프레드는 최우선 매수호가와 매도호가 사이의 차이입니다. 슬리피지는 실제 체결가와 미리 정한 비교 가격 사이의 차이입니다. 비교 기준이 주문 전 최우선 호가인지, 신호가 발생한 순간의 가격인지 함께 적어야 숫자를 해석할 수 있습니다. 거래 수수료는 이와 별도로 거래소가 부과하는 비용입니다.

예제의 100.60은 수수료 전 금액입니다. 실제 수수료율과 납부 자산은 거래소, 상품, 계정 조건과 체결 방식 등에 따라 달라질 수 있으므로 현재 요율과 체결 내역을 확인해야 합니다. 여기서는 임의의 실제 요율을 넣지 않습니다. 수수료가 매수한 자산에서 차감된다면 체결 수량과 사용 가능한 잔고가 다르게 보일 수도 있습니다.

지정가 100은 단가 조건입니다. 주문 전체의 지출 한도나 수수료 예산을 대신하지 않습니다. 최소 주문 금액, 수량 단위, 호가 단위도 거래쌍별로 확인하세요. 프로그램이 최소 금액을 맞추려고 수량을 올리면 원래 정한 지출 범위를 벗어날 수 있습니다. 조정된 주문도 같은 예산 검사를 거쳐야 합니다.

부분 체결 뒤에는 잔량과 취소 결과를 따로 확인하기

주문 접수는 전량 체결과 다릅니다. 1개 주문 중 0.4개가 체결되었다면 체결분 0.4개와 잔량 0.6개를 구분해 기록합니다. 잔량을 취소해도 이미 체결된 0.4개가 되돌아가지는 않습니다. 주문이 열려 있는 동안 묶여 있는 금액도 새로운 주문의 예산과 중복 계산하면 안 됩니다.

취소 요청을 보내는 동안 추가 체결이 발생할 수 있습니다. 따라서 ‘취소 요청됨’이라는 메시지만 보고 같은 수량을 다시 주문하지 마세요. 거래소가 알려 주는 최종 체결 수량과 잔량을 확인한 뒤 다음 주문을 계산해야 중복 주문을 피할 수 있습니다.

IOC는 즉시 체결할 수 있는 수량만 처리하고 나머지를 취소하는 조건입니다. FOK는 즉시 전량 체결할 수 있을 때만 진행하는 조건입니다. Post-only는 들어가자마자 기존 상대 주문과 체결되는 것을 막기 위한 옵션입니다. 거래소와 주문 유형마다 지원 범위와 세부 처리 방식이 다르므로 이름만 보고 동작을 가정하지 말고 해당 문서를 확인하세요.

자동매매 규칙에는 가격 이외의 조건도 필요합니다

‘100이 되면 매수’만으로는 실행 조건이 완성되지 않습니다. 현재가, 최저 매도호가, 최고 매수호가 중 무엇을 보는지에 따라 행동이 달라집니다. 데이터가 오래되었거나 연결이 끊겼을 때는 무엇을 할지도 정해야 합니다. 아래 항목은 특정 수익 전략이 아니라 주문 명세를 점검하는 틀입니다.

  1. 거래소 상품, 거래쌍, 매수·매도 방향, 사용할 가격 필드를 기록합니다.
  2. 수량 또는 주문 총액, 단가 제한, 수수료를 포함한 지출 한도를 구분합니다.
  3. 주문 유효 조건과 부분 체결 뒤 잔량을 처리할 방식을 정합니다.
  4. 이미 체결된 수량과 미체결 주문에 묶인 금액을 함께 반영합니다.
  5. 응답이 없으면 주문 상태와 체결 내역부터 확인합니다. 시간 초과가 곧 주문 실패는 아닙니다.
  6. 프로그램 재시작 후 거래소의 미체결 주문과 잔고를 대조한 다음 새 주문을 허용합니다.

실제 자금을 쓰지 않고 확인할 두 가지 상황

첫 번째는 위 호가창 계산입니다. 세 주문의 예상 금액과 잔량을 직접 적은 뒤, 100에 있던 0.4개가 사라진 경우를 다시 계산해 보세요. 같은 신호를 보았어도 주문 처리 시점의 호가가 다르면 결과가 달라진다는 점을 확인할 수 있습니다.

두 번째는 주문이 접수되었지만 응답만 사라진 상황입니다. 다음 행동은 같은 주문을 즉시 반복하는 것이 아니라 주문 식별자와 거래소 상태를 확인하는 것입니다. 시험 기록에는 관측 시각, 요청 내용, 주문 식별자, 체결 수량, 평균 체결가, 수수료와 최종 상태를 남깁니다. API 키나 비밀값은 넣지 않습니다.

이 연습은 주문 과정을 이해하고 프로그램의 처리 방식을 점검하기 위한 것입니다. 실제 유동성이나 수익을 입증하지 않습니다. SharkRule의 현재 지원 거래소와 주문 기능은 별도로 확인해야 하며, 이 글이 특정 연동 기능의 출시를 뜻하지는 않습니다. 이용 가능 여부는 거주 지역, 계정과 거래소 상품에 따라 달라질 수 있습니다.

자주 묻는 질문

시장가 주문은 화면에 나온 현재가로 전부 체결되나요?

아닙니다. 처리 시점의 상대 호가와 수량에 따라 여러 가격에서 체결될 수 있습니다. 거래소의 보호 규칙이나 거래 상태도 결과에 영향을 줍니다.

가격이 지정가에 닿았는데 왜 미체결인가요?

그 가격의 수량이 부족하거나 다른 주문이 먼저 체결되었을 수 있습니다. 표시된 값이 최근 거래가인지도 확인하고, 최종 판단은 주문 상태와 체결 내역으로 하세요.

지정가 주문은 항상 메이커인가요?

아닙니다. 기존 상대 호가와 바로 맞는 지정가 주문은 테이커로 체결될 수 있습니다. Post-only 지원 여부와 수수료 체계는 거래소별로 확인해야 합니다.

봇을 끄면 미체결 주문도 없어지나요?

그렇게 가정하면 안 됩니다. 새 주문 중지, 잔량 취소, 이미 발생한 체결 확인은 별도의 단계입니다.

공식 자료와 출처

링크된 공식 문서를 바탕으로 AI의 도움을 받아 작성했습니다. 예시는 가상 상황이며 실제 계정 테스트나 수익률 비교를 수행하지 않았습니다.