حساب cross rate انطلاقًا من زوجي عملات

في 24 أكتوبر 2026، وعندما كان USD/EUR عند 0.89342 وUSD/IDR عند 18,107.8، بلغ سعر الصرف المتقاطع EUR/IDR 20,267.96. سعر الصرف المتقاطع بين عملتين مسعّرتين مقابل الدولار هو سعر الثانية مقسومًا على سعر الأولى.

نفّذ ذلك باستخدام واجهة API

في التحويل من EUR إلى IDR عبر الدولار، تكون EUR عملة المصدر وIDR عملة الهدف. اطلب السعرين بالدولار معًا باستخدام GET /v1/fx/rates/USD?currencies=EUR,IDR. تعطيك الاستجابة الأسعار اللازمة للقسمة في طلب واحد.

  1. اضبط مفتاح API الخاص بك احصل على مفتاح API مجاني وضعه في متغير البيئة NARWHAL_API_KEY. يقرأ سكربت Python هذا المتغير ويرسل المفتاح في ترويسة Authorization على شكل رمز Bearer. يستخدم REST وMCP المفتاح نفسه.
  2. جلب الأسعار والقسمة يقرأ السكربت سعري EUR وIDR مع USD أساسًا مشتركًا لهما. ويقسم سعر IDR على سعر EUR، ثم يطلب EUR/IDR مباشرة للمقارنة. النتيجة الأولى المطبوعة هي السعر المتقاطع المحسوب، والثانية هي السعر المباشر.
    Python، من EUR إلى IDR انطلاقًا من سعرين بالدولار
    import os
    import requests
    
    H = {"Authorization": f"Bearer {os.environ['NARWHAL_API_KEY']}"}
    rates = {
        r["currency"]: float(r["rate"])
        for r in requests.get(
            "https://api.narwhalapi.com/v1/fx/rates/USD",
            params={"currencies": "EUR,IDR"},
            headers=H,
            timeout=10,
        ).json()["rates"]
    }
    
    # USD/EUR = 0.89342 means 1 USD buys 0.89342 EUR;
    # USD/IDR = 18107.8 means 1 USD buys 18,107.8 IDR.
    eur_idr = rates["IDR"] / rates["EUR"]
    print(f"EUR/IDR = {rates['IDR']} / {rates['EUR']} = {eur_idr:.2f}")
    
    direct = float(
        requests.get(
            "https://api.narwhalapi.com/v1/fx/rates/EUR",
            params={"currencies": "IDR"},
            headers=H,
            timeout=10,
        ).json()["rates"][0]["rate"]
    )
    print(f"direct EUR/IDR = {direct}")
  3. طبّق السعر على مبلغك اضرب المبلغ بـ EUR في سعر EUR/IDR المحسوب لتحصل على المبلغ بـ IDR. أبقِ الاتجاه مرافقًا للنتيجة: يخبرك سعر EUR/IDR بعدد IDR الذي يشتريه كل EUR. ويستخدم التحويل من IDR إلى EUR مقلوب السعر.

نفّذ ذلك في جدول بيانات أو دون شيفرة

ضع سعر USD/EUR في الخلية B1 وسعر USD/IDR في الخلية B2، ثم أدخل الصيغة في خلية أخرى. أبقِ السعرين المُدخلين في التاريخ نفسه. موضع الخلايا مهم لأن الصيغة تقسم سعر عملة الهدف بالدولار على سعر عملة المصدر بالدولار.

سعر الصرف المتقاطع من EUR إلى IDR
=B2/B1

سمِّ خلايا الإدخال بأسماء الزوجين الكاملة بما فيها USD ليبقى الأساس المشترك ظاهرًا. وسمِّ النتيجة EUR/IDR. إذا بدّلت محتوى خليتي الإدخال مع ترك الصيغة كما هي، تصبح النتيجة السعر المقلوب، أي مقدار EUR الذي تحصل عليه مقابل IDR.

للأزواج الشائعة، استخدم صفحات العملات في صفحة أسعار الصرف. تعرض هذه الصفحات الأزواج الشائعة. وطريقة الجدول مفيدة عندما يكون لديك السعران بالدولار وتريد حساب السعر المتقاطع من هذين المدخلين تحديدًا.

متى تستخدم كل خيار

الحالةالخيار الأنسبالسبب
الزوج موجود في APIاطلبه مباشرةاقرأ الزوج دون حساب سعر متقاطع من أسعار مقرّبة
لا يعرض API هذا الزوج، أو تحتاج إلى سعر متقاطع تاريخياقسم الأسعار بالدولار من التاريخ نفسهيمنحك الأساس المشترك بالدولار سعري المصدر والهدف اللازمين للحساب
تحتاج إلى أزواج كثيرةاجلب الأسعار بالدولار مرة واحدة واحسب الأسعار المتقاطعةأعد استخدام الأسعار بالدولار لكل تركيبة من المصدر والهدف

