Developers & Traders

Polymarket API

Автоматизируйте торговлю и получайте данные рынков программно. Открытые возможности для создания торговых стратегий, аналитики и интеграций.

🎯 Для кого это:

API подходит для разработчиков, трейдеров с опытом программирования и тех, кто хочет создавать автоматические торговые стратегии или аналитические приложения.

Обзор Polymarket API

✅ Возможности API

  • Получение списка всех рынков
  • Данные о конкретном рынке
  • Текущие котировки (bid/ask)
  • Историческая информация о ценах
  • Объемы торгов и ликвидность
  • События и новости рынков
  • Размещение ордеров (требует авторизации)

📊 Типы данных

  • Markets: информация о рынках
  • Events: события и их результаты
  • Prices: текущие и исторические цены
  • Trades: история сделок
  • Orderbook: книга ордеров
  • Volume: объемы торговли

🔗 Базовая информация

Base URL:
https://clob.polymarket.com
Формат данных:
JSON
Rate limits:
Стандартный лимит: 10 запросов в секунду

Основные API Endpoints

GET/markets

Получить список всех активных рынков с фильтрацией и пагинацией.

Параметры:
  • limit - количество результатов (макс. 100)
  • offset - пропустить N результатов
  • closed - включить закрытые рынки (true/false)
GET/markets/:id

Получить детальную информацию о конкретном рынке по его ID.

Возвращает:
  • • Название и описание рынка
  • • Текущие цены Yes/No
  • • Объем торгов
  • • Дата закрытия
  • • Статус разрешения
GET/prices

Получить текущие цены покупки и продажи для рынков.

Включает:
  • • Bid/Ask цены
  • • Спред между ценами
  • • Последняя цена сделки
  • • Timestamp обновления
GET/trades

История торговых сделок на рынках.

Данные:
  • • Цена сделки
  • • Объем
  • • Сторона (buy/sell)
  • • Время сделки

Примеры кода

Python (requests)
import requests
import json

BASE_URL = "https://clob.polymarket.com"

# Получить активные рынки
def get_active_markets(limit=10):
    url = f"{BASE_URL}/markets"
    params = {
        "limit": limit,
        "closed": False
    }
    
    response = requests.get(url, params=params)
    
    if response.status_code == 200:
        markets = response.json()
        return markets
    else:
        print(f"Error: {response.status_code}")
        return None

# Использование
markets = get_active_markets(5)
if markets:
    for market in markets:
        print(f"{market['question']}")
        print(f"  Yes: ${market['yes_price']:.2f}")
        print(f"  No: ${market['no_price']:.2f}")
        print(f"  Volume: ${market['volume']:,.0f}")
JavaScript (fetch)
const BASE_URL = 'https://clob.polymarket.com';

// Мониторинг рынка
async function monitorMarket(marketId) {
  console.log(`Monitoring ${marketId}...`);
  
  setInterval(async () => {
    try {
      const res = await fetch(`${BASE_URL}/markets/${marketId}`);
      const market = await res.json();
      
      console.log(market.question);
      console.log(`Yes: $${market.yes_price}`);
      console.log(`No: $${market.no_price}`);
    } catch (e) {
      console.error(e);
    }
  }, 5000);
}

// Запуск
monitorMarket('market-id-here');
Python: Простой арбитраж бот
def find_arbitrage_opportunities():
    """Найти рынки где Yes + No < 1.0"""
    url = f"{BASE_URL}/markets"
    params = {"limit": 100, "closed": False}
    
    response = requests.get(url, params=params)
    markets = response.json()
    
    opportunities = []
    
    for market in markets:
        yes_price = market.get('yes_price', 0)
        no_price = market.get('no_price', 0)
        total = yes_price + no_price
        
        # Если сумма меньше 0.99, есть потенциальный арбитраж
        if total < 0.99:
            profit = 1.0 - total
            opportunities.append({
                'question': market['question'],
                'yes': yes_price,
                'no': no_price,
                'profit': profit,
                'roi': (profit / total) * 100
            })
    
    # Сортировать по прибыли
    opportunities.sort(key=lambda x: x['profit'], reverse=True)
    return opportunities

⚠️ Примечание: Примеры даны в образовательных целях. Для реальной торговли требуется обработка ошибок и API ключи.

Практические применения API

🤖 Автоматизация

  • • Поиск недооцененных рынков
  • • Авто-ордера по условиям
  • • Арбитраж
  • • Ребалансировка

📊 Мониторинг

  • • Уведомления о ценах
  • • Алерты уровней
  • • Трекинг ликвидности
  • • Метрики объемов

📈 Data Analytics

  • • Исторический анализ
  • • Корреляция событий
  • • Паттерны цен
  • • Бэктестинг стратегий

🔗 Интеграции

  • • Виджеты для сайтов
  • • Telegram/Discord боты
  • • Экспорт данных
  • • API агрегаторы

Rate Limits

Polymarket API имеет строгие ограничения:

  • • Не более 10 запросов в секунду
  • • Используйте кэширование
  • • Добавляйте задержки между запросами
  • • Обрабатывайте HTTP 429 ошибки

Best Practices

  • Retry logic: Экспоненциальная задержка при ошибках
  • Logging: Логируйте запросы и ответы
  • Безопасность: Ключи только в переменных окружения
  • HTTPS: Шифрование для всех запросов

Начните строить с Polymarket API

API открывает безграничные возможности для автоматизации, анализа и создания инновационных приложений.

Продолжить на Polymarket