Open API, 고속매매 그리고 고속매매 플랫폼 ZeroAOS

1.
가끔씩 ZeroAOS와 관련한 자료를 요청하는 댓글이 달립니다. 처음 글을 올렸던 때부터 현재까지 댓글에 달린 이메일주소를 자료를 보내드립니다. 보낸 자료에 대한 답장메일을 받고 끝나는 경우도 있고 다음으로 넘어가는 경우도 있습니다. 어느 경우나 흔히 있는 일입니다. 빈도수를 보면 답장 메일만 받고 끝나는 경우가 휠씬 많을 뿐이죠.

언제부터인지 자료를 보내고 나면 함흥차사인 경우가 늘기 시작하더니 요즘 100% 응답이 없습니다. 자료를 요청해서 보내드리면 한 1분 투자해서 ‘고맙다’라는 정도의 인사치례가 가능할텐데 그 조차도 없습니다. “왜 그럴까?” 생각을 해봅니다.
첫번째 추론은 핀테크 열풍과 관련한 된 듯 합니다. 처음 ZeroAOS를 만들어 시장에 내놓은 이후 ‘기계매매시스템’,’자동매매시스템’,’알고리즘매매시스템’과 관련한 서비스가 수없이 많이 등장했습니다. 핀테크 열풍이 분 이후 더 늘어난 듯 합니다. 핀테크서비스를 준비하면서 참고용으로 자료를 요청하지 않을까 하는 추측이 첫째입니다. 둘째는 퀀트트레이더입니다. 프로그래밍이 가능하고 금융공학적 지식도 있는 분들중 직접 매매를 하시는 분들이 많은 듯 합니다. 무언가 개발을 하려고 하면 막막할 수 있는데 “혹 도움이 될까?”하는 의도로 자료를 요청하지 않았을까 합니다. 솔직히 어느 경우이든 제 입장에서는 그냥 ‘자료를 요청한 분’일 뿐입니다. 목적이 무엇이든 요청을 하셨기때문에 보내드립니다. 다만 응답이 없어서 섭섭하죠.(^^)

자료를 요청하면 몇 가지 언급을 합니다. ZeroAOS를 선택하고자 할 때 몇 가지 질문을 해주십사 합니다.

투자하는 상품이 속도를 필요로 하는가?
기계매매(알고리즘매매)일 경우 이익을 예상할 수 있는 전략인가?
API가 아닌 DMA(고속매매)서비스를 이용할 때 API보다 훨씬 큰 이익을 얻을 수 있는 전략인가?
ZeroAOS와 DMA로 발생하는 지출을 넘어서는 수익을 예상할 수 있는가?

이상과 비슷한 질문을 드리는 이유는 증권사가 제공하는 API와 DMA서비스는 투자자의 비용에서 차이가 있기때문입니다. 더 나은 서비스는 더 많은 비용을 필요로 합니다. 비용은 그대로인데 서비스가 나은 경우는 없습니다. 증권사나 선물사는 절대로 기업에 이익이 없는 서비스를 하지 않습니다. 증권사가 제공하는 API는 HTS나 MTS로 제공하는 서비스를 기반으로 한 서비스로 출발하였습니다. 그래서 Open API라고 하지만 공개된(Public)이라는 의미일 뿐입니다. 다양한 언어를 지원하는 노력을 하고 있습니다. 웹이 보편화하기 이전 클라이언트/서버환경에서 만들어진 서비스에 기반합니다. 그래서 웹환경의 API와 많이 다릅니다. Open이라는 의미에 Cross라는 의미를 더해서 생각하면 기술기반을 하나로 하기가 쉽지 않습니다. 이런 점에서 REST API와 Websocket을 이용한 모 증권사의 Open API는 진보적이라고 할 수 있습니다. 이런 변화가 널리 펴졌으면 합니다. 그러면 Open API를 이용하여 여럿 증권사와 거래하는 플랫폼 – 여럿 암호통화거래소를 위한 라이브러리처럼 -도 등장하지 않을까 합니다.

2.
ZeroAOS를 처음 구상할 때 복수의 전략을 하나의 플랫폼을 기반으로 운용하고자 하는 요구에 부응하려고 개발하였습니다. 시장을 다양한 전략으로 공략할 수 있으려면 일정한 규모와 전문성을 필요로 합니다. 지난 시간 이런저런 고객들이 있었지만 전업 트레이딩만큰 부침이 심한 분야도 없습니다. 몇 개월하고 그만 두는 경우도 있고 보통은 1~2년정도입니다. 몇 년동안 계속 거래하는 팀은 다양한 전략을 준비하거나 준비하는 분들입니다. 이른바 ‘전략 포트폴리오’라고 할 수 있습니다. 세상에서 유일한 전략 하나로 승부를 보겠다고 할 경우 가장 좋은 방법은 훌륭한 개발자와 함께 맨땅에서 개발하는 것입니다. 이름하여 전략에 최적화한 개발을 하는 것입니다. Latency를 줄일 수 있는 가장 효율적인 방법이기도 합니다. 물론 훌륭한 개발자를 만나기 힘들 수 있습니다. 그렇기 때문에 직접 개발할 능력이 있거나 능력을 배우는 편이 장기적으로 도움이라고 생각합니다.

ZeroAOS는 DMA를 기반으로 합니다. 금융회사가 제공하는 DMA서비스는 시세와 주문서비스입니다. 매매시스템을 구축할 때 필요한 시세,주문체결관리, 리스크관리, FEP관리등을 플랫폼으로 만들었고 각 기능을 전략에서 API로 호출하여 사용할 수 있도록 하였습니다. 서버는 리눅스기반의 C로 개발하였고 화면은 C++입니다.

