كيف يعمل بروتوكول التبادل المالي FIX 07/03/2022 – Posted in: Forex trading
المقدمة
اختلف تاريخ التداول في أسواق المال بشكل كبير منذ إنشاء هذه الأسواق، حيث ظهر أول سوق لتداول الأٍهم (البورصة) منذ أربعمائة عام. وفي هذا الوقت، كانت الصفقات تتم شفهيًا، وكانت قواعد التداول في بدايتها، ولكن لم يقف العالم ساكنًا أمام هذا التغيير، وتماشيًا مع التطور، فقد استخدمت البورصات كافة الأدوات التقنية المتاحة في كل وقت. ففي منتصف القرن التاسع عشر، كانت التطبيقات التجارية تتواصل مع البورصات بعيدة المسافة عبر خطوط التلغراف، ثم حل التليفون محل خطوط التلغراف حتى الوصول إلى اللحظة التي بدأت أول طلبات التجار تتم من خلال الاتصال عبر الإنترنت.
وحتى نكون منصفون، لازال التداول عبر الهاتف يتم في بعض الأوقات في وقتنا الحالى لدى بعض السماسرة، وفي بعض الأحيان الأخرى تكون هذه هي الطريقة الوحيدة الضامنة لتنفيذ الصفقة. وأيضًا منذ بدء أول تعاملات الأولى وحتى مطلع القرن الواحد والعشرون، كانت المعاملات تتم شفهيًا داخل قاعات البورصات. وكانت قاعات التداول هذه تسمى ركن التداول، وتمثل مشهدًا مألوفًا لنا شاهدناه في أفلام هوليوود فيما يتعلق بنفس الأمر.
الخلفية التاريخية لبروتوكول التبادل المالي FIX
أحد أقدم بروتوكولات التبادل الرقمي هو بروتوكول FIX، والتي تعني “بروتوكول المعلومات المالية” أو “بروتوكول التبادل المالي”، ويتوفر التعريفات للمسميات. وأسست مواصفات بروتوكول التبادل المالي عام 1992 لتوفير المعلومات حول تداول الأسهم بين فيديلتي للاستثمارات والأخوان سالومون. ونتج عن رغبة السماسرة وصناديق الاستثمار في تسريع عملية التداول في البورصة إنشاء معيار مفتوح لتبادل المعلومات الكترونيًا، بدون أي سيطرة أو ضوابط من أي مؤسسة رئيسية. واليوم، أصبح بروتوكول التبادل المالي هو معيار الصناعة المستخدم بواسطة المشاركون في الأسواق المالية في مختلف الدول للتواصل مع منتجاتهم.
وبشكل مبدئي، يستخدم هذا البروتوكول للتواصل فقط بين البورصتين المشار إليهما بأعلى، والتي كانت تسمى SBX (بورصة أخوان سالومون)، ويُستخدم فقط لتداول الأسهم. وعليه، بدأت القصة حيث أدرك قادة هذه الشركات بأهمية اختراعهم، وعُرض عليهم الانضمام إلى تطوير Golden Sachs and Putman، وهنا حصل البروتوكل على اسمه الحالي.
ولكن في البداية، كان البروتوكول يدعم فقط 17 نوع من الرسائل و103 نوع من الوسوم، وكانت الفكرة ناجحة جدًا. وبحلول عام 1995، استخدام أكثر من 70% من سماسرة الولايات المتحدة هذا البروتوكول. وذلك نتيجة لتوفير التكلفة والتكلفة الأقل والحد من أخطاء التداول، وبعد كل شيء كان العامل البشري له تأثير كبير من خلال التداول عبر الهاتف. وعلى مرور الوقت، توسع البروتوكول بشكل كبير مع إضافة الدعم للمشتقات والسندات وتداول العملة. البروتوكول الحالي FIX يوصف 168 رسائل، و7868 وسم مع تغطية كافة فئات الأوراق المالية. في عام 1998، انتقل التطوير في بروتوكول FIX ومواصفاته، فضلًا عن التطوير في التقنيات المتعلقة به إلى اتحاد FIX Protocol Ltd، ثم تم تسمية الاتحاد فيما بعد باسم FIX Trading Community، ويضم الآن عضوية أكثر من 270 مؤسسة مالية رائدة.
كيف يعمل بروتوكول التبادل المالي FIX
يعمل بروتوكول التبادل المالي باستخدام بروتوكول التحكم بالارسال TCP. ففي الوقت الحالي، يُعرف نموذج بروتوكول التبادل المالي على مستويين – جلستين أو مستوى تحكم (إنشاء الجلسة وعمل توصيل البيانات)، ومستوى التطبيق (وصف محتوى البيانات). وتكون طبقة التحكم هي المسؤولة عن المعلمات الأساسية لجلسة FIX: فتح وإغلاق التواصل واستعادة الرسائل المفقودة. أما طبقة التطبيق تتحكم في ارسال واستقبل البيانات: الطلبات، التنفيذ، الرفض، بيانات السوق، والطلبات المتعلقة بمعلومات وضع السوق. والبروتوكول هو نفسه عبارة عن نص، ويستخدم أحرف من جدول ASCII. وينقسم إلى طريقتين – التلقيدية، وهي عبارة عن وسوم = القيمة (الوسم = القيمة أو المفتاح = القيمة)، وفي تمثيل XML(FIXML). والإصدارة الأخيرة للبروتوكول هي الإصدارة 5.0، ولكنها تحتوي على كثير من خواص الإصدارات 4.2 و4.4. ويمكن للعديد من السماسرة والبورصات استخدام اصدارات مختلفة من البروتوكول، أو العديد منهم في نفس الوقت.
Syntax Tag=Value
تكون الرسالة مشابهه لما يلي:
8=FIX.4.2 | 9=178 | 35=D | 34=1234567 | 49=TESTER | 56=PHLX | 52=20071123-05:30:00.000 | 11=ATOMNOCCC9990900 | 54=1 | 167=FUT | 55=MSFT | 38=15 | 40=2 | 44=15 | 59=0 | 10=128 |
هذه سلسلة نصية تتكون من أجزاء مختلفة مفصولة بواسطة شريط عمودي، وتسمى هذه الأجزاء باسم الحقول fields. يتكون أيضًا كل جزء من زوج من قيم المفتاح Key-value يفصل بينتهم علامة التساوي. وإلى يمين العلامة يوجد المفتاح، وعلى اليسار تكون القيمة. وفي مواصفات FIX، المفاتيح عادة تسمى وسوم Tags. ويكون الوسم دائمًا رقم صحيح موجب والذي يشير بشكل أساسي إلى اسم الحقا. وتوصف جميع أسماء الحقول وقيمها المحتملة في كل وثيقة لكل بورصة بعينها. وعادة ما تكون معظم الحقول مشتركة ويمكن العثور عليها في فاتورة المواد BOM لأي بورصة، وهناك أيضًا حقول مخصصة والتي تُعرف فقط في اطار بورصة محددة. إذا تم العثور على توصيف الحقول العادية في المواصفات العامة لبتروكول FIX، يجب أن تجد وصف الحقول المخصصة في مواصفات بروتوكول FIX للبورصة أيضًا. وهناك أيضًا حقول مطلوبة واختيارية ومطلوبة بشروط (مطلوبة بناء على تواجد حقول أخرى في الرسالة). ويتم استخدام رمز SoH (بداية الرأس) كفاصل بين الحقول. ولا يكون هذا ظاهرًا، لذا يتم استبداله بشريط عمودي مثل الوارد في المثال. وفي تشفير UNICODE، يسمى هذا الرمز “\u0001”.
وفي المقابل، تُقسم الرسالة إلى حقول، والتي تعرف ثلاث مكونات أخرى:
- الرأس Header (رأس الرسالة).
- المحتوى Body (محتوى أو جسم الرسالة).
- Message Trainer (المجموع الاختباري).
في FIX1.1/FIX5.0، يحتوي الرأس على 5 حقول مطلوبة وحقل واحد اختياري: 8 (BeginString), 9 (BodyLength), 35 (MsgType), 49 (SenderCompID), 56 (DestComppID), and 1128 (ApplVerID – إذا كان موجود، يجب أن يكون موجود في المركز السادس). وهناك مجموعتان رئيسيتان من الرسائل – الرسائل التطبيقية والإدارية، وتتعامل الرسائل الإدارية مع أساسيات جلسة FIX. بينما ترتبط الرسائ التطبيقية بارسال واستقبال المعلومات المرتبطة بالتداول، مثل طلب الضمان أو المعلومات حول الوضع الحالي والتالي لتنفيذ هذا الضمان.
وسوف نقوم بتحليل هذه الرسالة:
- 8=FIX.4.2 – BeginString تم استخدام إصدارة البروتوكول، ويخبر برنامج التجار عن قواعد التطبيق لتحليل حقول هذه الرسال.
- 9=178 – BodyLength طول محتوى الرسالة 178 بايت، تتضمن الرأس، ويب عدد الأحرف من الوسم 35 (ضمنًا) إلى الوسم 10 (حصري). وفاصل SoH يؤخذ في الاعتبار أيضًا.
- 35=D – MsgType نوع الرسالة، في هذه الحالة، D يعني تقديم طلب التداول، على سبيل المثال، الحقل 35 = المؤشرات V وهي الحصول عن معلومات السوق حول السند المتداول.
- 34=1234567 – MsgSeqNum رقم الرسالة، إذا كان رقم الرسالة MsgSeqNum لا يختلف عن واحد في التسلسل المرسل، يعيد الخادم الخطأ ولا يتم معالجة الرسالة.
- 49=TESTER – SenderCompID هوية المرسل، الصادرة بواسطة البورصة. والتي يمكن أن تكون اسم المستخدم، أو اسم السمسار إذا كانت الرسالة مرسلة بواسطة السمسار.
- 56=PHLX – TargetCompID هوية المستقبل الذي يتم الارسال له، والتي تصدر أيضًا بواسطة البورصة.
- 52=20071123-05:30:00.000وقت الارسال، التاريخ والوقت الذي يتم به ارسال الرسالة.
- 11=ATOMNOCCC9990900 – ClOrdID رقم الطلب في نموذج تداول السمسار.
- 54=1 – Side إجراء شراء الأصل.
- 167=FUT – SecurityType الأصل أجل (مستقبلي).
- 55=MSFT – Symbol ترقيات ميكروسوف، قد تختلف المؤشرات من بورصة لأخرى.
- 38=15 – OrderQty حجم الصفقة 15 عقد أو أكثر.
- 40=2 – OrdType شراء بسعر محدود، طلب محدد.
- 59=0 – TimeInForce الموعد النهائي للطلب يكون بنهاية يوم العمل.
- 10=128 – CheckSum المجموع الاختباري للرسالة، ويكون دائمًا الحقل الأخير في الرسالة، ويحسب باستخدام صيغة خاصة ويوصف في مواصفات البروتوكول. ويتم من خلال جمع قيم ASCII لكافة الحروف في الرسالة، ما عدا حروف حقل المجموع الاختباري. وبعد ذلك يقسم على 256 ويتم أخذ باقي المقصورة. ويتكون المجموع الاختباري عادة من ثلاثة أرقام. وعليه، إذا كان المعامل هو 22، يتم إضافة صفر قبل الرقم ليكون “022”.
إذا قمت بوصف هذه الرسالة في العموم، فهي إجراء لشراء سهم أجل لميكروسوفت بعدد 15 عقد بسعر أقصى 15، مع موعد نهائي بنهاية اليوم. ولتزويد بروتوكول FIX بمزيد من المرونة، يتكون البروتوكول من الحقول المعرفة من قبل المستخدم، User Defined Fields. والتي تستخدم لنقل البيانات بين المنظمات المالية المتعاونة. ويتم حجز أرقام الوسوم من 5000 إلى 9999 للحقول المخصصة، والتي يمكن حفظها على الموقع الرسمي للمعيا. وتستخدم هذه الارقام تتابعيًا، لذا يتم تخصيص فترة زمنية جديدة من 20،000 إلى 39،999.
تركيب FIXML
بدأ العمل على التركيب عام 1998، واطلقت أول إصداره في 1999. وهي مكافئة لغويًا للرسائل المشفرة باستخدام الوسوم، ولكن تستخدم تقنية تحليل XML. ويكون التطبيق الجديد للعملية في صيغة FIXML كما يلي:
<FIXML>
<Order ClOrdID=”123456″ Side=”2″ TransactTm=”2001-09-11T09:30:47-05:00″ OrderTyp=”2″ Px=”93.25″
Acct=”26522154″>
<Instrmt Sym=”IBM” ID=”459200101″ IDSrc=”1″/>
<OrdQty Qty Qty=”1000″/>
</Order>
</FIXML>
في تنسيق XML، يتم تأطير كتلة محددة من الرموز فيما يسمى بالوسوم (وسم أخرى، وليس المستخدم في البروتوكول نفسه). على سبيل المثال، يوجد وسم من الدرجة الأولى <FIXML>. ووهي أي وسم يقطع قطعة محددة من التشفير أو الرسالة وينهيها بنفس الوسم ولكن داخل الحافة اليسرى، ويوجد حرف مائل. وعليه، ينهي الوسم المشار إليه الكتلة كما يلي: </FIXML>..
وبعد ذلك، بداخل هذا الوسم ترى الوسم التالي:
<Order ClOrdID=”123456″ Side=”2″ TransactTm=”2001-09-11T09:30:47-05:00″ OrderTyp=”2″ Px=”93.25″
Acct=”26522154″>.
وهنا نرى نفس اسم الوسم – الترتيب، وبداخل الأقواس يوجد معلومات إضافية (نفس الحقول، المفتاح= القيمة كما هو في التركيب الوسم=القيمة).
وفي هذه الحالة:
ClOrdID=”123456″ – order id in the broker trading system
Side=”2″ – Sales Order
TransactTm=”2001-09-11T09:30:47-05:00″ date and time of transaction
OrdTyp=”2″ – Claim Type – Limit Order
Px=”93.25″ – The price of an asset to buy or sell
Acct=”26522154″ – user account number
وكما هو الحال في وسم XML السابق، ينهي وسم XML بعلامة مائلة – </Order>
والمحتوى بين وسم XML البداية والنهاية يسمى جسم الوسم. وبالتالي، يكون وسم الترتيب هو جسم وسم FIXML. وما بداخل وسم الترتيب هو الجسم، ويوجد وسمين آخرين: Instrmt and OrdQty
الوسم التالي:
<Instrmt Sym=”IBM” ID=”459200101″ IDSrc=”1″/>
وهنا يمكننا أن نرى البداية والإغلاق في نفس الوقت، في نهايته يوجد خط مائل. هذا هو الحال إذا كان الوسم لا يحتوي على شيء، وأنه لا يوجد فائدة في إنشاء وسم تأطير منفصل. ويحتوي الوسم على معلومات عن المؤشر للأداة، وهويته إلخ.
في الوسم <OrdQty Qty=”1000″/> يمكنك رؤية المعلومات حول حجم المعاملة، ووسم النهاية بدون المحتوى.
ويستخدم FIXML عادة لتطبيقات نظم الإدارة الخلفية وتطبيقات المخالصة، وليست للتداول.
طبقة جلسة FIX
أوضحت الأمثلة السابقة طبقة التطبيقات، حيث تُعرف المواصفات الأنواع الخاصة للحقول والمسؤولة عن مستوى الجلسة بين العميل والبورصة.
- 35=A – Logon يستخدم للتأكد من صحة المستخدم المتصل بنظام التداول، وتُرى هذه الرسالة أولًا، وترسل اشارات للبورصة في البداية بمعلومات الجلسة. وتأتي رسالة رد لتأكيد نجاح اتقديم، وفي حالة فشل الاتصال، يتم عودة الخطأ.
- 35=5 – Logout رسالة تستخدم في إلغاء الصلاحية مع الخادم وإغلاق جلسة التداول مع البورصة.
- 35=0 – Heartbeatمعدل النبضات، وترسل هذه الرسالة من جانبي الاتصال لكليمها وتشير إلى أن الطرفين جاهزان لاستقبال وارسال الرسائل. يتم وضع معدل النبضات في رسالة تسجيل الدخول الأولى.
- 35=1 – Test Request هذه الرسالة هي رسالة اختبار، وترسل إلى الطرف المقابل الذي لم يرسل رسالة النبض في مدة محددة، وتُغلق الجلسة في حالة عدم الإجابة على الرسالة.
- 35=2 – Resend Request هذه رسالة طلب إعادة ارسال الرسالة في حالة وجود معلومات ناقصة.
- 35=3 – Reject ترسل بواسطة الطرف المقابل في حالة أن الرسالة السابقة غير صحيحة أو لا يمكن تنفيذها.
- 35=4 – Sequence Reset أو إعادة تعيين تسلسل ارسال الرسالة، والتي يمكن أن يكون لها شكلين.
– 123=”Y” – يوجد وسم GapFillFlag بقيمة محددة، ويشير إلى طلب تجاهل الرسائل الإدارة التي تم ارسالها مرة أخرى.
– تستخدم لتصفير عداد MsgSeqNum
تنفيذ FAST كتعزيز لواجهة برمجة تطبيقات FIX
تعرضت كميات كبيرة من بيانات FIX إلى التأخير الكبير في المعالجة، مما جعل التجار أقل عرضه لتطوير استراتيجيات التداول الفعالة. وبعد إدراك هذه المشكلة تم اتخاذ الخطوات الأولى لتصحيح هذا الوضع، وكان هدف بروتوكول FAST هو السماح بنقل كميات كبيرة من البيانات مع تجنب التأخير في الحصول على المعلومات. ويعتبر FAST (FIX Adapted for Streaming، والذي تحول إلى Fix الذي يتكيف مع البث)، هو تقنية معيارية تم تطويرها بواسطة FIX Protocol Ltd، والذي تم تصميمه بشكل خاص لتعظيم عرض الشبكات. وهو بالأساس تنسيق ثنائي لبروتوكول FIX ويسمح بنق كميات كبيرة من المعلومات حول المعاملات وبيئة السوق في صورة مصغرة. ويسمح ذلك باستخدام نظم تداول عالية السرعة توفر تأخيرات نقل أقل. وأسس FAST في معهد كاليفورنيا للتكنولوجيا في باسادينا. وحاليًا، أحدث إصدارة من FAST هي 1.2، ويتم توصيل التطبيق الأكثر شيوعًا مباشرة بالبورصات، بما يتجاوز نظام تداول الوسطاء. و FAST هو بروتوكول توزيع قياسي لمعلومات السوق والأشهر في العالم. ففي السابق، كانت جميع حركات المرور على الانترنت تعتمد على بروتوكول التحكم في الارسال TCP، والذي تطور في سبعينيات هذا القرن. وبروتوكول التحكم في الارسال هو مأخذ توصيل يتطلب إقرار تسليم الحزمة، ويقوم بتكسير الملفات والرسائل الكبيرة إلى حزم 1500 بايت، ويتكون كل منها من عناوين المصدر والوجهات الخاص بالحزم. وينتظر المرسل التأكيد على تسليم الحزمة المرسلة بنجاح، وعندها فقط يرسل الحزمة التالية. وإذا فشل التسليم أو لم تصل إشارة التسليم خلال المهلة المحددة، يتم إرسال الحزمة مرة أخرى، ولكن بمعدل أقل. ويمكن أن تستمر كما تشاء، مع انخفاض السرعة بشكل كبير حتى تظهر إشارة نجاح التسليم. يصبح من الواضح أنه حتى مشاكل الخط الصغيرة يمكن أن تؤثر بشدة على معدل البيانات، حيث أن كل إرسال فاشل يمثل خسارة ملي ثانية ثمينة. لذلك، قدم FAST حلاً بديلاً – يقوم النظام باستمرار بمراقبة الحزم والرسائل المستلمة للتسليم الجيد من أجل اكتشاف المشكلات فورًا وتعيين الإرسال التالي على معدل ثابت، وإن كان بمعدل منخفض قليلاً. يلغي هذا النهج الحاجة إلى إعادة إرسال الحزم في معظم الحالات، حيث لا يستغرق الأمر وقتًا للبحث عن الأداء البطيء. في بعض المعاملات، يتم تنفيذ واجهة الاتصال من خلال نوعين من الاتصال: UDP و TCP. ولا معنى لإرسال جميع البيانات الموجودة على مقبس UDP، لأن هذا الاتصال لا يتطلب تأكيدًا للتسليم وستختفي الحزم ببساطة، ولن يعرف أي من الطرفين عنها. لذلك، يتم إرسال معظم البيانات عبر مقبس UDP، ويتم نقل مجموعات البيانات التي لم يتم تسليمها فقط عبر TCP. أما في الأسواق سريعة الحركة، غالبًا ما يكون التأخير المرتبط بإعادة الإرسال غير مرغوب فيه، مما يؤدي إلى ضياع الفرص أو الصفقات الكبرى.
كيف يعمل FAST
كما نعلم بالفعل فإن بروتوكول FIX هو عبارة عن سلسلة من الحقول التي تتكون بدورها من أزواج من المفتاح = القيمة. بالإضافة إلى حقيقة أن تنسيق السلسلة مكرر بشكل أساسي، قد تلاحظ أن كل رسالة تحتوي على عناصر مكررة مثل أسماء الحقول والأحرف “=”. كما يزيل FAST التكرار باستخدام نموذج يصف بنية الرسالة بالكامل. وهذه الطريقة تسمى العلامات الضمنية. نظرًا لأن علامات FIX في البيانات المرسلة هي “ضمنية” فقط، فإن بنية العلامة = القيمة تتغير على النحو التالي:
- يوصف النموذج مجموعة منظمة من الحقول مع مشغليها؛
- يتوافق تسلسل الحقول في الرسالة مع تسلسل الوسوم في النموذج؛
- البيانات المتغيرة فقط هي التي تُرسل في الرسالة.
كل قيمة وسم لها طول ثابت بالبايت. معرفة طول حقل معين والترتيب الذي توضع فيه الحقول في رسالة وليس من الصعب تحديد قيم هذه الحقول في رسالة. لذلك، تسمح القوالب فقط بإرسال البيانات نفسها مباشرةً دون الحاجة إلى نقل الأحرف الزائدة عن الحاجة، ويسمى هذا الترميز التشفير الثنائي البسيط أو SBE. وبالتالي، يكون لتشفير الرسائل وفك تشفيرها زمن انتقال أقل بكثير من بروتوكولات الأحرف، لأنه ليس من الضروري ترجمة البيانات إلى تنسيق يمكن لأجهزة الكمبيوتر استخدامه. نظرًا لأن الحقول المقابلة في موضع ثابت في الرسالة، يكون الوصول إلى القيمة المطلوبة أسهل بكثير. ما عليك سوى معرفة إزاحتها بالنسبة إلى بداية الرسالة وطول قيمتها. على عكس الوسم وFIXML، فإن رسالة SBE ليست ذاتية الوصف. ويتم إرسال البيانات ذات الحد الأدنى من الرأس فقط عبر الشبكة لتحديد القالب الذي يتحكم في الرسالة. ويتم تبادل البيانات الوصفية (القوالب) التي تصف بنية الرسالة خارج قناة الاتصال الرئيسية. وبعد استلام القوالب اللازمة، يعرف خادم التداول التنسيق الذي يرسل البيانات إلى العميل في إطار هذه الجلسة المتصلة. وبالتالي، قبل نقل البيانات تتفق الأنظمة بطريقة ما مع بعضها البعض على كيفية التواصل معها في المستقبل، ويرسل مخطط الرسالة عادةً بتنسيق XML. يمكن أن تحتوي على أي عدد من قوالب الرسائل، ويصف النموذج الحقول التي تتكون منها الرسالة. بالإضافة إلى ذلك، يوفر المخطط قائمة بأنواع البيانات البسيطة والمعقدة التي يمكن إعادة استخدامها في أي عدد من الحقول.
تنفيذ مفتوح في لغات متعددة لبروتوكول FIX
Java – QuickFIX/J – http://www.quickfixj.org/
.NET/C# – QuickFIX/N – http://quickfixn.org/
Free on-line parser of FIX-messages – FIX Parser – https://fix.aprics.net/
Open Language Implementations for FAST
For C – Reference implementation from FPL – www.fixprotocol.org/fastdownload
For C# – Reference implementation from FPL – www.fixprotocol.org/fastdownload
Java л д code – OpenFAST – www.openfast.org
www.sourceforge.net/projects/openfastdotnet/ Д я
Для C++ – QuickFAST – www.quickfast.org
Для Golang – goFAST – www.github.com/co11ter/goFAST
تشفيرات أخرى لبروتوكول FIX
طور مجتمع FIX أيضًا تعيينات قياسية بين بروتوكول FIX وبروتوكلات تسلسل البيانات الأخرى، مثل:
- JSON
- Google (Protocol buffers)
|ASN.1
مجالات تطبيق بروتوكولات FIX/FAST
كقاعدة عامة، عادة ما تظهر الاختصارات معًا في كلمتين، ويستخدموا للحصول على العديد من المعلومات المالية من بورصات التداول: جداول الأدوات المالية (الأسعار ، الأحجام ، إلخ)، عروض الأسعار، جميع المعاملات، المؤشرات، بالإضافة إلى معلومات حول جميع التطبيقات غير الشخصية. وقد تختلف مجموعة البيانات التي تم الحصول عليها اعتمادًا على البورصة. وFIX/FAST الأساسي هو:
- تجار من نوع خاص للتداول
- مبرمجون لوضع منتجات تعتمد على هذه التقنية، مثل منصات تداول FIX API، والموصلات لمختلف البورصات، وأنظمة التداول وأنظمة جمع البيانات والإحصاءات.
- تبادل المعلومات بين البورصات.
- الحصول على معظم البيانات المحدثة من وكالات المعلومات المتعددة؟
الاستخدام الأكثر شيوعًا هو أن يحصل المتداولون ذو الترددات العالية على ميزة على اللاعبين الآخرين في السوق عبر الوصول المباشر للسوق (DMA). يمكن دمج هذا البروتوكول في نظام التداول البيئي عن طريق البورصات والبنوك ووسطاء الفوركس. وتبادلات العملات المشفرة وفقًا للبيانات المعروفة، لا تستخدم هذه التقنية. فمن الناحية التاريخية، تستخدم هذه التبادلات في الغالب اتصالات WebSocket للحصول على معلومات السوق واتصالات واجهة برمجة تطبيقات HTTP لإجراء عمليات تداول لتوفير اتصالات مباشرة بخوادم تداول المتداولين. إذا كانت تقنية WebSocket لا تزال قابلة للمقارنة من حيث السرعة باتصال TCP، فإن واجهة برمجة تطبيقات HTTP تخسر الكثير.