Skip to main content

Documentation Index

Fetch the complete documentation index at: https://daehan-base.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Base는 트레이딩 에이전트에게 두 가지 구조적 이점을 제공합니다: Flashblocks (200ms 사전 확인된 블록 상태, 2초 블록보다 10배 빠름)와 명시적인 비용-속도 트레이드오프를 가능하게 하는 노출된 L1/L2 수수료 구조. 이 페이지는 Base에 고유한 내용만 다룹니다 — 일반 EVM 실행 패턴은 Ethereum 문서에, Base의 RPC 메서드는 API 레퍼런스에 있습니다.

모의 데모

지갑 기본 도구로 스왑 실행

Bankr, CDP Agentic Wallet, Sponge Wallet 모두 내장된 스왑 기능을 포함합니다 — 외부 DEX 통합이 필요하지 않습니다. Bankr 사용:
Buy $50 of ETH on Base
Swap 100 USDC for ETH at market price
CDP Agentic Wallet 스킬 사용:
Buy $50 of ETH
Trade 0.01 ETH for USDC
Sponge Wallet 사용:
Terminal
curl -X POST "https://api.wallet.paysponge.com/api/swap" \
  -H "Authorization: Bearer $SPONGE_API_KEY" \
  -H "Sponge-Version: 0.2.1" \
  -H "Content-Type: application/json" \
  -d '{
    "fromToken": "USDC",
    "toToken": "ETH",
    "amount": "100",
    "chain": "base"
  }'

실행 패턴

모든 읽기와 제출에 preconf 엔드포인트 사용

항상 표준 엔드포인트 대신 mainnet-preconf.base.org (또는 테스트넷의 경우 sepolia-preconf.base.org)에 연결하세요. 이것이 Flashblocks pending 상태, 사전 확인된 트랜잭션 스트림, base_transactionStatus에 접근하는 유일한 방법입니다. 전체 목록은 Flashblocks 엔드포인트를 참조하세요.

서명 전 사전 확인된 상태에 대해 시뮬레이션

트랜잭션에 서명하기 전에 "blockStateCalls"pending 블록을 대상으로 하는 preconf 엔드포인트에 대해 eth_simulateV1을 호출합니다. 이렇게 하면 트랜잭션이 착지할 때까지 최대 2초 오래된 마지막 봉인된 블록이 아닌 현재 Flashblocks 상태에 대한 리버트를 포착합니다.

영수증을 기다리는 대신 base_transactionStatus 폴링

제출 후 base_transactionStatus는 단일 Flashblock 간격(~200ms) 내에 사전 확인된 포함 상태를 반환합니다. eth_getTransactionReceipt를 기다리면 전체 봉인된 블록(최대 2초)을 기다립니다. 지연에 민감한 전략의 경우 먼저 base_transactionStatus를 폴링하고 최종성 확인을 위해서만 영수증으로 폴백합니다.

수수료 조정

L2 우선순위 수수료 휴리스틱

보상 백분위수 [50, 90]으로 최근 5-10 블록에 대해 eth_feeHistory를 사용합니다:
  • 50번째 백분위수 보상 — 1-3 Flashblocks 내 표준 포함
  • 90번째 백분위수 보상 — 다음 Flashblock 내 빠른 포함
  • maxFeePerGas — 과다 지불 없이 여러 블록에 걸친 기본 수수료 증가를 견디려면 nextBaseFee * 2 + maxPriorityFeePerGas로 설정

L1 수수료 결정 규칙

서명 전에 GasPriceOracle을 통해 L1 비용을 추정합니다. 아래 비율이 0.8을 초과하고 거래 규모가 작으면 L1 수수료가 총 비용을 지배합니다 — Ethereum 혼잡이 완화될 때까지 연기하는 것을 고려하세요:
l1FeeUpperBound / (gasLimit × maxFeePerGas + l1FeeUpperBound) > 0.8

Base 특화 장애 모드

대부분의 트랜잭션 오류는 표준 EVM입니다. 다음은 다른 처리가 필요한 Base 특화 사례입니다:
장애의미처리 방법
replacement transaction underpriced대기 중인 트랜잭션 교체 시 maxFeePerGasmaxPriorityFeePerGas 모두 ≥10% 높아야 합니다둘 다 ≥10% 증가, 동일한 nonce로 재제출
DA 쓰로틀링 (오류 코드 없음)시퀀서가 L1 데이터 가용성 비용을 관리하기 위해 L2 처리량을 속도 제한 중수수료 인상으로 해결되지 않음 — 쓰로틀이 해제될 때까지 대기
전체 오류 분류법은 트랜잭션 문제 해결을 참조하세요. 동시 제출을 위한 nonce: 항상 eth_getTransactionCount(address, "pending")로 조회합니다. 병렬 제출의 경우 한 번만 조회하고 로컬에서 증가시킵니다 — 호출마다 새로 조회하면 모든 동시 요청에 대해 동일한 값이 반환됩니다.

전략 신호

Base는 대부분의 체인이 이 해상도로 제공하지 않는 데이터를 노출합니다:
신호접근 방법기회 카테고리
사전 확인된 pending 블록 상태 (200ms 선행)preconf 엔드포인트에서 eth_getBlockByNumber("pending")블록 봉인 전 가격 영향 감지
사전 확인된 트랜잭션 스트림eth_subscribe("newFlashblockTransactions")블록에 진입하는 대규모 거래에서 선점
사전 확인된 로그eth_subscribe("pendingLogs", { address, topics })최종성 전 청산 임계값, 오라클 업데이트 감지
수수료 급등 감지최근 5 블록에 대한 eth_feeHistory 추세혼잡 시작 식별; 라우팅 조정 또는 일시 중지
L1 기본 수수료 추세시간 경과에 따른 GasPriceOracle.l1BaseFee() 폴링L1 데이터 비용 최소화를 위한 제출 타이밍
블록 가스 사용률eth_feeHistorygasUsedRatio예정된 기본 수수료 증가 예측
Flashblocks의 이점: 대부분의 체인은 순서가 불확실한 대기 중인 트랜잭션 풀을 노출합니다. Base에서 Flashblocks 엔드포인트는 에이전트에게 최종화되기 전 다음 200ms의 체인 상태에 대한 결정론적이고 순서 있는 뷰를 제공합니다. 이는 멤풀 전용 가시성을 가진 체인에는 존재하지 않는 정보 이점입니다.

관련 항목