Kripto Piyasa Verisi Kazıma: CEX ve On-Chain İçin Proxy Rehberi

CEX API'lerinden fiyat, orderbook ve funding rate çekmek için residential proxy kullanımını, on-chain RPC erişimini ve düşük gecikmeli mimariyi kapsayan kapsamlı rehber.

Crypto Market Data Scraping: Proxies for Exchange APIs and On-Chain Feeds

Kripto quant ekipleri ve DeFi analistleri için piyasa verisi, stratejinin can damarıdır. Ancak bu veriyi tutarlı, düşük gecikmeli ve kesintisiz bir şekilde toplamak, teknik ve düzenleyici engellerle doludur. Binance ABD IP'lerini engeller, Coinbase rate limit sıkılaştırır, OKX belirli bölgelerden gelen trafiği 451 koduyla reddeder. Bu rehber, kripto piyasa verisi kazıma süreçlerinde proxy'lerin nasıl konumlandırılacağını, on-chain ve exchange verisinin mimari farklarını ve düzenleyici sınırları açıklar.

On-Chain Veri vs Exchange Verisi: Temel Fark

Kripto veri toplama dünyası iki ayrı katmana bölünür ve her biri farklı erişim stratejisi gerektirir:

  • On-chain veri (blokzincir doğal): RPC düğümleri veya blok indeksleyiciler (Alchemy, Infura, QuickNode, Dune) üzerinden erişilir. Her işlem, event log, gas fiyatı zincirde kayıtlıdır. Proxy genellikle gerekli değildir; ancak coğrafi yönlendirme throughput artırabilir.
  • Exchange verisi (CEX API + web): Binance, Coinbase, OKX, Bybit gibi merkezileşmiş borsaların REST ve WebSocket uç noktalarından fiyat feed'leri, orderbook snapshot'ları, funding rate'ler ve likidasyon verisi çekilir. Bu katman IP tabanlı rate limit'lere, coğrafi kısıtlamalara ve anti-bot mekanizmalarına tabidir — residential proxy burada kritik rol oynar.
Kural: On-chain veri için RPC sağlayıcınız yeterlidir. CEX verisi için ise proxy katmanı olmadan güvenilir bir veri boru hattı (pipeline) kuramazsınız.

Hedef Veri: Ne, Nereden, Nasıl?

CEX Fiyat Feed'leri ve Orderbook

Merkezileşmiş borsalar iki ana protokol sunar:

  • REST API: Geçmiş veri (kline/OHLCV), güncel ticker, orderbook derinliği. Sorgu başına rate limit uygulanır; örneğin Binance REST endpoint'leri IP başına dakikada ~1200 request (weight tabanlı) kabul eder.
  • WebSocket API: Gerçek zamanlı ticker, trade, orderbook güncellemesi. Sürekli bağlantı gerektirir; bağlantı başına abone sayısı sınırlıdır ancak IP başına rate limit daha esnektir.

Orderbook snapshot'ları için REST ile derinlik çekip WebSocket ile incremental güncelleme almak endüstri standardıdır.

Funding Rate ve Likidasyonlar

Perpetual future stratejilerinde funding rate, piyasa duyarlılığının en önemli göstergesidir. Binance ve Bybit funding rate verisini REST üzerinden dakikalık, saatlik periyotlarla sunar. Likidasyon verisi ise genellikle WebSocket trade kanalında liquidation event'i olarak yayınlanır.

On-Chain: RPC ve İndeksleyiciler

Ethereum, Solana, Arbitrum gibi ağlardan veri almak için RPC sağlayıcılar kullanılır:

  • Alchemy / Infura / QuickNode: Yönetilen RPC düğümleri, API key ile erişim. Rate limit API key bazındadır, IP bazlı değildir.
  • Kendi düğümünüz: Tam kontrol, ancak bakım maliyeti yüksek.
  • Dune / Flipside: SQL tabanlı indeksleyiciler, hazır tablolar üzerinden sorgu.

RPC sağlayıcıları API key ile kimlik doğruladığından, IP rotasyonu genellikle gerekmez. Ancak yüksek hacimli indexleme işlerinde coğrafi yönlendirme, farklı RPC uç noktalarına paralel istek dağıtımı yaparak throughput artırabilir.

CEX Kazıma İçin Neden Residential Proxy Zorunludur

IP Tabanlı Rate Limit'ler

CEX'ler rate limit'i IP bazında uygular. Tek IP'den gelen yoğun istek dizisi şu senaryoyu izler:

  1. 429 Too Many Requests: İlk uyarı. Kısa süreli blok (genellikle 1–10 dakika).
  2. 429 → 451 escalation: Tekrarlayan ihlallerde borsalar IP'yi kalıcı engellere taşıyabilir; bazı borsalar 418 (I'm a teapot) koduyla ban bildirir.
  3. IP ban listesi: Datacenter IP aralıkları önceden filtrelenmiş olabilir.

Residential proxy'ler, her isteği farklı bir ISP IP'sine yönlendirerek IP bazlı limitleri dağıtır. Datacenter proxy'ler ise borsaların bilinen IP aralığı filtrelerine takılabilir.

Coğrafi Kısıtlamalar

Kritik bir düzenleyici gerçek: Birçok borsa belirli yargı bölgelerinden erişimi engeller:

BorsaEngellenen Bölgeler (Örnek)Yanıt Kodu
BinanceAB, ABD yurttaşları451 / Yönlendirme
OKXABD, Kanada, İran451
BybitABD, Singapur, bazı AB ülkeleri453 / 451
CoinbaseABD dışında sınırlı ürün403 / Bölge kısıtlaması

Residential proxy ile hedef bölge IP'si kullanarak bu kısıtlamaları teknik olarak aşabilirsiniz. Ancak bu, yerel düzenlemeleri ihlal etmek anlamına gelebilir — düzenleyici bölümde detaylandırıyoruz.

On-Chain Yaklaşım: RPC ile Doğrudan Erişim

On-chain veri toplama, CEX veri kazımasından mimari olarak farklıdır. RPC sağlayıcıları istekleri API key ile doğrular; IP tabanlı limitler ikincil düzeydedir. Basit bir Ethereum blok sorgusu:

import requests

ALCHEMY_URL = "https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY"

payload = {
    "jsonrpc": "2.0",
    "method": "eth_getBlockByNumber",
    "params": ["latest", False],
    "id": 1
}

resp = requests.post(ALCHEMY_URL, json=payload)
block = resp.json()
print(f"Block #{int(block['result']['number'], 16)}")

Burada proxy gerekmez. Ancak aynı anda yüzlerce blok sorgulamak istiyorsanız, farklı bölgelerdeki RPC uç noktalarına paralel istek göndermek throughput'u artırır. ProxyHat ile coğrafi yönlendirme:

import requests

PROXY = "http://user-country-US:PASSWORD@gate.proxyhat.com:8080"
proxies = {"http": PROXY, "https": PROXY}

# ABD lokasyonlu RPC endpoint'ine yönlendirme
resp = requests.post(
    "https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY",
    json={"jsonrpc": "2.0", "method": "eth_blockNumber", "params": [], "id": 1},
    proxies=proxies
)
print(resp.json())

Bu, RPC sağlayıcınızın ABD uç noktalarına daha düşük gecikmeyle erişmenizi sağlar; ancak çoğu senaryoda RPC sağlayıcının kendi global yük dengelemesi yeterlidir.

Mimari: WebSocket Öncelikli, REST Yedekli

Gerçek zamanlı kripto verisi için mimari tasarım kritiktir. İki katmanlı yaklaşım öneriyoruz:

1. WebSocket — Gerçek Zamanlı Akış

