---
title: "취소 후 재주문"
method: POST
path: "/orders/cancel_and_new"
tags: ["주문(Order)"]
---

# 취소 후 재주문

`POST /orders/cancel_and_new`

한 번의 요청으로 기존 주문을 취소하고 신규 주문을 생성합니다.

## Request body

- object
  - `prev_order_uuid` string — 취소하고자 하는 주문의 유일식별자(UUID)
  - `prev_order_identifier` string — 취소하고자 하는 주문의 클라이언트 지정 식별자
  - `new_ord_type` string, required — 신규 주문의 주문 유형. 생성하고자 하는 주문 유형에 따라 아래 값 중 하나를 입력합니다. * `limit`: 지정가 매수/매도 주문 * `price`: 시장가 매수 주문 * `market`: 시장가 매도 주문 * `best`: 최유리 지정가 매수/매도 주문 (time_in_force 필드 설정 필수)
  - `new_volume` string — 신규 주문 수량. 매수 또는 매도하고자 하는 수량을 숫자 형식의 String으로 입력합니다. “remain_only”로 설정하는 경우 이전 주문 잔량을 신규 주문 수량으로 설정할 수 있습니다. 다음 주문 유형에 대해 필수로 입력되어야 합니다. - 지정가 매수/매도(new_ord_type 필드가 “limit”인 경우) - 시장가 매도(new_ord_type 필드가 “market”인 경우) - 최유리 지정가 매도(이전 주문의 side 필드가 “ask”, new_ord_type 필드가 “best”인 경우)
  - `new_price` string — 신규 주문 단가 또는 총액. 디지털 자산 구매에 사용되는 통화(KRW,BTC,USDT)를 기준으로, 숫자 형식의 String으로 입력합니다. 다음 주문 조건에 대해 필수로 입력합니다. - 지정가 매수/매도(new_ord_type 필드가 “limit”인 경우) - 시장가 매수(new_ord_type 필드가 “price”인 경우) - 최유리 지정가 매수(이전 주문의 side필드가 “bid”, new_ord_type 필드가 “best”인 경우) price 필드는 주문 유형에 따라 다른 용도로 사용됩니다. - 지정가 주문시 매수/매도 호가로 사용됩니다. - 시장가 매수, 최유리 지정가 매수시 매수 총액을 설정하는 용도로 사용됩니다. 주문 시점의 시장가 또는 최유리 지정가로 price 총액을 채우는 수량만큼 매수 주문이 체결됩니다.
  - `new_identifier` string — 신규 주문의 클라이언트 지정 식별자. 사용자 계정의 전체 주문 내에서 유일하게 식별되는 값을 할당해야 하며, prev_order_identifier를 포함하여 한번 사용한 identifier 값은 해당 주문의 생성,체결 여부와 상관 없이 재사용할 수 없습니다. 최대 길이는 64자 입니다.
  - `new_time_in_force` 'ioc' | 'fok' | 'post_only' — 주문 체결 조건. IOC(Immediate or Cancel), FOK(Fill or Kill), Post Only와 같은 주문 체결 조건을 설정할 수 있습니다. 시장가 주문(ord_type 필드가 "limit")인 경우 모든 옵션을 선택적으로 사용할 수 있습니다. 최유리 지정가 주문(ord_type 필드가 “best”)인 경우 대해 "ioc" 또는 "fok" 중 하나를 필수로 입력합니다. 사용 가능한 값은 다음과 같습니다. * `ioc`: 지정가 조건으로 체결 가능한 수량만 즉시 부분 체결하고, 잔여 수량은 취소됩니다. * `fok`: 지정가 조건으로 주문량 전량 체결 가능할 때만 주문을 실행하고, 아닌 경우 전량 주문 취소합니다. * `post_only`: 지정가 조건으로 부분 또는 전체에 대해 즉시 체결 가능한 상황인 경우 주문을 실행하지 않고 취소합니다. 즉, 메이커(maker)주문으로 생성될 수 있는 상황에서만 주문이 생성되며 테이커(taker) 주문으로 체결되는 것을 방지합니다.
  - `new_smp_type` 'reduce' | 'cancel_maker' | 'cancel_taker' — 신규 주문의 자전거래 체결 방지(Self-Match Prevention) 모드. 자동 매매 시 동일 계정으로부터 생성된 매수 주문과 매도 주문이 체결(자전거래)되는 것을 방지하기 위해 SMP 모드를 선택적으로 설정할 수 있습니다. 메이커(maker) 주문과 테이커(taker) 주문에 설정된 SMP 모드가 서로 상이한 경우 테이커 주문 모드에 따라 동작합니다. 사용 가능한 값은 다음과 같습니다. * `cancel_maker`: 메이커 주문을 취소합니다. 즉, 새로운 주문 생성 시 자전 거래 조건이 성립하는 경우 이전에 생성한 주문을 취소하여 체결을 방지합니다. * `cancel_taker`: 테이커 주문을 취소합니다. 즉, 새로운 주문 생성 시 자전 거래 조건이 성립하는 경우 새롭게 생성한 주문을 취소하여 체결을 방지합니다. * `reduce`: 새로운 주문 생성 시 자전 거래 조건이 성립하는 경우 기존 주문과 신규 주문의 주문 수량을 줄여 체결을 방지합니다. 잔량이 0인 경우 주문을 취소합니다.

