اتصالات WebSocket محدودیت 5 پیام ورودی در ثانیه است. یک پیام در نظر گرفته شده است: - یک قاب پینگ
- یک قاب پونگ
- یک پیام کنترل شده JSON (به عنوان مثال اشتراک ، اشتراک گذاری)
عضویت زنده/اشتراک در جریان
- داده های زیر را می توان از طریق نمونه WebSocket به منظور اشتراک/لغو اشتراک از جریان ها ارسال کرد. مثالهایی را می توان در زیر مشاهده کرد.
- شناسه مورد استفاده در JSON Payloads یک Int امضا نشده است که به عنوان شناسه ای برای شناسایی منحصر به فرد پیام های به عقب و جلو استفاده می شود.
- در پاسخ ، اگر نتیجه دریافتی تهی باشد ، این بدان معنی است که درخواست ارسال شده برای درخواست های غیر پرکری موفقیت آمیز بوده است (به عنوان مثال مشترک شدن/اشتراک مشترک).
مشترک شدن در یک جریان
"روش": "اشتراک در", "پارامس": [ "btcusdt@agtrade", "btcusdt@عمق" ], "شناسه": 1 >
"نتیجه": خالی, "شناسه": 1 >
اشتراک مشترک به یک جریان
"روش": "لغو اشتراک", "پارامس": [ "btcusdt@عمق" ], "شناسه": 312 >
"نتیجه": خالی, "شناسه": 312 >
"روش": "List_subscriptions", "شناسه": 3 >
"نتیجه": [ "btcusdt@agtrade" ], "شناسه": 3 >
در حال حاضر ، تنها خاصیتی که می توان تنظیم کرد این است که آیا بارهای جریان ترکیبی فعال هستند یا خیر. خاصیت ترکیبی هنگام اتصال با استفاده از / WS / ("جریان خام") روی False تنظیم شده و هنگام اتصال با استفاده از / جریان / درست است.
"روش": "set_property", "پارامس": [ "ترکیب شده", درست است، واقعی ], "شناسه": 5 >
"نتیجه": خالی, "شناسه": 5 >
"روش": "get_property", "پارامس": [ "ترکیب شده" ], "شناسه": 2 >
"نتیجه": درست است، واقعی, // نشان می دهد که ترکیبی روی درست تنظیم شده است. "شناسه": 2 >
| پیغام خطا | شرح |
| | پارامتر مورد استفاده در set_property یا get_property نامعتبر بود |
| | ارزش فقط باید درست یا نادرست باشد |
| | نام املاک ارائه شده نامعتبر بود |
| | شناسه پارامتر باید ارائه می شد یا مقدار ارائه شده در پارامتر ID یک نوع پشتیبانی نشده است |
| | تایپی احتمالی در روش ارائه شده یا روش ارائه شده هیچ یک از مقادیر مورد انتظار نبود |
| | پارامترهای غیر ضروری ارائه شده در داده ها |
| | نام املاک ارائه نشده است |
| | روش در داده ها ارائه نشده است |
| | داده های JSON ارسال شده نحو نادرست دارد. |
اطلاعات دقیق جریان
جریان های تجاری کل
جریان های تجاری کل اطلاعات تجاری را که برای یک دستور گیرنده واحد جمع شده است ، فشار می دهد.
نام جریان: aggtrade
سرعت بروزرسانی: زمان واقعی
ظرفیت ترابری:
"E": "Agtrade", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "آ": 12345, // شناسه تجارت کل "پ": "0. 001", // قیمت "س": "100", // تعداد "F": 100, // شناسه تجارت اول "ل": 105, // آخرین شناسه تجارت "T": 1672515782136, // زمان تجارت "م": درست است، واقعی, // آیا خریدار سازنده بازار است؟ "م": درست است، واقعی // چشم پوشی >
جریان های تجاری اطلاعات تجارت خام را تحت فشار قرار می دهد. هر تجارت یک خریدار و فروشنده منحصر به فرد دارد.
نام جریان: trade
سرعت بروزرسانی: زمان واقعی
ظرفیت ترابری:
"E": "تجارت", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "T": 12345, // شناسه تجارت "پ": "0. 001", // قیمت "س": "100", // تعداد "ب": 88, // شناسه سفارش خریدار "آ": 50, // شناسه سفارش فروشنده "T": 1672515782136, // زمان تجارت "م": درست است، واقعی, // آیا خریدار سازنده بازار است؟ "م": درست است، واقعی // چشم پوشی >
جریان Kline/CandleStick به روزرسانی به روزرسانی به Klines/Candlestick فعلی در هر ثانیه.
فواصل نمودار Kline/Candlestick:
s> seconds; m > minutes; h > hours; d > days; w > weeks; M >ماه ها
نام جریان: kline_
سرعت به روزرسانی: 2000ms
ظرفیت ترابری:
"E": "کلاین", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "k": "T": 1672515780000, // زمان شروع Kline "T": 1672515839999, // Kline زمان بستن "S": "bnbbtc", // سمبل "من": "1m", // فاصله "F": 100, // شناسه تجارت اول "ل": 200, // آخرین شناسه تجارت "ای": "0. 0010", // قیمت باز "ج": "0. 0020", // نزدیک قیمت "ح": "0. 0025", // قیمت بالا "ل": "0. 0015", // قیمت پایین "v": "1000", // حجم دارایی پایه "ن": 100, // تعداد معاملات "ایکس": دروغ, // آیا این Kline بسته است؟ "س": "1. 0000", // نقل قول حجم دارایی "v": "500", // Taker حجم دارایی پایه را بخرید "س": "0. 500", // Taker حجم دارایی نقل قول را خریداری کنید "ب": "123456" // چشم پوشی > >
نماد فردی مینی کنه
24 ساعت آمار مینی تیکین پنجره نورد. اینها آمار روز UTC نیست ، بلکه یک پنجره نورد 24 ساعته برای 24 ساعت قبلی است.
نام جریان: miniticker
سرعت بروزرسانی: 1000ms
ظرفیت ترابری:
"E": "24 ساعته", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "ج": "0. 0025", // نزدیک قیمت "ای": "0. 0010", // قیمت باز "ح": "0. 0025", // قیمت بالا "ل": "0. 0010", // قیمت پایین "v": "10000", // کل حجم دارایی پایه معامله شده "س": "18" // کل حجم دارایی نقل قول معامله شده >
همه مینی تیک های بازار جریان
24 ساعت آمار مینی پیچ و تاب پنجره برای همه نمادهایی که در یک آرایه تغییر کرده اند. اینها آمار روز UTC نیست ، بلکه یک پنجره نورد 24 ساعته برای 24 ساعت قبلی است. توجه داشته باشید که فقط تیکرهایی که تغییر کرده اند در آرایه حضور خواهند داشت.
نام جریان:! miniticker@arr
سرعت بروزرسانی: 1000ms
ظرفیت ترابری:
[ // همان به عنوان miniticker payload > ]
جریان های تیکت نماد فردی
24 ساعت آمار تیک تیک پنجره نورد برای یک نماد واحد. اینها آمار روز UTC نیست ، بلکه یک پنجره نورد 24 ساعته برای 24 ساعت قبلی است.
نام جریان: ticker
سرعت بروزرسانی: 1000ms
ظرفیت ترابری:
"E": "24 ساعته", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "پ": "0. 0015", // تغییر قیمت "پ": "250. 00", // درصد تغییر قیمت "W": "0. 0018", // قیمت متوسط وزنی "ایکس": "0. 0009", // اولین تجارت (F) -1 قیمت (اولین تجارت قبل از پنجره نورد 24 ساعته) "ج": "0. 0025", // آخرین قیمت "س": "10", // مقدار آخر "ب": "0. 0024", // بهترین قیمت پیشنهاد "ب": "10", // بهترین مقدار پیشنهاد "آ": "0. 0026", // بهترین قیمت را بپرسید "آ": "100", // بهترین درخواست را بپرسید "ای": "0. 0010", // قیمت باز "ح": "0. 0025", // قیمت بالا "ل": "0. 0010", // قیمت پایین "v": "10000", // کل حجم دارایی پایه معامله شده "س": "18", // کل حجم دارایی نقل قول معامله شده "ای": 0, // آمار زمان باز "ج": 86400000, // آمار نزدیک زمان "F": 0, // شناسه تجارت اول "ل": 18150, // آخرین شناسه تجارت "ن": 18151 // تعداد کل معاملات >
همه تیک های بازار جریان دارند
24 ساعت آمار تیک تیک پنجره نورد برای همه نمادهایی که در یک آرایه تغییر کرده اند. اینها آمار روز UTC نیست ، بلکه یک پنجره نورد 24 ساعته برای 24 ساعت قبلی است. توجه داشته باشید که فقط تیکرهایی که تغییر کرده اند در آرایه حضور خواهند داشت.
نام جریان:! ticker@arr
سرعت بروزرسانی: 1000ms
ظرفیت ترابری:
[ // همان به عنوان Ticker Payload > ]
نماد انفرادی آمار پنجره نورد جریان
Rolling Window Ticker Atistics برای یک نماد واحد ، که از طریق ویندوز چندین محاسبه شده است.
نام جریان: ticker_
اندازه پنجره ها: 1H ، 4H ، 1D
سرعت بروزرسانی: 1000ms
توجه: این جریان با جریان Ticker متفاوت است. زمان باز "O" همیشه از یک دقیقه شروع می شود ، در حالی که زمان بسته شدن "C" زمان فعلی به روزرسانی است. به همین ترتیب ، پنجره مؤثر ممکن است تا 59999ms گسترده تر باشد.
ظرفیت ترابری:
"E": "1Hticker", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "پ": "0. 0015", // تغییر قیمت "پ": "250. 00", // درصد تغییر قیمت "ای": "0. 0010", // قیمت باز "ح": "0. 0025", // قیمت بالا "ل": "0. 0010", // قیمت پایین "ج": "0. 0025", // آخرین قیمت "W": "0. 0018", // قیمت متوسط وزنی "v": "10000", // کل حجم دارایی پایه معامله شده "س": "18", // کل حجم دارایی نقل قول معامله شده "ای": 0, // آمار زمان باز "ج": 1675216573749, // آمار نزدیک زمان "F": 0, // شناسه تجارت اول "ل": 18150, // آخرین شناسه تجارت "ن": 18151 // تعداد کل معاملات >
همه جریان های آمار پنجره نورد بازار
آمار تیک تیک پنجره نورد برای همه نمادهای بازار ، محاسبه شده از چندین ویندوز. توجه داشته باشید که فقط تیکرهایی که تغییر کرده اند در آرایه حضور خواهند داشت.
نام جریان:! ticker_@arr
اندازه پنجره: 1H ، 4H ، 1D
سرعت بروزرسانی: 1000ms
ظرفیت ترابری:
[ // همان Ticker_ Payload ، // یکی برای هر نمادی که در فاصله زمانی به روز می شود. > ]
جریانهای تیکت کتاب نماد انفرادی
هر به روزرسانی را به بهترین پیشنهاد یا قیمت یا کمیت سؤال در زمان واقعی برای یک نماد مشخص می کند. چندین جریان bookticker می تواند بیش از یک اتصال مشترک شود.
نام جریان: bookticker
سرعت بروزرسانی: زمان واقعی
ظرفیت ترابری:
"تو":400900217, // سفارش به روزرسانی کتاب "S":"bnbusdt", // سمبل "ب":"25. 35190000", // بهترین قیمت پیشنهاد "ب":"31. 21000000", // بهترین پیشنهاد QTY "آ":"25. 36520000", // بهترین قیمت را بپرسید "آ":"40. 66000000" // بهترین سؤال را بپرسید >
جریان های عمق کتاب جزئی
پیشنهادات برتر و سؤال ، هر ثانیه را تحت فشار قرار می دهد. معتبر 5 ، 10 یا 20 است.
نام های جریان: Depth یا @ @ect @100ms
سرعت بروزرسانی: 1000ms یا 100ms
ظرفیت ترابری:
"lastupdateid": 160, // آخرین شناسه به روزرسانی "پیشنهادات": [ // پیشنهادهایی که باید به روز شوند [ "0. 0024", // سطح قیمت به روز می شود "10" // تعداد ] ], "پرسش": [ // درخواست به روز رسانی می کند [ "0. 0026", // سطح قیمت به روز می شود "100" // تعداد ] ] >
تفاوتجریان
به روزرسانی های عمق و قیمت کتاب سفارش دهید که برای مدیریت محلی دفترچه سفارش استفاده می شود.
نام جریان: @depth یا @depth@100ms
سرعت بروزرسانی: 1000ms یا 100ms
ظرفیت ترابری:
"E": "DepthUpdate", // نوع رویداد "E": 1672515782136, // زمان رویداد "S": "bnbbtc", // سمبل "U": 157, // اولین شناسه به روز رسانی در رویداد "تو": 160, // شناسه به روزرسانی نهایی در رویداد "ب": [ // پیشنهادهایی که باید به روز شوند [ "0. 0024", // سطح قیمت به روز می شود "10" // تعداد ] ], "آ": [ // درخواست به روز رسانی می کند [ "0. 0026", // سطح قیمت به روز می شود "100" // تعداد ] ] >
چگونه می توان یک کتاب سفارش محلی را به درستی مدیریت کرد
- یک جریان به wss://stream. binance. com:9443/ws/bnbbtc@depth باز کنید.
- رویدادهایی را که از جریان دریافت می کنید بافر کنید.
- از https://api. binance. com/api/v3/depth? symbol=BNBBTC& limit=1000 یک عکس فوری از عمق دریافت کنید.
- هر رویدادی را که هستید رها کنید
- The first processed event should have U AND u>= lastUpdateId +1.
- هنگام گوش دادن به جریان، U هر رویداد جدید باید برابر با u +1 رویداد قبلی باشد.
- داده در هر رویداد مقدار مطلق برای یک سطح قیمت است.
- اگر مقدار 0 است، سطح قیمت را حذف کنید.
- دریافت رویدادی که سطح قیمتی را که در دفترچه سفارش محلی شما نیست حذف می کند و طبیعی است.
توجه: با توجه به اینکه عکس های فوری عمقی دارای محدودیت در تعداد سطوح قیمتی هستند، سطح قیمتی خارج از عکس فوری اولیه که تغییر کمیت نداشته باشد، به روزرسانی در Diff نخواهد داشت. جریان عمقی. در نتیجه، آن سطوح قیمت در دفتر سفارش محلی حتی در هنگام اعمال همه به روزرسانی ها از Diff قابل مشاهده نخواهد بود. Depth Stream به درستی انجام می شود و باعث می شود دفتر سفارش محلی تفاوت های جزئی با دفترچه سفارش واقعی داشته باشد. با این حال، برای بیشتر موارد استفاده، محدودیت عمق 5000 برای درک بازار و تجارت موثر کافی است.