프로젝트 소개

이 README는 영어로 작성되었으며 프로젝트 이름을 FlashLoanArbitrage라고 명시했지만, 저장소 이름은 crypto-sentinel-bot이고 설명은 '실시간으로 암화화폐 시장 상황을 모니터링합니다.'입니다. 이 문서는 로컬에서 Node.js 스크립트 goflash.js로 실행되며 스마트 계약과 상호작용하는 DeFi 플래시 론 아비트리지 봇을 설명합니다. 명시된 워크플로는: 계약이 USDC 플래시 론을 받고, 거래 전에 사용자의 ETH를 USDC로 변환한 후, 한 플랫폼에서 낮은 가격으로 ETH를 구매하고, 다른 플랫폼에서 높은 가격으로 ETH를 판매하여 대출 및 관련 수수료와 가스를 상환하고, 남은 수익을 USDC에서 ETH로 다시 변환하여 순이익을 ETH 형태로 남깁니다. 그러나 README에는 스마트 계약 소스 코드, 검증된 계약 주소, 또는 배포 지침이 포함되어 있지 않습니다. 로컬 스크립트는 Chainlink(기준 가격의 오라클), Uniswap V2, SushiSwap, Curve Finance, Balancer이라는 다섯 가지 소스에서 ETH/USDC 가격을 모니터링합니다. 60초마다 가격을 확인하고 0.9% 이상의 가격 차이가 발생할 때만 아비트리지를 트리거합니다. 상승/하락/변화 없음 표시와 함께 실시간 가격을 보여줍니다. 플래시 론에 대해, 수수료와 유동성 주장이 있는 네 가지 프로토콜을 나열합니다: 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는 수수료가 낮은 dYdX 또는 Uniswap V3을 권장하며, 더 큰 대출은 더 높은 수수료가 발생할 수 있다고 경고합니다. 설치 방법: goflash.js와 package.json을 다운로드하여 폴더에 넣고, npm install을 실행한 후 node goflash.js를 실행합니다. 첫 실행 시 사용자는 새 지갑을 만들거나 개인 키를 사용하여 기존 지갑을 가져올 수 있습니다. 생성되거나 가져온 개인 키는 동일한 폴더에 wallet.json으로 저장됩니다. 메뉴에서는 DeFi 프로토콜 선택, ETH 단위의 대출 금액(프로토콜 최대치까지 10부터), 지갑 재생성, 개인 키로 지갑 가져오기, 아비트리지 시작, 종료 옵션이 제공됩니다. README는 10 ETH를 초과하는 대출에는 가스를 위해 최소 0.1 ETH가 필요하다고 경고하며, 거래 수수료 0.1%, 슬리피지 0.05%, 그리고 가스를 나열하고, 스크립트가 60초마다 스캔하여 자동으로 아비트리지를 트리거한다고 설명합니다. 주요 주의 사항 및 보안 노트: README는 이 프로젝트가 교육 목적으로 그대로 제공되며 사용은 사용자의 책임이라고 명시합니다. 실제 시장에서 요구되는 0.9% 가격 차이가 거의 발생하지 않으며, 스크립트가 시연 목적으로 가끔 시뮬레이션된 기회를 보여준다고 설명합니다. 사용자에게 반복적으로 wallet.json과 개인 키를 보호하고, 전용 지갑을 사용하며, 소액으로 시작하고, wallet.json을 .gitignore에 추가하도록 지시합니다. 문서의 의존성은 ethers ^6.11.1, inquirer ^8.2.6, chalk ^4.1.2입니다. 프로젝트 구조는 goflash.js, package.json, wallet.json(자동 생성), README.md로 나열됩니다. 문제 해결 항목은 모듈 형식 오류, 개인 키 형식, 자금 부족, 지갑 잔액 0, RPC 재연결, Uniswap V2 페어 누락, 아비트리지 기회 미발견 등을 다룹니다. README만을 기준으로 한 독립적 평가: 이 도구는 암호화폐 가격을 모니터링하고 선택적으로 플래시 론 아비트리지를 실행하는 인터랙티브 CLI 도구이지만, 제공된 저장소 자료만으로는 작동 가능하거나 감사받았거나 수익성이 있는 시스템임을 입증하지 못합니다. 스마트 계약 코드와 배포 세부 사항이 отсут하고, 저장소 이름/설명과 README 제목이 불일치하며, wallet.json에 개인 키를 생성하거나 가져오도록 요청하고, 시뮬레이션된 기회를 인정한 점은 주목할 만한 위험 신호입니다. README 자체는 이 프로젝트를 교육용으로 프레이밍합니다.