Daha önceki derslerde Binance'in spot piyasa API'siyle bakiye ve fiyat çekmiştik. Bu derste, kaldıraçlı vadeli işlemlerin yapıldığı Futures API'sine geçiyoruz — ilk adım olarak, herhangi bir kimlik doğrulama gerektirmeyen public uç noktalardan fiyat çekeceğiz.
Risk uyarısı: Vadeli işlemler kaldıraç içerir ve kaldıraç hem kârı hem de zararı büyütür — yatırdığınızdan daha fazlasını kaybetmeniz mümkündür. Bu ve sonraki derslerdeki kod örnekleri yalnızca API'nin teknik kullanımını öğretmek amaçlıdır, yatırım tavsiyesi değildir.
Futures API'sinin Temel Adresi
Binance Futures, spot piyasadan farklı bir taban adres (base URL) kullanır:
FUTURES_BASE_URL = "https://fapi.binance.com"
Anlık İşaret Fiyatını (Mark Price) Çekmek
Vadeli işlemlerde "mark price", pozisyonların kâr/zararının ve likidasyonun hesaplanmasında kullanılan referans fiyattır — anlık işlem fiyatından (last price) biraz farklı olabilir:
import requests
def mark_fiyat_al(sembol: str) -> float:
url = f"{FUTURES_BASE_URL}/fapi/v1/premiumIndex"
params = {"symbol": sembol}
response = requests.get(url, params=params)
return float(response.json()["markPrice"])
fiyat = mark_fiyat_al("BTCUSDT")
print(f"Bitcoin Futures Mark Fiyatı: {fiyat}")
Anlık İşlem Fiyatını (Ticker Price) Çekmek
def islem_fiyati_al(sembol: str) -> float:
url = f"{FUTURES_BASE_URL}/fapi/v1/ticker/price"
params = {"symbol": sembol}
response = requests.get(url, params=params)
return float(response.json()["price"])
fiyat = islem_fiyati_al("BTCUSDT")
print(f"Bitcoin Futures Anlık Fiyat: {fiyat}")
Bu Uç Noktaların API Anahtarı Gerektirmemesinin Nedeni
Fiyat gibi herkese açık, hesaba özel olmayan veriler Binance'te public uç noktalar üzerinden sunulur — bu yüzden requests.get(...) çağrısında herhangi bir imza (signature) veya API anahtarı header'ı eklemenize gerek yoktur. Bir sonraki derste göreceğimiz bakiye sorgulama gibi hesaba özel işlemler ise imzalı (signed) istek gerektirir.
Birden Fazla Sembolü Aynı Anda Çekmek
semboller = ["BTCUSDT", "ETHUSDT", "BNBUSDT"]
for sembol in semboller:
fiyat = mark_fiyat_al(sembol)
print(f"{sembol}: {fiyat}")
Sırada Ne Var?
Sırada, Binance Futures hesabınızdaki bakiyeyi API anahtarınızla imzalı bir istek göndererek sorgulamayı göreceğiz.