본문으로 건너뛰기

새 주문을 생성합니다.

POST 

/order

주문 제출

이 엔드포인트는 주문 제출에 사용됩니다. 사용 방법에 대한 자세한 내용은 아래 개별 필드를 참조하십시오.

주문 유형

모든 주문에는 symbol이 필요합니다. 별도로 명시된 경우를 제외하고 다른 필드는 선택 사항입니다.

유효한 ordType는 다음과 같습니다.

  • Limit: 기본 주문 유형입니다. orderQtyprice를 지정합니다.
  • Market: 전통적인 시장가 주문입니다. 시장가 주문은 전량 체결되거나 파산 가격에 도달할 때까지 실행되며, 그 시점에서 취소됩니다.
  • Stop: 스톱 시장가 주문입니다. orderQtystopPx를 지정합니다. stopPx에 도달하면 주문이 주문서에 진입합니다.
    • 매도 주문의 경우 트리거 가격이 stopPx보다 낮으면 주문이 트리거됩니다. 매수의 경우에는 더 높으면 트리거됩니다.
    • 참고: 스톱 주문은 트리거될 때까지 증거금을 사용하지 않습니다. 주문이 전량 트리거될 수 있도록 계정에 필요한 증거금이 있는지 확인하십시오.
    • Close 스톱 주문은 orderQty가 필요하지 않습니다. 아래의 실행 지침을 참조하십시오.
  • StopLimit: 스톱 시장가 주문과 비슷하지만, 시장가 대신 지정가 주문을 제출합니다. orderQty, stopPx, price를 지정합니다.
  • MarketIfTouched: 스톱 주문과 유사하지만, 트리거 방향이 반대입니다. 이익 실현 주문에 유용합니다.
  • LimitIfTouched: 위와 동일하나, 이익 실현 지정가 주문에 사용합니다.
  • Pegged: 페그드 주문을 사용하면 현재 시장 가격을 기준으로 한 상대적인 지정가를 제출할 수 있습니다. pegPriceTypepegOffsetValue를 지정합니다.
    • 페그드 주문에는 반드시 execInstFixed가 지정되어야 합니다. 이는 주문이 접수될 때 한 번 지정가가 설정되며, 기준 가격이 변해도 바뀌지 않음을 의미합니다.
    • PrimaryPeg: 근접 호가(near touch) 가격을 기준으로 가격이 설정됩니다.
    • MarketPeg: 원격 호가(far touch) 가격을 기준으로 가격이 설정됩니다.
    • ordType 없이 pegPriceType만 제출되면 Pegged 주문으로 처리됩니다.

실행 지침 (Execution Instructions)

다음 execInst를 지원합니다. 여러 값을 사용할 경우 쉼표로 구분해 전송합니다(예: LastPrice,Close).

  • ParticipateDoNotInitiate: Post-Only 주문으로도 알려져 있습니다. 이 주문이 제출 시점에 즉시 체결될 경우, 대신 취소됩니다. 이는 주문이 전송되는 동안 원격 호가가 귀하 쪽으로 이동해도 이를 방지하기 위한 것입니다. 주문 제출 후 원격 호가가 멀어지는 방향으로 움직이는 것에 베팅하기 위한 용도는 아닙니다. 우리는 이러한 행위를 남용으로 간주하며 모니터링합니다.
  • MarkPrice, LastPrice, IndexPrice: 스톱 및 if-touched 주문에서 트리거 가격을 결정하는 데 사용됩니다. 하나만 사용해야 합니다. 기본값은 MarkPrice입니다. 또한 페그드 주문에서 LastPeg의 값을 정의하는 데도 사용됩니다. IndexPrice는 현물 거래 심볼에는 적용되지 않습니다.
  • ReduceOnly: ReduceOnly 주문은 포지션을 줄이기만 할 수 있고, 늘릴 수는 없습니다. 주문서에 대기 중인 ReduceOnly 지정가 주문이 존재하는 상태에서 다른 주문으로 인해 포지션이 축소되면, 그 주문 수량은 감소되거나 취소됩니다. ReduceOnly 주문이 여러 개라면 가장 덜 공격적인 주문부터 조정됩니다. 현물 거래 심볼에는 적용되지 않습니다.
  • Close: CloseReduceOnly를 내포합니다. Close 주문은 동일한 심볼 및 방향의 다른 활성 지정가 주문 중 미체결 수량이 현재 포지션을 초과하는 주문을 취소합니다. 이는 스톱 주문에 유용합니다. 이러한 주문을 취소함으로써, Close 스톱 주문은 실행에 필요한 증거금을 확보하고, 현재 포지션 크기까지(전량)만 실행되도록 보장됩니다. orderQty가 지정되지 않은 경우, Close 주문의 orderQty는 현재 포지션 크기와 동일합니다. 현물 거래 심볼에는 적용되지 않습니다.
    • orderQty가 없는 Close 주문에는 비트멕스가 stopPx 위/아래 중 어느 쪽으로 트리거해야 하는지를 알 수 있도록 side가 필요합니다.
  • LastWithinMark: LastPrice를 사용하는 스톱 주문에서 다음 조건을 모두 만족할 때만 스톱 트리거를 허용하는 데 사용됩니다.
    • 매도 스톱 시장가/스톱 리밋 주문의 경우
      • Last Price &lt= Stop Price
      • Last Price &gt= Mark Price × (1 - 5%)
    • 매수 스톱 시장가/스톱 리밋 주문의 경우
      • Last Price &gt= Stop Price
      • Last Price &lt= Mark Price × (1 + 5%)
    • 현물 거래 심볼에는 적용되지 않습니다.
  • Fixed: 페그드 주문에는 반드시 execInstFixed가 지정되어야 합니다. 이는 주문이 접수될 때 한 번 지정가가 설정되며, 기준 가격이 변해도 바뀌지 않음을 의미합니다.

