프로젝트 소개
이 저장소의 README는 DeFi 거래소 간 플래시 론 차익거래를 위한 Node.js 커맨드라인 봇인 FlashLoanArbitrage(저장소 이름은 defi-position-manager) 프로젝트를 설명합니다.
작동 방식 설명
- 스마트 컨트랙트가 USDC로 플래시 론을 받아 가격이 저렴한 곳에서 ETH를 매수하고, 가격이 비싼 곳에서 매도한 뒤, 수수료와 가스비를 포함한 대출금을 상환합니다. 이후 수익을 ETH로 변환하여 사용자에게 남깁니다.
- 로컬 스크립트인 goflash.js는 기준 오라클인 Chainlink를 비롯해 Uniswap V2, SushiSwap, Curve Finance, Balancer의 ETH/USDC 가격을 확인하며, 스프레드가 최소 0.9%가 될 때까지 기다렸다가 거래를 트리거합니다.
- 스캔은 60초마다 실행되며, 각 거래소의 가격을 상승/하락/유지 표시와 함께 테이블 형태로 출력합니다.
플래시 론 제공처 및 명시된 한도
- Aave (수수료 0.05%, 최대 10,000,000 USDC)
- dYdX (0.05%, 최대 500,000 USDC)
- Uniswap V3 (0.01%, 최대 5,000,000 USDC)
- Balancer (0.02%, 최대 1,000,000 USDC)
위 수치는 README의 주장이며 여기서 검증되지 않았습니다.
실행 방법
README에 따르면 npm install로 의존성을 설치하고 node goflash.js로 시작합니다. 처음 실행 시 inquirer로 구축된 대화형 메뉴를 통해 새 지갑을 생성하거나 개인 키로 가져올 수 있으며, 키는 동일 폴더의 wallet.json에 저장됩니다. 이후 메뉴에서 대출 프로토콜 선택, ETH 대출 금액 설정(10 ETH부터 프로토콜 최대치까지), 지갑 재생성 또는 재가져오기, 차익거래 시작 또는 종료를 선택할 수 있습니다.
README에 언급된 요구사항 및 리스크
- 지갑 잔액이 0.1 ETH 미만일 경우 10 ETH 이상의 대출에 대한 가스비를 충당하지 못할 수 있다고 경고하며, 거래 수수료(0.1%), 슬리피지(0.05%) 및 가스비를 수익에서 차감되는 비용으로 나열합니다.
- 또한 실제 시장에서 0.9%의 가격 차이는 드물며, 스크립트가 시연 목적으로 가상 기회를 가끔 보여주므로 지속적인 수익성을 보장할 수 없다고 명시합니다.
- 개인 키가 wallet.json에 평문으로 저장됩니다. README는 해당 파일을 Git에서 제외하고, 키를 오프라인으로 백업하며, 전용 지갑을 사용할 것을 권고합니다. 실행자는 키 관리를 심각한 보안 문제로 취급해야 합니다.
- 문서화된 프로젝트 구조에는 goflash.js, package.json, wallet.json, README.md만 나열되어 있습니다. 스마트 컨트랙트 소스 코드는 목록에 없으며, 컨트랙트 주소, 체인 또는 배포 세부 정보도 제공되지 않습니다.
- 선언된 의존성: ethers ^6.11.1, inquirer ^8.2.6, chalk ^4.1.2. README는 이 프로젝트가 교육 목적으로 제공되며, 사용자의 책임 하에 사용해야 한다고 밝히고 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.