GMX V2 공식 사이트가 멈췄을 때 확인할 사항

계약 주소와 필수 확인 사항을 먼저 읽고 순서대로 확인합니다.

핵심 · 총 4단계입니다. 실행 전 주소·단위 확인을 마치세요.

GMX V2는 이 설명서들 중 Etherscan만으로는 안전한 절차를 적을 수 없는 유일한 경우입니다. 구조가 다른 프로토콜과 근본적으로 다르기 때문입니다. 왜 그런지와, 그래서 무엇을 해야 하는지를 적었습니다.

01

먼저 읽어 주세요

쓰기 함수를 부르기 전에 꼭 지켜야 하는 주의입니다.

이 페이지는 설명서일 뿐입니다. Pagu.info는 지갑을 연결하지 않고, 서명이나 거래를 만들지도 않습니다. 아래 절차는 사용자가 Etherscan에서 직접 수행합니다.

  • 주소를 눈으로 믿지 마세요. 각 주소 옆에 "읽기 전용으로 확인하는 방법"을 적어 뒀습니다. 먼저 그 확인을 통과한 뒤에 쓰기 함수를 부르세요. 비슷한 주소로 만든 가짜 컨트랙트가 있습니다.
  • 서두르지 마세요. 프론트엔드가 멈춰도 자금은 컨트랙트에 그대로 있습니다. 프론트는 창구일 뿐입니다. 먼저 공식 트위터·디스코드에서 알려진 사고인지 확인하는 편이 거의 항상 낫습니다.
  • 이 문서는 투자 조언이 아니고, 결과를 보장하지 않습니다. 금액과 단위를 잘못 넣어 생긴 손실은 되돌릴 수 없습니다.

02

왜 절차를 적지 않는가

다른 설명서와 구조가 다릅니다.

3동작

한 출금 트랜잭션 안

3가지

절차를 적지 않는 이유

4가지

대신 할 수 있는 것

1GMX V2의 출금은 "함수 호출"이 아니라 "주문"이다

지금까지의 설명서는 모두 withdraw 같은 함수를 한 번 부르면 끝이었습니다. GMX V2는 다릅니다. 출금은 주문을 만들어 두고, 키퍼라는 외부 실행자가 나중에 처리하는 구조입니다.

그래서 한 번의 출금에 ① 토큰을 금고(Vault)로 보내기 ② 실행 수수료를 ETH로 미리 넣기 ③ 주문 파라미터 구조체를 만들어 등록하기가 한 트랜잭션 안에서 순서대로 일어나야 합니다. Etherscan의 Write Contract는 함수를 하나씩만 부를 수 있어서 이 묶음을 만들 수 없습니다.

2나눠서 부르면 돈이 끼어 있는 상태가 된다

①을 하고 ③을 못 하면 토큰이 금고에 들어간 채 주인 없는 상태가 됩니다. 이런 잔액은 다음에 들어오는 주문이 가져갈 수 있습니다. 즉 나눠서 시도하는 것 자체가 위험합니다.

3주소도 자주 바뀐다

GMX V2는 ExchangeRouter·OrderVault·DataStore 등 여러 컨트랙트가 맞물려 있고, 라우터는 새 버전이 배포되면 주소가 바뀝니다. 설명서에 주소를 박아 두면 오히려 낡은 주소로 유도하게 됩니다. 그래서 이 페이지에는 주소를 적지 않았습니다.

03

대신 할 수 있는 것

번호 순서대로 진행합니다.

Fig. 1

한눈에 보는 순서

  1. 1GM 토큰 확인
  2. 2다른 인터페이스
  3. 3레버리지 먼저
  4. 4페이지 고치기
총 4단계입니다. 실행 전 주소·단위 확인을 마치세요.

1내 GM 토큰이 지갑에 있는지 확인한다

GM(유동성 제공 토큰)은 보통의 ERC-20입니다. Arbiscan에서 내 지갑 → Token Holdings에 GM 토큰이 보이면 자산은 체인에 그대로 있습니다. 프론트가 멈춘 것과 자산이 사라진 것은 다릅니다.

2다른 인터페이스를 쓴다

