바이낸스
바이낸스 STP 뜻 2026|Self Trade Prevention·EXPIRE_MAKER 완벽 정리
바이낸스 STP 뜻과 작동 원리를 2026년 최신 기준으로 정리했습니다. Self Trade Prevention이 필요한 이유부터 EXPIRE_MAKER·EXPIRE_TAKER·EXPIRE_BOTH 차이, Maker·Taker 주문 처리 방식, Spot·Margin·Futures·Options 적용 범위와 API 설정까지 알아봅니다.

바이낸스 STP 뜻 2026
바이낸스 주문 기능을 살펴보다 보면
STP
라는 용어를 볼 수 있습니다.
STP는
Self Trade Prevention
의 약자입니다.
쉽게 말하면
내가 낸 매수 주문과 내가 낸 매도 주문이 서로 체결되는 것을 막는 기능
입니다.
예를 들어 BTCUSDT Order Book에 내가 먼저
100,000 USDT Buy Limit
주문을 등록해두었다고 가정해보겠습니다.
이후 같은 계정에서
100,000 USDT 이하 Sell Order
를 제출하면 두 주문이 서로 체결될 가능성이 있습니다.
이것을
Self-Trade
라고 합니다.
Binance의 STP는 이러한 상황을 감지하면 실제 거래를 발생시키는 대신 주문 중 하나 또는 양쪽을 취소해 자기 주문끼리 체결되는 것을 차단합니다.
즉 바이낸스 STP를 한 문장으로 정리하면
“같은 사용자 또는 동일한 거래 그룹의 주문끼리 서로 체결되는 것을 방지하는 주문 보호 기능”
입니다.
---
바이낸스 STP란?
STP는 사용자의 주문이 자신의 다른 주문과 맞물릴 때 실제 거래가 발생하기 전에 이를 차단하는 기능입니다.
Binance에서는 다음과 같은 상황을 Self-Trade로 판단할 수 있습니다.
같은 계정의 주문끼리 체결
또는
같은 tradeGroupId에 속한 계정의 주문끼리 체결
되는 경우입니다.
특히 API를 이용해 여러 전략을 동시에 운영하면 자신도 모르게 반대 방향 주문들이 겹칠 수 있습니다.
예를 들어
전략 A → BTC 매수 주문
전략 B → BTC 매도 주문
을 동시에 운영하는 상황입니다.
두 주문 가격이 서로 만나면 실제 다른 시장 참여자와 거래하는 것이 아니라 자신의 주문끼리 체결될 수 있습니다.
STP는 이를 자동으로 차단합니다.
---
Self-Trade는 왜 문제가 될까?
자기 주문끼리 거래한다고 해서 자산이 다른 사람에게 넘어가는 것은 아닙니다.
하지만 여러 문제가 생길 수 있습니다.
불필요한 거래 수수료
매수·매도가 자신의 주문끼리 체결되더라도 거래가 발생하면 수수료가 발생할 수 있습니다.
거래량 왜곡
실제 시장 참여자 사이의 거래가 아닌데도 거래량으로 기록될 수 있습니다.
시장 데이터 왜곡
의도적인 Self-Trade가 반복되면 실제 시장의 매수·매도 수요를 왜곡할 수 있습니다.
자동매매 전략 충돌
서로 다른 API 전략이 같은 계정에서 동시에 작동하면 의도하지 않은 자기 체결이 발생할 수 있습니다.
따라서 STP는 특히 API·알고리즘 거래 환경에서 중요한 보호 기능입니다.
---
Binance STP 기본 구조
Self-Trade가 발생할 상황에서는 두 종류의 주문이 존재합니다.
Maker Order
이미 Order Book에 먼저 등록되어 있던 주문입니다.
Taker Order
나중에 들어와 기존 Maker Order와 즉시 체결하려는 주문입니다.
STP는
Maker를 취소할지
Taker를 취소할지
또는
둘 다 취소할지
를 정합니다.
이를 결정하는 것이
Self Trade Prevention Mode
입니다.
---
Binance STP 주요 모드
Binance STP를 이해할 때 가장 중요한 세 가지 모드는 다음과 같습니다.
| 모드 | Self-Trade 발생 시 |
|---|---|
| EXPIRE_MAKER | 기존 Maker 주문 취소 |
| EXPIRE_TAKER | 새 Taker 주문 취소 |
| EXPIRE_BOTH | Maker와 Taker 모두 취소 |
Binance의 일반 STP 문서에는 `NONE`도 정의되어 있지만, 현재 STP가 의무화된 시장에서는 NONE 사용이 제한되거나 주문이 거절될 수 있습니다.
따라서 일반 거래에서는 위 세 가지 모드를 중심으로 이해하는 것이 좋습니다.
---
1. EXPIRE_MAKER란?
EXPIRE_MAKER는 현재 Binance에서 가장 중요하게 알아둘 STP 모드입니다.
Self-Trade가 발생하려고 하면
기존에 Order Book에 있던 Maker Order의 남은 수량을 취소
합니다.
그리고 새로 들어온 Taker Order는 이후 정상적으로 다른 Order Book 주문과 거래를 계속 시도합니다.
구조는 다음과 같습니다.
기존 Maker
+
새 Taker
↓
Self-Trade 감지
↓
Maker 취소
↓
Taker 계속 실행
입니다.
---
EXPIRE_MAKER 예시
내 계정에서 BTCUSDT에
Buy Limit 100,000
을 먼저 올려두었다고 가정하겠습니다.
이 주문은 Order Book에 남아 있으므로 Maker입니다.
이후 같은 계정에서
Sell Order 99,900
을 제출했습니다.
두 주문이 서로 체결될 수 있습니다.
STP가
EXPIRE_MAKER
라면
기존
Buy Limit 100,000
의 남은 수량이 취소됩니다.
새로운 Sell Order는 다른 시장 참여자의 주문과 계속 매칭될 수 있습니다.
---
Binance 기본 STP는 EXPIRE_MAKER
현재 Binance의 여러 주요 거래 시장에서는 EXPIRE_MAKER가 기본 STP 모드입니다.
대표적으로
- Spot
- Margin
- Futures
- Options
에서 기본 STP 방식으로 사용됩니다.
따라서 일반 사용자가 별도의 API STP 모드를 지정하지 않는 경우 기존 Maker Order가 취소되는 구조를 먼저 이해하면 좋습니다.
---
2. EXPIRE_TAKER란?
EXPIRE_TAKER는 반대입니다.
Self-Trade가 발생하려고 할 때
새로 들어온 Taker Order의 남은 수량을 취소
합니다.
기존 Maker Order는 그대로 Order Book에 남습니다.
구조는
기존 Maker
+
새 Taker
↓
Self-Trade 감지
↓
Taker 취소
↓
Maker 유지
입니다.
---
EXPIRE_TAKER 예시
내 계정에 이미
BTC Buy Limit 100,000
이 있습니다.
그리고 새롭게
BTC Sell 99,900
주문을 넣었습니다.
이 둘이 서로 체결될 상황에서 EXPIRE_TAKER가 적용되면
새 Sell Order의 남은 수량이 취소
되고
기존 Buy Limit은 Order Book에 그대로 남습니다.
따라서 기존 주문을 유지하는 것이 중요한 전략에서 관련될 수 있습니다.
---
3. EXPIRE_BOTH란?
EXPIRE_BOTH는 Self-Trade가 발생하려고 하면
Maker와 Taker 양쪽의 남은 수량을 모두 취소
합니다.
구조는
Maker
+
Taker
↓
Self-Trade 감지
↓
Maker 취소
+
Taker 취소
입니다.
두 주문을 모두 제거하기 때문에 같은 계정 주문끼리 다시 충돌할 가능성을 줄일 수 있습니다.
---
EXPIRE_MAKER·TAKER·BOTH 비교
| STP 모드 | Maker | Taker |
|---|---|---|
| EXPIRE_MAKER | 취소 | 유지 |
| EXPIRE_TAKER | 유지 | 취소 |
| EXPIRE_BOTH | 취소 | 취소 |
가장 쉽게 기억하면
MAKER → 기존 주문 취소
TAKER → 새 주문 취소
BOTH → 둘 다 취소
입니다.
---
어떤 주문의 STP 설정이 기준이 될까?
이 부분은 매우 중요합니다.
Binance 공식 STP 규칙에서는 Self-Trade 상황이 발생했을 때 Taker Order에 설정된 STP Mode를 기준으로 처리합니다.
즉 이미 Order Book에 올라가 있던 Maker Order가 과거에 어떤 STP 설정을 가지고 있었는지가 핵심이 아닙니다.
실제 충돌이 발생하는 순간
새롭게 들어오는 Taker의 selfTradePreventionMode
를 기준으로
Maker를 없앨지,
Taker를 없앨지,
둘 다 없앨지를 결정합니다.
---
---
Maker와 Taker 차이를 알아야 STP가 쉽습니다
STP를 이해하려면 Maker와 Taker를 구분해야 합니다.
Maker
Order Book에 먼저 주문을 올려 유동성을 제공하는 주문입니다.
예를 들어 현재 BTC가 100,000인데
98,000 Buy Limit
을 등록하면 즉시 체결되지 않고 Order Book에서 기다릴 수 있습니다.
이 주문은 체결 전까지 Maker 역할을 할 수 있습니다.
Taker
이미 Order Book에 있는 주문과 즉시 체결하면서 유동성을 가져가는 주문입니다.
Market Order가 대표적이며 Limit Order도 가격이 즉시 기존 주문과 교차하면 Taker가 될 수 있습니다.
따라서
Limit = 무조건 Maker
는 아닙니다.
---
STP와 Post Only 차이
STP와 Post Only는 모두 Maker·Taker와 관련되어 있지만 목적은 완전히 다릅니다.
STP
내 주문끼리 체결되는 것을 방지
Post Only
내 Limit 주문이 Taker로 즉시 체결되는 것을 방지
입니다.
예를 들어 Post Only는 주문을 넣는 순간 기존 Order Book과 바로 체결될 상황이라면 해당 주문을 취소합니다.
반면 STP는 상대 주문이 내 주문인지 여부를 확인합니다.
따라서
Post Only → Maker 여부 관리
STP → Self-Trade 방지
라고 구분하면 됩니다.
---
STP와 OCO·OTOCO는 완전히 다른 기능입니다
OCO나 OTOCO는 여러 주문 사이의 실행 관계를 관리합니다.
OCO
A 또는 B 중 하나가 실행되면 다른 주문 취소
OTOCO
첫 주문 체결 후 OCO 활성화
STP
서로 독립적으로 존재하는 자신의 주문끼리 체결하려는 상황을 차단
입니다.
따라서 STP는 거래 전략 주문이라기보다 주문 체결 안전장치에 가깝습니다.
---
Binance Spot STP
Binance Spot에서는 STP가 모든 사용자에게 적용됩니다.
Binance는 2023년 Spot과 Margin에 STP를 의무 적용했고 기본 모드를
EXPIRE_MAKER
로 설정했습니다.
따라서 Spot에서 자신의 기존 주문과 새 주문이 서로 체결하려고 하면 기본적으로 기존 Maker Order의 남은 수량이 취소됩니다.
API 사용자는 해당 Symbol에서 허용되는 범위 내에서 다른 STP 모드를 선택할 수 있습니다.
---
Binance Margin STP
Margin Trading도 Spot과 마찬가지로 STP 보호를 적용합니다.
Margin에서는 차입한 자산을 이용해 동시에 여러 방향의 주문을 운용할 수 있기 때문에 Self-Trade 방지가 중요할 수 있습니다.
기본 STP 모드는 역시
EXPIRE_MAKER
입니다.
다만 Margin 거래에는 차입 이자와 청산 위험 등이 별도로 존재하므로 STP가 이러한 위험까지 관리해주는 기능은 아닙니다.
---
Binance Futures STP
Binance Futures에도 STP가 적용됩니다.
현재 Binance는
USDⓈ-M Futures
와
COIN-M Futures
모두에 STP를 적용하고 있습니다.
기본 모드는
EXPIRE_MAKER
입니다.
API 사용자는 지원되는 STP Mode를 이용해 Self-Trade 상황에서 취소할 주문을 지정할 수 있습니다.
---
Futures에서 NONE은 사용할 수 있나요?
현재 Binance Futures에서는 STP가 의무 적용됩니다.
따라서 API 주문에서
selfTradePreventionMode = NONE
을 지정하면 주문이 거절될 수 있습니다.
즉 예전처럼 Futures STP를 완전히 끄고 자신의 주문끼리 체결시키는 방식으로 사용하는 것은 현재 공식 정책과 맞지 않습니다.
---
Binance Options에도 STP가 적용됩니다
2026년 3월 Binance는 Options에도 의무 STP를 적용했습니다.
이 업데이트 이후 Binance의 주요 거래 시장인
Spot Margin Futures Options
모두에서 STP 보호 기능이 적용되는 구조가 됐습니다.
Options에서도 기본 모드는
EXPIRE_MAKER
입니다.
따라서 2026년 현재 STP는 단순한 Spot API 기능이 아니라 Binance 전체 주문 시스템에서 중요한 보호 기능으로 확장됐습니다.
---
tradeGroupId란?
Binance STP는 같은 계정만 비교하는 것은 아닙니다.
공식 안내에서는 동일한
tradeGroupId
에 속한 계정의 주문끼리도 Self-Trade로 판단할 수 있다고 설명합니다.
즉 여러 계정을 하나의 거래 그룹으로 관리하는 환경에서는
계정 A의 매수
와
계정 B의 매도
가 서로 체결되는 것도 STP 대상이 될 수 있습니다.
일반 개인 사용자는 해당 기능을 직접 접할 일이 많지 않을 수 있지만 여러 계정과 API를 운영하는 전문 거래 환경에서는 중요한 개념입니다.
---
STP는 서브계정 간 거래를 모두 막나요?
단순히 계정이 같은 사용자의 서브계정이라는 이유만으로 모든 주문이 자동으로 하나의 STP 그룹으로 묶인다고 단정하면 안 됩니다.
Binance 공식 STP 기준에서 중요한 것은
같은 Account
또는
같은 tradeGroupId
입니다.
따라서 API·기관 계정 환경에서는 현재 계정 그룹 설정을 확인해야 합니다.
---
STP가 실제로 작동하면 주문 상태는 어떻게 보일까?
STP 때문에 주문이 취소되면 API 응답이나 주문 기록에서
EXPIRED_IN_MATCH
상태를 확인할 수 있습니다.
이는 일반적인 사용자의 직접 Cancel과 다릅니다.
쉽게 말하면
“체결 과정에서 STP에 의해 만료된 주문”
이라고 이해하면 됩니다.
---
EXPIRED와 EXPIRED_IN_MATCH 차이
EXPIRED_IN_MATCH
Self-Trade가 발생하려는 순간 STP로 인해 주문이 만료된 경우 볼 수 있습니다.
EXPIRED
다른 주문 조건이나 시장 상황 등에 의해 주문이 만료된 경우 나타날 수 있습니다.
따라서 API 시스템에서 주문이 사라졌다면 단순히
Canceled
만 확인할 것이 아니라 정확한 Order Status도 확인하는 것이 좋습니다.
---
STP는 이미 체결된 거래를 되돌리나요?
아닙니다.
STP의 목적은 Self-Trade가 실제로 발생하기 전에 체결을 방지하는 것입니다.
이미 다른 시장 참여자와 정상적으로 체결된 거래를 취소하거나 되돌리는 기능은 아닙니다.
또 주문이 일부 다른 상대방과 체결된 뒤 남은 수량이 자신의 주문과 충돌하는 경우에는 남은 수량에 STP가 적용될 수 있습니다.
따라서 한 주문이
일부 체결 + 일부 STP 취소
상태가 될 수도 있습니다.
---
EXPIRE_MAKER가 적용돼도 Taker 전체가 항상 체결될까?
아닙니다.
EXPIRE_MAKER는 자신의 Maker Order를 제거해 Self-Trade를 방지하는 기능입니다.
그 이후 Taker Order가 계속 실행되더라도 Order Book에 충분한 다른 상대 주문이 없다면
- 부분 체결
- 미체결
- 주문 만료
등이 발생할 수 있습니다.
즉
STP 작동
과
주문 전체 체결
은 별개의 문제입니다.
---
EXPIRE_TAKER에서도 일부 체결될 수 있나요?
가능합니다.
예를 들어 Taker Order가 먼저 다른 시장 참여자의 주문과 일부 체결된 뒤 자신의 Maker Order를 만나게 될 수 있습니다.
이 순간 STP가 작동하면 남아 있는 Taker 수량이 취소될 수 있습니다.
따라서 EXPIRE_TAKER라고 해서 주문 전체가 처음부터 항상 0% 체결 상태로 취소되는 것은 아닙니다.
Order Book에서 자신의 주문을 만나기 전까지 발생한 정상 체결은 유지될 수 있습니다.
---
STP는 수수료 할인 기능이 아닙니다
STP는 불필요한 자기 체결을 방지함으로써 의도하지 않은 거래 수수료 발생을 줄이는 데 도움을 줄 수 있습니다.
하지만 STP 자체가
Maker Fee 할인
또는
Taker Fee 할인
을 제공하는 기능은 아닙니다.
실제 정상 거래에 적용되는 수수료율은
- VIP 등급
- 거래 시장
- 거래 Pair
- BNB 수수료 설정
- 현재 프로모션
등에 따라 달라질 수 있습니다.
---
STP와 Wash Trading 차이
Self-Trade와 함께 자주 등장하는 용어가 Wash Trading입니다.
Self-Trade가 항상 의도적인 것은 아닙니다.
여러 자동매매 전략이 동시에 실행되다가 실수로 자신의 주문끼리 체결될 수도 있습니다.
반면 거래량이나 시장 활동을 인위적으로 보이게 하기 위해 의도적으로 자기 주문끼리 반복 거래하는 행위는 시장 조작 문제로 이어질 수 있습니다.
STP는 이런 의도하지 않은 자기 체결이 발생하지 않도록 막는 기술적 안전장치입니다.
---
STP는 일반 사용자에게도 필요한가요?
일반 사용자가 하나의 Spot 주문만 수동으로 운영한다면 STP를 직접 신경 쓸 일이 많지 않을 수 있습니다.
하지만 다음과 같은 환경에서는 의미가 커집니다.
여러 주문을 동시에 운영
같은 종목에 매수·매도 주문을 많이 걸어놓는 경우
API 자동매매
여러 Bot 또는 Strategy가 같은 계정을 사용하는 경우
고빈도 거래
매우 많은 주문이 빠르게 생성·취소되는 경우
여러 전략 동시 실행
각 전략이 서로의 주문 상태를 모르는 경우
이런 환경에서는 STP가 전략 충돌을 막는 안전장치 역할을 합니다.
---
API에서 STP 모드를 설정하는 방법
Binance API에서는 주문 파라미터로
`selfTradePreventionMode`
를 사용할 수 있습니다.
예를 들어 지원되는 Symbol에서
`EXPIRE_MAKER`
`EXPIRE_TAKER`
`EXPIRE_BOTH`
등의 값을 지정할 수 있습니다.
다만 사용 가능한 모드는 거래 시장과 Symbol에 따라 달라질 수 있습니다.
Spot API에서는 `exchangeInfo`를 통해 해당 Symbol의
`allowedSelfTradePreventionModes`
를 확인할 수 있습니다.
따라서 API 프로그램에서 모드를 임의로 고정하기보다 현재 Symbol 정보를 먼저 확인하는 것이 좋습니다.
---
일반 앱에서도 STP 모드를 직접 바꾸나요?
일반 웹이나 앱 사용자는 대부분 Binance에서 적용하는 기본 STP 설정의 보호를 받습니다.
세부적으로
EXPIRE_TAKER
또는
EXPIRE_BOTH
같은 모드를 직접 선택하는 기능은 주로 API 거래에서 관련됩니다.
따라서 일반 사용자가 Spot 주문 화면에서 STP 버튼을 찾지 못했다고 해서 STP가 적용되지 않는다고 생각하면 안 됩니다.
---
Spot STP 기본값
Binance Spot과 Margin의 기본 STP는
EXPIRE_MAKER
입니다.
즉 일반적인 Self-Trade 상황에서는 기존 Maker Order의 남은 수량을 만료시키는 방향으로 작동합니다.
API 사용자가 다른 허용 모드를 별도로 지정하면 해당 설정이 사용될 수 있습니다.
---
Futures STP 기본값
Futures 역시 현재 기본값은
EXPIRE_MAKER
입니다.
USDⓈ-M과 COIN-M 모두 STP가 적용됩니다.
Futures API에서 `NONE`을 사용해 STP를 끄려고 하면 주문이 거절될 수 있으므로 현재 공식 규칙을 확인해야 합니다.
---
Options STP 기본값
2026년 3월부터 Options에도 의무 STP가 적용되며 기본 모드는
EXPIRE_MAKER
입니다.
Options API 사용자 역시 지원되는 STP Mode를 이용할 수 있습니다.
따라서 Binance 주요 거래 시장의 기본 STP를 기억한다면
기본 = EXPIRE_MAKER
라고 이해하는 것이 가장 쉽습니다.
---
STP와 Market Order
Market Order 역시 자신의 기존 Maker Order와 충돌할 가능성이 있습니다.
예를 들어 내 계정의 Buy Limit이 Order Book에 있는데 같은 계정으로 큰 Sell Market Order를 제출했다고 가정해보겠습니다.
Sell Market이 Order Book을 따라 체결되다가 자신의 Buy Limit을 만나면 STP가 작동할 수 있습니다.
EXPIRE_MAKER라면 자신의 기존 Buy Limit을 취소하고 Market Order는 다른 유동성을 계속 찾습니다.
하지만 다른 유동성이 부족하다면 Market Order 자체도 모두 체결되지 않을 수 있습니다.
---
STP와 Limit Order
Limit Order도 즉시 기존 주문과 매칭되면 Taker가 될 수 있습니다.
따라서
STP는 Market Order에서만 작동한다
고 생각하면 안 됩니다.
예를 들어 Order Book에 자신의 Buy Limit이 존재하는 상태에서 해당 가격과 교차하는 Sell Limit을 제출한다면 새로운 Sell Limit이 Taker 역할을 하면서 STP가 발생할 수 있습니다.
---
STP와 Reduce Only 차이
Futures에서 Reduce Only와 STP를 혼동할 수도 있습니다.
Reduce Only
기존 포지션을 줄이는 방향으로만 주문을 제한합니다.
STP
자신의 주문끼리 서로 체결되는 것을 방지합니다.
즉
Reduce Only → Position Size 관리
STP → Order Matching 관리
입니다.
두 기능은 목적이 전혀 다릅니다.
---
STP와 Hedge Mode 차이
Hedge Mode에서는 같은 Futures 계약에 Long과 Short Position을 동시에 관리할 수 있습니다.
하지만 이것이 Self-Trade를 의미하는 것은 아닙니다.
Long·Short Position 동시 보유
와
자신의 Buy·Sell Order가 서로 체결
되는 것은 별개의 개념입니다.
STP는 주문 체결 단계에서 Self-Trade를 방지하고 Hedge Mode는 Position Mode를 관리합니다.
---
STP가 작동했는데 왜 주문이 사라졌을까?
Open Orders에 있던 주문이 갑자기 사라졌다면 여러 이유가 있을 수 있습니다.
사용자가 직접 취소했거나,
주문이 체결됐거나,
Time in Force 조건으로 종료됐거나,
STP가 발생했을 수도 있습니다.
STP가 원인이라면 Order History 또는 API 응답에서
EXPIRED_IN_MATCH
등의 상태를 확인할 수 있습니다.
API 자동매매 시스템에서는 이 상태를 별도로 처리하는 것이 중요합니다.
---
봇에서는 EXPIRED_IN_MATCH 처리가 중요합니다
자동매매 Bot이
주문이 없어졌다 = 체결됐다
라고만 판단하면 문제가 생길 수 있습니다.
STP로 주문이 사라졌는데 Bot이 이를 체결로 오인하면
- Position 계산 오류
- 잘못된 후속 주문
- 예상하지 못한 재주문
- 주문 수량 불일치
등이 발생할 수 있습니다.
따라서 API에서는
FILLED
과
CANCELED
과
EXPIRED_IN_MATCH
를 구분해서 처리하는 것이 좋습니다.
---
바이낸스 STP 자주 하는 실수
STP를 Stop Loss 기능이라고 생각
STP의 Stop은 손절과 관련된 표현이 아닙니다.
Self Trade Prevention의 약자입니다.
내 주문끼리 실제로 거래된 뒤 취소된다고 생각
STP는 Self-Trade가 발생하기 전에 주문을 만료시켜 체결을 막습니다.
EXPIRE_MAKER가 새 주문을 취소한다고 생각
반대입니다.
기존 Maker Order가 취소됩니다.
EXPIRE_TAKER가 기존 주문을 취소한다고 생각
새롭게 들어온 Taker Order의 남은 수량이 취소됩니다.
EXPIRE_BOTH가 한쪽만 취소한다고 생각
Maker와 Taker 양쪽을 취소합니다.
Limit Order는 항상 Maker라고 생각
즉시 기존 주문과 체결되면 Limit도 Taker가 될 수 있습니다.
일반 앱에서 STP 메뉴가 안 보이면 적용되지 않는다고 생각
현재 Binance 주요 시장에서는 STP가 시스템 차원에서 적용되고 있습니다.
STP와 Post Only를 같은 기능이라고 생각
STP는 자기 체결을 막고 Post Only는 Taker 체결을 막습니다.
---
바이낸스 STP 체크리스트
- [ ] STP가 Self Trade Prevention인지 확인
- [ ] Maker와 Taker 차이 확인
- [ ] 기존 Open Orders 확인
- [ ] 반대 방향 주문 확인
- [ ] 기본 EXPIRE_MAKER 구조 이해
- [ ] API 사용 시 지원되는 STP Mode 확인
- [ ] Spot Symbol의 allowedSelfTradePreventionModes 확인
- [ ] EXPIRED_IN_MATCH 상태 처리
- [ ] 여러 Bot의 주문 충돌 여부 확인
- [ ] tradeGroupId 사용 여부 확인
- [ ] Futures에서 NONE 사용 제한 확인
- [ ] STP와 Post Only를 구분
- [ ] STP와 Reduce Only를 구분
특히 API를 운영한다면
Open Orders → Maker/Taker → STP Mode → EXPIRED_IN_MATCH → 후속 주문
순서로 확인하는 것이 중요합니다.
---
바이낸스 STP FAQ
바이낸스 STP란 무엇인가요?
Self Trade Prevention의 약자로 같은 계정 또는 동일한 tradeGroupId에 속한 주문끼리 서로 체결되는 것을 방지하는 기능입니다.
Self-Trade란 무엇인가요?
자신이 낸 Buy Order와 자신의 Sell Order가 서로 체결되는 상황입니다.
바이낸스 STP 기본 모드는 무엇인가요?
2026년 현재 Binance의 Spot·Margin·Futures·Options에서 기본 STP 모드는 EXPIRE_MAKER입니다.
EXPIRE_MAKER란 무엇인가요?
Self-Trade가 발생하려고 할 때 기존 Order Book의 Maker Order 남은 수량을 취소하는 방식입니다.
EXPIRE_TAKER란 무엇인가요?
새롭게 들어온 Taker Order의 남은 수량을 취소하고 기존 Maker Order는 유지하는 방식입니다.
EXPIRE_BOTH란 무엇인가요?
Self-Trade가 예상되면 Maker와 Taker 양쪽의 남은 주문 수량을 모두 취소합니다.
NONE도 있나요?
Binance의 일반 STP 정의에는 NONE이 존재하지만 STP가 의무화된 거래 시장에서는 NONE 사용이 제한될 수 있습니다. 특히 현재 Futures에서는 NONE 설정 시 주문이 거절될 수 있습니다.
어떤 주문의 STP Mode가 기준인가요?
Binance 공식 규칙 기준 Self-Trade가 발생하려는 순간 Taker Order에 설정된 STP Mode가 기준이 됩니다.
Spot에서도 STP가 적용되나요?
네. Spot과 Margin에서는 STP가 전체 사용자에게 의무 적용되며 기본값은 EXPIRE_MAKER입니다.
Futures에서도 적용되나요?
네. 현재 USDⓈ-M과 COIN-M Futures 모두 STP가 적용됩니다.
Options에서도 적용되나요?
네. 2026년 3월부터 Binance Options에도 의무 STP가 적용됐습니다.
일반 앱에서 설정해야 하나요?
일반 사용자는 기본 STP 보호가 시스템 차원에서 적용됩니다. 세부 Mode 선택은 주로 API 사용자가 관련됩니다.
STP 때문에 취소된 주문은 어떻게 확인하나요?
Order History나 API 주문 상태에서 EXPIRED_IN_MATCH 상태를 확인할 수 있습니다.
STP와 Post Only 차이는 무엇인가요?
STP는 자신의 주문끼리 체결되는 것을 막고 Post Only는 주문이 Taker로 즉시 체결되는 것을 방지합니다.
STP와 Reduce Only 차이는 무엇인가요?
Reduce Only는 Futures Position Size를 줄이는 기능이고 STP는 Order Matching 단계에서 Self-Trade를 방지합니다.
STP가 수수료를 할인해주나요?
아닙니다. 의도하지 않은 자기 체결로 발생할 수 있는 불필요한 거래와 수수료를 방지하는 기능입니다.
---
바이낸스 STP 핵심 정리
| 항목 | 내용 |
|---|---|
| STP | Self Trade Prevention |
| 핵심 | 자기 주문끼리 체결 방지 |
| Self-Trade 대상 | 같은 계정 또는 같은 tradeGroupId |
| 기본 모드 | EXPIRE_MAKER |
| EXPIRE_MAKER | 기존 Maker 취소 |
| EXPIRE_TAKER | 새 Taker 취소 |
| EXPIRE_BOTH | 양쪽 취소 |
| Spot | 적용 |
| Margin | 적용 |
| USDⓈ-M Futures | 적용 |
| COIN-M Futures | 적용 |
| Options | 적용 |
| API 세부 모드 | 지원 범위 내 선택 |
| STP 만료 상태 | EXPIRED_IN_MATCH |
| Post Only와 차이 | 자기 체결 방지 vs Taker 방지 |
| 수익 보장 기능 | X |
가장 쉽게 기억하면
STP → 내 주문끼리 거래하지 않게 막는 기능
EXPIRE_MAKER → 기존 주문 삭제
EXPIRE_TAKER → 새 주문 삭제
EXPIRE_BOTH → 둘 다 삭제
입니다.
---
마무리
바이낸스 STP는 Spot·Margin·Futures·Options 거래에서 자신의 주문끼리 서로 체결되는 것을 방지하는 Self Trade Prevention 기능입니다.
특히 여러 API 전략이나 자동매매 Bot을 동시에 사용하면 같은 계정에서 Buy와 Sell 주문이 서로 겹칠 수 있습니다.
STP는 이러한 상황을 감지해 실제 Self-Trade가 발생하기 전에 주문을 만료시킵니다.
2026년 현재 가장 중요한 기본 설정은
EXPIRE_MAKER
입니다.
그리고 세 가지 핵심 모드는
EXPIRE_MAKER → 기존 Maker 취소
EXPIRE_TAKER → 새 Taker 취소
EXPIRE_BOTH → 양쪽 취소
로 구분할 수 있습니다.
또 STP 처리 기준은 Self-Trade가 발생하려는 순간 Taker Order의 STP Mode입니다.
API를 사용하는 경우에는 주문이 사라졌다고 단순히 체결됐다고 판단하지 말고
FILLED CANCELED EXPIRED EXPIRED_IN_MATCH
상태를 정확하게 구분하는 것이 중요합니다.
STP는 거래 방향을 결정하거나 손실을 제한하는 전략이 아니라 주문 매칭 과정에서 발생할 수 있는 자기 체결을 방지하는 안전장치라는 점을 기억하면 됩니다.
이 글은 Binance 주문 기능을 설명하기 위한 정보성 콘텐츠이며 특정 거래 전략이나 투자 수익을 보장하지 않습니다. 가상자산 및 파생상품 거래에는 가격 변동과 원금 손실 위험이 있습니다.
바이낸스 가입하고 혜택 확인하기+
바이낸스 가입하기
바이낸스 회원가입부터 이메일 인증, KYC, OTP 설정까지 COINSIGN의 단계별 가이드를 확인하면서 진행할 수 있습니다.
바이낸스 가입하기바이낸스 가입방법 8단계 가이드 보기 →