brunch

You can make anything
by writing

C.S.Lewis

by MS KIM Feb 07. 2018

탈중앙화 거래소 오메가원, Omegaone(2)

오메가원의 세부 메커니즘의 이해

오메가원은 탈중앙화 거래소로서 이더리움 기반의 Dapp입니다. ERC20 기준에 맞춰 발행한 자체 토큰도 보유하고 있습니다. 이번 장에서는 오메가원의 세부 메커니즘이 어떻게 운용되는지 백서를 기준으로 파악해보도록 하겠습니다. (실제로 구현된 서비스가 아니기 때문에 백서에 의존성이 많을 수 밖에 없음을 알려드립니다.)


오메가원의 전체적 메커니즘은 아래와 같습니다. (백서를 확인하시면 구체적인 각 기능들을 확인할 수 있습니다. 하지만 전체 메커니즘을 이해하는데는 아래의 그림으로 충분하다고 생각합니다.)


오메가원 메커니즘 , 출처: Omegaone whitepaper


1. UI/ API

오메가원 멤버들은 Web,모바일, 자체 API를 통해 오메가원 시스템과 인터페이스를 할 수 있으며 UI나 API를 이용해서 Omega One Wallet에서 자금을 입출금 하는 것이 가능하고, 주문 초기화 및 진행상황의 모니터링이 가능합니다.


또한 오메가원은 금융 서비스의 제공에 대해서 많은 신경을 쓰고 있습니다. 고객들은 오메가원 UI/API를 통해 멀티체인 포트폴리오(암호화폐 포트폴리오 제공 서비스)와 Tax 분석과 회계 서비스 까지 제공하며 프리미엄 서비스로는 유동성의 동적 분석(dynamic analysis)을 통해 암호화폐 거래소의 재정거래(Arbitrage Transaction) 기회 분석 서비스도 제공할 예정입니다.


2. Omega Wallet (오메가 지갑)

여타 지갑서비스와 다르지 않게 다양한 블록체인 위에 연결된 지갑 세트로 구성되어있습니다. 쉽게 이야기하자면 많은 알트코인(Alternative Coin: 비트코인을 제외한 다른 암호화폐를 지칭)을 사용할 수 있는 지갑서비스입니다. 현재 모든 종류의 ERC20 토큰이 이용 가능하며 점차 이용가능한 토큰 혹은 코인의 수를 늘려나갈 예정입니다. 


Omega Wallet에서는 자산의 잠금(locking of assets)과 안전 자동 결제(secure automated settlements)의 기능이 내장(built-in)되어있습니다. 이 기능은 오메가원의 UI/API를 통해 고객이 주문을 신청했을 때, 실제로 고객의 지갑이 거래를 하려는 특정 자산을 가지고 있는지를 확인한 뒤에, 서로 교환을 원하는 자산이 이동하지 못하게 잠금한 뒤 안전하게 거래하는 기능 입니다. (Atomic Swap을 하는 과정이며, Counterparty risk를 해소시킴) 이 경우에는 어떤 문제가 발생해 거래가 이루어지지 않을 경우에는 잠긴(locked) 자산을 되돌려받을 수(Revert) 있습니다.


또한, 각 Coin에 해당하는 Wallet manager들이 있으며 각 Wallet manager들은 각자 블록체인 위에 연결되어 있어 고객들의 주문이 On-chain위에서 이루어질 수 있도록 합니다.


3. Omega Private Exchange (자체 거래소)


자체 거래소에는 Compliance Engine과 Matching Engine으로 구성되있습니다. Parent Order가 발생하면 먼저 자체 거래소의 구성요소인 (1) Compliance Engine을 통해 멤버의 계정, 자산이 오메가원의 규정에 부합한지를 확인 하고 지시하는 역할을 합니다. 쉽게 생각하여 감독관이라고 생각하시면 됩니다. 특정 내용이 유효하다고 판단이 되면 Matchin Engine으로 이동해 반대 상태의 주문과 매칭되며 다 채워지지 못한 거래는 Trading Engine으로 전달됩니다. 

ex) A가 비트코인 10개의 BUY ORDER를 내고 B가 비트코인 5개의 SELL ORDER를 냈다면 5개에 해당하는 ORDER가 매칭되지 못한 나머지 5개의 유동성을 얻기 위해 외부 거래소로 전달됩니다.


거래소의 Orderbook은 공개되지 않기 때문에 채워지지 않은 거래분에 대해서 선행매매(Front-run)가 불가능합니다.

개인적으로 생각해봤을 때, 공개되지 않은 Orderbook은 오메가원 서비스 관리자는 내역을 확인할 수 있을 거라고 생각합니다. 멤버들 간의 선행매매는 방지될 수 있지만 관리자에 의한 조작이 가능할 수도 있다는 의미로 해석됩니다. 이에 대한 설명이 필요해보입니다.


4. Trading Engine


트레이딩 엔진의 역할은 시장에서 유동성을 발견하고 가능한 가능한 싸게 거래를 성사시키는 것 입니다. 유동성의 상태를 모니터링하고 Net order의 속도(Velocity)를 조절해서 실제 거래를 실행합니다. 오메가원에서 속도는 시장의 상황분석을 하는 투자 알고리즘(Investment Logic)에 의해서 결정되며 이를 통해 최적의 거래 포인트를 찾습니다. (거래 속도가 빠르게 이루어지기만 하는 것은 오히려 고객이 지불해야하는 비용을 증가시킬 가능성이 있고 반대로 거래 속도가 늦어지면 가격 변동의 위험에 노출되기 때문에 이를 조절하는 투자 알고리즘(Investment Logic)이 중요하다고 생각됩니다.) 투자 알고리즘을 통해 찾은 최적점에 맞춰 Street order(외부 거래소로의 주문)을 실행시킵니다. 이 때 Exchange Hub를 통하는데 각 거래소에게 주문을 요청할 수있는 API를 가지고 있습니다.


5. Balance Sheet (오메가원 대차대조표)


오메가원의 Balance Sheet는 3가지의 목적을 하기 위해 존재합니다.

1) 거래소 간의 결제를 중개 (Settlement intermediation)

2) 거래를 모아 한번에 블록체인 위에서 처리 (Transaction cost efficiency) 

3) 정보 누출을 방지 (Infromation leakage: single member-omega parent order settlement)





작가의 이전글 탈중앙화 거래소 오메가원, Omegaone(1)
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari