요약
Polymarket CLI는 Rust 기반의 명령줄 도구로, 터미널에서 직접 예측 시장을 둘러보고, 주문을 하고, 포지션을 관리하며, 온체인 계약과 상호작용할 수 있게 해줍니다. Homebrew 또는 셸 스크립트를 통해 설치할 수 있으며, 지갑 없이 시장을 둘러보고, 자동화를 위해 JSON 출력을 사용하여 거래할 수 있습니다. 거래 작업을 위해서는 개인 키가 필요합니다. 사람이 읽을 수 있는 형식과 프로그래밍 방식 모두를 위해 테이블 및 JSON 출력 형식을 지원합니다.
소개
예측 시장은 선거 결과부터 암호화폐 가격 변동에 이르기까지 현실 세계의 이벤트를 예측하는 강력한 도구로 부상했습니다. Polygon 위에 구축된 Polymarket은 수백만 달러의 거래량을 가진 가장 유동적인 예측 시장 중 하나를 제공합니다. 웹 인터페이스는 직관적이지만, 개발자들은 종종 자동화, 스크립팅, 맞춤형 트레이딩 봇 구축을 위한 프로그래밍 방식의 접근을 원합니다.
바로 이 지점에서 Polymarket CLI가 등장합니다. 이 Rust 기반의 명령줄 도구는 터미널에서 Polymarket 생태계에 대한 완전한 접근을 제공합니다. 시장을 둘러보든, 오더북을 분석하든, 자동으로 거래를 실행하든, Polymarket CLI는 셸 스크립트 및 자동화 워크플로우와 원활하게 통합되는 강력한 인터페이스를 제공합니다.
Polymarket이란 무엇인가요?
Polymarket은 Polygon 블록체인 위에 구축된 분산형 예측 시장 플랫폼입니다. 사용자들은 USDC 스테이블코인을 사용하여 현실 세계 이벤트의 결과에 대해 거래할 수 있습니다. 시장은 예/아니오 질문으로 구성되며, 가격은 특정 결과의 확률을 나타냅니다 (예: 52¢는 52% 확률을 의미).

Polymarket의 주요 기능은 다음과 같습니다:
- 분산형 거래: 빠르고 저렴한 거래를 위해 Polygon 위에 구축
- 실시간 시장: 정치, 암호화폐, 스포츠 등을 다루는 수천 개의 시장
- 오더북 모델: 가격 발견을 위한 중앙 지정가 주문장 (CLOB)
- 조건부 토큰: 결과 지분을 나타내는 ERC-1155 토큰
- 보상 프로그램: 거래량에 따라 보상을 받을 수 있습니다.
Polymarket CLI는 오프체인 API(시장 데이터를 읽고 주문하는 용도)와 온체인 계약(분할, 병합, 상환과 같은 토큰 작업 용도)의 조합을 통해 이러한 시장에 연결됩니다.
Polymarket CLI 설치
Polymarket CLI는 여러 설치 방법을 지원합니다. 사용자 환경에 맞는 방법을 선택하세요.

옵션 1: Homebrew (macOS / Linux)
가장 쉬운 설치 방법은 Homebrew를 사용하는 것입니다:
# Add the Polymarket tap
brew tap Polymarket/polymarket-cli https://github.com/Polymarket/polymarket-cli
# Install polymarket
brew install polymarket

옵션 2: 셸 스크립트 (Linux/macOS)
빠른 한 줄 설치를 위해:
curl -sSL https://raw.githubusercontent.com/Polymarket/polymarket-cli/main/install.sh | sh
이 스크립트는 최신 바이너리를 다운로드하고 PATH에 설치합니다.
옵션 3: 소스에서 빌드 (모든 플랫폼)
Rust가 설치되어 있다면, 소스에서 빌드할 수 있습니다:
git clone https://github.com/Polymarket/polymarket-cli
cd polymarket-cli
cargo install --path .
설치 확인
설치가 성공했는지 확인하세요:
polymarket --version
polymarket --help
버전 정보와 사용 가능한 명령이 포함된 도움말 메시지가 표시되어야 합니다.
빠른 시작: 지갑 없이 시장 둘러보기
Polymarket CLI의 가장 큰 장점 중 하나는 시장을 둘러보는 데 지갑이 필요 없다는 것입니다. 이는 자금을 투입하기 전에 조사 및 모니터링에 이상적입니다.
최신 시장 둘러보기
# List the 5 most recent markets
polymarket markets list --limit 5
예상 출력:

특정 시장 검색
# Search for Bitcoin-related markets
polymarket markets search "bitcoin" --limit 5

상태 및 거래량으로 필터링
# List closed markets
polymarket markets list --closed true --limit 20

이벤트 둘러보기
이벤트는 관련 시장을 함께 묶습니다. 예를 들어, "2024년 선거" 이벤트는 선거의 다양한 측면에 대한 여러 시장을 포함합니다.
# List recent events
polymarket events list --limit 10
# Filter events by tag
polymarket events list --tag politics --active true
# Get a specific event
polymarket events get 500
지갑 설정 및 구성
시장 둘러보기에는 지갑이 필요 없지만, 거래에는 필요합니다. 지갑을 설정하는 방법은 다음과 같습니다.
새 지갑 생성
# Create a new wallet (generates random key, saves to config)
polymarket wallet create
이는 새 개인 키를 생성하고 `~/.config/polymarket/config.json` 경로의 설정 파일에 저장합니다.
기존 지갑 가져오기
자금이 있는 지갑이 이미 있다면:
polymarket wallet import 0xYOUR_PRIVATE_KEY_HERE
설정 파일 위치
설정 파일은 `~/.config/polymarket/config.json`에 저장되며 다음과 같습니다:
{
"private_key": "0xabc123...",
"chain_id": 137,
"signature_type": "proxy"
}
지갑 구성 방법
다음 세 가지 방법으로 개인 키를 제공할 수 있습니다 (이 순서대로 확인됩니다):
- CLI 플래그: ` --private-key 0xabc...`
- 환경 변수: ` POLYMARKET_PRIVATE_KEY=0xabc...`
- 설정 파일: ` ~/.config/polymarket/config.json`
서명 유형
Polymarket은 세 가지 서명 유형을 지원합니다:
| 유형 | 설명 |
|---|---|
proxy (기본) | Polymarket의 프록시 지갑 시스템을 사용합니다 |
eoa | 사용자의 키로 직접 서명합니다 |
gnosis-safe | 멀티시그 지갑용 |
각 명령마다 ` --signature-type eoa`로 재정의할 수 있습니다.
지갑 상태 확인
# Show full wallet info
polymarket wallet show
# Print just the address
polymarket wallet address
계약 승인
거래하기 전에 Polymarket 계약을 승인해야 합니다:
# Check current approvals (read-only)
polymarket approve check
# Approve all contracts (sends 6 on-chain transactions)
polymarket approve set
참고: 계약 승인에는 Polygon에서 가스 요금으로 MATIC이 필요합니다.
시장 및 이벤트 탐색
시장 탐색 명령에 대해 더 자세히 알아보겠습니다.
시장 명령
# Get detailed market info
polymarket markets get will-bitcoin-hit-100k
# Get tags for a market
polymarket markets tags MARKET_ID
# List markets with various filters
polymarket markets list \
--active true \
--order volume_num \
--limit 20 \
--offset 10
이벤트 명령
# List events with filters
polymarket events list --active true --limit 10
# Get event tags
polymarket events tags EVENT_ID
# Series (recurring events like weekly markets)
polymarket series list --limit 10
polymarket series get SERIES_ID
태그 명령
# List all tags
polymarket tags list
# Get specific tag info
polymarket tags get politics
# Find related tags
polymarket tags related politics
CLOB (오더북) 명령
지갑 없이 가격과 오더북을 확인하세요:
# Check API health
polymarket clob ok
# Get price for a token
polymarket clob price TOKEN_ID --side buy
polymarket clob midpoint TOKEN_ID
# Get spread
polymarket clob spread TOKEN_ID
# Get order book
polymarket clob book TOKEN_ID
# Last trade price
polymarket clob last-trade TOKEN_ID
# Price history
polymarket clob price-history TOKEN_ID --interval 1d --fidelity 30
간격 옵션: `1m`, `1h`, `6h`, `1d`, `1w`, `max`
Polymarket에서 거래하기
이제 흥미로운 부분인 거래를 해봅시다. 이 명령들은 구성된 지갑이 필요합니다.
주문하기
# Place a limit order (buy 10 shares at $0.50)
polymarket clob create-order \
--token TOKEN_ID \
--side buy \
--price 0.50 \
--size 10
# Place a market order (buy $5 worth)
polymarket clob market-order \
--token TOKEN_ID \
--side buy \
--amount 5
# Post multiple orders at once
polymarket clob post-orders \
--tokens "TOKEN1,TOKEN2" \
--side buy \
--prices "0.40,0.60" \
--sizes "10,10"
주문 유형: `GTC` (취소 시까지 유효 - 기본), `FOK` (전량 체결 또는 취소), `GTD` (지정일 전까지 유효), `FAK` (전량 체결 후 남은 주문 취소)
유동성을 추가하는 지정가 주문의 경우 ` --post-only`를 추가합니다.
주문 관리
# View your orders
polymarket clob orders
# Get specific order details
polymarket clob order ORDER_ID
# Cancel a single order
polymarket clob cancel ORDER_ID
# Cancel multiple orders
polymarket clob cancel-orders "ORDER1,ORDER2"
# Cancel all orders for a market
polymarket clob cancel-market --market CONDITION_ID
# Cancel all orders
polymarket clob cancel-all
잔액 및 거래 확인
# Check USDC balance
polymarket clob balance --asset-type collateral
# Check conditional token balance
polymarket clob balance --asset-type conditional --token TOKEN_ID
# View your trades
polymarket clob trades
# Update balance (refresh from chain)
polymarket clob update-balance --asset-type collateral
보상 및 API 키
# Check rewards
polymarket clob rewards --date 2024-06-15
polymarket clob current-rewards
# Check if orders are scoring rewards
polymarket clob order-scoring ORDER_ID
# Create API key for programmatic access
polymarket clob create-api-key
# List your API keys
polymarket clob api-keys
온체인 작업
Polymarket CLI는 온체인 계약과의 직접적인 상호작용도 지원합니다.
CTF (조건부 토큰 프레임워크) 작업
# Split $10 USDC into YES/NO tokens
polymarket ctf split --condition CONDITION_ID --amount 10
# Merge tokens back to USDC
polymarket ctf merge --condition CONDITION_ID --amount 10
# Redeem winning tokens after resolution
polymarket ctf redeem --condition CONDITION_ID
참고: 온체인 작업에는 Polygon에서 가스비로 MATIC이 필요합니다.
브릿지 작업
다른 체인에서 자산을 예치하세요:
# Get deposit addresses for EVM, Solana, Bitcoin
polymarket bridge deposit YOUR_POLYGON_ADDRESS
# List supported chains and tokens
polymarket bridge supported-assets
# Check deposit status
polymarket bridge status DEPOSIT_ADDRESS
포트폴리오 데이터
# View current positions
polymarket data positions YOUR_WALLET_ADDRESS
# View closed positions
polymarket data closed-positions YOUR_WALLET_ADDRESS
# Total portfolio value
polymarket data value YOUR_WALLET_ADDRESS
# Trade history
polymarket data trades YOUR_WALLET_ADDRESS --limit 50
스크립트를 위한 JSON 출력 사용
Polymarket CLI의 가장 강력한 기능 중 하나는 JSON 출력이며, 이는 스크립팅 및 자동화에 완벽합니다.
기본 JSON 출력
# Get markets as JSON
polymarket -o json markets list --limit 10
출력:
[
{"id": "12345", "question": "Will BTC hit $100k?", "outcomePrices": ["0.67", "0.33"], ...},
{"id": "67890", "question": "Will ETH flip BTC?", "outcomePrices": ["0.12", "0.88"], ...}
]
jq와 함께 사용하기
# Extract just the questions
polymarket -o json markets list --limit 100 | jq '.[].question'
# Get specific price data
polymarket -o json clob midpoint TOKEN_ID | jq '.mid'
# Filter markets by volume
polymarket -o json markets list --limit 100 | jq '.[] | select(.volume_num > 1000000)'
스크립트에서 오류 처리
#!/bin/bash
# Example: Check balance with error handling
if ! result=$(polymarket -o json clob balance --asset-type collateral 2>/dev/null); then
echo "Failed to fetch balance"
exit 1
fi
balance=$(echo "$result" | jq -r '.balance')
echo "Your balance: $balance USDC"
시장 모니터링 자동화
간단한 시장 모니터링 스크립트를 생성하세요:
#!/bin/bash
# monitor-market.sh - Monitor a specific market's price
TOKEN_ID=$1
INTERVAL=${2:-60} # Default 60 seconds
while true; do
clear
echo "Monitoring market: $(date)"
polymarket clob price $TOKEN_ID --side buy
polymarket clob price $TOKEN_ID --side sell
echo ""
polymarket clob book $TOKEN_ID | head -20
sleep $INTERVAL
done
다음과 같이 실행하세요: `./monitor-market.sh TOKEN_ID 30`
Apidog로 Polymarket API 테스트하기
자동화된 트레이딩 시스템을 구축하거나 Polymarket을 애플리케이션에 통합할 때, 철저한 API 테스트는 필수적입니다. Apidog는 예측 시장 API 테스트를 간단하고 효율적으로 만들어주는 강력한 올인원 API 개발 플랫폼을 제공합니다.

