Crypto Exchange Order Book Websockets للمطورين [Python Scripts]

>

نحن نأتي إليك مباشرةً من كل بورصة رئيسية للعملات المشفرة.

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

تاريخياً ، كان الوصول إلى بيانات العملة المشفرة بطيئًا. العديد من مصادر البيانات مثل CoinMarketCap تحديث في فاصل زمني 5 دقائق. بالنسبة لمعظم المطورين ، هذا غير مقبول.

هذا هو المكان الذي يأتي فيه Shrimpy لإنقاذ.

شرمبي سريع. بهذه السرعة لا يمكنك حتى أن تغمض عينيك دون أن تفقد سرعة معالجة البيانات من عمليات التبادل. بعد استخدام Shrimpy لأول مرة ، يقول الناس أشياء مثل ، “رجل تيارات مقابس هذه سريعة” (اقتباس مباشر من مستخدم Shrimpy).

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

لذا ، قبل أن نبدأ ، أكمل هذه الخطوات الثلاث:

  1. اشترك في واجهات برمجة تطبيقات Shrimpy Developer.

  2. تحميل هذا مكتبة شرمبي بايثون.

  3. قم بإنشاء مفتاح API والاشتراك.

تنسيق البيانات

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

طلب لقطات الكتاب


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

لاحظ أن هناك عنصرًا يحدد “لقطة" صحيح”. هذه هي الطريقة التي نعرف بها أن هذه الرسالة هي لقطة من دفتر الطلبات بأكمله.

{

"تبادل": "coinbasepro",

"زوج": "ltc-btc",

"قناة": "سجل الطلبيات",

"لمحة": صحيح,

"تسلسل": 6784322,

"المحتوى": {

"يطلب": [

{

"السعر": "59.782355",

"كمية": "3.456722" },

{

"السعر": "60.782355",

"كمية": "3.456722" },

],

"العطاءات": [

{

"السعر": "58.782355",

"كمية": "3.456722" },

{

"السعر": "56.782355",

"كمية": "3.456722" },

]

}

}

تحديث دفتر الطلب

بعد لقطة دفتر الطلب الأولي ، ستبدأ التحديثات فورًا في التدفق عبر مقبس الويب. يجب تطبيق كل من هذه التحديثات على اللقطة الأصلية التي تم استلامها. بهذه الطريقة ، يكون دفتر الطلبات المحلي الذي تحتفظ به دائمًا محدثًا بأحدث القيم.

عندما نتلقى تحديثًا “لسعر” معين ، يجب أن نستبدل “الكمية” القديمة بـ “الكمية” الجديدة. إذا حدد أحد التحديثات “سعرًا” ليس لدينا حاليًا في نسختنا المحلية من دفتر الطلبات ، فيجب علينا تحديث دفتر الطلبات الخاص بنا لاحتواء هذا السعر والكمية.

{

"تبادل": "coinbasepro",

"زوج": "ltc-btc",

"قناة": "سجل الطلبيات",

"لمحة": خاطئة,

"تسلسل": 6784322,

"المحتوى": {

"يطلب": [

{

"السعر": "59.782355",

"كمية": "3.456722" },

{

"السعر": "61.782355",

"كمية": "3.56722" },

],

"العطاءات": [

{

"السعر": "58.782355",

"كمية": "3.61234" },

{

"السعر": "56.782355",

"كمية": "1.34234" },

]

}

}

مثال البرنامج النصي البسيط

في البرنامج النصي التالي ، سنقوم بالاتصال بمقبس دفتر الطلبات الخاص بزوج تداول ETH / BTC على Binance. في كل مرة نتلقى فيها رسالة عبر websocket ، سنطبعها.

لاحظ أننا لا نحتفظ بدفتر الطلبات بهذا النص. هذا يعني أنه بعد طباعة كل رسالة ، لا نفعل أي شيء بالرسالة. هذا لأغراض سبيل المثال فقط.

استيراد الجمبري

# اشترك في https://developers.shrimpy.io/ للحصول على مفتاح API الخاص بك

public_key = ‘…’

secret_key = ‘…’

# هذا معالج عينة ، يقوم ببساطة بطباعة الرسالة الواردة إلى وحدة التحكم

def error_handler (يخطئ):

طباعة (يخطئ)

# هذا معالج عينة ، يقوم ببساطة بطباعة الرسالة الواردة إلى وحدة التحكم

معالج def (msg):

طباعة (msg)

api_client = shrimpy.ShrimpyApiClient (public_key، secret_key)

raw_token = api_client.get_token ()

العميل = shrimpy.ShrimpyWsClient (error_handler، raw_token [‘token’])

Subscribe_data = {

"اكتب": "الإشتراك",

"تبادل": "بينانس",

"زوج": "eth-btc",

"قناة": "سجل الطلبيات"}

# ابدأ في معالجة تيار Shrimpy websocket!

client.connect ()

client.subscribe (subscribe_data ، معالج)

# بمجرد الانتهاء ، أوقف العميل

client.disconnect ()

هذا هو! يمكنك الآن الوصول إلى تحديثات دفتر الطلبات المباشرة من كل بورصة رئيسية.

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

الاستنتاجات

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

تذكير: تتضمن الآثار الجانبية لاستخدام واجهات برمجة تطبيقات Shrimpy Developer ما يلي: (1) إكمال المشاريع قبل الموعد المحدد وبأقل من الميزانية (2) تمتم كلمة “wow” دون قصد أثناء التحديق في البيانات التي تومض على شاشتك (3) نسيانها كنت ترغب في معالجة تبادل البيانات قبل أن تبدأ في استخدام Shrimpy.

لقطات كتاب الترتيب التاريخي

تمتع بالوصول إلى أكثر من مليار لقطة من سجلات الطلبات التاريخية باستخدام أقوى واجهات برمجة تطبيقات لبيانات التشفير.

قراءات جيدة إضافية

كيفية عمل بوت للتداول بالعملات المشفرة باستخدام بايثون

كيفية تنزيل بيانات Cryptocurrency Candlestick من البورصات

نصوص التحكيم لروبوتات تداول العملات المشفرة

البرنامج النصي لمؤشر أسعار البيتكوين المباشر (باستخدام مآخذ الويب)

حول شرمبي

واجهة برمجة تطبيقات التداول الخاصة بمطور Shrimpy هي طريقة موحدة لدمج وظائف التداول عبر كل بورصة رئيسية. جمع بيانات السوق ، والوصول إلى مآخذ الويب في الوقت الفعلي ، وتنفيذ استراتيجيات التداول المتقدمة ، وإدارة عدد غير محدود من المستخدمين.

واجهة برمجة تطبيقات Shrimpy Crypto للتداول: شرمبي | واجهات برمجة تطبيقات تداول العملات الرقمية للمطورين

لا تنسى متابعتنا تويتر و موقع التواصل الاجتماعي الفيسبوك للحصول على التحديثات ، وطرح أي أسئلة على مدهشنا برقية تواصل اجتماعي.

فريق شرمبي

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me