Blog'a Dön

Çapraz Döviz Kurları: Nasıl Hesaplanır ve Kullanılır (Geliştirici Rehberi)

V
Vlado Grigirov
May 09, 2026
Exchange Rates Currency API Forex Education Developer Guide Finexly

Eğer uygulamanızın Brezilya reali ile Hint rupisi, Norveç kronu ile Singapur doları ya da Amerikan dolarının iki tarafta da olmadığı herhangi bir paritede dönüşüm yapması gerekiyorsa, çapraz döviz kuru matematiği ile uğraşmak üzeresiniz. Çoğu döviz API'si ve forex platformu binlerce pariteyi dolar karşısında kote eder, ancak yalnızca birkaç parite, doğrudan iki USD dışı para birimi arasında işlem görür. Geri kalan her şey — uzun kuyruğun tamamı — çapraz kur olarak hesaplanır.

Bu rehber çapraz kurun ne olduğunu, üç biçimde karşımıza çıkan formülü, hesap makinesiyle doğrulayabileceğiniz örnekleri ve JavaScript, Python, PHP ile cURL üzerinde üretim kalitesinde kodu açıklar. Ayrıca gerçek sistemlerde %1 düzeyinde sapmaya yol açan tuzakları ele alacağız: yuvarlama, alış-satış spread'i, eskimiş kurlar ve ters çevirme hataları.

Çapraz Döviz Kuru Nedir?

Çapraz döviz kuru, orijinal kotasyonlarda hiçbiri yerel veya referans para birimi olmayan iki para birimi arasındaki fiyattır. Pratikte bu hemen her zaman, her biri doları içeren iki pariteden türetilen ve doları içermeyen bir parite anlamına gelir.

Örneğin EUR/JPY kuru teknik olarak bir çapraz kurdur. EUR/JPY dünyanın en çok işlem gören paritelerinden biri olup kendi kote edilen piyasasına sahiptir, ancak temel mantık şudur: EUR/USD'yi al, USD/JPY'yi al, çarp; sonuçta Tokyo'daki bir bankanın size söyleyeceği aynı sayıyı elde edersiniz. Piyasa kotasyonu ile hesaplanan çapraz kur birbirine arbitraj ile bağlıdır — eğer ayrılmaya başlasalar trader'lar yeniden eşleşene dek piyasaya girer.

Likit doğrudan piyasası olmayan para birimleri — örneğin Nijerya nairası ile Filipin pesosu (NGN/PHP) — yalnızca çapraz kur olarak vardır. Anlamlı bir NGN/PHP piyasası mevcut değildir; bu pariteyi kote eden herkes onu NGN/USD ve USD/PHP'den hesaplıyordur.

Teknik tanım farkı netleştiriyor:

  • Doğrudan kur, bir piyasa veya birleştirilmiş veri akışında aktif olarak kote edilen kurdur.
  • Çapraz kur, ortak bir baz para birimi (genellikle USD) paylaşan iki veya daha fazla doğrudan kurdan hesaplanan kurdur.

Finexly dahil çoğu API sağlayıcısı çapraz kurları sorunsuz biçimde sunar: istediğiniz pariteyi sorarsınız ve motor matematiği arka planda halleder. Yine de bu matematiğin nasıl çalıştığını bilmek önemlidir; hassasiyeti, spread'leri ve uç durumları nasıl ele aldığınızı doğrudan etkiler.

Çapraz Kurlar Geliştiriciler İçin Neden Önemli?

Çapraz kurlar üç tür uygulamada karşımıza çıkar:

Sınır ötesi ödemeler ve havaleler. Brezilyalı bir müşteriye fatura kesen Filipinli bir freelancer, PHP cinsinden ücretlerinin BRL karşılığını bilmek ister. Doğrudan bir BRL/PHP piyasası yoktur — platform bunu USD üzerinden hesaplar.

Çoklu para birimli e-ticaret. Singapurlu bir müşteriye fiyat gösteren Norveçli bir satıcının NOK/SGD'ye ihtiyacı vardır. Stripe, Adyen ve çoğu ödeme sağlayıcısı bu çaprazı dahili olarak hesaplar ve üzerine kendi FX marjını ekler.