Polymarket 통합에 Apidog를 사용하는 이유
트레이딩 봇을 구축하든, 시장 분석 대시보드를 만들든, Polymarket 데이터를 애플리케이션에 통합하든, Apidog는 다음과 같은 여러 이점을 제공합니다:
- 시각적 API 클라이언트: 코드를 작성하지 않고도 요청을 보내고 응답을 검사합니다.
- 자동화된 테스트: 트레이딩 로직을 검증하기 위한 테스트 스위트를 생성합니다.
- 환경 변수: 개발/스테이징/운영 환경 전반에 걸쳐 API 엔드포인트 및 자격 증명을 관리합니다.
- 협업: 팀과 API 정의를 공유합니다.
대화형 셸 모드
대화형 탐색을 위해서는 내장 셸을 사용하세요:
polymarket shell
이는 대화형 REPL을 엽니다:
polymarket> markets list --limit 3
polymarket> clob book TOKEN_ID
polymarket> exit

셸은 명령 기록을 지원하여 다양한 명령을 쉽게 실험할 수 있습니다.
일반적인 워크플로우
워크플로우 1: 조사 및 거래
# Step 1: Find interesting markets
polymarket markets search "bitcoin" --limit 10
polymarket markets get bitcoin-above-100k
# Step 2: Check order book and prices
polymarket clob book TOKEN_ID
polymarket clob price-history TOKEN_ID --interval 1d
# Step 3: Check your balance
polymarket clob balance --asset-type collateral
# Step 4: Place a trade
polymarket clob market-order --token TOKEN_ID --side buy --amount 10
워크플로우 2: 포트폴리오 관리
# View all positions
polymarket data positions YOUR_ADDRESS
# Check total value
polymarket data value YOUR_ADDRESS
# View trading history
polymarket data trades YOUR_ADDRESS --limit 50
# Check open orders
polymarket clob orders
워크플로우 3: 프로그래밍 방식 트레이딩 봇
#!/bin/bash
# Simple bot: buy when price drops below threshold
TOKEN_ID="YOUR_TOKEN_ID"
THRESHOLD=0.45
AMOUNT=10
# Get current price
PRICE=$(polymarket -o json clob midpoint $TOKEN_ID | jq -r '.mid')
# Convert to decimal
PRICE_DECIMAL=$(echo "scale=2; $PRICE / 100" | bc)
if (( $(echo "$PRICE_DECIMAL < $THRESHOLD" | bc -l) )); then
echo "Price ($PRICE_DECIMAL) below threshold ($THRESHOLD) - buying"
polymarket clob market-order --token $TOKEN_ID --side buy --amount $AMOUNT
else
echo "Price ($PRICE_DECIMAL) above threshold - holding"
fi
보안 고려 사항
Polymarket CLI를 사용할 때 다음 보안 모범 사례를 염두에 두세요:
개인 키 보안
- 개인 키를 버전 제어 시스템에 절대 커밋하지 마세요.
- 공유 환경에서는 환경 변수 대신 설정 파일을 사용하세요.
- 많은 자금을 위해서는 하드웨어 지갑 통합을 고려하세요.
- CLI 거래를 위해 별도의 지갑을 사용하세요 (주요 지갑이 아닌).
거래 확인
- 확인 전에 항상 거래 세부 정보를 확인하세요.
- 설정을 테스트하기 위해 소액으로 시작하세요.
- 가스 요금에 충분한 MATIC 잔액을 유지하세요.
API 키 관리
# Create dedicated API keys for scripts
polymarket clob create-api-key
# List and manage keys
polymarket clob api-keys
# Delete compromised keys
polymarket clob delete-api-key
네트워크 보안
- HTTPS를 통해 CLI를 사용하세요 (기본).
- 클라우드 환경에서 개인 키를 사용할 때는 주의하세요.
- 공용 네트워크에서 거래할 때는 VPN 사용을 고려하세요.
결론
Polymarket CLI는 예측 시장과 프로그래밍 방식으로 상호작용하려는 개발자를 위한 강력한 도구입니다. 전략 자동화를 목표로 하는 트레이더든, 시장 데이터를 분석하는 연구원이든, 트레이딩 봇을 구축하는 개발자든, CLI는 Polymarket 생태계에 대한 강력한 인터페이스를 제공합니다.
이 가이드의 주요 요점:
- 빠른 설정을 위해 Homebrew 또는 셸 스크립트를 통해 설치합니다.
- 조사를 위해 지갑 없이 시장을 둘러봅니다.
- 거래하기 전에 지갑을 올바르게 구성합니다.
- 스크립팅 및 자동화를 위해 JSON 출력을 사용합니다.
- 개인 키를 다룰 때는 항상 보안을 최우선으로 합니다.
- 설정을 테스트하기 위해 소액 거래로 시작합니다.
- Polymarket API 통합을 테스트하고 검증하기 위해 Apidog를 사용합니다.
더 고급 사용 사례의 경우, 예약된 작업을 위한 cron, 데이터 처리를 위한 jq, 또는 Python이나 Node.js로 구축된 맞춤형 봇과 같은 다른 도구와 Polymarket CLI를 결합하는 것을 고려해 보세요. 트레이딩 통합을 구축할 때는 Apidog를 사용하여 모든 API 엔드포인트를 실시간으로 전환하기 전에 철저히 테스트하세요.
API 테스트 워크플로우를 간소화하고 Polymarket 통합에 대한 신뢰를 구축하려면 Apidog를 무료로 사용해 보세요.
자주 묻는 질문 (FAQ)
Polymarket CLI는 사용하기에 안전한가요?
Polymarket CLI는 실험적인 소프트웨어입니다. 주의해서 사용하고 절대로 많은 자금과 함께 사용하지 마세요. 확인 전에 항상 거래를 검증하세요. 이 프로젝트는 오픈 소스이므로 직접 코드를 검토할 수 있습니다.
시장을 둘러보는 데 지갑이 필요한가요?
아니요. 대부분의 명령(시장, 이벤트, CLOB 가격, 오더북)은 지갑 없이 작동합니다. 주문, 잔액 확인 및 온체인 작업을 위해서만 지갑이 필요합니다.
Polymarket은 어떤 체인을 지원하나요?
Polymarket은 Polygon (체인 ID 137) 위에 구축되었습니다. CLI는 온체인 작업(가스 요금으로 MATIC 필요)과 오프체인 주문 배치를 모두 처리합니다.
Polymarket CLI를 자동화된 거래에 사용할 수 있나요?
예. JSON 출력 형식은 스크립팅에 이상적입니다. 셸 스크립트, Python 또는 CLI 명령을 실행하고 JSON을 파싱할 수 있는 모든 언어를 사용하여 자동화된 트레이딩 봇을 구축할 수 있습니다.
Polymarket CLI에 대한 도움은 어떻게 받을 수 있나요?
공식 GitHub 저장소에서 문서와 문제 추적을 확인하세요.
Polymarket CLI는 테스트넷을 지원하나요?
현재 버전은 메인 Polymarket 배포와 함께 작동합니다. 테스트넷 지원에 대해서는 최신 정보를 GitHub 저장소에서 확인하세요.
프록시와 EOA 서명 유형의 차이점은 무엇인가요?
`proxy` (기본값)는 Polymarket의 프록시 지갑 시스템을 사용하여 가스 비용을 줄일 수 있습니다. `eoa`는 사용자의 개인 키로 직접 서명합니다. 대부분의 사용자에게는 기본 프록시 유형이 권장됩니다.
Polymarket CLI를 최신 버전으로 업데이트하려면 어떻게 해야 하나요?
업데이트를 확인하고 설치하려면 `polymarket upgrade`를 실행하세요. Homebrew 설치의 경우 `brew update && brew upgrade polymarket`를 사용하세요.
Apidog를 사용하여 Polymarket API 호출을 테스트할 수 있나요?
예. Apidog는 예측 시장 API를 테스트하기 위한 훌륭한 도구입니다. Apidog에서 새 프로젝트를 생성하고, Polymarket 엔드포인트를 추가한 다음, 시각적 클라이언트를 사용하여 요청을 보내고 응답을 검사하세요. Apidog의 환경 변수를 사용하면 다양한 API 자격 증명을 쉽게 관리할 수 있으며, 자동화된 테스트 시나리오를 생성하여 트레이딩 로직이 올바르게 작동하는지 확인할 수 있습니다.
