본문 바로가기

자유 및 일상/개인 프로젝트

[가상 코인 거래소 시뮬레이터] Virtual Coin Platform 구현기

요즘엔 주위를 조금만 둘러보면 코인이나 주식을 하는 사람들을 금방 찾을 수 있다.

 

나 역시 17시즌의 코인 시장 호황기에 참여했었지만 시드 머니를 싹 다 날리고 접은 기억이 있다.

 

최근에도 코인이나 주식 매매를 하고 있는데, 문득 이런 생각이 들었다.

 

주식은 거래 시장 외부의 영향에 의존적이라지만, 투기판에 가까운 코인 시장에서는 동향을 예측할 수 있지 않을까?

 

물론 코인 시장을 장기적으로 예측하는 것은 거의 불가능에 가깝다.

 

하지만 거래소 세력들, 악재와 호재 등의 예측 불가능한 요소를 배제하면 순수하게 코인 시장 참여자들의 심리로만 예측이 가능하지 않을까?

 

.. 라는 생각으로, 가상의 client들을 수백명, 가상의 코인, 가상의 플랫폼을 만들어 하드코딩된 light-AI를 client의 action으로써 적용하고 플랫폼의 시세가 유의미한 꼴을 보여줄 수 있을지 알아보기 위한 프로젝트를 시작했다.

 

하단의 내용은 만드는 과정 속에서 발견한 재미들이다.

 

2021.03.26

가상 클라이언트는 300명, 코인은 6종류로 가정하였고, 코인들의 상장명은 그냥 그럴듯한 것으로 대충 만들었다.

클라이언트의 AI는 아직 완성되지 않았지만, AI 패턴 1~2개 정도를 적용해보았더니, 패턴이 아예 없었을 때 시세가 그냥 무한히 오르기만 하는 단조로운 결과에서 조금 그럴듯한 형태가 나왔다.

 

여기서 AI 패턴이라함은, 최근 그래프 트렌드에서 빠르게 떨어지는 추이를 보이면 패닉셀에 해당하는 심리를 적용하여 로직에 우겨넣는다던지, 반등을 노리고 저가 매수각을 잡으려는 경향 등을 적용한다던지 하는 뜻이다.

 

위 사진과 같은 그래프로 횡보하는 코인도 있었고,

이해할 수 없는 그래프를 그리는 코인도 있었다.

 

아직 그래프를 그리는 로직이 완성되지 않은 탓도 있긴 한데, AI 패턴을 적용할 때마다 새로운, 다른 결과가 나와 놀라웠다.

 

그 와중에 0원짜리 주문을 막지 않았더니 최우선 매수호가가 0원에 처박힌 코인도 있었다.

 

해당 코인은 서버를 다시 킬 때까지 3시간 동안 0원 지옥에 갇혀있었다.

이제 다음 개발기간까지는 클라이언트마다 특정 분포의 랜덤 속성을 적용하여 더 유의미한 결과를 끌어내볼 예정이다.

최종 목표는 코인의 그래프들이 크고 작은 하이먼민스키 모델을 그리며 서로 다른 추이 모델을 갖는 것이다.

 

참고로 위 사진들의 그래프는 1분 봉을 기준으로 드로우하였으며, 클라이언트들에게는 아직 판단 기준을 주지 않은 상태다.

 

하단은 추가적으로 테스트한 결과들이다.

 

 

 

2021.03.27

CSS를 조금 다듬고 그래프를 x축으로 확대 및 축소할 수 있는 eventlistener를 추가했다. (PgDn으로 축소, PgUp으로 확대)

또한 그래프 시간 봉을 조절할 수 있는 select 메뉴를 추가하였고 그래프 엔진 로직을 고쳤다.

그래프 색이 너무 날카로워서 부드럽게 변경하였다. 이제 조금 실제 시장 그래프 느낌이 난다.

 

그리고 여전히 심정지...

horizontal grid를 라벨과 함께 추가했다.

 

 

2021.04.24

이 프로젝트는 확장하여 더 큰 프로젝트로 이전됨