자본시장과 IT, 트레이딩전략

알고리즘트레이딩규제와 소스코드

0 309

2015년 말, CFTC가 자동매매시스템(automated Trading)에 대한 규제정책으로 내놓은 regAT. 미국 상원이 이에 대한 청문회를 열었습니다.

Public Hearing RE: Examining the CFTC’s Proposed Rule: Regulation Automated Trading

많은 쟁점을 담고 있지만 저의 관심사는 소프트웨어의 소스코드(Source Code)입니다. 소스코드와 관련한 규정은 AT의 개발단계에 대한 규제와 관련이 있습니다.

Development and Testing of Algorithmic Trading Systems. Regulation AT proposes a new requirement (§ 1.81(a)(1)) that each AT Person must implement written policies and procedures for the development and testing of its Algorithmic Trading systems. Such policies and procedures must at a minimum include the following:
(i) maintaining a development environment that is adequately isolated from the production trading environment (the development environment may include computers, networks,
and databases, and should be used by software engineers while developing, modifying, and testing source code);
(ii) testing of all Algorithmic Trading code and related systems and any changes to such code and systems prior to their implementation, including testing to identify circumstances that may contribute to future Algorithmic Trading Events (s uch testing must be conducted both internally with the AT Person and on each designated contract market on which Algorithmic Trading will occur);
(iii) regular back-testing of Algorithmic Trading using historical transaction, order, and message data to identify circumstances that may contribute to future Algorithmic Tradin
g Events;
(iv) regular stress tests of Algorithmic Trading systems to verify their ability to operate in the manner intended under a variety of market conditions;
(v) procedures for documenting the strategy and design of proprietary Algorithmic Trading software used by an AT Person, as well as any changes to such software if such changes are
implemented in a production environment; and
(vi) maintaining a source code repository to manage source code access, persistence, copies of all code used in the production environment, and changes to such code (such source code repository must include an audit trail of material changes to source code that would allow AT Persons to determine, for each such material change: who made it; when they made it; and the coding purpose of the change. The source code must also be maintained in accordance with Commission regulation § 1.31)

청문회에 출석한 3명의 증인은 소스코드와 관련하여 반대하는 입장을 표명하였습니다. FIA의 Greg Wood입니다.

Download (PDF, Unknown)

Thirdly,SOURCE CODE.The Source Code requirement for unfettered access to any firm’s intellectual property as proposed is unprecedented among regulators and threatens
commercially valuable intellectual property and proprietary trading strategies.The Source Code requirement in the proposed rule puts highly proprietary information at risk without measurable benefits. Required production of Source Code should only be available through a legal process where an owner of Source Code has the right to petition a court for appropriate protection. There is no sufficient set of access conditions (e.g., onsite review, tracking who reviews Source Code, etc.) that would adequately offset the dire potential commercial consequences of requiring production of Source Code absent the protection of legal process

Download (PDF, Unknown)

두번째 증인인 RGM Advisors의 Richard Gorelick도 강하게 소스코드정책을 반대합니다.

The final concern I would like to raise today is the CFTC’s proposed access to source code. The proposed requirement to turn over valuable intellectual property (IP) to the government on demand is simply unprecedented and unreasonable. The proper treatment of IP lies at the heart of our private enterprise system. As noted by CFTC Commissioner Giancarlo in connection with the issuing release for Reg AT, the secret formula for Coca Cola is not available to the FDA, certainly not on demand. The source code for Google’s search algorithms is not available to the government without due process. Government agencies must make a reasonable showing of cause and get a proper court order, such as a subpoena, to gain access to intellectual property. A trading firm’s source code should be no different. Most modern trading firms are very much technology businesses. Many of our staff write software, and our source code constitutes important trade secrets and valuable IP about our future business plans. Modern trading firms invest significant time, effort and money in technological innovation, much of which is embodied in source code, and they go to great lengths to protect its confidentiality and their competitive edge. Not only would this proposed provision set a troubling precedent for government access to private information, but it would do so without any demonstrable regulatory benefits to offset the significant risk associated with the misappropriation of that intellectual property. Proposed Reg AT would accomplish this unprecedented access by classifying source code as “books and records” which would make them available to the Commission and the Department of Justice upon request. Source code, however, is unlike other books and records such as trade blotters and similar records, which can be reasonably protected with standard confidentiality. Source code often is comprised of valuable trade secrets that represent substantial investment and innovation and can directly impact the competitiveness of a business.