Finansal analiz ve trading. Kantitatif sistemler birden çok para biriminde tutulan portföylerdeki riskleri hedge eder. EUR cinsinden net riskinizi bilmek için MXN, INR, ZAR ve BRL'deki pozisyonları EUR'ya çevirmeniz gerekir — hepsi çapraz hesaplama.

Her durumda çapraz kurunuzun kalitesi, alttaki iki USD paritesinin kalitesine ve tazeliğine tamamen bağlıdır. 2 saniye önceki bir EUR/USD ile 60 saniye önceki bir USD/JPY birleştirildiğinde, JPY'nin o aralıkta hareket ettiği kadar yanlış bir çapraz elde edersiniz. Kurların nereden geldiği ve nasıl güncellendiği için döviz kurları nasıl çalışır rehberimize göz atın.

Çapraz Kur Formülü

İki kaynak paritenin nasıl kote edildiğine bağlı olarak üç durum vardır. Genel ilke basittir: kurları kesir olarak yazdığınızda ortak para biriminin sadeleşmesi gerekir.

Durum 1: USD her iki paritede de kote para birimi

Diyelim ki:

  • EUR/USD = 1,0850 (1 EUR, 1,0850 USD alır)
  • GBP/USD = 1,2620 (1 GBP, 1,2620 USD alır)

EUR/GBP'yi istiyorsunuz. Formül şudur:

EUR/GBP = (EUR/USD) / (GBP/USD)
EUR/GBP = 1.0850 / 1.2620 = 0.8598

Yani 1 euro 0,8598 sterlin alır. Her iki kaynak kotasyonda da USD sağda olduğundan böleriz.

Durum 2: USD her iki paritede de baz para birimi

Diyelim ki:

  • USD/JPY = 152,30
  • USD/CHF = 0,8920

JPY/CHF'yi istiyorsunuz. Formül şudur:

JPY/CHF = (USD/CHF) / (USD/JPY)
JPY/CHF = 0.8920 / 152.30 = 0.005857

Yani 1 yen 0,005857 İsviçre frangı alır. Her iki kotasyonda da USD solda olduğundan böleriz, ancak oranı tersine çeviririz.

Durum 3: USD birinde baz, diğerinde kote (karışık)

Bu en yaygın durum ve hataların oluştuğu yerdir. Diyelim ki:

  • EUR/USD = 1,0850 (USD kote)
  • USD/JPY = 152,30 (USD baz)

EUR/JPY'yi istiyorsunuz. Formül şudur:

EUR/JPY = (EUR/USD) × (USD/JPY)
EUR/JPY = 1.0850 × 152.30 = 165.25

Yani 1 euro 165,25 yen alır. Dolarlar temiz şekilde sadeleşir: dolar başına euro × yen başına dolar = yen başına euro. Karışık durumda çarpın.

Pratik kural: pariteleri kesir olarak yazın, USD sadeleşecek şekilde sıralayın ve buna göre çarpın ya da bölün. Pay olarak kalan para birimi çapraz kurunuzun bazı olur.

Doğrulayabileceğiniz Çözülmüş Örnekler

Bu sayıları herhangi bir önemli döviz kaynağı ile doğrulayabilirsiniz. Tam değerler piyasa ile birlikte kayar; önemli olan yapıdır.

Örnek 1: EUR/JPY (karışık durum)

EUR/USD = 1,0850 ve USD/JPY = 152,30 verildiğinde:

EUR/JPY = 1.0850 × 152.30 = 165.2455

Örnek 2: GBP/CHF (karışık durum)

GBP/USD = 1,2620 ve USD/CHF = 0,8920 verildiğinde:

GBP/CHF = 1.2620 × 0.8920 = 1.1257

Örnek 3: AUD/NZD (her ikisi de USD karşısında kote)

AUD/USD = 0,6630 ve NZD/USD = 0,6010 verildiğinde:

AUD/NZD = 0.6630 / 0.6010 = 1.1031

Yani 1 Avustralya doları 1,1031 Yeni Zelanda doları alır.

Örnek 4: BRL/INR (her ikisi de USD baz olarak kote)

USD/BRL = 5,0850 ve USD/INR = 84,20 verildiğinde:

BRL/INR = (USD/INR) / (USD/BRL) = 84.20 / 5.0850 = 16.561

