[TIL] 2023-06-01 DAY51
GIT 주소 : https://github.com/dowoo303/SOLIDITY
오늘 배운것들
- 블록체인 이론 수업 시험1
- 블록체인 이론
1) 디파이 - LP, 비영구적손실 계산 및 개념 설명- ERC-721 민팅 한번 더 해보기
각종 팁
회고
- Impermanent Loss 계산법
x*y=k 계산법(y 기준점으로 잡고 비율로 x 가격 잡기)
관련해서 배웠다.
코인 두개를 묶어서 넣으면 LP토큰을 준다 -> LP토큰은 그 유동성 비율에 맞게 줌
LP 토큰이 총 1000개 있고 그 중 내가 10개 가지고 있다고 했을 때 LP토큰을 빼내오면 1%의 비율을 뺀거니까 A-B 토큰에서 각각 1%씩 가져온다(이 경우 LP토큰을 비율에 맞게 A-B토큰으로 교환하는 것이기 때문에 A-B 토큰의 가격변화는 일어나지 않는다)
돈을 뺄때는 현재상태 기준으로 비율을 산정하고 돈을 넣을 때는 넣고난 후의 상태를 기준으로 비율을 산정한다.
ex) A:3, B:300 인 LP가 있다 가정.(A의 가격은 당연히 100(300/3)이다) (3*300=900을 유지함)
사용자가 A를 0.1 팔고 갔다고 가정하면
3.1 : 290.3225(900/3.1) 으로 비율변화가 이루어지고 A가격은 100에서 93.65(290.3225/3.1)로 변화함
그냥 토큰 두개를 들고 있는거보다 LP제공자들은 비영구적손실때문에 무조건 손해를 본다
-> 그런데도 LP제공을 하는이유는 LP제공으로 받는 이자와 스왑수수료로 메꿀 수 있다고 생각하기 때문이다.

a가 코인이고 b가 스테이블 코인이라고 가정할 때 a의 가격 변화에 따른 LP제공자와 일반 투자자의 가격 차이를 볼 수 있다 -> LP제공자는 a토큰이 오르든 내리든 무조건 손해
LP 넣을 때 사용자가 한가지 토큰만 넣을텐데 그럼 코드로 그 토큰과 같이 묶을 토큰의 가격을 A와 B토큰의 비율을 계산해서 들어가게 될 비율을 프론트엔드에 띄워주고 LP제공을 할건지 확인해달라고 한 다음 사용자가 버튼을 클릭하면 메타마스크 소환해서 진행
비영구적 손실을 계산할 때는 x, y 토큰이 있다고 가정했을 때 y 토큰 가격을 기준으로 고정 시키고 x 토큰의 가격을 계산하면 x의 값 변화량만 계산하면 된다.
json에 attributes 붙여서 NFT 다시 민팅해보기
설명 사이트: https://docs.opensea.io/docs/metadata-standards