일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 블록체인
- 스마트 컨트랙트
- 이더리움
- MySQL
- 트랜잭션
- erc
- solidity
- blockchain
- erc721
- Ethereum
- ethers
- truffle
- web
- Docker
- geth
- 네트워크
- tcp
- server
- web3
- Programming
- 솔리디티
- ERC165
- NFT
- git
- 제어의역전
- github
- web3.js
- Python
- JavaScript
- ERC20
- Today
- Total
멍개의 연구소
[블록체인] 거래소는 시세를 어떻게 형성할까? 본문
거래소의 호가창에 대해서 알아보겠습니다. 먼저 거래소의 기본적인 모습을 알아보겠습니다.
거래소마다 다르긴 하겠지만 일반적인 모습입니다. 여기서 호가창이란 등록된 매수(사기)/매도(팔기)를 띄어주는 부분입니다.
호가창
|
||
동현코인
|
가격
|
수량
|
매도
|
1008
|
800
|
매도
|
1007
|
700
|
매도
|
1006
|
600
|
매도
|
1005
|
500
|
매도
|
1004
|
400
|
매도
|
1003
|
300
|
매도
|
1002
|
200
|
매도
|
1001
|
100
|
매수
|
1000
|
100
|
매수
|
999
|
200
|
매수
|
998
|
300
|
매수
|
997
|
400
|
매수
|
996
|
500
|
매수
|
995
|
600
|
매수
|
994
|
700
|
매수
|
993
|
800
|
해당 테이블이 호가정보입니다. 해당 테이블이 어떤것을 의미 하는지 알아보겠습니다.
가장 좌측은 매수/매도를 구분짓는 부분입니다. 다음으로 가격과 수량입니다. 매도의 가장 아랫부분을 보면 다수의 사람들이 1001원에 100개의 코인을 팔겠다고 등록한 부분입니다. 한명이 1001원에 100개를 등록했을 수 있고 아닐 수 있습니다.
호가창 구성 내용
|
|||||
매도
|
매수
|
||||
아아디
|
가격
|
수량
|
아이디
|
가격
|
수량
|
1
|
1001
|
50
|
14
|
1000
|
100
|
2
|
1001
|
50
|
15
|
999
|
50
|
3
|
1002
|
120
|
16
|
998
|
200
|
4
|
1002
|
80
|
17
|
997
|
200
|
5
|
1003
|
300
|
18
|
996
|
100
|
6
|
1004
|
400
|
19
|
995
|
200
|
7
|
1005
|
150
|
20
|
994
|
700
|
8
|
1006
|
400
|
21
|
993
|
800
|
9
|
1007
|
700
|
22
|
999
|
150
|
10
|
1008
|
100
|
23
|
998
|
100
|
11
|
1008
|
700
|
24
|
997
|
200
|
12
|
1006
|
200
|
25
|
996
|
400
|
13
|
1005
|
350
|
26
|
995
|
400
|
이러한 형태로 매수/매도가 등록되면 해당 데이터를 정렬하여 앞의 호가 테이블처럼 띄워주게 됩니다.
앞의 호가테이블처럼 시장가가 형성되면 이떄부터 거래가 이루어 지면서 시장가가 형성되는데 원리를 알아보겠습니다.
누군가가 1001원으로 50개를 매수하면 다음처럼 호가 테이블이 바뀝니다.
호가창
|
||
멍개코인
|
가격
|
수량
|
매도
|
1008
|
800
|
매도
|
1007
|
700
|
매도
|
1006
|
600
|
매도
|
1005
|
500
|
매도
|
1004
|
400
|
매도
|
1003
|
300
|
매도
|
1002
|
200
|
매도
|
1001
|
50
|
매수
|
1000
|
100
|
매수
|
999
|
200
|
매수
|
998
|
300
|
매수
|
997
|
400
|
매수
|
996
|
500
|
매수
|
995
|
600
|
매수
|
994
|
700
|
매수
|
993
|
800
|
1001원에 100개 있었지만 50개를 사갔기 때문에 50개를 매칭시켜줍니다.
여기서 다시 1001원으로 40개 매수가 들어오면 다음과 같이 바뀝니다.
호가창
|
||
멍개코인
|
가격
|
수량
|
매도
|
1008
|
800
|
매도
|
1007
|
700
|
매도
|
1006
|
600
|
매도
|
1005
|
500
|
매도
|
1004
|
400
|
매도
|
1003
|
300
|
매도
|
1002
|
200
|
매도
|
1001
|
10
|
매수
|
1000
|
100
|
매수
|
999
|
200
|
매수
|
998
|
300
|
매수
|
997
|
400
|
매수
|
996
|
500
|
매수
|
995
|
600
|
매수
|
994
|
700
|
매수
|
993
|
800
|
해당 가격에 등록된 매물이 있었기 때문에 바로 채결성공 합니다. 하지만 매수/매도 했을 때의 가격으로만 체결하지 않습니다.
만약 1002원으로 110개의 코인을 매수한다면 다음과 같이 바뀝니다.
호가창
|
||
멍개코인
|
가격
|
수량
|
매도
|
1009
|
|
매도
|
1008
|
800
|
매도
|
1007
|
700
|
매도
|
1006
|
600
|
매도
|
1005
|
500
|
매도
|
1004
|
400
|
매도
|
1003
|
300
|
매도
|
1002
|
100
|
매수
|
1000
|
100
|
매수
|
999
|
200
|
매수
|
998
|
300
|
매수
|
997
|
400
|
매수
|
996
|
500
|
매수
|
995
|
600
|
매수
|
994
|
700
|
매수
|
993
|
800
|
1002원의 코인을 먼저사지 않고 1002원보다 싼 1001원을 먼저 구매한 후 남은량만큰 1002원에 등록된 코인을 구입합니다.
매수를 할 땐 매수할 때 등록한 금액보다 싼 금액을 우선적으로 채결합니다. 반대로 매도일 땐 비싼 금액을 우선적으로 채결합니다.
즉, 다른사람들이 매수에 코인을 사겠다고 올렸고, A가 998원에 300개만큼 매도를 하면 998원에 등록된 300개가 아닌 1000원과 999원에 등록된 100, 200개를 판매하게 됩니다. 즉, 팔때는 비싼 가격에 팔 수 있도록 하고, 살땐 싼 가격에 살 수 있도록 매칭서버가 체결합니다.
그렇기 때문에 매수/매도에서는 가장 비싼 금액과 가장 싼 금액을 우선적으로 체결합니다. 체결하는 서버를 매칭서버라고 하며, 간단하게 매칭 알고리즘이라고 합니다.
이번글에서는 거래소에서 시세가 어떻게 형성하는지 간단히 알아보았습니다. 다음번에는 해당 내용을 코드적으로 접근해보겠습니다.
'블록체인' 카테고리의 다른 글
[ethereum] privatekey를 이용하여 address 복구, transaction 발생 (0) | 2022.08.27 |
---|---|
[블록체인] 블록체인 시스템은 어떻게 구축할까 1편 - exchange, wallet, payment에서 transaction 취급방법 (0) | 2022.08.27 |
[ethereum] transaction에 데이터를 포함하여 영원히 데이터 남기기 (1) | 2022.08.27 |
[ethereum] abi-decoder를 이용하여 inputData 해독하기 (0) | 2022.08.27 |
[ethereum] transaction을 보고 contract 생성을어떻게 할까 (0) | 2022.08.27 |