Yani 1 Brezilya reali 16,561 Hint rupisi alır.

Burada kullanılan üç harfli standart kodları tazelemek için ISO 4217 döviz kodları rehberimize bakabilirsiniz.

Resiprokal Kurlar ve Pariteleri Tersine Çevirme

Bazen veri kaynağınız size USD/EUR verir ama EUR/USD'ye ihtiyacınız vardır. Resiprokal şudur:

EUR/USD = 1 / (USD/EUR)

USD/EUR = 0,9217 ise EUR/USD = 1 / 0,9217 = 1,0850.

Resiprokaller hakkında iki pratik nokta:

Birincisi, yuvarlama birikir. Bir kuru 4 ondalığa yuvarlayıp resiprokalini alıp tekrar yuvarlarsanız %0,01 ya da daha fazla hata ekleyebilirsiniz. Yüksek hassasiyet gerektiren uygulamalarda resiprokali son görüntüleme adımına kadar tam kayan nokta hassasiyetinde tutun. Hassasiyet stratejilerini döviz API'lerinde önbellekleme ve hata yönetimi en iyi uygulamalar yazısında ayrıntılı ele alıyoruz.

İkincisi, resiprokal aldığınızda alış ve satış yer değiştirir. GBP/USD'nin alışı 1,2618, satışı 1,2622 ise USD/GBP'nin alışı 1/1,2622 = 0,7923, satışı 1/1,2618 = 0,7925 olur. Bir paritenin alışı diğerinin satışının resiprokalidir, alışın değil.

Çapraz Kurlarda Alış-Satış Spread'i

İki temel pariteden bir çapraz kur kurarken spread'ler birikir.

Diyelim ki:

  • EUR/USD'nin alışı 1,0848, satışı 1,0852 (4 pip spread)
  • USD/JPY'nin alışı 152,27, satışı 152,33 (6 pip spread)

İma edilen EUR/JPY çaprazı:

Bid = 1.0848 × 152.27 = 165.183
Ask = 1.0852 × 152.33 = 165.309

Bu çapraz üzerinde 12,6 pip spread demektir — kaynak paritelerin her ikisinden de geniş. Pratikte doğrudan kote edilen EUR/JPY piyasası, hesaplanan bu spread'den daha dardır çünkü likit çapraz pariteler kendi piyasa yapıcılarına sahiptir.

Geliştiriciler için sonuç: iki USD paritesinden hesaplanan orta piyasa çapraz kurları, gerçek doğrudan piyasanın tahminleridir. Bir ödeme sayfasında fiyat göstermek için yeterli, analiz için iyidir, ancak bankanızın veya brokerınızın size gerçekten gerçekleştireceği fiyat değildir. Orta piyasa kuru ile dealer kuru farkı için orta piyasa kuru rehberimize bakın.

Finexly API ile Çapraz Kurları Hesaplama

Çapraz kurları elle hesaplamanız genelde gerekmez. Finexly API, herhangi bir baz ve hedef para birimi listesini kabul eder ve çaprazı tutarlı bir hassasiyetle dahili olarak servis eder. Dört yaygın yığında nasıl kullanılacağı şöyledir.

cURL

curl "https://api.finexly.com/v1/latest?base=BRL&symbols=INR,PHP,NGN" \
  -H "Authorization: Bearer YOUR_API_KEY"

Yanıt:

{
  "base": "BRL",
  "date": "2026-05-09",
  "rates": {
    "INR": 16.561,
    "PHP": 11.272,
    "NGN": 312.45
  }
}

JavaScript (Node 20+, Fetch)

async function getCrossRates(base, targets) {
  const url = `https://api.finexly.com/v1/latest?base=${base}&symbols=${targets.join(",")}`;
  const res = await fetch(url, {
    headers: { Authorization: `Bearer ${process.env.FINEXLY_API_KEY}` }
  });
  if (!res.ok) throw new Error(`Finexly API error: ${res.status}`);
  return res.json();
}

const data = await getCrossRates("BRL", ["INR", "PHP", "NGN"]);
console.log(`1 BRL = ${data.rates.INR} INR`);

Python

import os
import requests

