Neden Whale Takibi

Solana ağında büyük cüzdanlar (whale) belirli tokenlara girdiğinde genellikle fiyat hareketi oluyor. Bu cüzdanları gerçek zamanlı takip edip erken sinyal almak için EYECAZ PREDATOR'u geliştirdim.

v15.0 ile gelen özellikler: 9 aktif whale cüzdanı takibi, otomatik yeni whale keşfi, cluster detection (birden fazla cüzdanın koordineli hareket etmesi), token scoring ve Telegram entegrasyonu.

9
Aktif Whale
v15
Versiyon
Helius
Premium API
FastAPI
Dashboard

Sistem Mimarisi

Uygulama dört bağımsız modülden oluşuyor. Her biri ayrı async task olarak çalışıyor:

async def boot(): tasks = [ asyncio.create_task(whale_tracker_loop()), asyncio.create_task(telegram_commander()), ] if AUTO_DISCOVER: tasks.append(asyncio.create_task(whale_discovery_loop())) if CLUSTER_DETECT: tasks.append(asyncio.create_task(cluster_detection_loop())) await asyncio.gather(*tasks)

Helius API ile Gerçek Zamanlı İzleme

Helius Premium, Solana RPC'sine kıyasla çok daha zengin işlem verisi veriyor: swap detayları, token transferleri ve NFT hareketleri tek endpointte.

async def fetch_wallet_transactions(address: str, limit: int = 50): url = f"https://api.helius.xyz/v0/addresses/{address}/transactions" params = { "api-key": HELIUS_API_KEY, "limit": limit, "type": "SWAP" } async with aiohttp.ClientSession() as session: async with session.get(url, params=params) as resp: if resp.status == 429: # Rate limit: backoff ve retry await asyncio.sleep(HELIUS_429_BACKOFF_SEC) return [] return await resp.json()
⚠ RATE LİMİT

Helius ücretsiz planda dakikada 10 istek var. Premium'da bu limit çok daha yüksek ama yine de concurrent request sayısını sınırlandırın. asyncio.Semaphore(3) ile concurrent Helius çağrısını 3 ile sınırladım.

Token Scoring Motoru

Her token için bir skor hesaplanıyor. Yüksek skor = daha fazla whale ilgisi.

def score_token(token_address: str, db: sqlite3.Connection) -> float: # Son 24 saatte kaç farklı whale aldı? buyers = db.execute(""" SELECT COUNT(DISTINCT wallet) FROM whale_swaps WHERE token_out = ? AND timestamp > ? AND action = 'BUY' """, (token_address, time.time() - 86400)).fetchone()[0] # Toplam hacim (USD) volume = db.execute(""" SELECT COALESCE(SUM(usd_value), 0) FROM whale_swaps WHERE token_out = ? AND timestamp > ? """, (token_address, time.time() - 86400)).fetchone()[0] # Küme bonusu cluster_bonus = 1.5 if is_clustered(token_address, db) else 1.0 score = (buyers * 25 + min(volume / 1000, 50)) * cluster_bonus return round(score, 2)

Küme Tespiti

Cluster detection, birden fazla whale'in kısa sürede aynı tokena girip girmediğini tespit ediyor. Bu koordineli hareketin en güçlü sinyali.

Algoritma: Son 2 saat içinde 3+ farklı whale aynı tokena 10 dakika içinde girdiyse cluster alarmı tetikleniyor.

Telegram Alarm Sistemi

Bot hem alarm gönderiyor hem de komut alıyor. Temel komutlar:

FastAPI + WebSocket Dashboard

Tarayıcı tabanlı dashboard, WebSocket üzerinden gerçek zamanlı güncellemeler alıyor. Login sayfasında JWT ile oturum yönetimi var.

💡 WebSocket 403 SORUNU

WebSocket bağlantısında 403 alıyorsanız, CORS origin ayarına dikkat edin. Geliştirme sırasında allow_origins=["*"] kullanın, production'da kısıtlayın.