altnara 자금흐름 데스크는 거래소가 내주는 값이 창구마다 어떻게 갈리는지를 점검합니다. 이번 노트의 주제는 만기가 없는 계약의 만기 칸에 거래소가 무엇을 적어 두는가입니다. 운영자 보유 가능성: 본 매체는 비트코인·주요 알트 및 스테이블코인 보유 가능성을 명시합니다.
결론을 먼저 적겠습니다. 여덟 거래소의 공개 창구 열두 곳에서 5,499행을 받아, 각 거래소가 자기 칸으로 무기한이라고 분류해 준 3,985종을 골라 만기 칸을 셌습니다. 끝이 없다고 적는 방식은 여섯 가지였습니다.
| 방식 | 적어 둔 값 | 거래소 | 종수 |
|---|---|---|---|
| 먼 미래의 상수 | 2100년 12월 25일 | 바이낸스 두 창구 | 592 |
| 먼 미래의 상수 | 3000년 1월 1일 | 데리비트 | 110 |
| 숫자 0 | 문자열 0 | 바이비트 두 창구 | 854 |
| 빈 값 | 빈 문자열 | 비트겟 두 창구 | 796 |
| 행에서 키를 뺌 | 같은 응답의 만기물 행에는 있음 | 크라켄 선물 | 279 |
| 창구에 칸이 없음 | 어느 행에도 없음 | 게이트 두 창구, 하이퍼리퀴드 | 1,223 |
| (예외) | 실제 날짜가 적힘 | 바이낸스 130, 바이비트 1 | 131 |
| 합계 | 3,985 |
손검산은 이렇습니다. 592 더하기 110 은 702, 여기에 854 를 더하면 1,556, 796 을 더하면 2,352, 279 를 더하면 2,631, 1,223 을 더하면 3,854, 131 을 더하면 3,985 입니다.
재는 자리를 못박아 두겠습니다. 여기서 잰 값은 전부 인증 헤더를 한 번도 붙이지 않고 부른 공개 창구 응답입니다. API 키를 쓰지 않았고 주문을 넣은 적도 없습니다. 파이썬으로 직접 받아 파일로 저장했고, 1차 수집은 2026년 9월 17일 10시 47분 56초부터 10시 48분 10초까지(한국 시각), 검증 재조회는 10시 54분 23초부터 10시 54분 29초까지, 3차 재조회는 11시 1분 4초부터 11시 1분 9초까지입니다. 세 번 다 같은 수가 나왔습니다. 이 노트는 어떤 계약도 매수나 매도 대상으로 지목하지 않고 진입가나 손절가를 제시하지 않습니다.
![]()
만기가 없는 계약에 만기 칸이 있는 이유부터
무기한 계약은 이름 그대로 만기가 없습니다. 그런데 거래소의 종목 목록 응답은 만기물과 무기한을 같은 배열에 섞어 내보냅니다. 배열 한 줄의 모양은 같아야 하니, 만기물을 위해 만든 칸이 무기한 행에도 그대로 따라옵니다. 그 칸에 무엇을 적을지는 순전히 거래소의 선택입니다.
그래서 이 노트가 세는 것은 거래소가 그 빈자리를 어떻게 메우는가입니다. 값이 아니라 관례를 세는 조사라, 어느 거래소가 낫다는 판정과는 무관합니다.
먼저 무기한을 무엇으로 갈랐는지 밝혀 두겠습니다. 제가 고른 기준이 아니라 각 거래소가 자기 응답에 적어 둔 칸을 그대로 썼습니다.
| 거래소 | 창구가 준 행 | 무기한을 가르는 칸과 값 | 무기한 행 |
|---|---|---|---|
| 바이낸스 USDT-M | 897 | contractType 이 PERPETUAL | 702 |
| 바이낸스 COIN-M | 30 | contractType 이 PERPETUAL | 20 |
| 바이비트 linear | 873 | contractType 이 LinearPerpetual | 833 |
| 바이비트 inverse | 28 | contractType 이 InversePerpetual | 22 |
| 데리비트 | 172 | settlement_period 가 perpetual | 110 |
| 게이트 USDT | 988 | 창구 자체가 무기한 창구 | 988 |
| 게이트 BTC | 1 | 같음 | 1 |
| 비트겟 USDT | 787 | symbolType 이 perpetual | 787 |
| 비트겟 코인마진 | 11 | symbolType 이 perpetual | 9 |
| 크라켄 선물 | 295 | 심볼 접두사가 PF_ 이거나 PI_ | 279 |
| 하이퍼리퀴드 | 234 | universe 전체 | 234 |
| MEXC | 1,183 | 가르는 칸을 확정하지 못함 | 분모에서 제외 |
| 합계 | 5,499 | 3,985 |
손검산은 이렇습니다. 897 더하기 30 은 927, 873 과 28 을 더하면 1,828, 172 를 더하면 2,000, 988 과 1 을 더하면 2,989, 787 과 11 을 더하면 3,787, 295 를 더하면 4,082, 1,183 을 더하면 5,265, 234 를 더하면 5,499 입니다.
분모에서 뺀 것 둘을 밝혀 두겠습니다. 첫째, 바이낸스의 TRADIFI_PERPETUAL 191행을 뺐습니다. 이 191행도 만기 칸 값은 뒤에 나올 2100년 상수로 같습니다. 둘째, MEXC 1,183행 전체를 무기한 분모에서 뺐습니다. MEXC 응답에서 무기한 여부를 가르는 칸을 찾지 못했기 때문입니다. futureType 은 1,183행 전부가 같은 값이라 갈리지 않습니다. 그래서 MEXC 는 1,183행 중 몇 행에 키가 있는가로만 셌고 무기한 종수로는 세지 않았습니다.
2100년과 3000년, 두 상수를 시각까지 풀면
먼 미래의 상수를 적는 곳이 둘입니다. 그 값을 그대로 옮기면 이렇습니다.
| 상수 | 적어 둔 곳 | 세계 표준시 | 한국 시각 |
|---|---|---|---|
4133404800000 | 바이낸스 USDT-M, COIN-M | 2100-12-25 08:00 | 2100년 12월 25일 17시 |
32503708800000 | 데리비트 | 3000-01-01 08:00 | 3000년 1월 1일 17시 |
0 | 바이비트 linear, inverse | 1970-01-01 00:00 | 1970년 1월 1일 9시 |
여기서 한 가지가 눈에 걸립니다. 두 상수 모두 시각 자리가 08시 세계 표준시입니다. 그리고 그 08시는 같은 응답 안 만기물의 실제 만기 시각과 같습니다. 바이낸스의 이번 분기물 7행은 만기가 1790323200000, 곧 2026년 9월 25일 08시 세계 표준시이고, 다음 분기물은 2026년 12월 25일 08시입니다. 데리비트 월물도 같은 08시에 걸려 있습니다.
바이낸스 상수의 날짜가 12월 25일이라는 것도 같은 방향입니다. 그 거래소의 12월 분기물 만기일과 월·일이 같습니다.
다만 여기서 멈추겠습니다. 거래소가 왜 그 값을 골랐는지는 확인하지 못했습니다. 두 상수가 자기 만기 시각 관례를 따라 만들어졌다는 것은 숫자를 늘어놓고 본 관측이지, 거래소가 그렇게 설명했다는 뜻이 아닙니다. 바이낸스 선물 문서는 이번에도 받지 못했고 데리비트 문서 페이지는 본문이 자바스크립트로 그려져 해당 정의문이 HTML 안에 없었습니다. 두 곳에 대해서는 응답값만 근거로 씁니다.
0과 빈 문자열은 숫자로 바꾸면 1970년이 됩니다
상수 쪽이 미래로 도망갔다면, 반대로 도망간 쪽도 있습니다.
바이비트는 무기한 854종에 문자열 0을 적어 둡니다. 비트겟은 무기한 796종에 빈 문자열을 적어 둡니다. 둘 다 밀리초 시각을 담는 칸이라, 값을 그대로 시각으로 바꾸면 1970년 1월 1일이 나옵니다. 빈 문자열은 숫자로 바꾸는 단계에서 아예 실패하거나 0으로 떨어집니다.
여기서 나오는 함정이 하나 있습니다. 여러 거래소의 종목 목록을 한 표로 모을 때 만기 칸이 지금보다 앞이면 이미 끝난 계약이라고 거르는 방식은 자연스럽습니다. 그런데 그 규칙을 그대로 적용하면 바이비트와 비트겟의 무기한 1,650종이 통째로 1970년에 끝난 계약으로 분류됩니다. 손검산은 854 더하기 796 으로 1,650 입니다.
반대로 만기 칸이 지금보다 뒤면 살아 있는 계약이라고 거르면, 바이낸스와 데리비트의 무기한은 통과하지만 같은 응답에 든 만기물도 같이 통과합니다. 두 방향 다 만기 칸 하나로는 갈리지 않습니다.
이 노트가 확인한 범위에서 무기한과 만기물을 가르는 자리는 만기 칸이 아니라 분류 칸이었습니다. 앞 절의 표에 적은 대로 바이낸스는 contractType, 데리비트는 settlement_period, 비트겟은 symbolType 에 그 구분을 따로 적어 둡니다. 같은 응답에서 무엇을 근거로 삼아야 하는지가 여기서 갈립니다.
비트겟 쪽은 한 줄 더 적어 둘 것이 있습니다. 무기한 796행은 deliveryTime 만 빈 것이 아니라 deliveryStartTime 과 deliveryPeriod 까지 네 칸이 다 빈 문자열이고, 같은 창구의 만기물 2행만 deliveryTime 에 실제 밀리초가 들어 있고 deliveryPeriod 에 분기 표시가 들어 있습니다.
{
"symbol": "BTCUSDT",
"symbolType": "perpetual",
"symbolStatus": "normal",
"deliveryTime": "",
"deliveryStartTime": "",
"deliveryPeriod": "",
"offTime": "-1"
}
칸이 없는 것과 행에 키가 없는 것은 다릅니다
남은 두 갈래는 값이 아니라 칸의 유무로 갈립니다. 이 둘을 한 덩어리로 묶으면 여섯이라는 수가 셀 수 없는 수가 되므로, 구분을 먼저 정의하겠습니다.
다섯째 갈래는 행에서 키를 뺀 경우입니다. 크라켄 선물 응답 295행 가운데 lastTradingTime 키를 가진 행은 16행뿐입니다. 나머지 279행에는 그 키가 아예 없습니다. 그런데 이 279행은 같은 응답 안에 있고, 같은 배열의 다른 16행은 그 키를 갖고 있습니다. 곧 칸은 존재하는데 무기한 행에서만 빠져 있는 것입니다.
크라켄 문서의 예시 응답도 같은 모양입니다. 무기한 행과 만기물 행을 나란히 옮기면 이렇습니다.
{
"symbol": "PI_XBTUSD",
"type": "futures_inverse",
"tickSize": 0.5,
"contractSize": 1,
"tradeable": true,
"isExpired": false
}
{
"symbol": "FI_XBTUSD_220930",
"type": "futures_inverse",
"lastTradingTime": "2022-09-30T15:00:00.000Z",
"tickSize": 0.5,
"contractSize": 1,
"tradeable": true,
"isExpired": false
}
MEXC 도 같은 갈래입니다. 1,183행 가운데 deliveryTime 키를 가진 행은 17행이고 나머지 1,166행에는 없습니다. 그 17행은 전부 automaticDelivery 가 1 이고, 나머지 1,166행은 전부 0 입니다. 다만 MEXC 가 이 칸을 무엇으로 쓰는지는 확인하지 못했습니다. 값의 밀리초 자리가 제각각이라 예정된 시각이라기보다 기록된 시각처럼 보이지만, 그 읽기는 이 노트가 확인하지 못한 추측이라 여기까지만 적겠습니다.
여섯째 갈래는 창구 전체에 칸이 없는 경우입니다. 게이트의 무기한 창구는 행 하나가 53개의 키를 갖는데, 그 53개 안에 만기나 인도나 정산을 뜻할 만한 조각이 든 이름은 0개입니다. 응답 원문 전체에서 해당 낱말이 한 번도 나오지 않습니다. 하이퍼리퀴드는 더 짧아서 행 하나가 7개의 키를 갖고, 역시 0개입니다.
[
{"szDecimals": 5, "name": "BTC", "maxLeverage": 40, "marginTableId": 56},
{"szDecimals": 4, "name": "ETH", "maxLeverage": 25, "marginTableId": 55}
]
여기서 표현을 반드시 묶어 두겠습니다. 이 노트가 확인한 것은 「제가 연 이 창구의 응답 안에는 그런 이름의 칸이 없다」까지입니다. 두 거래소에 그 정보가 없다는 뜻이 아닙니다. 게이트만 해도 인도계약은 별도 창구에 있고, 그쪽에는 만기 칸이 있습니다. 「칸이 없다」를 어디까지 적을 수 있는지는 주문 유형과 유효기간 칸을 필드 이름으로 전수 대조한 노트에서 같은 방향으로 정리해 두었습니다.

