Zomojo 판결문속에 비친 자본시장의 뒷모습

1.
왜 국내판결문도 아닌 호주법원의 판결문일까? 이런 의문을 가질 수 있습니다. 저도 Zomojo 대 Hurd 사건을 단지 Zeptonics의 제품을 둘러싼 분쟁으로만 보았습니다.

Zomojo Pty Ltd v Hurd (No 2) [2012] FCA 1458

그렇지만 어제 @dolppi님이  올린 글로 판결문을 꼼꼼히 보았습니다. @dolppi님이 제목으로 Zomojo 대 Zeptonics 라고 했지만 재판은 Zomojo라는 법인과 Zomojo의 직원이었던 Hurd사이의 분쟁을 다루었습니다. @dolppi님은 판결문중 KRX와 관련한 부분을 압축하여 설명하였습니다.

Zomojo vs Zeptonics. 지적재산권 분쟁.

먼저 한국증권사(선물사)의 DMA서비스와 Zomojo의 관계를 묘사한 부분입니다.@dolppi님의 글에서도 나오는 부분입니다.

42 Initially, Zomojo utilised a single broker which gave it a direct connection to the KRX. In October 2006, the KRX introduced new regulations which meant that Zomojo’s broker was not permitted to offer Zomojo a faster connection to the KRX than any of its other clients. All connections to the KRX were required to be processed through a broker’s front end processor (FEP), which checks orders and monitors risk. Zomojo no longer had a speed advantage and its profitability fell. The solution which Zomojo devised was to integrate its own low latency FEP into its Gateway technology and to convince its broker to use that technology. The solution worked and Zomojo returned to profitability.
43 Over time, Zomojo expanded its broker base to include five or six brokerage firms, all of whom used Zomojo’s Gateways.

2005년 한국증권사가 한국증권거래소(KSE)에 대한 Direct Connection Service를 제공하였다고 합니다. 2006년 10월 KSE 직접 접속을 금지하면서 속도상의 이익이 사라졌다고 합니다. 한국증권거래소 시절 매매체결시스템에 대한 접속기준을 알 수 없습니다. 다만 한국거래소 법규검색서비스가 제공하는 유가증권시장 업무규정 시행세칙 2005년과 2006년을 보면 호가를 회원사를 통하여 받도록 정의하고 있습니다. 90년대 말 HTS를 처음 개발할 때도 FEP를 통하였던 기억을 더듬어 보면 의문입니다. Single Broker의 국제영업부서가 불법적인 서비스를 제공했다고 이해할 수 밖에 없습니다. 다음 문장입니다. FEP를 통해 서비스를 해야 하는 상황에서 Zomojo는 자신들의 기술을 이용한 FEP를 개발, 운영하여 수익을 얻었다고 합니다. 아마도 매매시스템과 자체개발한 FEP를 한국에 들여온 곳이 Zomojo가 아닐까 합니다. 저의 문제의식은 “Zomojo와 증권선물회사의 정책이 감독규정을 준수한 것인가”입니다.

Zomojo는 자신들의 전략중 핵심은 속도라고 정의합니다.

9 Zomojo was established in order to undertake HFT on the KRX. In a Zomojo “trading proposal” document produced by Hurd on 31 May 2005, Hurd described Zomojo’s business as an “index option arbitrageur”. The proposal acknowledged that every other trader was a competitor – “[i]f you aren’t fast enough, you don’t win the race to trades and you can’t participate. Too slow, no trades, the door is firmly shut”.

한국감독기관은 2013년까지 어떤 대책도 세우지 않았습니다. KB투자증권에서 DMA사고가 일어나면서 FEP를 포함한 DMA서비스를 조사하였습니다. 그리고 고객의 FEP를 금지하는 규정을 만든다고 합니다. 들리는 소문입니다.

2.
Zeptonics가 만든 – 판결문은 Zomojo가 만들었다고 하는 – ZeptoAccess For KRX를 보면 Low Latency를 구현한 특별한 기술을 다음과 같이 설명하고 있습니다.

magic trick=harnessing patent-pending “trade acceleration” technology developed by Zeptonics

판결문은 다음과 같이 설명하고 있습니다.

Direct market access gateway which achieves negative latency through various programmatic techniques.

이것이 무엇일까 궁금했습니다. 그래서 Zeptonics의 문서를 이것저것 검토했지만 뽀족한 해답을 찾을 수 없었습니다. 그런데 판결문을 보면 실마리가 나옵니다. 바로 FPGA를 이용한 Hardware Acceleration 기술입니다. Zomojo의 Z1 혹은 Z10이라고 불리우는 제품입니다.

62 In late 2007, Hurd told Chapman he had had discussions with various hardware suppliers about the possibility of using FPGAs to accelerate some portion of Zomojo’s trading. In February 2008, Chapman discovered that the NIC Zomojo was using in its Korean trading, a card provided by Sangoma Technologies Corp (Sangoma NIC), also contained an FPGA. The principal benefit of an FPGA is its ability to be programmed to perform in a certain way, independent of the operating system. That means that it can perform faster, since certain tasks can be performed wholly within the FPGA.