페그드 주문

페그드 주문을 사용하면 현재 시장 가격을 기준으로 한 상대적인 지정가를 제출할 수 있습니다. 지정가는 주문이 제출될 때 한 번 설정되며, 기준 가격이 변해도 변경되지 않습니다. 이 주문 유형은 주문 제출 후 원격 호가가 멀어지는 방향으로 움직이는 것에 베팅하기 위한 용도가 아니며, 우리는 이러한 행위를 남용으로 간주하고 모니터링합니다.

페그드 주문의 ordTypePegged이며, execInstFixed입니다.

또한 pegPriceTypepegOffsetValue를 함께 제출해야 합니다.

  • PrimaryPeg - 근접 호가 가격을 기준으로 가격이 설정됩니다.
  • MarketPeg - 원격 호가 가격을 기준으로 가격이 설정됩니다.

트레일링 스톱 페그드 주문

pegPriceTypeTrailingStopPeg를 사용해 트레일링 스톱을 생성할 수 있습니다.

가격은 제출 시점에 설정되며, 기초 가격(Last/Mark/Index)이 0.1%를 초과해 움직이면 1초에 한 번씩 업데이트됩니다. 그 후 시장이 페그로부터 멀어지는 방향으로 움직이면 stopPx가 함께 이동하고, 시장이 페그 쪽으로 움직이면 stopPx는 고정됩니다.

pegOffsetValue를 사용해 주문의 stopPx를 설정하십시오. 페그는 execInst에 지정된 트리거 가격(기본값 MarkPrice)에 맞춰 설정됩니다. 스톱 매도 및 buy-if-touched 주문에는 음수 오프셋을 사용하십시오.

필수 ordType: Stop, StopLimit, MarketIfTouched, LimitIfTouched.

연결 주문 (Linked Orders)

연결 주문은 고급 기능입니다. 매우 강력하지만, 사용 시에는 신중한 코딩과 테스트가 필요합니다. 이 문서를 주의 깊게 읽고 개발할 때는 테스트넷 거래소를 사용하십시오.

비트멕스는 네 가지 고급 연결 주문 유형을 제공합니다.

  • OCO: _One Cancels the Other_입니다. 표준 스톱/이익 실현 기법의 매우 유연한 버전입니다. 하나의 clOrdLinkID를 사용하여 여러 주문을 서로 연결할 수 있습니다. 주문에 contingencyType으로 OneCancelsTheOther를 전송하십시오. 처음으로 전부 또는 일부가 체결되거나(또는 Stop 주문의 경우 활성화되면) 동일한 clOrdLinkID를 가진 나머지 모든 주문은 취소됩니다.
  • OTO: _One Triggers the Other_입니다. 기본 주문에 contingencyType으로 'OneTriggersTheOther'를 전송하면, 동일한 clOrdLinkID를 가진 후속 주문은 기본 주문이 전량 체결되기 전까지는 트리거되지 않습니다.

트레일링 스톱

pegPriceType'TrailingStopPeg'를 사용해 트레일링 스톱을 생성할 수 있습니다. 페그된 stopPx는 시장이 페그로부터 멀어지는 방향으로 움직이면 함께 이동하고, 시장이 페그 쪽으로 움직이면 고정됩니다.

사용 방법: pegOffsetValue와 결합해 주문의 stopPx를 설정하십시오. 페그는 execInst에 지정된 트리거 가격(기본값 'MarkPrice')에 맞춰 설정됩니다. 스톱 매도 및 buy-if-touched 주문에는 음수 오프셋을 사용하십시오.

필수 ordType: 'Stop', 'StopLimit', 'MarketIfTouched', 'LimitIfTouched'.

Simple 수량

Simple 수량은 2018/10/26부로 사용 중단되었습니다

레이트 리밋

레이트 리밋을 지키면서도 시장 움직임에 대한 반응성을 높이려면 Amend 엔드포인트(PUT /order)를 사용하십시오. 이를 통해 시장에 머무를 수 있으며, 취소/재주문(cxl/replace) 사이클을 피할 수 있습니다.

주문 추적

주문 ID를 직접 추적하려면 주문마다 고유한 clOrdID를 설정하십시오. 이 clOrdID는 주문과 관련된 모든 체결(웹소켓을 포함)에 속성으로 다시 전달되며, 이를 사용해 주문을 조회하거나 취소할 수 있습니다. 최대 길이는 36자입니다.

또한 주문을 수정하면서 origClOrdID와 새로 원하는 ID를 clOrdID 파라미터로 제공해 clOrdID를 변경할 수도 있습니다. 예시는 다음과 같습니다.

# 주문의 leavesQty를 수정하면서 clOrdID를 "def-456"으로 변경합니다.
PUT /api/v1/order {"origClOrdID": "abc-123", "clOrdID": "def-456", "leavesQty": 1000}

요청

응답

요청이 성공했습니다.