MetaTrader API — مركز المساعدة
ابحث أو تنقّل بين الفئات لإيجاد الأجوبة. لكل سؤال رابط خاص يمكن مشاركته.
ابحث أو تنقّل بين الفئات لإيجاد الأجوبة. لكل سؤال رابط خاص يمكن مشاركته.
MetaTrader API خدمة واجهة REST مُستضافة تتيح لك التعامل برمجيًا مع حسابات التداول على MT4 و MT5 — دون إبقاء منصة MetaTrader مفتوحة على حاسبك.
تربط حساب التداول مرة واحدة، ومن تلك اللحظة يمكنك تنفيذ الصفقات وقراءة بيانات الحساب وأسعار السوق من أي لغة برمجة باستخدام طلبات HTTP القياسية.
للتفاصيل التقنية الكاملة، راجع الوثائق الرسمية.
البدء يستغرق أقل من 30 دقيقة:
POST /v1/seats أو /ConnectEx).راجع الدليل خطوة بخطوة في وثائق المصادقة.
أي لغة قادرة على إرسال طلبات HTTP تعمل مع MetaTrader API. ولأنها واجهة REST عادية عبر HTTPS، يمكنك استخدام Python أو JavaScript/Node.js أو Go أو C# أو Java أو Ruby أو PHP أو أي لغة أخرى.
كما تعمل مع أدوات بلا برمجة مثل Postman و Make (Integromat) و n8n و Zapier، أو أي أداة تستطيع نداء نقطة نهاية HTTP.
نعم. تدعم واجهة API حسابات MetaTrader 4 (MT4) و MetaTrader 5 (MT5). ويمكنك ربط حسابات من المنصّتين وإدارتها في الوقت نفسه.
الفوترة لكل مقعد: يربط كل مقعد حسابًا واحدًا على MT4 أو حسابًا واحدًا على MT5، ويمكنك الجمع بين مقاعد MT4 و MT5 في الاشتراك نفسه.
توفّر المنصّتان نقاط النهاية نفسها، بما في ذلك /PendingOrderHistory و/HistoryDealsByPositionId؛ والفرق الوحيد أن MT4 لا يدعم أوامر الإيقاف المحدد (BuyStopLimit وSellStopLimit). راجع الوثائق للمرجع الكامل لكل منصّة.
لا. هذا هو الغرض الأساسي من الخدمة. تعمل MetaTrader API بالكامل على الخادم. تُدخل بيانات الوسيط مرة واحدة، وتتولّى واجهة API الحفاظ على الاتصال بالوسيط بالنيابة عنك.
لا تحتاج إلى تركيب MetaTrader ولا إبقاء أي تطبيق سطح مكتب قيد التشغيل ولا كتابة أي Expert Advisors بلغة MQL.
استخدم مفتاح API في ترويسة x-api-key، وأرسل معرّف الحساب UUID في معامل الاستعلام id (أو accountId):
curl -X GET "https://api.metatraderapi.net/AccountSummary?id=YOUR_ACCOUNT_UUID" \
-H "x-api-key: YOUR_API_KEY"
تُنشئ مفتاح API من بطاقة الحساب في لوحة التحكم عبر Generate key، ويُعرض مرة واحدة فقط. أما مفتاح الإدارة في الإعدادات فهو لتجهيز الحسابات، وليس لترويسة x-api-key.
يُنشأ مفتاح API لأي حساب من بطاقة ذلك الحساب في لوحة التحكم على app.metatraderapi.net: انقر على Generate key. يُعرض مرة واحدة فقط، فاحفظه فورًا. كما يعيد /ConnectEx وPOST /v1/seats مفتاحًا جديدًا للحساب الذي يربطانه. يحتوي تبويب الإعدادات على مفتاح الإدارة، وهو مخصّص للتجهيز (إنشاء المقاعد وحذفها) وليس لطلبات التداول.
الممارسة المفضّلة: احفظه في متغيّر بيئة (مثل MTAPI_KEY) وأدخِله وقت التشغيل.
يمكنك ربط الحسابات بطريقتين:
سجّل الدخول على app.metatraderapi.net، وانتقل إلى قسم الحسابات، وأضف بيانات MT4/MT5 (رقم الدخول وكلمة المرور واسم خادم الوسيط). بعد الربط ستحصل على معرّف UUID فريد لذلك الحساب.
من الخادم الخلفي، استخدم POST /v1/seats مع جسم JSON ومفتاح الإدارة. أو استدعِ /ConnectEx?user=&password=&server=&platform=MT5&wait=60 بمفتاح الإدارة أو بمفتاح API ليس للقراءة فقط ولا مقيّدًا بحساب واحد. كلاهما يعيد id الحساب ومفتاح apiKey جديدًا له. المعاملات الدقيقة وصيغة الاستجابة موجودة في وثائق واجهة API.
BrokerName-Live أو BrokerName-Demo.استخدم /CheckConnect?id=. يجيب بـ true أو false: هل الحساب متصل بوسيطه الآن. تعيد الخدمة الاتصالات المنقطعة تلقائيًا. يعرض /ConnectState?id= الحالة مع statusReason، ويفرض /Reconnect?id= إعادة الاتصال.
لتفاصيل صيغة الطلب وقيم الاستجابة، راجع الوثائق.
استخدم /Disconnect?id= (أو DELETE /v1/seats/{id} بمفتاح الإدارة) لفصل حساب تداول مربوط وحذفه. ويمكنك سرد جميع الحسابات المربوطة حاليًا عبر /ConnectState دون id (أو عبر GET /v1/seats).
يؤدي الفصل إلى تحرير مقعد الحساب. ويبقى المقعد مدفوعًا حتى نهاية شهر الفوترة، ويستخدمه الحساب التالي الذي تربطه دون تكلفة إضافية.
راجع وثائق واجهة API لمعاملات الطلب.
بعدد المقاعد التي لديك. الفوترة لكل مقعد: المقعد الواحد = حساب مربوط واحد في الوقت نفسه. أضف المقاعد متى احتجت إليها (14 دولارًا للمقعد شهريًا للمقاعد من 1 إلى 4، و13 دولارًا للمقاعد من 5 إلى 19، و12 دولارًا بدءًا من المقعد العشرين، تُدفع مقدمًا).
يمكن لكل عميل امتلاك ما يصل إلى 50 مقعدًا؛ والمزيد عند الطلب — تواصل مع الدعم.
تغطّي واجهة API دورة التداول كاملة:
/OrderClose)، أو مقابل مركز معاكس (/OrderCloseBy)لتفاصيل نقاط النهاية والمعاملات وصيغ الاستجابة، راجع وثائق واجهة API.
استخدم نقطة النهاية /OrderSend. ومثل كل نقاط النهاية الكلاسيكية، هي طلب GET بمعاملات في الاستعلام: الرمز، ونوع العملية (Buy وSell وBuyLimit وغيرها)، والحجم باللوت، واختياريًا وقف الخسارة وجني الأرباح وتعليق وclientOrderId:
curl -H "x-api-key: YOUR_API_KEY" \
"https://api.metatraderapi.net/OrderSend?id=YOUR_ACCOUNT_UUID&symbol=EURUSD&operation=Buy&volume=0.01&clientOrderId=order-1"
المعاملات نفسها على MT4 وMT5. أوامر الإيقاف المحدد (stopLimitPrice) متاحة على MT5 فقط. تقبل الأوامر المعلّقة expiration اختياريًا؛ ويُتجاهل expirationType على MT5.
استخدم نقطتي النهاية /OrderHistory أو /OrderHistoryPagination. كلتاهما تصفّيان حسب النطاق الزمني فقط (from وto، بصيغة ISO-8601 أو بثواني Unix)؛ وتقسّم /OrderHistoryPagination النتيجة إلى صفحات (ordersPerPage وpageNumber). أما التصفية حسب رقم التذكرة أو الترتيب فتتم في شيفرتك. ولاستعلامات أدق تتوفّر أيضًا /PendingOrderHistory و/HistoryDealsByPositionId على MT4 وMT5 كليهما.
المرجع الكامل للمعاملات في الوثائق.
نعم. توفّر واجهة API اتصال WebSocket (أحداث) للبثّ في الوقت الفعلي، ما يتيح استقبال التحديثات مباشرةً بدل الاستعلام المتكرّر لنقاط نهاية REST.
عبر بث WebSocket (wss://api.metatraderapi.net/v1/stream?id=، مع المصادقة بالترويسة x-api-key) تتلقى الأسعار والشموع الحية للرموز التي اشتركت فيها، ومراكزك المفتوحة مع ربحها الحي، والأوامر المعلّقة، وكل صفقة منفّذة، إضافة إلى نبضة (heartbeat) كل 10 ثوانٍ. يمكن فتح ما يصل إلى 25 بثًا لكل حساب.
لأسعار العرض والطلب اللحظية يمكنك استخدام نقطة نهاية REST /GetQuote (أو /GetQuoteMany لعدّة رموز)، أو الاشتراك في الأسعار عبر بثّ WebSocket للحصول على تحديثات متواصلة في الوقت الفعلي.
تأخذ /GetQuote معرّف الحساب id وsymbol. تُخزَّن الاستجابات مؤقتًا لمدة 250 مللي ثانية لكل حساب ورمز؛ أضف cached=0 لتجاوز التخزين المؤقت.
لشموع OHLC التاريخية استخدم /PriceHistory على MT4 وMT5 (و/QuoteHistory اسم بديل لها) — راجع الوثائق لخيارات الإطار الزمني والمعاملات.
هناك خطة واحدة: تدفع لكل مقعد، ويشمل كل مقعد واجهة API كاملة — REST والبثّ عبر WebSocket ودعم MT4 و MT5. الأسعار غير شاملة ضريبة القيمة المضافة:
يتسع كل مقعد لحساب MT4 أو MT5 مربوط واحد في الوقت نفسه، ويُحصَّل مقدمًا عن شهر فوترة كامل. مثال: 10 مقاعد تكلّف 4 × 14 + 6 × 13 = 134 دولارًا شهريًا. وجميع الأسعار مؤكّدة في صفحة الأسعار.
لا. لا نوفّر حاليًا فترة تجريبية مجانية. إن كانت لديك أسئلة عن كيفية تقييم الواجهة، تواصل معنا عبر Telegram أو بالبريد على support@metatraderapi.net.
يمكنك البدء بمقعد واحد مقابل 14 دولارًا وإضافة المزيد عندما يعمل تكاملك.
نعم. تُفوتَر الخطة لكل مقعد، ويستوعب كل مقعد حسابًا متصلًا واحدًا في كل مرة. عندما تكون كل مقاعدك مستخدمة، يضيف ربط حساب آخر مقعدًا بسعر 14 دولارًا شهريًا (13 دولارًا للمقاعد 5–19، و12 دولارًا ابتداءً من المقعد العشرين)، يُحصَّل مقدمًا عند إضافته. وفصل حساب يحرّر مقعده للحساب التالي دون رسوم، ويمكنك تحرير المقاعد غير المستخدمة من لوحة التحكم. يمكن لكل عميل امتلاك ما يصل إلى 50 مقعدًا؛ والمزيد عند الطلب — تواصل مع الدعم.
يتم الدفع ببطاقة ائتمان أو بطاقة خصم مباشر (Debit) عبر Stripe، كاشتراك يُفوتَر شهريًا. لا نقبل العملات المشفّرة ولا التحويل المصرفي.
وبإتمام الطلب فإنك توافق أيضًا على اتفاقية خدمات Stripe.
نعم، يمكنك الإلغاء في أي وقت. ويسري الإلغاء في نهاية شهر الفوترة الحالي — ولا تُردّ مبالغ جزئية عن الأيام غير المستخدمة.
تشغّل الخدمة شركة Apex Vanguard Dynamics LLC، وهي شركة ذات مسؤولية محدودة (LLC) مسجّلة في الولايات المتحدة، وعنوانها المسجّل 30 N Gould St Ste R, Sheridan, WY 82801، الولايات المتحدة.
البريد الإلكتروني: support@metatraderapi.net · الهاتف: +1 (929) 333-6422
للبيانات القانونية الكاملة، راجع البيانات القانونية.
تخضع الشروط والأحكام لقوانين ولاية وايومنغ بالولايات المتحدة. وتخضع أي منازعات للاختصاص القضائي الحصري لمحاكم وايومنغ، ويتّفق الطرفان على السعي أولًا لتسويتها بالتفاوض بحسن نيّة.
يمكنك قراءة الشروط والأحكام الكاملة على الموقع.
لا. تقتضي شروط الخدمة صراحةً الحفاظ على سرّية بيانات الدخول ومفاتيح API، وعدم مشاركتها مع أي طرف ثالث دون موافقة خطية مسبقة من MetaTrader API.
وإذا كنت تبني منتجًا أو خدمة فوق واجهة API (لعملائك مثلًا)، فينبغي أن تبني طبقة مصادقة خاصة بك وأن تُبقي مفتاح MetaTrader API على الخادم فقط — دون كشفه للمستخدمين النهائيين أبدًا.
لا. تحظر شروط الخدمة استخراج البيانات (scraping) أو إعادة بيعها دون إذن خطي صريح من MetaTrader API. كما أن الاشتراكات غير قابلة للتحويل.
إذا كانت لديك حالة عمل محدّدة، تواصل مع support@metatraderapi.net.
نعم. اتفاقيات عدم الإفشاء متاحة عند الطلب ويجب الاتفاق عليها خطيًا من الطرفين. وتُطبَّق الشروط القياسية لاتفاقية عدم الإفشاء ما لم يُتفق على غير ذلك.
للطلب، تواصل مع support@metatraderapi.net.
تحمي MetaTrader API الحسابات المتصلة بالإجراءات التالية:
إجراءات الأمان والمعالِجون الفرعيون والتوافر المُقاس موثّقة في مركز الثقة؛ أما طريقة التعامل مع البيانات فموضّحة في سياسة الخصوصية.
تشغّل MetaTrader API شركة أمريكية (راجع من يشغّل MetaTrader API؟)، وتؤكّد امتثالها لقوانين حماية البيانات السارية، بما يشمل GDPR حيث ينطبق على مستخدمي الاتحاد الأوروبي والمنطقة الاقتصادية الأوروبية.
البيانات الشخصية التي تُجمع: معلومات الحساب (الاسم والبريد الإلكتروني وبيانات الفوترة)، وبيانات الاستخدام (سجلات واجهة API وعنوان IP والمتصفّح ونظام التشغيل)، ومعلومات الدفع المعالجة عبر Stripe.
لا نبيع البيانات الشخصية. ولا نشاركها إلا مع مزوّدي الخدمات الذين يعالجونها نيابةً عنا (مثل الاستضافة والمدفوعات وإرسال البريد الإلكتروني)، وتتوفر اتفاقية معالجة البيانات (DPA) للعملاء. التفاصيل الكاملة في سياسة الخصوصية ومركز الثقة.
وفقًا لسياسة الخصوصية، قد تُجمع البيانات التالية:
بالنسبة للحسابات المتصلة، تُخزَّن أيضًا بيانات الدخول إلى الوسيط (مشفّرة أثناء التخزين بخوارزمية AES-256-GCM)، وتُعالَج بيانات التداول التي تجلبها واجهة API نيابةً عنك. بيانات العملاء وخوادم واجهة API موجودة في الاتحاد الأوروبي (فنلندا وألمانيا). تعمل مقاعد الاستضافة الخاصة في المنطقة التي تختارها.
اقرأ سياسة الخصوصية الكاملة للمعلومات التفصيلية.
أكثر أسباب فشل الاتصال شيوعًا:
ICMarkets-Live02). تجده في MetaTrader ضمن ملف ← فتح حساب.استخدم /CheckConnect للتحقّق من حالة الاتصال الحالية. وإذا استمرّت المشكلة، تواصل مع support@metatraderapi.net.
تعني أخطاء المصادقة عادةً أن مفتاح API مفقود أو خطأ أو يُرسَل بصيغة غير صحيحة. تحقّق من الآتي:
x-api-key وليس Authorization: Bearer.راجع وثائق المصادقة للصيغة الصحيحة.
تنشر MetaTrader API التوافر المُقاس على صفحة حالة عامة، مع الحالة المباشرة وسجل التوافر لواجهة REST وبثّ WebSocket ولوحة التحكم. لا توجد اتفاقية مستوى خدمة (SLA) ولا أي التزام بالتوافر؛ راجع مركز الثقة لمعرفة كيفية تشغيل الخدمة.
ولاحِظ أنه وفقًا لشروط الخدمة تُقدَّم الخدمة «كما هي» و«حسب توافرها» — فالتشغيل المتواصل أو الخالي من الأخطاء غير مضمون تعاقديًا. ولأنظمة الإنتاج، طبّق دائمًا منطق إعادة المحاولة ومعالجة الأخطاء من جانبك.
يأتي رفض الأوامر من خادم التداول لدى الوسيط، لا من MetaTrader API. وأشهر الأسباب:
EURUSD مقابل EURUSDm).رفض الوسيط ليس خطأ HTTP: تجيب واجهة API بـ HTTP 200 مع كائن الأمر، ويحمل حقله state رمز نتيجة الوسيط. 10009 يعني تم التنفيذ؛ وأي قيمة أخرى هي سبب الرفض (مثل 10016 مستويات إيقاف غير صالحة، 10018 السوق مغلق، 10019 رصيد غير كافٍ؛ وعلى MT4 رقم خطأ MT4).