몇 년전부터 기계학습과 같은 개념들이 투자에 도입을 합니다. 로보어드바이저가 한 예일 수 있습니다. 사실 투자규모에 따라 자체적으로 로보어드바이저와 같은 개념을 도입하는 것도 가능합니다. 가장 중요한 부분이 Asset-Allocation과 Rebalancing이기 때문에 이 부분을 DMA와 결합할 수 있죠.

DMA를 어떤 틀로 해석할 필요는 없습니다. 증권사와 선물사가 코스콤이 제공하는 시세를 동일한 형태로 제공하고, 미니원장을 통해 거래소 시장에 증권사의 간섭을 최소화하여 접근할 수 있도록 하는 서비스입니다. 이를 기반으로 다양한 상상을 발휘하는 것이 가능합니다. ZeroAOS도 그런 상상중 하나입니다.

다만 어떤 상상은 자본시장법에 따른 인허가가 따릅니다. 이 점을 놓치면 곤란합니다.(^^)

9 Comments

  1. DMA브로커

    안녕하세요, DMA브로커를 하고 있는 1인 입니다. 몇년 전부터 스몰레이크님의 글을 자주 봐왔는데 법인을 차리신 것으로 보여 처음으로 글을 남겨봅니다. 업계의 한참 선배님이신것 같아 항상 IT적인 부분, 제도적인 부분, 견해를 보며 많이 배웠습니다. 고객 중에 DMA매매를 하시고 싶으신데 IT기술력의 장벽떄문에 서비스를 이용하지 못하시는분들이 계셨는데 스몰레이크님의 서비스를 이용하면 그런분들도 DMA시장에 참여하실 수 있을것 같습니다. 나중에 그런 고객님이 찾아오시면 ZeroAOS를 소개해드리고 싶네요. 늘 좋은글 감사합니다.

    Reply
    1. smallake (Post author)

      안녕하세요. 개인회사를 그냥 법인으로 바꾸었을 뿐입니다. 사실 달라진 것은 없습니다. 소개해주시면 고맙죠(^^)

      사업번창하시길 바라고 건강하세요.

      Reply
  2. Jung

    안녕하세요, 항상 좋은 글 남겨 주셔서 감사합니다. 일반 개인 투자자가 동시 호가에 최대한 빠르게 주문을 넣고 싶다면 현실적으로 어떤 방법이 가장 좋을까요? (ex – 공모주 상장 당일, 오전 동시 호가 주문 때 상한가 주문으로 100주라도 배정 받고 싶은 경우) DMA서비스가 가장 좋겠지만 개인이 커버 하기엔 비용이 맞지 않아 고민 중 입니다. 그나마 MTS보다 HTS가 더 나을까요? 조언 주신다면 정말 감사하겠습니다.

    Reply
    1. smallake (Post author)

      HTS보다는 API를 이용하시면 어떨까요? API를 DMA처럼 운용하는 서비스를 제공하는 증권사가 있습니다. 물론 거래량이 일정규모인 고객을 대상으로 하지만…

      Reply
      1. ht

        저는 게임개발자로 3년정도 취미삼아 주식 자동매매 프로그램을 만들고 있는데
        매일 전종목 틱데이터에서 나름 차트나 보조지표를 만들어 시그널을 찾아 그날 매수매도 하는식 입니다.
        백테트팅에선 매일 세금정도의 수익이 70%의 확률로 꾸준히 있는데요
        실매매를 하면 시간지연으로 딜레이 체결되여 수수료 만큼 손실이 나고 있습니다.

        API를 DMA처럼 운용하는 서비스를 제공하는 증권사를 알 수 있을까요?

        Reply
        1. smallake (Post author)

          안녕하세요. 말씀하신 서비스를 어디가 제공하는지는 확인해드릴 수 없습니다. 제가 영업 대행을 하지 않으니까요… 거래하는 증권사 온라인영업팀에 문의해보시길 바랍니다. 대략 개념은 이렇습니다.

          API를 이용하여 개발한 시스템이 보통 개인거주지에 있습니다. 개인거주지에서 증권사 API서버가 위치한 곳까지 TCP통신을 하여 주문체결이 이루어집니다. DMA처럼 한다는 것중 다른 것은 불가능하고 한가지는 가능합니다. 위치를 증권사 API서버가 있는 데이타센터에 위치하는 서비스입니다. 제가 알기론, 거래량이 많은 VIP고객에 한하여 서비스를 제공하는 듯 합니다.

          이럴 경우 손매매처럼 매매하시면 아무런 이득이 없습니다. 또한 API서버와 API매매시스템이 위치하는 곳이 각각 어디인지도 확인하셔야 합니다.

          Reply
          1. ht

            답변 감사합니다.
            현재 수익이 나지 않는 상태에서 코드를 다듬으려
            하루 200여개 가량의 종목을 완전 자동 실매매 하고 있는데 컴퓨팅 파워, 네트웍 속도 슬리피지등 모두 고려 해야 하니 생각보다 예외가 많은 작업이네요
            실제 필드에선 한틱만 늦으면 0.5%가량의 수익이 날아 가버리는 상황이 빈번히 발생 하기 때문에 마지막 이라 생각 되는 허들을 못넘고 있습니다
            사업 번창 하세요~

            Reply
  3. YongHanLee

    좋은 글 잘 보고 갑니다. API 개발해보는 개발자 입장에서 좋은 참고가 되네요. ^^

    Reply
    1. smallake (Post author)

      감사합니다 ^^

      Reply

Leave a Comment

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

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