주문 관리 시스템(OMS)은 누군가 거래를 결정하는 순간부터 결과가 계좌에 도달할 때까지 거래 주문을 추적하는 소프트웨어입니다. 요청된 내용을 기록하고, 주문이 허용되는지 확인하며, 실행을 위해 전송하고, 그 이후에 발생하는 모든 것을 추적합니다.
모든 주문은 세 가지 질문을 제기하며, OMS는 그 답이 존재하는 곳입니다: 우리가 거래할 의도가 있었던 것은 무엇인가? 실제로 거래된 것은 무엇인가? 여전히 조치가 필요한 것은 무엇인가?
의도된 것과 실제 거래된 것은 종종 다릅니다. 1,000주를 사겠다는 요청을 상상해 보세요. 처음 400주가 구매되고, 그 후 구매자는 나머지를 취소해 달라고 요청합니다. 그 요청이 진행되고 있는 동안, 다른 150주가 구매됩니다. 주문은 “취소됨”으로 표시되지만, 실제로는 550주가 구매되었습니다. 좋은 OMS는 그 한 단어의 상태 뒤에 있는 전체 이야기를 보여주며, 이 가이드는 그 방법을 설명합니다.
요약하자면:
- OMS는 거래 주문의 중앙 기록입니다: 무엇이 요청되었고, 누구를 위해, 그리고 그것에 무슨 일이 발생했는지를 나타냅니다.
- 각 주문을 발송하기 전에 확인하고, 그 후에는 확인, 실행된 거래, 변경 및 취소를 추적합니다.
- 거래를 직접 실행하지 않습니다. 브로커와 거래소가 그것을 수행하며, OMS는 기록을 정확하게 유지합니다.
- 시간이 기록된 역사적 사실은 기업과 규제 기관이 이후에 어떤 주문을 재구성하는 데 사용하는 주요 기록 중 하나입니다.
주문 관리 시스템이란 무엇인가요?
금융 시장에서 OMS는 주식, 채권, 통화, 파생상품 및 기타 금융 상품에 대한 주문을 관리합니다. 이 이름은 온라인 상점에서 배송 처리를 위해 사용하는 소프트웨어와 공유되지만, 거래 OMS는 다른 작업을 수행하는 다른 도구입니다.
주문에 대한 로그북 및 제어 데스크로 생각하세요. 모든 거래는 연금 기금을 위한 대규모 주문을 하는 펀드 매니저로 시작하든, 거래 앱에서 “구매”를 누르는 사람으로 시작하든 유사한 단계를 거칩니다. 전문 기업에서는 OMS가 이러한 단계를 정리하는 시스템입니다. 소비자 거래 앱에서는 같은 기능이 일반적으로 브로커의 플랫폼 내부에서 실행되며, 눈에 띄지 않습니다.
거래 OMS의 주요 기능
- 주문 캡처: 계정, 금융 상품, 매수 또는 매도 방향, 수량, 주문 유형, 가격 및 주문 유효 기간을 기록합니다.
- 거래 전 확인: 주문이 허용되었는지, 계좌에서 감당할 수 있는지, 거래 한도를 준수하는지 확인합니다.
- 라우팅: 승인된 주문을 중개인, 실행 시스템 또는 거래 장소로 전송합니다.
- 주문 추적: 확인, 채우기, 변경 및 취소에 대한 실시간 기록을 유지합니다.
- 포지션 유지: 거래가 들어올 때 보유 자산과 현금을 업데이트하므로 다음 주문은 최신 숫자와 비교됩니다.
- 할당: 필요할 때, 주문이 이루어진 계좌에 걸쳐 대규모 실행 주문을 분할합니다.
- 감사 추적: 모든 사건의 시간 스탬프가 있는 이력을 저장하여 누군가가 나중에 정확히 무슨 일이 있었는지 복원할 수 있도록 합니다.
- 거래 후 인수: 결과를 회계 및 운영 시스템에 전달합니다.
일부 OMS 제품은 독립형 애플리케이션입니다. 다른 제품은 더 큰 거래 플랫폼에 통합되어 있습니다.
일반 영어로의 주요 용어
| 용어 | 의미 |
|---|---|
| 주문 | 특정 수량의 상품을 매수하거나 매도하는 지시 |
| 거래 장소 | 주문이 일치하는 장소, 예를 들어 증권 거래소 |
| 체결 | 주문의 전부 또는 일부가 실행된 거래 |
| 부분 체결 | 지금까지 거래된 수량이 일부에 불과함 |
| 작업 수량 | 아직 거래를 기다리고 있는 주문의 일부 |
| 시장 주문 | 가능한 한 빨리 최상의 가격으로 거래하라는 주문 |
| 제한 주문 | 명시된 가격 또는 그보다 나은 가격에서만 거래될 수 있는 주문 |
| 유효 기간 | 주문이 활성 상태로 유지되는 시간, 예를 들어 하루 또는 취소될 때까지 |
| 확인 | 주문을 수락했음을 수신 측에서 확인하는 것 |
| 수정 | 주문의 가격이나 수량과 같은 변경 요청 |
| 취소 | 아직 거래되지 않은 수량을 중지하는 요청 |
| 보류 취소 | 취소 요청이 이루어졌으나 아직 확인되지 않음; 주문은 여전히 거래될 수 있음 |
| 거부됨 | 주문이 회사의 자체 검증 또는 수신 측에 의해 거부됨 |
| 만료됨 | 주문이 완전히 거래되지 않고 유효 기간이 끝남 |
| 배분 | 실행된 주문을 여러 계좌로 나누는 것 |
| 청산 및 결제 | 거래 후 누가 무엇을 빚지고 있는지 확인한 다음 증권과 현금을 교환하는 단계 |
주문 관리 시스템이 작동하는 방식, 단계별로
Where the OMS sits
Orders go out through the OMS; confirmations and fills come back to it; results go on to the back office. Shown from a fund manager’s point of view. In a trading app, the broker runs the OMS.
- Order sourceInvestor, fund manager, algorithm or app
- OMSRecords, checks and tracks the order
- ExecutionBroker, EMS or smart order router
- Trading venueExchange or other venue matches orders
- ↑ Confirmations and fills flow back to the OMS
- Post-tradeThe OMS passes results to the back office, which works with clearing and settlement
1. 주문이 접수되었습니다
주문은 개인, 포트폴리오 관리 시스템, 거래 알고리즘 또는 API(소프트웨어 인터페이스)를 통해 연결된 다른 프로그램에서 올 수 있습니다. OMS는 먼저 정확히 무엇이 요청되고 있는지 알아야 합니다.
“1,000 XYZ를 $25에 구매”는 그 자체로는 충분하지 않습니다. OMS는 또한 주문이 어떤 계좌를 위한 것인지, 어떤 특정한 상품을 의미하는지 (같은 티커가 여러 시장에 존재할 수 있음), 통화 및 주문이 유효한 기간을 알아야 합니다. 당일 주문은 거래일 종료 시 만료되며; 유효 기간 만료 전까지 유효한 주문은 채워지거나 취소될 때까지 계속 진행되지만, 많은 브로커가 최대 기간을 설정합니다.
OMS는 주문에 식별자를 부여합니다. 이후의 모든 채우기, 변경 및 취소는 해당 식별자에 연결됩니다. 그 연결 없이는 운영 팀이 유효한 거래를 수신하더라도 어떤 지침에 해당하는지 알 수 없습니다.
2. 주문이 확인되었습니다
무언가가 전송되기 전에 OMS는 사전 거래 검사를 수행하며, 이는 자체적으로 또는 연결된 위험 및 준수 서비스들을 통해 이루어집니다. 일반적인 검사는 다음과 같습니다:
- 이 계정이 이 도구를 거래할 수 있는지 여부,
- 브로커에게서 빌린 자금인 현금이나 마진이 충분한지 여부,
- 크기와 가격이 한계 내에 있는지 여부,
- 해당 기기가 제한 목록에 있는지 여부, 예를 들어 회사에 대한 기밀 정보를 보유하고 있기 때문에.
오픈 주문 수 또한 포함됩니다. 계좌에는 하나의 주문을 위한 충분한 금액이 있을 수 있지만, 동시에 발생한 두 개의 유사한 주문을 위한 금액은 아닐 수 있습니다. 좋은 체크는 이미 발생한 거래뿐만 아니라 여전히 대기 중인 주문도 고려합니다.
거래 후에도 규정 준수 검사를 실행하여 결과가 규칙 내에 머물렀는지 확인할 수 있습니다. 거래 전에 검사가 실패할 경우, 거부 사유를 명시해야 합니다. “이 계좌에 허용되지 않는 상품”은 몇 분 안에 수정할 수 있습니다. “주문 실패”는 누군가가 로그를 뒤져야 한다는 것을 의미합니다.
3. 주문이 발송되고 확인되었습니다
승인된 주문은 중개인, 실행 관리 시스템, 스마트 주문 라우터 또는 장소에 대한 직접 연결과 같은 목적지로 이동합니다.
주문을 보내고 그것이 수락되는 것은 두 개의 별개 이벤트입니다. OMS는 자신의 제출을 기록한 후, 상대방이 그것을 확인하거나 거부하기를 기다립니다. 큰 주문이 더 작은 “자식” 주문으로 나누어지면, OMS는 이들을 원래의 “부모”와 연결된 상태로 유지하여 자식 주문이 결코 부모를 초과하지 않도록 확인할 수 있습니다.
주문은 메시지로 시스템 간에 이동하며, 종종 트레이딩 API 또는 업계 표준 FIX 프로토콜을 통해 이루어집니다. OMS는 이러한 메시지를 읽고 각 주문의 상태와 수량을 업데이트합니다.
4. 채우기, 변경 및 취소가 추적됩니다
체결은 구매하거나 판매된 수량을 증가시키며, 주문의 일부가 여전히 진행 중일 수 있습니다. 수정 요청은 주문을 변경하도록 요청합니다. 취소 요청은 아직 거래되지 않은 것을 중단하도록 요청합니다.
변경이나 취소는 발송되는 순간에 효력이 발생하지 않습니다. 상대방이 이를 확인할 때까지 원래 주문은 거래를 계속할 수 있습니다. 많은 거래 시스템이 따르는 FIX 주문 상태 사양은 바로 이 이유로 “보류 중 취소” 상태를 별도로 두고 있습니다. 또한 취소된 주문이 실행된 거래를 포함할 수 있도록 허용합니다. 상태만으로는 얼마나 거래되었는지 알 수 없으며, 수량이 그것을 알려줍니다.
5. 결과는 거래 후 시스템으로 이동합니다
거래가 완료되면 OMS는 체결 내용, 계좌 세부정보 및 식별자를 백오피스 시스템으로 전달합니다. 그 후 운영 팀은 해당 기록을 중개인, 거래소 및 청산 회사의 확인서와 대조합니다.
여러 포트폴리오에 대해 동시에 주식을 구매한 펀드 매니저에게는, 이는 사전에 합의된 규칙에 따라 실행된 수량이 각 포트폴리오에 할당되는 시점이기도 합니다.
거래를 실행하는 것은 그것을 정산하는 것과 동일하지 않습니다. 증권 시장에서 정산은 증권과 현금의 실제 교환으로, 청산 및 정산 인프라에 의해 처리됩니다. OMS는 이 과정에서 사용되는 계좌 및 배분 세부 정보를 제공합니다. 자산을 보유하거나 정산을 완료하지 않습니다. 예를 들어, 미국 주식은 거래 후 한 영업일(T+1) 후에 정산됩니다.
예시: 부분적으로 채워진 주문이 취소되는 경우
여기 소개의 주문에 대한 자세한 내용이 있습니다. 이는 가상의 예시입니다: 1,000 XYZ 주식을 $25의 한도로 구매합니다. 유효 기간은 하루입니다. 계좌는 XYZ 주식이 없고, 모든 검사가 통과하며, 수수료는 제외됩니다.
- 브로커가 주문을 수락합니다. 400주가 $24.98에 거래되며, 600주는 아직 진행 중입니다.
- 구매자가 나머지를 취소해 달라고 요청합니다. 취소는 현재 보류 중입니다.
- 확인되기 전에 150주 추가가 $24.99에 거래됩니다.
- 브로커가 남은 450주의 취소를 확인합니다.
Follow the cancellation
An illustrative buy order for 1,000 shares. A cancellation stops the remaining quantity; it does not reverse existing fills.
Order status: Canceled
- Shares filled
- 550
- Still working
- 0
- Canceled
- 450
The remaining 450 shares are canceled. The 550 shares already bought remain in the account. No quantity is still working.
Read the complete sequence
- First fill: 400 shares trade at $24.98. Another 600 are still working.
- Cancel requested: a cancellation is pending. The 600 remaining shares can still execute.
- Another fill: 150 more shares trade at $24.99 before cancellation is confirmed. Filled quantity is now 550; 450 remain working.
- Cancel confirmed: those 450 shares are canceled. The final result is 550 bought, 450 canceled and none working.
최종 결과:
- 구매한 주식: 550 주
- 거래 없이 취소됨: 450 주
- 아직 작업 중: 0 주식
- 총 비용: (400 × $24.98) + (150 × $24.99) = $13,740.50
- 평균 가격: $13,740.50 ÷ 550 ≈ $24.9827
취소된 주식은 거래되지 않았기 때문에 평균 가격에 영향을 미치지 않습니다. 또한 취소는 이미 구매한 550주를 무효화하지 않습니다.
구매자가 여전히 총 1,000주를 원한다면 남은 차이는 450주입니다. 첫 번째 체결만 보고 600주에 대한 새로운 주문을 보낸 사람은 그 주문이 완전히 체결되면 1,150주를 가지게 될 것입니다.
구매자가 결제를 취소해달라고 요청하지 않았다면, 미체결 주식은 단순히 마감 시 만료되었을 것입니다. 이는 이 주문이 하루 주문이기 때문입니다.
실제 시스템은 이러한 단계를 다르게 표시하거나 일부 중간 메시지를 건너뛸 수 있지만, 수량은 항상 합산되어야 합니다: 완료된 + 진행 중 + 취소된 (또는 만료된)은 현재 주문 수량과 같아야 하며, 수정 사항을 포함합니다.
OMS와 EMS 및 기타 거래 시스템
여러 시스템이 동일한 주문을 처리할 수 있으며, 하나의 제품이 여러 역할을 결합할 수 있습니다.
| 시스템 | 주요 작업 | 답변하는 질문 |
|---|---|---|
| PMS (포트폴리오 관리 시스템) | 포트폴리오를 추적하고 재조정을 할 때 어떤 것을 사고 팔지를 결정합니다. | 우리는 무엇을 거래해야 합니까? |
| OMS | 주문을 기록하고, 검사를 수행하며, 상태를 추적하고, 결과를 운영팀에 전달합니다. | 무엇이 주문되었고, 어떤 계좌로, 현재 상태는 무엇입니까? |
| EMS (실행 관리 시스템) | 트레이더에게 시장에서 주문을 처리할 수 있는 도구를 제공합니다. 종종 실시간 데이터와 알고리즘을 사용합니다. | 지금 이 주문을 어떻게 실행해야 합니까? |
| OEMS | OMS와 EMS 기능을 하나의 시스템으로 통합합니다. | 위의 두 가지를 한 곳에서 제공합니다. |
| 스마트 주문 라우터 | 라우팅 규칙에 따라 주문을 보낼 장소를 선택합니다. | 어느 장소가 이 주문을 받아야 합니까? |
| 매칭 엔진 | 거래소 내에서 매수 및 매도 주문을 일치시킵니다. | 어떤 주문이 서로 거래할 수 있습니까? |
| 백 오피스 | 회계, 기록 및 조정을 처리합니다. | 모든 기록이 일치합니까? |
차이를 기억하는 간단한 방법: PMS는 무엇을 거래할지 결정하고, OMS는 무엇이 주문되었고 누구를 위해서인지 추적하며, EMS는 어떻게 실행되는지를 관리합니다. 스마트 주문 라우터는 어디로 보낼지를 결정하고, 매칭 엔진은 거래소 내에서 구매자와 판매자를 연결합니다.
주문 관리 시스템을 사용하는 사람은 누구인가요?
자산 운용사, 연금 기금 및 헤지 펀드 (“매수 측”)는 OMS를 사용하여 투자 결정을 통제된 주문으로 전환합니다. 이들은 종종 여러 포트폴리오를 대신하여 거래를 수행하므로, 할당 규칙 및 투자 제한이 중심이 됩니다.
은행과 중개업체 (“판매 측”)는 고객으로부터 주문을 받고 이를 시장에 전송합니다. 그들의 OMS는 대량의 주문 처리, 고객 수준의 한도 및 고객의 주문과 회사의 자체 거래 간의 명확한 분리를 처리해야 합니다.
전문 트레이딩 회사는 자신의 자금을 거래하며, 전략과 리스크 관리를 통해 주문 관리를 사용합니다.
소매 투자자는 일반적으로 OMS라는 이름을 보지 않습니다. 그러나 거래 앱에서 주문을 할 때, 중개인의 시스템은 동일한 단계를 수행합니다: 주문을 기록하고, 잔액을 확인하고, 주문을 시장에 전송하며, 체결이 도착하면 계좌를 업데이트합니다. 앱에서 주문이 “부분 체결” 또는 “취소 대기”로 표시되면, OMS가 추적하는 동일한 주문 상태를 보고 있는 것입니다.
짧은 역사: 전화 통화에서 전자 주문으로
거래가 전자적으로 이루어지기 전에는 많은 주문이 전화로 접수되거나 종이 티켓에 작성되었으며, 직원들은 수동으로 체결을 추적했습니다. 1990년대에 전자 거래가 확산되면서, 기업들은 시스템 간에 주문을 전송하기 위한 공통 언어가 필요했습니다. FIX 프로토콜은 1992년 피델리티 투자와 솔로몬 브라더스 간의 주식 주문 정보를 전자적으로 교환하기 위한 프로젝트에서 발전하였고, 이후 업계 표준이 되었습니다. FIX는 공유 언어이며, OMS는 이를 사용하는 주요 시스템 중 하나입니다.
기업들이 주문 관리 시스템을 사용하는 이유
수동 오류 감소
잘못 입력된 수량이나 가격은 엄청나게 비용이 많이 들 수 있습니다. 2005년 12월, 도쿄의 미즈호 증권에서 한 트레이더가 610,000 주를 1엔에 판매하는 주문을 입력했습니다. 이는 J-Com이 발행한 주식 수의 40배가 넘습니다. 경고 메시지가 화면에 나타났지만, 트레이더는 이를 무시했습니다. 미즈호의 취소 시도는 도쿄 증권 거래소 시스템의 결함으로 차단되었습니다. 손실은 결국 약 400억 엔에 달했습니다. 법원은 나중에 거래소에 일부를 지급하라고 명령했지만, 미즈호의 주문 관리의 실패로 인해 부분적으로 책임이 있다고 판단했습니다.
모든 OMS에 대한 교훈: 클릭하여 무시할 수 있는 경고는 충분하지 않습니다. 실제로 주문을 차단하는 크기 및 가격 한계가 이러한 종류의 실수가 시장에 도달하기 전에 이를 방지합니다.
진실의 단일 출처
거래자, 위험 관리 담당자, 운영 직원 및 고객은 모두 “이 주문에 무슨 일이 있었나요?”라는 질문에 대한 동일한 답변이 필요합니다. 모든 체결, 변경 및 취소가 하나의 중앙 기록을 업데이트할 때, 누구도 이메일, 스프레드시트 및 별도의 화면에서 이야기를 조합할 필요가 없습니다.
일관된 제어
모든 주문에는 사람, 알고리즘 또는 API에서 오는 것과 관계없이 동일한 방식으로 제한 및 제약이 적용됩니다. 규칙은 각 트레이더가 기억하는 대신 한 번 구성됩니다.
완전한 감사 기록
거래 회사는 종종 수년 후에 모든 주문에 대해 정확히 무엇이 일어났는지 보여줄 수 있어야 합니다: 누가 입력했는지, 언제 변경되었는지, 어디로 전송되었는지 및 무엇이 거래되었는지.
규제 기관은 이러한 기록에 의존합니다. 미국에서 SEC의 통합 감사 추적은 상장 주식 및 옵션의 전체 생애 주기를 통해 주문을 추적하도록 설계되었습니다. 이 과정은 주문 생성, 라우팅, 수정, 취소 및 실행을 포함합니다. 유럽 연합의 MiFID II와 같은 다른 지역의 규칙은 자체 기록 유지 요구 사항을 설정합니다. 동일한 기록은 고객의 주문이 합리적으로 이용 가능한 최상의 조건으로 실행되었는지 확인하는 최상의 실행 검토에 사용됩니다.
OMS는 스스로 회사를 준수하게 만들지 않지만, 준수 팀이 의존하는 많은 데이터를 생성합니다. 그래서 좋은 OMS는 주문의 이전 상태를 덮어쓰는 대신 전체 기록을 유지합니다.
주문 관리에서 잘못될 수 있는 것
주문이 전송된 후 연결이 끊어집니다
OMS는 주문을 보내지만, 확인이 도착하기 전에 연결이 실패합니다. 주문이 목적지에 도달했을 수도 있고 그렇지 않을 수도 있습니다. 단순히 다시 보내는 것은 포지션을 두 배로 만들 수 있습니다. 안전한 복구 프로세스는 먼저 상대방과 주문의 상태를 확인하고, 그 동안 직원에게 결과가 해결되지 않았음을 보여줍니다.
반복되는 메시지는 반복되는 거래가 된다
연결이 복구되면 시스템은 때때로 이전 메시지를 다시 전송합니다. OMS는 재생된 체결이 이미 기록된 동일한 거래임을 인식해야 하며, 새로운 거래가 아닙니다. 만약 거래소가 나중에 거래를 수정하거나 취소(“버스트”)하면, 그 변경 사항은 새로운 기록으로 저장되므로 원본은 계속 표시됩니다.
시스템이 이미 채워진 내용을 추적하지 못함
주문 처리에서 잘못된 가장 잘 알려진 사례는 나이트 캐피탈입니다. 2012년 8월 1일, 이 회사의 자동 주문 라우터의 결함으로 인해 주문이 체결되었는지 인식할 수 없게 되었습니다. 새로운 주문을 계속해서 보냈습니다. 거래의 첫 45분 동안, 단 212개의 고객 주문을 처리하려고 시도하면서 400만 개 이상의 주문을 보냈고, 3억 9,700만 주 이상을 거래했으며 4억 6천만 달러 이상의 손실을 입었습니다. SEC는 이후 이 회사가 보낸 주문과 쌓은 포지션을 제한할 수 있는 적절한 통제가 부족하다고 판단했습니다.
결함이 있는 구성 요소는 OMS가 아닌 라우터였지만, 이 교훈은 모든 주문 처리 시스템에 적용됩니다. 항상 얼마나 많은 거래가 이루어졌는지 알고, 숫자가 더 이상 의미를 갖지 않을 때 시스템을 멈추게 하는 엄격한 한계를 설정해야 합니다.
거래는 올바르지만 계정은 잘못되었습니다
올바른 가격의 거래라도 잘못된 계좌에 기록되면 손실을 초래할 수 있습니다. 그렇기 때문에 할당 및 계좌의 변경은 일반적으로 허가, 기록된 사유 및 검토를 필요로 하며, 주문 기록은 정기적으로 백오피스 데이터와 조정되어야 합니다.
잘 구축된 OMS의 징후
시스템을 평가하고 있든, 직장에서 사용하고 있든, 아니면 단순히 “좋은” 것이 어떤 모습인지 알고 싶든, 신뢰할 수 있는 OMS와 취약한 OMS를 구분짓는 상황은 다음과 같습니다:
| 상황 | 잘 구축된 OMS가 하는 일 |
|---|---|
| 주문이 계좌 한도를 초과함 | 차단하거나 승인을 요청하고, 그 이유를 기록함 |
| 주문이 부분적으로 체결된 후 취소됨 | 취소가 확인될 때까지 체결된 수량과 진행 중인 수량을 표시함 |
| 주문이 발송된 후 연결이 끊김 | 다시 무엇을 보내기 전에 주문의 실제 상태를 확인함 |
| 실행 메시지가 두 번 도착함 | 중복을 인식하고 거래를 두 번 계산하지 않음 |
| 거래 후 할당이 변경됨 | 허가가 필요하며 변경 이력을 유지함 |
| 누군가 오래된 주문에 대해 무슨 일이 있었는지 묻는 경우 | 원래 지시사항, 모든 변경 사항 및 모든 체결을 재구성함 |
주식 펀드 관리자와 같은 특정 유형의 비즈니스를 위해 구축된 시스템은 통화나 파생상품과 같은 다른 금융 상품을 처리하기 위해 상당한 작업이 필요할 수 있습니다.