그 김에 단위도 갈립니다
만기 칸을 여러 거래소에서 모으는 사람이 밟는 자리가 하나 더 있습니다. 값의 단위와 타입이 창구마다 다릅니다.
| 거래소 | 칸 이름 | 타입 | 단위 |
|---|---|---|---|
| 바이낸스 | deliveryDate | 정수 | 밀리초 |
| 바이비트 | deliveryTime | 문자열 | 밀리초 |
| 데리비트 | expiration_timestamp | 정수 | 밀리초 |
| 비트겟 | deliveryTime | 문자열 | 밀리초 |
| MEXC | deliveryTime | 정수 | 밀리초 |
| 크라켄 선물 | lastTradingTime | ISO 8601 문자열 | 해당 없음 |
| 게이트 인도계약 | expire_time | 정수 | 초 |
게이트 인도계약 창구만 초 단위입니다. 나머지는 전부 밀리초입니다. 초를 밀리초로 읽으면 1970년대 어딘가가 나오고, 밀리초를 초로 읽으면 수만 년 뒤가 나옵니다. 그리고 크라켄은 숫자가 아니라 글자로 적습니다.
같은 거래소 안에서 시각이 갈리는 자리도 있습니다. 크라켄 만기물 16행이 갖는 서로 다른 만기 값은 5가지인데, 같은 9월 25일 만기가 flexible_futures 쪽에서는 2026-09-25T08:00:00Z, 곧 한국 시각 같은 날 17시이고 futures_inverse 쪽에서는 2026-09-25T15:00:00Z, 곧 한국 시각 9월 26일 0시입니다. 한 응답 안에서도 만기 시각이 갈립니다.
상수는 무기한 전부에 붙지 않습니다
여기까지가 관례 이야기입니다. 그런데 관례를 가진 거래소도 무기한 전부에 그 값을 붙이지는 않습니다. 예외가 131종 있었습니다.
바이낸스 USDT-M 무기한 702종 가운데 130종이 상수가 아니라 실제 날짜를 갖습니다. 그리고 그 130종은 한 칸으로 완벽히 갈립니다.
| 만기 칸 | 상태 칸 | 행 수 |
|---|---|---|
| 2100년 상수 | TRADING | 571 |
| 2100년 상수 | PENDING_TRADING | 1 |
| 실제 날짜 | SETTLING | 130 |
상수인데 SETTLING | 0 | |
TRADING 인데 상수가 아님 | 0 |
130종의 날짜는 전부 과거입니다. 가장 이른 것이 2022년 6월 17일 18시(한국 시각)이고 가장 늦은 것이 2026년 8월 26일 18시이며, 서로 다른 값이 66가지입니다. 곧 네 해 전 날짜를 달고 지금도 공개 종목 목록에 앉아 있는 무기한 행이 있습니다. 상태 칸 자체가 어떤 값들로 갈리는지는 거래소 심볼 상태값을 전수로 센 노트에서 따로 다뤘습니다.
바이비트 linear 무기한 833종 가운데 1종도 예외입니다. ICXUSDT 한 종만 0 이 아니라 1789722000000, 곧 2026년 9월 18일 18시(한국 시각) 를 달고 있고 상태는 Trading 입니다.
손검산은 130 더하기 1 로 131 입니다.
같은 칸이 두 가지 뜻을 갖는 자리
바이비트의 그 한 종이 왜 예외인지는, 짐작할 것 없이 거래소 문서가 적어 두었습니다. 종목정보 응답 파라미터 표에서 해당 줄을 축자로 옮기면 이렇습니다.
deliveryTime string Delivery timestamp (ms) Expired futures delivery time Perpetual delisting time
한국어로 풀면 만기물에서는 인도 시각이고 무기한에서는 상장폐지 시각이라는 뜻입니다. 곧 바이비트에서 이 칸은 하나가 아니라 두 가지 일을 합니다. 무기한 행의 0 은 만기가 없다는 뜻이 아니라 지금 잡힌 상장폐지 시각이 없다는 쪽으로 읽는 편이 문서에 가깝습니다.
그래서 같은 종목을 여덟 거래소에서 심볼 정확 일치로 찾아 봤습니다.
| 거래소 | 심볼 | 분류 | 상태 | 만기 칸 값 |
|---|---|---|---|---|
| 바이낸스 USDT-M | ICXUSDT | PERPETUAL | SETTLING | 2026년 8월 26일 18시 |
| 바이비트 linear | ICXUSDT | LinearPerpetual | Trading | 2026년 9월 18일 18시 |
| MEXC | ICX_USDT | 확정 못 함 | 확정 못 함 | 2026년 9월 18일 17시 |
| 크라켄 선물 | PF_ICXUSD | 무기한 | 거래 가능 | 키 자체가 없음 |
| 게이트, 비트겟, 데리비트, 하이퍼리퀴드 | 목록에 없음 |
세 창구가 같은 종목 하나에 실제 날짜를 적어 두었고, 그 날짜가 셋 다 다릅니다. 다만 여기서 멈추겠습니다. 왜 그런지의 인과는 이 노트가 재지 않았습니다. 이 종목이 앞으로 어떻게 되는지도 재지 않았습니다. 적을 수 있는 것은 세 창구에서 같은 종목이 동시에 예외였다는 관측까지이고, 그 옆에 바이비트 문서가 이 칸을 상장폐지 시각으로도 정의한다는 축자를 나란히 두는 데까지입니다.
조사 방법에 대해서도 한 줄 남겨 둡니다. 심볼 대조는 부분문자열이 아니라 정확 일치로 해야 합니다. 크라켄에서 세 글자를 부분문자열로 찾으면 PF_ICXUSD 말고 PF_ANTHROPICXUSD 도 같이 걸립니다. 응답 원문을 낱말로 훑으면 오탐이 난다는 것은 앞선 노트에서도 같은 방식으로 확인해 두었습니다.