Binance, OKX, Bybit public WebSocket uç noktaları sunar. Bu uç noktalar sürekli bağlantı gerektirir ve IP başına bağlantı sayısı sınırlıdır (örneğin Binance'te IP başına 5 bağlantı). Residential proxy ile farklı IP'lere bağlanarak bu sınırı aşabilirsiniz.

WebSocket bağlantılarında sticky session kullanın — bağlantı kurulduktan sonra IP değişmemelidir:

import asyncio
import websockets
import json

# Sticky session: bağlantı süresince aynı IP kalır
PROXY_WS = "socks5://user-country-SG-session-ws1:PASSWORD@gate.proxyhat.com:1080"

async def binance_depth():
    uri = "wss://stream.binance.com:9443/ws/btcusdt@depth20@100ms"
    async with websockets.connect(
        uri,
        proxy=PROXY_WS  # SOCKS5 proxy üzerinden
    ) as ws:
        while True:
            msg = await ws.recv()
            data = json.loads(msg)
            # Orderbook güncellemesini işle
            print(f"Bid: {data['bids'][0][0]}, Ask: {data['asks'][0][0]}")

asyncio.run(binance_depth())

2. REST — Geçmiş Veri ve Yedekleme

WebSocket kopması, geçmiş veri çekme veya funding rate sorgulama senaryolarında REST API kullanılır. Burada IP rotasyonu esastır:

import requests
from itertools import cycle

# Farklı bölgelerden rotasyon
proxies_pool = cycle([
    "http://user-country-SG:PASSWORD@gate.proxyhat.com:8080",
    "http://user-country-JP:PASSWORD@gate.proxyhat.com:8080",
    "http://user-country-HK:PASSWORD@gate.proxyhat.com:8080",
])

def fetch_funding_rate(symbol="BTCUSDT"):
    proxy = next(proxies_pool)
    resp = requests.get(
        "https://fapi.binance.com/fapi/v1/fundingRate",
        params={"symbol": symbol, "limit": 100},
        proxies={"http": proxy, "https": proxy},
        timeout=10
    )
    if resp.status_code == 429:
        # Proxy değiştir, tekrar dene
        proxy = next(proxies_pool)
        resp = requests.get(
            "https://fapi.binance.com/fapi/v1/fundingRate",
            params={"symbol": symbol, "limit": 100},
            proxies={"http": proxy, "https": proxy},
            timeout=10
        )
    return resp.json()

rates = fetch_funding_rate()
print(f"Son funding rate: {rates[-1]['fundingRate']}")

Gecikme (Latency) Optimizasyonu

Algoritmik ticaret ve arbitraj stratejilerinde milisaniyeler fark eder. Proxy seçiminde coğrafi yakınlık en önemli faktördür:

  • ABD borsaları (Coinbase, Kraken): ABD veya AB lokasyonlu proxy'ler kullanın. ProxyHat country-US veya country-DE bayrakları ile yönlendirme yapın.
  • Güneydoğu Asya borsaları (Binance, OKX, Bybit): Singapur, Japonya, Hong Kong lokasyonlu proxy'ler tercih edin. country-SG, country-JP, country-HK bayraklarını kullanın.

Ölçülebilir bir karşılaştırma:

Proxy LokasyonuBinance WS Gecikme (ort.)Coinbase REST Gecikme (ort.)
Singapur (SG)8–15 ms180–220 ms
Almanya (DE)150–200 ms30–50 ms
ABD Doğu (US)200–260 ms5–15 ms

Stratejiniz arbitraj ise, her iki borsaya de düşük gecikmeli erişim sağlayan bir "orta nokta" proxy bölgesi (örneğin Avrupa) seçebilirsiniz. Ancak ultra-düşük gecikme gerektiren HFT stratejilerinde, borsa sunucusuna fiziksel olarak en yakın co-location çözümleri proxy'den önceliklidir.

Veri Bütünlüğü ve Zaman Damgaları

Finansal veri boru hatlarında zaman damgası sıralaması (sequence guarantee) kritiktir. WebSocket akışında exchange'in kendi E (event time) alanını kullanın; yerel saat ile exchange saati arasındaki sapma arbitraj sinyallerini bozabilir. REST fallback'te ise yanıtın serverTime alanını kaydedin ve veri sıralamasını bu değere göre yapın.

Düzenleyici Hususlar: TOS ve Yerel Yasa

Proxy kullanarak coğrafi kısıtlamaları aşmak teknik olarak mümkündür, ancak düzenleyici sonuçları ciddi olabilir:

  • Binance TOS: ABD yurttaşlarının ve ABD IP'lerinden platforma erişimi yasaktır. Proxy ile ABD dışından bağlanmak, TOS ihlali olup hesap dondurma riski taşır.
  • SEC ve MiFID II: ABD menşeli bir kurumun, ABD yasağı olan bir borsadan proxy ile veri toplaması, menkul kıymet düzenlemelerini ihlal sayılabilir.
  • Piyasa verisi lisansları: Bazı borsalar verilerinin yeniden dağıtımı için lisans gerektirir. Toplanan veriyi ticari bir üründe sunmadan önce borsanın veri lisans sözleşmesini inceleyin.
Öneri: Proxy kullanımı, erişilebilir bölgelerden veri toplamak için kullanılmalıdır; erişimi yasak olan bölgelerden erişim sağlamak için değil. Örneğin, ABD'de bulunan bir ekip, Binance'e Asya lokasyonlu proxy ile bağlanabilir — ancak bunu yaparken ABD menkul kıymet yasalarına danışmanız gerekir.

Avrupa'daki ekipler için MiFID II kapsamında, toplanan piyasa verisinin kayıt yükümlülüklerini karşılaması gerekir. Veri zaman damgalarının doğruluğu ve saklanması, denetim gereksinimlerinin bir parçasıdır.

Uygulama Senaryoları

SERP ve Fiyat Karşılaştırma Servisleri

Birden fazla CEX'ten aynı anda fiyat çekip karşılaştıran servisler, her borsa için ayrı proxy havuzu kullanmalıdır. Web kazıma kullanım senaryomuzu inceleyerek genel yaklaşımları görebilirsiniz.

DeFi Analitik ve On-Chain + Off-Chain Birleştirme

AMM havuz fiyatları (on-chain) ile CEX fiyatları (off-chain) arasındaki arbitraj fırsatlarını tespit etmek için her iki veri kaynağını aynı pipeline'da birleştirmeniz gerekir. On-chain veri RPC'den, CEX verisi proxy üzerinden WebSocket ile akmalıdır. SERP izleme sayfamızda benzer çok kaynaklı yaklaşımları bulabilirsiniz.

AI Eğitim Verisi Toplama

Kripto piyasa verisinden makine öğrenmesi modelleri eğiten ekipler, geçmiş veriyi toplu şekilde çekmeli ve zaman serisi bütünlüğünü korumalıdır. REST fallback ile proxy rotasyonu, 429 hatalarını önler ve veri setindeki boşlukları engeller.

Key Takeaways

  • On-chain veri için proxy genellikle gereksizdir — RPC sağlayıcıları API key ile kimlik doğrular, IP tabanlı limit ikincildir.
  • CEX verisi için residential proxy zorunludur — IP tabanlı rate limit'ler ve coğrafi kısıtlamalar proxy olmadan aşılamaz.
  • WebSocket öncelikli mimari kurun — gerçek zamanlı veri için WS, yedek ve geçmiş veri için REST + proxy rotasyonu.
  • Gecikmeyi coğrafi yakınlıkla optimize edin — SEA borsaları için SG/JP proxy, ABD borsaları için US/DE proxy.
  • Düzenleyici sınırları aşmayın — proxy, erişilebilir bölgelerden veri toplamak içindir; yasağı aşmak değil.
  • Veri bütünlüğünü koruyun — exchange'in server time ve event time alanlarını kullanın, yerel saat güvenilir değildir.

ProxyHat ile Başlangıç

ProxyHat, residential, mobil ve datacenter proxy hizmetleri sunar. CEX veri kazıma için residential proxy'ler en uygun seçimdir; datacenter proxy'ler bilinen IP aralıkları nedeniyle borsa filtrelerine takılabilir. Fiyatlandırma sayfamızdan ihtiyacınıza uygun planı seçebilir ve lokasyon sayfamızdan desteklenen bölgeleri inceleyebilirsiniz.

Hızlı başlangıç için curl ile test:

# Binance ticker verisi - Singapur residential proxy üzerinden
curl -x http://user-country-SG:PASSWORD@gate.proxyhat.com:8080 \
  "https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT"

Bu komut, Singapur lokasyonlu bir residential IP üzerinden Binance API'sine bağlanır ve BTC/USDT fiyatını çeker. Rate limit'e takılmadan birden fazla sembol sorgulamak için ülke bayrağını değiştirerek farklı IP'lere yönlendirme yapabilirsiniz.

Başlamaya hazır mısınız?

148+ ülkede 50M+ konut IP'sine AI destekli filtreleme ile erişin.

Fiyatlandırmayı GörüntüleKonut Proxy'leri
← Bloga Dön