تتطلب مقارنة رموز البلدان التسعة المستخدمة هنا تسعة طلبات لأسعار الفائدة الأساسية، ويُحتسب كل طلب بوحدة استخدام واحدة. لمقارنة أسعار الفائدة الأساسية بين البلدان، احتفظ بالأداة والعملة وتاريخ المصدر إلى جانب كل قيمة.
نفّذ ذلك باستخدام واجهة API
تتوفر أسعار الفائدة الأساسية آنيًا في جميع الخطط، بما فيها Free. يُرجع كل طلب أحدث قراءة من المصدر لبلد واحد بتاريخ اليوم أو قبله حسب توقيت UTC. تستخدم المقارنة USA وCAN وAUS وSWE وNOR وBRA وCZE وMYS وDEU. يمثل DEU سعر الفائدة على تسهيلات الإيداع لدى البنك المركزي الأوروبي (ECB).
- اضبط مفتاح API الخاص بك اضبط متغير البيئة
NARWHAL_API_KEYفي الصدفة باستخدامexport NARWHAL_API_KEY="your_api_key". ثبّت تبعيات Python باستخدامpython -m pip install requests pandas. يقرأ السكربت المفتاح من البيئة ويرسله في ترويسة Authorization. - اطلب أحدث سعر لكل بلد استخدم
requests.Sessionواحدة ومرّ على رموز البلدان المكتوبة بالأحرف الكبيرة في حلقة. استدعِ/v1/economics/{country}/central-bank/policy-rateمرة واحدة لكل رمز. احتفظ بحقول الاستجابة معًا حتى يحتفظ كل سعر بعملته وأداته وتاريخه. - احسب قيمة واحدة للمقارنة لاستجابة السعر ذي القيمة الواحدة، اقرأ
rate. ولاستجابة النطاق، احسب(lower_bound + upper_bound) / 2باستخدام الحساب العشري. نقطة المنتصف هذه من حسابك أنت: تعيد Narwhal API الحدود المنشورة ولا تحسب نقطة منتصف مطلقًا. القيم سلاسل نصية لأعداد عشرية بالنسبة المئوية سنويًا. - أنشئ الجدول ورتّبه أنشئ DataFrame باستخدام pandas يتضمن
countryوcurrencyوinstrumentوrateوdate. خذ التاريخ منeffective_onأوobserved_on؛ تحتوي كل استجابة على أحدهما فقط. رتّب بحسب السعر المحسوب. يحافظ الاحتفاظ بقيم Decimal على دقة السلاسل النصية المقدمة. - شغّل السكربت الكامل احفظ هذا باسم
compare_rates.pyوشغّلpython compare_rates.pyبعد إتاحة الوصول العام. يطبع الأسعار من الأدنى إلى الأعلى. توقف أخطاء HTTP السكربت عبرraise_for_status()، لذلك لا يختفي بلد غير متاح من المقارنة دون تنبيه.import os from decimal import Decimal import pandas as pd import requests api_key = os.environ["NARWHAL_API_KEY"] base_url = "https://api.narwhalapi.com" countries = ["USA", "CAN", "AUS", "SWE", "NOR", "BRA", "CZE", "MYS", "DEU"] rows = [] with requests.Session() as session: session.headers.update({"Authorization": f"Bearer {api_key}"}) for country in countries: response = session.get( f"{base_url}/v1/economics/{country}/central-bank/policy-rate", timeout=10, ) response.raise_for_status() observation = response.json() if observation["rate_type"] == "point": rate = Decimal(observation["rate"]) elif observation["rate_type"] == "range": rate = ( Decimal(observation["lower_bound"]) + Decimal(observation["upper_bound"]) ) / Decimal("2") else: raise ValueError(f"Unexpected rate_type for {country}") date = ( observation["effective_on"] if "effective_on" in observation else observation["observed_on"] ) rows.append({ "country": observation["country"], "currency": observation["currency"], "instrument": observation["instrument"], "rate": rate, "date": date, }) comparison = pd.DataFrame( rows, columns=["country", "currency", "instrument", "rate", "date"], ).sort_values("rate") print(comparison.to_string(index=False))
ما الذي يقيسه سعر كل بلد؟
لا تصلح هذه الأسعار إلا لمقارنة تقريبية. فالسعر المستهدف لليلة واحدة وسعر إعادة الشراء وسعر الإيداع تصف أدوات مختلفة. ويرتبط كل منها أيضًا بعملة لها معدل تضخم خاص بها. ولا يحدد الترتيب العددي وحده البلد الذي يتبع سياسة نقدية أشد تقييدًا.
| رمز البلد | العملة | أداة سعر الفائدة الرئيسي |
|---|---|---|
| USA | USD | النطاق المستهدف لسعر الفائدة على الأموال الفيدرالية؛ يتضمن السجل المبكر سعرًا مستهدفًا ذا قيمة واحدة |
| CAN | CAD | السعر المستهدف للفائدة لليلة واحدة |
| AUS | AUD | السعر النقدي المستهدف؛ يتضمن السجل المبكر نطاقات مستهدفة |
| SWE | SEK | سعر الفائدة الرئيسي، الذي كان يسمى سعر إعادة الشراء حتى 8 يونيو 2022 |
| NOR | NOK | سعر فائدة الودائع تحت الطلب |
| BRA | BRL | السعر المستهدف لسعر الفائدة سيليك |
| CZE | CZK | سعر فائدة إعادة الشراء لأسبوعين |
| MYS | MYR | سعر الفائدة الأساسي لليلة واحدة |
| DEU | EUR | سعر فائدة تسهيلات الإيداع لدى ECB |
يتضمن المثال الأمريكي المحفوظ نطاقًا مستهدفًا لسعر الفائدة على الأموال الفيدرالية من 3.50 إلى 3.75 بالمئة، ساريًا منذ 11 ديسمبر 2025. ونقطة منتصفه المحسوبة هي (3.50 + 3.75) / 2 = 3.625 بالمئة. هذا الرقم قيمة للمقارنة مشتقة من المثال، وليس سعرًا مستهدفًا منشورًا ذا قيمة واحدة أو بيانًا عن سعر اليوم.
احتفظ بالحدود الأصلية إذا احتفظت بالمقارنة. يؤدي استخدام نقطة منتصف واحدة إلى حذف عرض النطاق المستهدف من الجدول المطبوع. وبالنسبة إلى البرازيل، استخدم سعر الفائدة المستهدف Selic المُعاد للرمز BRA.
إشعارات المصدر لهذه الملاحظات هي:
- Source: Board of Governors of the Federal Reserve System
- المصدر: بنك كندا. هذه المعلومات متاحة مجانًا على موقع بنك كندا: https://www.bankofcanada.ca. وحّدت Narwhal التنسيق.
- Source: Reserve Bank of Australia 2026. This information is available free of charge on the RBA website: https://www.rba.gov.au. No endorsement is implied.
- Source: Sveriges Riksbank, with the date of the data.
- Source: Norges Bank
- Source: Banco Central do Brasil (SGS 432), Open Data Commons Open Database License (ODbL).
- Source: the CNB
- Source: Bank Negara Malaysia. Data and information are subject to Terms of Use for BNM Datasets. https://www.bnm.gov.my/terms-of-use-bnm-datasets
- المصدر: البنك المركزي الأوروبي (ECB). هذه المعلومات متاحة مجانًا على موقع ECB: https://www.ecb.europa.eu. تقتصر تعديلات Narwhal على التنسيق فقط.
كيفية مقارنة أسعار الفائدة الحقيقية
لحساب سعر فائدة حقيقي تقريبي بسيط، اطرح التضخم من سعر الفائدة الرئيسي الاسمي: real rate ≈ policy rate − inflation. استخدم النسب المئوية في طرفي عملية الطرح. وللنطاق المستهدف، وضّح أن القيمة الاسمية المدخلة هي نقطة المنتصف التي حسبتها.
بالنسبة إلى البلدان التي لها مسار للتضخم، اطلب /v1/economics/{country}/inflation واقرأ year_over_year. يشمل ذلك USA وCAN وAUS وDEU. تعني 404 عدم وجود بيانات؛ اترك نتيجة سعر الفائدة الحقيقي لذلك البلد غائبة بدلًا من افتراض تضخم صفري.
احتفظ بفترة التضخم إلى جانب تاريخ سعر الفائدة الرئيسي، لأن الملاحظات قد تشير إلى أوقات مختلفة. يشرح حساب سعر الفائدة الحقيقي عملية الطرح. وتظل الفروق بين أدوات السياسة النقدية الأساسية قائمة حتى بعد التعديل بحسب التضخم.
لماذا تُمثَّل منطقة اليورو بصف واحد؟
يعيد أي رمز مدعوم لدولة عضو في منطقة اليورو سعر فائدة تسهيلات الإيداع نفسه لدى ECB. يؤدي استخدام DEU مرة واحدة إلى تجنب تكرار الأداة نفسها في المقارنة. وبالنسبة إلى الطلبات التاريخية، تبدأ التغطية من تاريخ اعتماد كل دولة عضو لليورو، لذلك قد يختلف السجل المتاح بين رموز الدول الأعضاء.
لماذا يختلف التاريخ بين البلدان؟
effective_on هو تاريخ سريان السعر. وobserved_on هو تاريخ تسجيل المصدر للقيمة. وتنشر المصادر أيضًا ملاحظات بأنماط مختلفة، لذلك ليس بالضرورة أن تحمل استجابات أحدث البيانات التاريخ نفسه. ولا تحل الأسعار ذات تواريخ السريان المستقبلية محل السعر الحالي قبل موعدها.
لإجراء مقارنة تاريخية، أضف القيمة نفسها لـ date=YYYY-MM-DD إلى كل طلب. يعيد كل طلب أحدث ملاحظة من المصدر في ذلك التاريخ أو قبله. لا تُختلق ملاحظات للأيام التي لا توجد فيها ملاحظات من المصدر، لذا احتفظ بكل تاريخ مُعاد.
نُشر في .
الخطوات التالية
- API لأسعار فائدة البنوك المركزية
- أدلة إرشاديةتتبّع تغيرات أسعار فائدة البنوك المركزية
- مرجع APIمرجع API لأسعار الفائدة الأساسية
أنشئ مفتاحًا مجانيًا واستدعِ واجهة API من شيفرتك. احصل على مفتاح API مجاني