def get_cross_rates(base, targets):
    url = "https://api.finexly.com/v1/latest"
    params = {"base": base, "symbols": ",".join(targets)}
    headers = {"Authorization": f"Bearer {os.environ['FINEXLY_API_KEY']}"}
    response = requests.get(url, params=params, headers=headers, timeout=10)
    response.raise_for_status()
    return response.json()

data = get_cross_rates("BRL", ["INR", "PHP", "NGN"])
print(f"1 BRL = {data['rates']['INR']} INR")

PHP

<?php
function getCrossRates(string $base, array $targets): array {
    $symbols = implode(',', $targets);
    $url = "https://api.finexly.com/v1/latest?base={$base}&symbols={$symbols}";
    $ch = curl_init($url);
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('FINEXLY_API_KEY')],
        CURLOPT_TIMEOUT => 10,
    ]);
    $body = curl_exec($ch);
    if (curl_errno($ch)) throw new RuntimeException(curl_error($ch));
    curl_close($ch);
    return json_decode($body, true);
}

$data = getCrossRates('BRL', ['INR', 'PHP', 'NGN']);
echo "1 BRL = {$data['rates']['INR']} INR\n";

Dört örneğin tamamında API çapraz kur matematiğini sizin için yapar ve hassas orta piyasa değerleri döndürür. Bazı 170+ desteklenen para biriminden herhangi birine değiştirebilir, tek bir çağrıda istediğiniz sayıda hedef sorabilirsiniz. Daha fazla dile özel desen için döviz API Python eğitimimize, Node.js entegrasyon rehberimize ve PHP rehberimize göz atın.

Çapraz Kurları Kendiniz Ne Zaman Hesaplamalısınız

İyi bir API'niz olsa bile, çapraz kurları getirmek yerine kendi verileriniz üzerinde hesaplayacağınız üç senaryo vardır:

Geçmiş stratejilerin backtest'i. Eğer kendi sunucularınızda yıllarca EUR/USD ve USD/JPY tick verisi varsa, EUR/JPY'yi yerel olarak hesaplamak harici bir API'yi milyonlarca kez vurmaktan kurtarır. Verileri başlatmak için tarihsel kur uç noktalarını kullanın ve sonra çaprazları backtest motorunuzda türetin.

Gecikmeye duyarlı uygulamalar. Algoritmik trading sistemleri çoğu zaman alttaki USD paritelerinden çaprazları bellekte önceden hesaplar çünkü bir ağ gidiş-dönüşünü kazanmak önemlidir. Karşılığında senkronizasyon ve tazelik sorumluluğunu üstlenirsiniz.

Özel karma kurlar. Bazı platformlar birden çok kaynağı karıştıran ya da bir markup uygulayan dahili kurlar kote eder. Çapraz hesaplamayı içeride yapmak, kuru müşteriye göstermeden önce iş mantığınızı uygulamanıza izin verir.

Eğer kullanım senaryonuz bunlardan biri değilse — ödeme sayfası, faturalama aracı, dahili dashboard — çaprazı doğrudan API'nin sunmasına izin verin. Daha doğru, daha kolay bakım yapılabilir ve uygulanması daha hızlı olacaktır.

Çapraz Kur Hesaplamasında Sık Görülen Tuzaklar

Geliştirici kodu incelerken en sık karşılaştığımız hatalar şunlardır.

Yanlış pariteyi tersine çevirmek. İki kaynak parite zıt yönde kote edildiğinde (biri USD baz, diğeri USD kote) çarpmak yerine ters çevirip bölmek gerekirken kolayca yanlış yapılır. Kurları her zaman kesir olarak yazın ve ortak para biriminin gerçekten sadeleştiğini doğrulayın.

Çok erken yuvarlamak. Yaygın bug: her kaynak kuru dört ondalığa yuvarlayın, sonra çarpın. Bileşik yuvarlama %0,01 – %0,1 arası hatalar üretebilir. Finansal hesaplamalarda tam hassasiyeti koruyun ve yalnızca görüntüleme anında yuvarlayın.