63 In March and April 2008, Chapman set about designing custom firmware for the Sangoma NIC. Chapman implemented what he called “receive FIFOs” (first-in-first-out buffers) and kernel bypass. The aim of the custom firmware was to reduce latency. It achieved that aim by performing a limited amount of processing on the NIC itself. In September 2008, Chapman adapted the custom firmware to a NIC supplied by Xilinx, Inc (Xilinx NIC). The Xilinx NIC was used to build the prototype of Zomojo’s ATS: see [46]-[51] above.

그러면 남과 다른 소프트웨어기술을 무엇일까요? ION Framework입니다.

2.2.3 Ion

60 The first iteration of Zomojo’s trading engine was a “fairly conventional” design using the computer programming language known as C++. There were difficulties with the design. The foremost difficulty was that it was not “deterministic”. That is, the same inputs would occasionally produce different outputs. Zomojo’s software engineers encountered difficulties reproducing engine behaviour for the purpose of locating bugs.

61 The solution which Chapman devised in May 2008 was to convene a project to develop a deterministic and high-performance software design. The result was Ion. The relationship between Ion and the trading engine was not clearly explained at trial. Chapman gave evidence that Ion was a “library which is … a piece of code that’s used by developers”. It was not a standard library. It was a custom library developed by Zomojo with the aim of producing a deterministic engine capable of interpreting inputs from multiple sources adopting multiple

C++로 ION을 개발했지만 무언가 바탕이 있을 듯 해서 찾아보니 Synchrony와 BOOST를 사용했습니다. Zomojo에서 시스템 아키텍처로 일했던 사람이 LinkedIn에 올려놓은 경력중 일부입니다.

Market queue model: Designed and implemented an empirical model for market queues used for market simulations. (Bayesian model, C++, generic programming, Boost)

Group Communication Service: Designed and implemented a simple robust Group Communication Service server and client, which are widely used in the company’s applications for publish/subscribe communication. (Virtual Synchrony, C++, generic programming, Boost)

Libraries and utilities: Wrote dozens of generic libraries, utilities, and wrappers for statistics, data processing, synchronization, etc. (C++, generic programming, Boost) The libraries are a major output of engineers in Zomojo.

BOOST는 저도 한번 소개한 적이 있었습니다.

QuantLib, Boost C++ Library 및 ZeroMQ
Virtual Synchrony

이상을 어떻게 통합하여 시스템을 구성하였을까요? 궁금했습니다. 그래서 Zomojo와 Hurd의 이름으로 출원한 특허문서를 살펴보았습니다. 아래 그림은 특허문서에 첨부한 개념도입니다.

Improved Automated Trading System

개념도만을 놓고 보면 FPGA로 메시징 미들웨어를 구현한 것으로 보입니다. 다만 트레이딩에 특화한 미들웨어로 보입니다. 실제 전략은 CPU와 소프트웨어에서 이루어진 듯 합니다. 이 때 한가지 의문을 가집니다. 제가 듣기로 Zomojo는 Z10을 이용한 매매를 최근까지 한국에서 하고 있습니다. 자체 FEP를 운용하고 있고 위의 특허를 적용한 기술이라고 하면 남는 의문은 암호화입니다. 다른 나라 거래소와 달리 한국거래소는 기술이 아닌 인증받은 제품으로 암호화를 하여야 합니다. 위의 개념도를 보면 이해할 수 없습니다. 유일한 방법은 FPGA에 암호기술을 적용하는 것입니다. 그렇지만 이것은 규정위반입니다.

그래서 예전에 아래와 같은 글을 썼습니다.

한국형 Naked Access, 탈법 경쟁

ZeptoAccess For KRX는 FPGA를 대신 Mellanox RNIC을 사용한다고 소개하고 있습니다. Zomojo와 무엇이 달라졌는지 궁금합니다. 판결문은 같은 기술과 제품이라고 합니다만.

3.
2009년 이전까지 한국은 Old Technolgoy와 New Technology사이의 차익전략이 가능했습니다. 기술적 차이를 이용한 Low Latency=Negative Latency를 구현할 수 있었습니다. 그렇지만 2009년 후반부터 한국자본시장도 10G와 Low Latency에 눈 뜨기 시작합니다. 이 때에도 위의 기술로 기술적 차익전략을 운용할 수 있을지 의문입니다. Mr.Hurd가 Zomojo를 나와서 새로운 회사를 설립한 이유가 운용사 보다는 IT회사로서 전망이 더 밝다고 보았지 않았나 상상합니다.

현재 기준으로 Zomojo의 기술이 아주 특별하다는 생각이 들지 않습니다. 기술에 투자한 면이 많지만 규정상의 허점을 파고 들어 속도를 얻고 수익을 가져갔다는 생각을 지울 수 없습니다. 기술과 자본을 이용한 경쟁은 공정한 경쟁입니다. 규정을 위반한 경쟁은 불공정한 경쟁입니다. 이른바 여의도판 유전무죄, 무전유죄(有錢無罪 無錢有罪)입니다.

1 Comment

  1. smallake (Post author)

    low-latency.com은 이렇게 보도했네요.
    “Zomojo does not seem interested in becoming a technology vendor, and is seeking the return of ZeptoLink devices installed at other trading firms.”

    Reply

Leave a Comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.