عند حساب أسعار متقاطعة كثيرة من مجموعة أسعار بالدولار، أبقِ تسميتي المصدر والهدف مع كل صيغة. يحدد المصدر أي سعر يوضع في المقام، ويحدد الهدف أي سعر يوضع في البسط. ويمكن أن يكون السعر نفسه بالدولار بسطًا في تحويل ومقامًا في تحويل آخر. وفي السعر المتقاطع التاريخي، أبقِ التاريخ مع أسعار الإدخال والنتيجة. وإذا كان الزوج متاحًا مباشرة وتحتاج إليه وحده، فاطلبه بجعل العملة التي تحوّل منها هي الأساس.

لماذا يختلف السعر المتقاطع الذي حسبته عن السعر المباشر؟

قد يجعل تقريب أسعار الإدخال والاختلاف في الطوابع الزمنية السعر المتقاطع المحسوب يختلف عن السعر المباشر. يعتمد حساب السعر المتقاطع على الأسعار بالدولار التي تزوّدها، لذلك تنتقل دقتها إلى النتيجة. أما قراءة الزوج مباشرة فتعطيك السعر المباشر لا قيمة مشتقة من هذه المدخلات.

في 23 أكتوبر 2026، كان سعر EUR/IDR المتقاطع المحسوب 20,267.96 والسعر المباشر لـ EUR/IDR هو 20,268.1، بفارق 0.14. ويعود هذا الفارق إلى تقريب الأسعار بالدولار. ولا يلزم أن تطابق القيمة المباشرة حسابًا أُجري على مدخلات مقرّبة.

في أي اتجاه أقسم الأسعار؟

اقسم سعر الهدف على سعر المصدر عندما يكون للزوجين عملة الأساس نفسها. في حالة EUR/IDR عبر USD، يعني ذلك قسمة IDR لكل USD على EUR لكل USD. تُختصر وحدة USD المشتركة، وتبقى الوحدة IDR لكل EUR.

في 23 أكتوبر 2026، كان USD/EUR عند 0.89342، فاشترى EUR أكثر من USD: 1 EUR = 1/0.89342 = 1.119 USD. لذلك اشترى EUR من IDR أكثر مما اشتراه USD في ذلك التاريخ. وقسمة سعر EUR على سعر IDR تعكس الوحدات وتعطي EUR لكل IDR.

هل أحتاج إلى التاريخ نفسه للسعرين؟

نعم، استخدم أسعارًا من التاريخ نفسه لأن خلط التواريخ يضيف تشويشًا إلى السعر المتقاطع. وفي الحساب التاريخي، اختر التاريخ للزوجين بالدولار قبل القسمة. وتربط النتيجة بين عملتي المصدر والهدف من خلال سعريهما بالدولار في ذلك التاريخ.

إذا كان لديك سعر بالدولار لعملة المصدر، فاقرنه بسعر عملة الهدف بالدولار من التاريخ نفسه. فالسعر من تاريخ مختلف يغيّر مدخلات الحساب. وعند توحيد التواريخ يبقى الطابع الزمني والتقريب المذكوران أعلاه سببين منفصلين لاختلاف السعر المتقاطع عن السعر المباشر.

مثال محلول: من EUR إلى IDR، 23 أكتوبر 2026

في 23 أكتوبر 2026، كانت الأسعار بالدولار 0.89342 EUR و18,107.8 IDR. ابدأ بسعر IDR بسطًا وسعر EUR مقامًا. اقسمهما لتعبّر عن النتيجة بـ IDR لكل EUR.

الحسابالنتيجة
USD/EUR في 23 أكتوبر 20260.89342
USD/IDR في 23 أكتوبر 202618,107.8
EUR/IDR في 23 أكتوبر 2026: 18,107.8 / 0.8934220,267.96
500 EUR بالسعر المتقاطع في 23 أكتوبر 2026: 500 × 20,267.9610,133,980 IDR

في مثال 23 أكتوبر 2026، اضرب 500 EUR في السعر المتقاطع المعروض 20,267.96 لتحصل على 10,133,980 IDR. يستخدم هذا المبلغ السعر المتقاطع المقرّب الظاهر في الحساب. وكان السعر المباشر لـ EUR/IDR في ذلك التاريخ 20,268.1، فاستخدامه يعني سعرًا مختلفًا.

نُشر في .

الخطوات التالية