만기물 쪽에서는 같은 칸이 제대로 날짜를 담습니다
대조군으로 만기물 쪽도 같이 셌습니다. 같은 칸이 만기물 행에서는 전부 실제 날짜를 담습니다.
| 거래소 | 만기물 행 | 서로 다른 만기 값 |
|---|---|---|
| 바이낸스 USDT-M | 이번 분기 2, 다음 분기 2 | 2가지 |
| 바이낸스 COIN-M | 이번 분기 5, 다음 분기 5 | 2가지 |
| 바이비트 linear | 40 | 8가지 |
| 바이비트 inverse | 6 | 3가지 |
| 데리비트 | 일물 17, 주물 11, 월물 34 | 각각 3가지, 2가지, 7가지 |
| 비트겟 코인마진 | 2 | 1가지 |
| 크라켄 선물 | 16 | 5가지 |
| 게이트 인도계약 | 27 | 3가지 |
바이낸스 분기물 네 계약이 어떤 모양으로 붙어 있는지는 바이낸스 분기 선물 네 계약을 따로 센 노트에서 이미 다뤘으므로 여기서는 경계값으로만 씁니다. 이번 조회에서 그 만기는 2026년 9월 25일과 12월 25일 두 날짜였습니다.
직접 확인하는 5분 절차
전부 인증이 필요 없습니다. 앞의 것들은 브라우저 주소창만으로 되고 하이퍼리퀴드만 요청 방식이 다릅니다.
https://fapi.binance.com/fapi/v1/exchangeInfo을 열고BTCUSDT를 찾아deliveryDate를 봅니다.4133404800000이면 2100년 상수 쪽입니다.- 같은 응답에서
contractType이PERPETUAL인데status가SETTLING인 행을 찾아 같은 칸을 봅니다. 과거 날짜가 들어 있습니다. https://api.bybit.com/v5/market/instruments-info?category=linear&limit=1000을 열어deliveryTime을 봅니다. 대부분 문자열0이고,ICXUSDT만 다릅니다.https://www.deribit.com/api/v2/public/get_instruments?currency=any&kind=future&expired=false을 열어BTC-PERPETUAL의expiration_timestamp를 봅니다.32503708800000입니다.https://api.bitget.com/api/v2/mix/market/contracts?productType=USDT-FUTURES을 열어deliveryTime을 봅니다. 빈 문자열입니다.https://futures.kraken.com/derivatives/api/v3/instruments을 열어PF_로 시작하는 행과FI_로 시작하는 행을 나란히 놓고lastTradingTime키를 찾아보십시오. 앞쪽에는 키가 없습니다.https://api.gateio.ws/api/v4/futures/usdt/contracts을 열어 만기를 뜻하는 이름을 찾아보십시오. 없습니다. 이 창구에limit파라미터를 붙이면 HTTP 400 이 돌아옵니다. 붙이지 마십시오.https://api.hyperliquid.xyz/info에 본문 유형을meta로 지정해 보내면 일곱 개의 키만 돌아옵니다.
확인하지 못한 것
정직하게 적어 두겠습니다.
- API 키를 쓰지 않았고 주문을 넣어 본 적이 없습니다. 응답이 적어 둔 값만 셌습니다.
- 문서를 인용할 수 있는 곳은 바이비트와 크라켄 둘뿐입니다. 바이낸스 선물 문서는 HTTP 202 에 본문이 0바이트로 돌아왔고, 게이트 문서는 403 이며, 데리비트와 비트겟 문서 페이지는 본문이 자바스크립트로 그려져 해당 정의문이 HTML 안에 없었습니다. 나머지 여섯 거래소는 응답값만 근거입니다.
- 거래소가 상수 값을 왜 그렇게 골랐는지 확인하지 못했습니다. 시각 자리가 만기 시각과 같다는 것은 관측이지 의도의 증거가 아닙니다.
- 예외 131종의 인과를 재지 않았습니다. 그 종목들이 앞으로 어떻게 되는지 이 노트는 모릅니다.
- MEXC 는 무기한 분모에서 뺐습니다. 응답만으로 무기한 여부를 가르는 칸을 확정하지 못했고, 17행의
deliveryTime이 무엇을 뜻하는지도 모릅니다. - 게이트와 하이퍼리퀴드의 0은 제가 연 창구 안에서의 0입니다. 두 거래소의 다른 창구를 열지 않았습니다.
- 확인한 창은 약 13분입니다. 세 번 조회에서 이 노트가 세는 수는 하나도 바뀌지 않았지만, 그 뒤에도 같은지는 재지 않았습니다.
- 옵션은 받지 않았습니다. 데리비트는 선물만 지정해 받은 172행입니다.
- 국내 원화마켓은 범위 밖입니다.
- 어느 거래소가 낫다는 판정을 하지 않습니다. 만기 칸을 채워 주는 쪽이 좋은 거래소라는 뜻이 아닙니다.
정리
세 줄로 줄이면 이렇습니다.
첫째, 끝이 없다고 적는 방식이 여섯 가지입니다. 무기한 3,985종을 가르면 2100년 상수 592종, 3000년 상수 110종, 문자열 0이 854종, 빈 문자열이 796종, 행에서 키를 뺀 것이 279종, 창구에 칸이 없는 것이 1,223종입니다.
둘째, 상수는 무기한 전부에 붙지 않습니다. 131종이 실제 날짜를 갖습니다. 바이낸스 쪽 130종은 전부 상태 칸이 SETTLING 이고 날짜가 전부 과거이며, 바이비트 쪽 1종은 상태가 Trading 인데 날짜가 미래입니다.
셋째, 만기 칸 하나로 무기한과 만기물을 가르면 어느 방향으로 걸러도 틀립니다. 지금보다 앞선 값을 끝난 계약으로 치면 바이비트와 비트겟의 무기한 1,650종이 통째로 걸리고, 지금보다 뒤인 값을 살아 있는 계약으로 치면 만기물이 함께 통과합니다. 이 노트가 확인한 범위에서 그 구분은 분류 칸에 따로 적혀 있었습니다.
만기 값을 인용하실 때는 그 숫자가 어느 창구에서 왔고 단위가 초인지 밀리초인지, 그리고 그 행이 무기한인지 만기물인지를 함께 적어 두시는 편이 정확합니다. 다만 이 노트는 공개 응답을 센 기록일 뿐 어떤 거래도 권하지 않습니다.
FAQ
Q. 무기한 계약에 만기가 생겼다는 뜻인가요? A. 아닙니다. 2026년 9월 17일 10시대 공개 응답을 기준으로 할 때, 이 노트가 센 것은 만기물과 같은 배열에 섞여 나오는 무기한 행이 만기 칸의 빈자리를 어떻게 메우는가입니다. 2100년이나 3000년 같은 값은 그 자리를 메우려고 넣은 상수로 관측되며, 실제로 그때 계약이 끝난다는 뜻으로 읽을 근거는 이 조사에 없습니다.
Q. 그러면 바이낸스에서 과거 날짜를 달고 있는 130종은 무엇인가요?
A. 같은 응답의 상태 칸을 함께 보면 갈립니다. 1차 조회 기준으로 그 130종은 전부 status 가 SETTLING 이고, 반대로 TRADING 인 무기한 가운데 상수가 아닌 행은 0행입니다. 다만 이 노트는 그 상태의 계약이 앞으로 어떻게 되는지는 재지 않았고, 인과도 확인하지 않았습니다.
Q. 바이비트의 0은 만기가 없다는 뜻인가요? A. 바이비트 종목정보 문서를 근거로 삼으면 그렇게만 읽기는 어렵습니다. 문서가 이 칸을 만기물의 인도 시각이자 무기한의 상장폐지 시각으로 정의하므로, 무기한 행의 0은 지금 잡힌 상장폐지 시각이 없다는 쪽에 더 가깝습니다. 실제로 이번 조회에서 무기한 833종 중 1종만 0이 아닌 값을 갖고 있었습니다.
Q. 여섯 가지라는 수는 어떻게 세신 건가요? A. 값이 다른 것 넷과 칸의 유무가 다른 것 둘을 합쳐 셌습니다. 값 쪽은 2100년 상수, 3000년 상수, 문자열 0, 빈 문자열 넷입니다. 칸 쪽은 같은 응답의 다른 행에는 키가 있는데 무기한 행에서만 빠진 경우와, 응답의 어느 행에도 그 이름의 칸이 없는 경우 둘입니다. 이 두 경우를 한 덩어리로 묶으면 다섯 가지가 되므로, 인용하실 때는 세는 기준을 함께 적어 두셔야 어긋나지 않습니다.
Q. 게이트와 하이퍼리퀴드에는 만기 정보가 없는 건가요? A. 이 노트로는 그렇게 단정할 수 없습니다. 확인한 것은 제가 연 게이트 무기한 창구의 행이 가진 53개 키와 하이퍼리퀴드 행이 가진 7개 키 안에 그런 이름이 0개였다는 것까지입니다. 게이트만 해도 인도계약은 별도 창구에 있고 그쪽에는 만기 칸이 있으므로, 0을 없음으로 읽지 않는 편이 안전합니다.
Q. 여러 거래소 데이터를 한 표로 모을 때 무엇을 조심해야 하나요? A. 이번 조회 범위에서 걸린 것은 셋입니다. 첫째, 만기 칸의 값이 거래소마다 다른 방식으로 비어 있어 시각 비교로는 무기한이 갈리지 않습니다. 둘째, 단위가 갈려서 게이트 인도계약 창구만 초이고 나머지는 밀리초이며 크라켄은 아예 글자입니다. 셋째, 타입이 갈려서 같은 밀리초라도 정수로 오는 곳과 문자열로 오는 곳이 있습니다.
Q. 이 숫자들은 언제까지 유효한가요? A. 2026년 9월 17일 10시 47분부터 11시 1분 사이 세 번의 조회를 기준으로 할 때 유효합니다. 상수와 관례는 그 13분 동안 한 자리도 바뀌지 않았지만 행 수는 언제든 바뀌며, 특히 무기한 종수는 상장과 폐지에 따라 움직입니다. 다시 부르면 달라질 수 있는 값이라 인용하실 때는 조회 시각을 함께 적어 두시는 편이 정확합니다.
함께 보면 좋은 글
- 바이낸스 분기 선물 네 계약을 따로 센 노트: 만기가 있는 쪽을 전수로 센 기록입니다. 이번 노트의 경계값이 그 글에서 왔습니다.
- 거래소 심볼 상태값을 전수로 센 노트: 이번 노트의 교차표에 나온 상태 칸이 어떤 값들로 갈리는지 먼저 정리해 둔 기록입니다.
- 주문 유형과 유효기간 칸을 필드 이름으로 전수 대조한 노트: 칸이 없다를 어디까지 적을 수 있는지, 응답 원문을 낱말로 세면 왜 오탐이 나는지를 같은 방식으로 확인해 둔 기록입니다.
데이터·개념 출처
본 노트의 수치는 2026년 9월 17일 10시 47분 56초부터 10시 48분 10초(한국 시각) 사이에 여덟 거래소의 공개 창구 열두 곳을 인증 없이 호출해 받은 응답을 직접 센 것입니다. 검증 재조회는 같은 날 10시 54분 23초부터 10시 54분 29초 사이, 3차 재조회는 11시 1분 4초부터 11시 1분 9초 사이에 같은 창구들을 다시 받은 것입니다. 응답은 전부 파일로 저장한 뒤 두 경로로 따로 검산했습니다. 하나는 응답 원문에서 상수 문자열을 그대로 세는 경로이고, 다른 하나는 다시 파싱해 집계하는 경로입니다. 세 번의 조회와 두 경로에서 이 노트가 주장하는 수는 전부 일치했습니다.
받은 창구는 다음과 같습니다. 바이낸스는 GET https://fapi.binance.com/fapi/v1/exchangeInfo 로 897행, GET https://dapi.binance.com/dapi/v1/exchangeInfo 로 30행입니다. 바이비트는 GET https://api.bybit.com/v5/market/instruments-info 에 정방향과 역방향을 각각 지정해 873행과 28행을 받았고 다음 페이지 커서가 빈 문자열임을 확인했습니다. 데리비트는 GET https://www.deribit.com/api/v2/public/get_instruments 에 선물과 만기 전 조건을 지정해 172행, 게이트는 GET https://api.gateio.ws/api/v4/futures/usdt/contracts 로 988행과 같은 형식의 BTC 창구로 1행, 별도의 인도계약 창구로 27행입니다. 비트겟은 GET https://api.bitget.com/api/v2/mix/market/contracts 에 상품유형을 두 번 지정해 787행과 11행, 크라켄 선물은 GET https://futures.kraken.com/derivatives/api/v3/instruments 로 295행, MEXC 는 GET https://contract.mexc.com/api/v1/contract/detail 로 1,183행, 하이퍼리퀴드는 https://api.hyperliquid.xyz/info 에 본문 유형을 meta 로 지정해 234행을 받았습니다.
칸의 정의를 문서에서 축자로 옮긴 곳은 두 곳입니다. 바이비트 V5 종목정보 문서의 응답 파라미터 표에서 deliveryTime 줄을, 크라켄 선물 종목조회 문서의 예시 응답에서 무기한 행과 만기물 행을 옮겼습니다. 나머지 여섯 거래소는 문서를 확보하지 못해 응답값만 근거로 썼고, 본문에서 그 여섯에 대해 문서를 근거로 든 문장은 없습니다.
이 글은 공개 API 응답을 정리한 정보 제공 목적의 자료이며 특정 종목이나 거래소의 이용 권유가 아닙니다. 본 노트는 진입가·손절가·목표가를 제시하지 않고, 어떤 계약도 매수 또는 매도 대상으로 지목하지 않으며, 승률이나 수익률을 주장하지 않고, 어느 거래소의 표기 방식이 더 낫다는 판단도 하지 않습니다. 가격 전망도 하지 않습니다. 무기한 계약은 증거금 거래라 원금 전액을 잃을 수 있고 시장 상황에 따라 원금을 초과하는 손실이 발생할 수 있습니다. 위 값은 특정 시각의 스냅숏이라 다시 호출하면 달라지며, 여기서 관측된 구성이 그 뒤에도 같은 모양으로 유지되는지는 이 글에서 확인하지 않았습니다. 투자 판단과 그 결과는 전적으로 본인 책임입니다.