حاسبة سعر الصرف المتقاطع عبر عملة مشتركة
يربط سعر الصرف المتقاطع بين عملتين مسعّرتين كلتاهما مقابل عملة ثالثة واحدة. أدخلوا رمزي عملة الأساس وعملة التسعير، وحددوا العملة المشتركة، ثم اذكروا عدد وحداتها التي تساوي وحدة واحدة من كل عملة.
شغّل الأداة مجانًا
تقسم الحاسبة السعرين المتوافقين لإعطاء عدد وحدات عملة التسعير لكل وحدة من عملة الأساس، وتعرض السعر العكسي أيضًا. وهي تتحقق من رموز العملات وترفض الأسعار الصفرية قبل القسمة. تبلغ تكلفة الاستخدام الآلي عبر API $0.002 لكل طلب.
اقرؤوا سعري الإدخال بالاتجاه نفسه
يبدأ الحساب المتقاطع الموثوق بتحديد اتجاه التسعير. تتوقع هذه الحاسبة أن يتبع السعران القاعدة نفسها: عدد وحدات العملة المشتركة لكل وحدة واحدة من العملة المحددة. فمثلًا، إذا كانت عملة الأساس EUR وعملة التسعير GBP والعملة المشتركة USD، فإن base_rate يعني USD لكل EUR، ويعني quote_rate مقدار USD لكل GBP. لا تدخلوا أحد السعرين بصيغة USD لكل EUR والآخر بصيغة GBP لكل USD، لأنهما يسيران في اتجاهين متعاكسين ولا يمكن قسمتهما مباشرة. تُحوّل رموز العملات إلى أحرف كبيرة، ويجب أن يتكون كل رمز من ثلاثة أحرف تمامًا. كذلك يجب أن تختلف العملة المشتركة عن العملتين المتقاطعتين، وأن تختلف عملة الأساس عن عملة التسعير. وبذلك يعرض cross_rate دائمًا وحدات عملة التسعير لكل وحدة من عملة الأساس، بينما يعرض inverse_rate الاتجاه المعاكس. قبل الحساب، اكتبوا وحدة مختصرة بجانب كل سعر مصدر؛ فتطابق المقامين يوضح توافق السعرين.
افهموا القسمة والسعر العكسي
عندما تكون العملة المشتركة في بسط السعرين، تُختصر وحدتها أثناء القسمة. تقسم الحاسبة base_rate على quote_rate. إذا كان 1 EUR يساوي 1.08 USD وكان 1 GBP يساوي 1.26 USD، فإن قسمة 1.08 USD لكل EUR على 1.26 USD لكل GBP تختصر USD وتترك GBP لكل EUR. ويُحسب السعر العكسي بصورة مستقلة بقسمة quote_rate على base_rate، فتكون النتيجة EUR لكل GBP. يساعد عرض الاتجاهين على تجنب خطأ تشغيلي شائع، وهو تطبيق سعر صحيح بعكس اتجاهه في فاتورة أو دفتر أستاذ أو جدول بيانات. تسجل صيغة الناتج ترتيب العملات كي يحافظ الرقم على معناه عند نسخه. يقتصر التقريب على تمثيل ثابت للأرقام المعنوية بما يضمن اتساق مخرجات JSON، ولا تفرض الحاسبة دقة عرض خاصة بسوق معين. ولأغراض التسوية أو المحاسبة، طبقوا سياسة المنازل العشرية والتقريب التي تعتمدها مؤسستكم بعد الحصول على السعر المتقاطع الرياضي.
تحققوا من بيانات المصدر قبل استخدام النتيجة
لا يكون السعر المتقاطع حديثًا وموثوقًا إلا بقدر حداثة سعري المصدر وموثوقيتهما. لا تجري هذه القدرة أي طلب شبكي، ولا تدعي أن القيم المدخلة أسعار سوق مباشرة. عند استخدام النتيجة في إجراء مالي، اعتمدوا أسعارًا من المزوّد نفسه، وفي وقت التقييم نفسه، ووفق اصطلاح السوق وفئة السعر نفسيهما. قد يؤدي خلط سعر بيع بالتجزئة مع سعر متوسط بين البنوك إلى نتيجة صحيحة رياضيًا لكنها مضللة تجاريًا. يجب أن يكون السعران عددين محدودين أكبر من الصفر. يولد الصفر خطأ إدخال محددًا، كما تُرفض القيم السالبة أو غير الرقمية. الحساب حتمي، ولذلك ينتج عن إدخال JSON نفسه دائمًا مخرج JSON نفسه. إذا كانت قابلية التدقيق مهمة، فاحفظوا السعرين الأصليين ومصدرهما وتوقيتهما بجانب النتيجة. وتذكروا أن السعر النظري قد يختلف عن عرض قابل للتنفيذ بسبب الفروق والرسوم والسيولة والحد الأدنى للصفقة والتقريب، وهي عوامل تقع خارج نطاق هذه الحاسبة.
حالات الاستخدام
إنشاء سعر متقاطع في جدول بيانات
تحققوا من السعر بين عملتين عندما يحتوي الجدول مسبقًا على سعر متوافق لكل منهما مقابل عملة مشتركة واحدة.
مطابقة السجلات متعددة العملات
استخرجوا معامل تحويل متسقًا لمقارنة القيم الدفترية المأخوذة من جدول أسعار واحد لعملة التقارير.
التحقق من تحويل معروض
قارنوا سعر المورّد أو النظام المتقاطع بالسعر الرياضي المستنتج من سعري العملة المشتركة قبل احتساب الفروق والرسوم.
الأسئلة الشائعة
ما تكلفة طلب API؟
تبلغ تكلفة كل طلب API $0.002. ويتاح الحساب أيضًا في المتصفح ضمن الاستخدام المجاني المدعوم.
ما الاتجاه المطلوب لكتابة السعرين؟
يجب أن يعبّر كلاهما عن وحدات العملة المشتركة لكل وحدة من عملة الأساس أو عملة التسعير المقابلة.
لماذا تُرفض الأسعار الصفرية؟
لا يحمل سعر الصرف الصفري معنى في هذا الحساب، كما أنه يتطلب القسمة على صفر في أحد الاتجاهين.
هل تجلب الأداة أسعار الصرف المباشرة؟
لا. تستخدم الأداة الأسعار التي تقدمونها فقط، ولا ترسل أي طلبات عبر الشبكة.
ما معنى cross_rate؟
هو عدد وحدات عملة التسعير التي تساوي وحدة واحدة من عملة الأساس.
هل تشمل النتيجة الرسوم أو فروق العرض والطلب؟
لا. النتيجة هي السعر المتقاطع الحسابي المستنتج من المدخلات؛ وتظل رسوم المزوّد والفروق وقواعد التسوية منفصلة.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/econ/cross-exchange-rate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"base_currency":"EUR","quote_currency":"GBP","common_currency":"USD","base_rate":1.08,"quote_rate":1.26}'const res = await fetch("https://api.kit.forhosting.com/econ/cross-exchange-rate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"base_currency": "EUR",
"quote_currency": "GBP",
"common_currency": "USD",
"base_rate": 1.08,
"quote_rate": 1.26
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/econ/cross-exchange-rate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"base_currency": "EUR",
"quote_currency": "GBP",
"common_currency": "USD",
"base_rate": 1.08,
"quote_rate": 1.26
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/econ/cross-exchange-rate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"base_currency":"EUR","quote_currency":"GBP","common_currency":"USD","base_rate":1.08,"quote_rate":1.26}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"base_currency":"EUR","quote_currency":"GBP","common_currency":"USD","base_rate":1.08,"quote_rate":1.26}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/econ/cross-exchange-rate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"base_currency": "EUR",
"quote_currency": "GBP",
"common_currency": "USD",
"base_rate": 1.08,
"quote_rate": 1.26
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "econ.cross_exchange_rate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |