스왑시스템 개편

스왑시스템 개편

안녕하세요. 제이콥입니다.

우리 스팀코인판은 스왑시스템을 운영하고 있습니다.
스팀코인판 메인의 오른쪽 사이드바에 있죠.

이 시스템에 문제가 2개가 있습니다.

1. 유동성 공급자의 손해

먼저, 이 시스템에 초기 유동성 운영비, 운영진 코인를 활용해서 채웠는데요. 손해를 봤습니다.

손해를 본 이유 첫번째로 sct, sctm 가격이 떨어져서 손해를 본 것이 있고요. 두번째는 가격 결정이 거래소에서 체결되는 가격을 기반으로 두 코인의 교환 비율을 정했기 때문이라고 생각하고 있습니다.

2. 한쪽으로 쏠리는 현상

양쪽 코인 비율이 유지가 돼야하는데 유지가 되지 못했습니다. 제 생각엔 유저가 한쪽 코인 가격이 저렴하다고 생각해서 다른쪽으로 모두 교환을 했고, 그래서 두 코인사이의 비율이 유지되지 못했다고 봅니다.


해결책

해결책은 uniswap입니다. 유니스왑을 적용함으로써 위의 2개의 문제를 해결할 수 있을거라고 기대합니다.

uniswap 방식은 constant product market maker model을 적용한 방식을 말합니다.

아래 문서의 방식대로 uniswap이 동작하는데 우리 스팀코인판의 스왑시스템도 동일한 알고리즘으로 동작되도록 개발하고있습니다. https://github.com/runtimeverification/verified-smart-contracts/blob/uniswap/uniswap/x-y-k.pdf

방식에 대해 설명드리자면,

swap 풀에 A,B 토큰 갯수와 사용자가 스왑요청하는 토큰 갯수에 따라 두 코인의 교환 비율을 조정하는 방식입니다. A,B 토큰의 개수의 비를 영향을 많이 끼칠수록, 불리한 비율로 스왑이 처리됩니다. 예시는 아래에 적어봤습니다.


constant product market maker model 적용 예시

krwp와 svc를 교환한다고 가정하겠습니다.

기존의 거래소 가격을 활용한 방식은 0.1krwp를 변환하거나 5krwp를 변환하든 상관없이 모두 거래소 가격 기반으로 동일한 교환비율로 계산됐습니다.

uniswap 방식을 적용할 경우, 토큰의 pool에 큰 영향을 끼칠수록 교환비율이 달라지게됩니다.

0.1krwp와 0.2krwp를 보면 같은 교환비율로 교환되는 것이고, 0.1krwp를 변환하는 것과 5krwp를 변환하는 것의 교환비율이 다릅니다.


개발중인 swap 시스템

유니스왑 방식의 시스템을 우리 스왑시스템에 적용하고 있습니다. 어느정도 개발이 진척됐고, ui는 보여드릴 수 있네요. 60-70%정도 완성했다고 보시면됩니다. 이번 개발은 디자인을 신경써서 개발했습니다. 지금까지 여러 제안을 해주신것도 많이 적용이 됐습니다. 자신의 잔고를 보여준다던가. exchange rate도 양쪽으로 보여준다던가.



이 스왑시스템이 완성되면 다양한 토큰들을 이 스왑시스템에 넣을 수 있도록 할 것입니다. 누구나 이 시스템에 자신의 코인을 리스팅할 수 있도록 지원할 것입니다.

uniswap의 기대효과는 아래 3가지입니다.

  1. 유동성공급자들의손해 최소화, 수익 최대화
  2. 두 토큰간의 비율 유지
  3. 누구나 유동성 공급자가 될 수 있음.

uniswap에 대해서는 제가 정리한 글들이 있는데 참고바랍니다.
https://jacobyu.net/categories/암호화폐/uniswap/

여기까지 긴 설명 읽어주셔서 감사합니다.

댓글은 언제나 환영입니다!


This page is synchronized from the post: ‘스왑시스템 개편’

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×