제가 이해하는 쟁점은 소스코드와 관련한 개발프로세스가 아닙니다. CFTC가 정당한 법적 절차 – 법원의 영장 – 없이 소스코드에 접근할 수 있는 권한을 가지는 것을 반대합니다. 반대로 해석하면 이를 제외한 개발프로세스를 반대하지 않습니다.

1)운영환경과 분리한 개발환경을 구축할 것
2)소스저장소를 통하여 소프트웨어의 소스를 관리할 것
3)정기적으로 백테스트를 실시하고 이와 관련한 결과를 보관할 것

사실 소프트웨어를 개발하는 사람이라면 이상의 조건을 특별하지 않습니다. 그런데 자동매매트레이더로 넘어오면 사정이 달라지나 봅니다. 여의도에서 자동매매를 하는 분들중 위와 같은 조건을 지키는 분들이 얼마나 될까요? 혹 개발프로세스가 없다고 하시면 아래와 같이 환경을 만들어보시길 바랍니다. 우선 Git가 힘들다고 하시면 Subversion을 이용하여 내부의 소스저장소를 만드시길 바랍니다. 리눅스와 같은 환경이면 쉽지만 윈동일 경우 VisualSVN을 이용하시길 바랍니다. 무척 간단합니다. 저장소와 그룹 및 이용자관리 모두 GUI로 이루어집니다. IDE를 통하여 소스저장소와 연결할 때 HTTP를 이용하시면 충분합니다. 개발프로세스중 소스저장소만큼 중요한 것이 이슈관리시스템입니다. 앞서 CFTC의 규정중 변경관리와 관련한 부분이 있습니다. 이를 체계적으로 관리하려면 이슈관리시스템의 도입이 중요합니다. 보통 Jira를 사용할 수 있지만 비용이 문제라고 하면 오픈소스인 Redmine을사용하시길 바랍니다. Redmine의 문제는 설치입니다. 간단히 설치하는 방법은 Bitnami Redmine입니다. Ruby, MySQL등을 한번에 설치합니다.

마지막으로 청문회자료중 재미있는 도표가 있습니다. FIA의 자료에 있는 그림입니다.


About the author / 



최신 댓글


  • 매주 본방사수하였던 낭만닥터 김사부. 어떤 칼럼의 한 문장. "진짜 어른이고 선생님이라면 자신의 모든 기술을 전해주고 다음 세대가 홀로 설 수 있도록 도와주어야 한다" 어른은 나이의 많고 적음이 아닙니다.

    2 hours ago
  • 드라마 도깨비 "신은 그저 질문하는 자일뿐. 운명은 내가 던지는 질문이다. 답은 그대들이 찾아라” 비약이지만 선악과를 먹은 아담에게 신은 질문합니다. "네가 어디 있느냐?" https://t.co/Ci0dUxMmdf

    10 days ago
  • 2017년 금융과 관련하여 달라지는 제도중 아주 사적인 관심사만 소개합니다. https://t.co/SXYIEmoz3w https://t.co/0ZGnxKUlfj

    12 days ago
  • 매매체결시스템의 전성시대? 대체거래소가 수면아래로 가라앉으면서 내부주문집행시장이 부상하는 듯 합니다. https://t.co/rUTkUBcOqJ https://t.co/6ADqUI4WTD

    13 days ago
  • "직무정지된 대통령은 헌법이 부여한 국가원수 및 행정부 수반으로서 권한을 행사할 수 없다. 국무회의나 수석비서관 회의를 주재하거나, 정책현장 점검 등 일상적으로 해오던 국정 수행도 못한다" 그런데 기자간담회? https://t.co/GtvSSDolnV

    15 days ago