Eskimiş kurları kullanmak. İki kaynak kurunuz 30 saniye arayla alındıysa bunlardan kurulan çapraz iç tutarsızdır. Her ikisini tek bir API çağrısında alın (Finexly API'sinde ?symbols=A,B,C bunu yapar) ki aynı zaman damgasını taşısınlar.

Hafta içi ve hafta sonu verisini karıştırmak. Forex piyasaları hafta sonu kapalıdır. Zamanlanmış göreviniz EUR/USD'yi cuma 17:01 EST'de, USD/JPY'yi cuma 16:59 EST'de çektiyse canlı ve donmuş veriyi karıştırabilirsiniz. Tüm kur çekme işlemlerini tek bir piyasa zaman damgası karşısında standartlaştırın. Bunu forex piyasa saatleri rehberimizde ayrıntılı ele alıyoruz.

İşlemsel kullanım için spread'i göz ardı etmek. Orta piyasa kaynaklarından hesaplanan çapraz kurlar görüntüleme için iyidir, ancak gerçek para hareket ediyorsa işlem yönüne göre alış ya da satışa ihtiyacınız vardır. Mid'e güvenmek yerine spread modellemesini kodunuza açıkça yerleştirin.

Sıkça Sorulan Sorular

Basit bir dille çapraz kur nedir?

İki para birimi arasındaki döviz kurudur ve her birinin üçüncü bir ortak para birimine — genellikle Amerikan dolarına — karşı kuru kullanılarak hesaplanır. Örneğin EUR/JPY kuru, EUR/USD ve USD/JPY'den türetilir.

EUR/JPY ve GBP/JPY çapraz kur sayılır mı?

Teknik olarak evet. Amerikan doları içermedikleri için katı tanım gereği çaprazdırlar. Ancak her iki parite de doğrudan o kadar yoğun işlem görür ki kendi kote edilen piyasalarına sahiptir ve pratikte ana pariteler gibi davranırlar.

Çapraz kurlar neden önemlidir?

Çapraz kurlar, aralarında likit doğrudan piyasası olmayan para birimlerini — yani dünyadaki paritelerin büyük çoğunluğunu — fiyatlandırmayı ve işlem görmesini mümkün kılar. Sınır ötesi ödemeler, çok para birimli ticaret ve küresel finansal analiz için vazgeçilmezdirler.

Amerikan dolarını köprü olarak kullanmadan bir çapraz kur hesaplayabilir miyim?

Evet. Herhangi bir ortak para birimi köprü olarak çalışır. EUR Avrupa odaklı hesaplamalarda, JPY ise bazı Asya piyasalarında zaman zaman kullanılır. USD varsayılan seçimdir çünkü ona karşı kote edilen parite sayısı daha fazladır ve bu daha yüksek veri kalitesi anlamına gelir.

Hesaplanmış çapraz kurlar doğrudan piyasa kotasyonlarına kıyasla ne kadar doğrudur?

EUR/JPY veya GBP/CHF gibi likit çaprazlar için arbitraj sayesinde hesaplanan ve doğrudan kurlar neredeyse aynıdır. NGN/PHP gibi likit olmayan çaprazlarda hesaplanmış kur, tek mevcut referans noktasıdır — karşılaştırılacak ayrı bir doğrudan piyasa yoktur.

Finexly çapraz kurları otomatik olarak hesaplıyor mu?

Evet. Herhangi bir baz ve herhangi bir hedef para birimi listesi sorarsınız ve API tutarlı orta piyasa çapraz kurlarını sunar. Hiçbir şeyi kendinizin hesaplamasına ya da tersine çevirmesine gerek yoktur.

Finexly ile Başlayın

Uygulamanızda gerçek zamanlı çapraz kurları kullanmaya hazır mısınız? Ücretsiz Finexly API anahtarınızı alın — kredi kartı gerekmez. Ücretsiz planda ayda 1.000 istek hakkı sunarız ve trafiğiniz büyüdükçe fiyatlandırma planlarımızla ölçeklenebilirsiniz. API 170'in üzerinde para birimini destekler ve herhangi bir parite için çapraz kurları sorunsuz hesaplar; böylece FX matematiği yerine ürününüze odaklanabilirsiniz.

Vlado Grigirov

Senior Currency Markets Analyst & Financial Strategist

Vlado Grigirov is a senior currency markets analyst and financial strategist with over 14 years of experience in foreign exchange markets, cross-border finance, and currency risk management. He has wo...

View full profile →