GMX는 컨트랙트가 공개되어 있어 공식 앱 외의 인터페이스로도 접근할 수 있습니다. 공식 채널에서 권장 대체 경로를 확인하세요. 주문 묶음을 올바르게 만들어 주는 인터페이스를 쓰는 것이 직접 호출보다 안전합니다.

3레버리지 포지션이 있으면 그게 더 급하다

GM 유동성은 가만히 둬도 청산되지 않습니다. 하지만 레버리지 포지션은 프론트가 멈춘 동안에도 가격이 움직이면 청산될 수 있습니다. 포지션이 있다면 대체 인터페이스를 찾는 일이 급합니다. 여유 담보를 더 넣어 청산 가격을 밀어 두는 것도 임시 방편이 됩니다(그것도 인터페이스가 필요합니다).

4이 페이지를 고치고 싶다면

GMX의 주문 구조가 안정되고 실제 호출을 검증할 수 있게 되면 절차를 추가할 계획입니다. 검증하지 않은 절차를 적어 두는 것보다 "적지 않는다"고 밝히는 편이 안전하다고 판단했습니다.

04

Etherscan에서 함수를 부르는 법 (공통)

어느 설명서에서 부르든 같은 다섯 단계입니다.

0을 하나 더 붙이거나 덜 붙이는 것이 이 작업에서 가장 흔한 사고입니다. 먼저 아주 작은 금액으로 한 번 성공시킨 다음 전액을 처리하는 편이 안전합니다.

다섯 단계 전부 보기

1맞는 탐색기를 연다

체인마다 탐색기가 다릅니다. Ethereum은 etherscan.io, Arbitrum은 arbiscan.io, Base는 basescan.org, Polygon은 polygonscan.com, OP Mainnet은 optimistic.etherscan.io입니다. 주소창에 컨트랙트 주소를 붙여넣습니다.

2먼저 Read로 진짜인지 확인한다

Contract → Read Contract(프록시면 Read as Proxy)에서 아래 표의 "확인 방법"에 적힌 읽기 함수를 불러 봅니다. 기대한 값이 나오지 않으면 그 주소는 쓰지 않습니다. 읽기는 가스가 들지 않고 위험도 없습니다.

3Write Contract로 넘어간다

Contract → Write Contract를 누르고 Connect to Web3로 지갑을 연결합니다. 연결은 Etherscan에서 하는 것이고 Pagu.info와는 아무 상관이 없습니다. 화면에 Write as Proxy 탭이 있으면 그쪽을 써야 합니다 — 프록시로 배포된 컨트랙트는 일반 Write 탭에 실제 함수가 보이지 않습니다. 이 문서에서 Aave V3 Pool과 Lido 출금 큐가 프록시임을 직접 확인했습니다.

4금액은 소수점 자리만큼 0을 붙인다

컨트랙트는 소수점을 모릅니다. 토큰의 decimals()만큼 0을 붙인 정수를 넣습니다.

  • USDC·USDT (6자리): 100 USDC → 100000000
  • DAI·WETH·stETH 등 (18자리): 1개 → 1000000000000000000
  • WBTC (8자리): 0.5개 → 50000000

자리수를 모르면 그 토큰 컨트랙트의 decimals()를 Read로 먼저 확인하세요. 0을 하나 더 붙이거나 덜 붙이는 것이 이 작업에서 가장 흔한 사고입니다. 먼저 아주 작은 금액으로 한 번 성공시킨 다음 전액을 처리하는 편이 안전합니다.

5"전액"에 쓰는 숫자

프로토콜에 따라 특정 최대값이 "전액"을 뜻합니다.

  • uint256 최대값: 115792089237316195423570985008687907853269984665640564039457584007913129639935
  • uint128 최대값: 340282366920938463463374607431768211455

단, 아무 함수에나 최대값을 넣으면 되는 것은 아닙니다. 각 설명서에서 허용한다고 적은 곳에만 씁니다.

온체인 확인 이 페이지의 주소는 2026-10-13에 공개 RPC로 직접 호출해 확인했습니다. 주소에 코드가 있는지만 본 것이 아니라, 각 컨트랙트가 서로를 가리키는지(예: aToken이 그 Pool을 가리키는지)까지 맞춰 봤습니다. 그래도 쓰기 전에 각자 Read로 다시 확인하세요. 컨트랙트는 교체될 수 있습니다.