## Response `201`

Object of cancel-and-new order result

- object
  - `market` string, required — 취소할 페어(거래쌍)의 코드 [예시] "KRW-BTC"
  - `uuid` string, required — 취소할 주문의 유일 식별자
  - `identifier` string — 주문 생성시 클라이언트가 지정한 주문 식별자. * identifier 필드는 2024년 10월 18일 이후 생성된 주문에 대해서만 제공됩니다.
  - `side` 'ask' | 'bid', required — 취소할 주문의 방향(매수/매도)
  - `ord_type` 'limit' | 'price' | 'market' | 'best', required — 취소할 주문의 유형.
  - `price` string — 취소할 주문의 단가 또는 총액
  - `state` 'wait' | 'watch' | 'done' | 'cancel', required — 취소할 주문의 상태 - `wait`: 체결 대기 - `watch`: 예약 주문 대기 - `done`: 체결 완료 - `cancel`: 주문 취소
  - `created_at` string, required — 취소할 주문의 생성 시각 (KST 기준) [형식] yyyy-MM-ddTHH:mm:ss+09:00
  - `volume` string — 취소할 주문의 수량
  - `remaining_volume` string, required — 취소할 주문의 남은 주문 양
  - `executed_volume` string, required — 취소할 주문의 체결된 양
  - `reserved_fee` string, required — 취소할 주문의 수수료로 예약된 비용
  - `remaining_fee` string, required — 취소할 주문의 남은 수수료
  - `paid_fee` string, required — 취소할 주문의 사용된 수수료
  - `locked` string, required — 취소할 주문의 거래에 사용 중인 비용
  - `prevented_volume` string, required — 취소할 주문의 자전거래 방지로 인해 취소된 수량
  - `prevented_locked` string, required — 취소할 주문의 자전거래 방지로 인해 해제된 자산. 자전거래 체결 방지 설정으로 인해 취소된 주문의 잔여 자산입니다. - 매수 주문의 경우: 취소된 금액 - 매도 주문의 경우: 취소된 수량
  - `smp_type` 'reduce' | 'cancel_maker' | 'cancel_taker' — 자전거래 체결 방지(Self-Match Prevention) 모드
  - `trades_count` integer, required — 취소할 주문에 대한 체결 건수
  - `time_in_force` 'fok' | 'ioc' | 'post_only' — 주문 체결 옵션
  - `new_order_uuid` string, required — 신규 생성된 주문의 유일 식별자
  - `new_order_identifier` string — 신규 생성된 주문의 클라이언트 지정 식별자

## Other responses

- `400` — error object
- `401` — error object
- `500` — error object

---

[API](https://skmtc.net/upbit/apis/quotation-api.md) · [All operations](https://skmtc.net/upbit/apis/quotation-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/upbit/quotation-api/revisions/b8bd8b9ed3b5/schema)
