docs-api icon indicating copy to clipboard operation
docs-api copied to clipboard

[پیشنهاد]: کاهش محدودیت api

Open ApolloAidin opened this issue 3 months ago • 1 comments

نیازمندی

با سلام و وقت بخیر، من در حال نوشتن یک کد بازارساز هستم که با سفارش گذاری تعهدی روی رمزارزهای نوبیتکس که اسپرد بالا دارن در دفتر حساب شون، سودهای مقطعی کوچک اما مطمئن کسب کنم. اما با وجود این که من تمام تدابیر رو برای صبر کردن به اندازه ی بک آف دریافتی از ای پی آی به کار گرفتم باز بعد از مدتی که ربات فعالیت میکنه از قرار دادن دستور بستن موقعیت عاجر میشه و دسترسیش به حساب عملا از کار میوفته با تکرار کد 429... در نظر داشته باشید من از یک آی پی ثابت در ترکیه ارتباط میگیرم. لذا نیازمندم محدودیت کمتری برای ارسال درخواست داشته باشم. ضمناً بهتره توضیح بدم که مشکل کد 429 رو در زمان ارسال سفارش لیمیت ندارم، بلکه بعد از باز شدن یک موقعیت و شروع ارسال سفارش بستن موقعیت در سمت مقابل هست که با مشکل رو به رو میشم.

راه‌حل

برداشتن یا کاهش محدودیت سفارش گذاری و ارسال دستور بستن سفارش تعهدی برای حسابم و رباتی که از یک آی پی ثابت با حسابم در تماس هست. این برای من به عنوان معامله گر سود آور و برای نوبیتکس هم با دریافت کارمزد معاملات من سودآور خواهد بود و نتیجه برد-برد حاصل میشه. ممنون میشم کمک بفرمایید.

امکانات مشابه

No response

توضیح تکمیلی

مجدد تاکید میکنم، این محدودیت بیشتر وقتی از دستور بستن موقعیت تعهدی که اخیراً به مستندات نوبیتکس اضافه شده استفاده میکنم پیش میاد و موقع سفارش گذاری مشکل کمتری دارم...

ApolloAidin avatar Nov 05 '25 19:11 ApolloAidin

سلام. وقت شما بخیر. حدودا یک روز پیش از زمان ثبت تیکت شما ما یک اختلال موقت روی ریت‌لیمیت‌ها داشتیم. می‌خواستم بدونم مشکل تون هنوز برقراره؟

برای رفع مشکلات ریت‌لیمیت، وقتی که مشکلی در رفتار می‌بینید که با مستندات همخوانی نداره، نیاز داریم که IP و حساب کاربری و user agent درخواست شما و متن پاسخ کامل خطای 429 رو برای عیب‌یابی از شما دریافت کنیم.

در این موارد، بهتره با تیکت‌گذاری با موضوع معاملات، با کارشناسان ما به طور اختصاصی‌تر ارتباط بگیرید.

با این حال، یک سری نکات از مستندات نوبیتکس که می‌تونه بهتون کمک کنه رو بازگو می‌کنم.

در صورت برخورد به خطای 429 Too Many Requests شما پاسخی به صورت زیر دریافت می‌کنید:

{
  "status": "failed",
  "code": "TooManyRequests",
  "message": "تعداد درخواست شما بیش از حد معمول تشخیص داده شده. لطفا 12 ثانیه صبر نمایید.",
  "backOff": 12,
  "limit": 60
}

در بیشتر اندپوینت‌های معاملاتی ما در بازار، مقدار محدودیت دقیقی که ازش عبور شده رو در فیلد limit خواهید یافت. این محدودیت در صورتی که User-Agent درخواست خودتون رو مطابق با مستندات نوبیتکس مقداردهی کرده باشید، معمولا بیشتر از مقدار وارد شده در مستندات هست. اما ممکنه در زمان‌های محدودی که فشار روی سیستم زیاده، کمتر از حالت طبیعی باشه.

به کمک این محدودیت می‌تونید بررسی کنید که محدودیت درج سفارش تعهدی شما با بستن اون یکسان هست یا خیر. تنظیمات فعلی این دو مقدار رو یکسان در نظر گرفته.

توی سفارش‌گذاری، ما یک محدودیت مشترک میان همه سفارش‌گذاری‌های اسپات و تعهدی داریم. برای مثال اگر اون محدودیت ۳۰۰ درخواست در ۱۰ دقیقه باشه، هم توی سفارش‌گذاری جهت باز کردن موقعیت و هم توی بستنش لحاظ می‌شه. اگر همه ۳۰۰ درخواست صرف باز کردن بشه، برای بستن لازم می‌شه که ۱۰ دقیقه صبر کنید.

گاهی ممکنه به دلیل رفتارهای نامناسب برخی بات‌ها، IP یا توکن کاربر به مدت کوتاهی متوقف بشه. نمونه رفتار نامناسب می‌تونه به این صورت باشه:

  • با توکن اشتباه یا منقضی مرتب به سیستم درخواست زده بشه.
  • بعد از دریافت خطای محدودیت درخواست، مرتب با دفعات بالا درخواست تکرار بشه و به پارامتر backoff توجهی نشه.

گاهی پیش میاد که یک بات از وقوع چنین حالاتی در کد خودش بی‌خبره. در این صورت ما در فرایند دیباگ توی لاگ‌های سیستم چک می‌کنیم و بهش اطلاع می‌دیم.

در پایان، روی عدد دقیق نیازمندی شما به ریت‌لیمیت می‌شه صحبت کرد و در صورتی که رفتار معاملاتی سالم بات شما محرز بشه، امکان افزایش این محدودیت‌ها وجود داره. که برای این شرایط بهتره ارتباط از طریق تیکت باشه تا داده‌های شما در بستری محفوظ بررسی بشه.

فعال شدن بیشتر بات‌های معاملاتی روی بازار تعهدی نوبیتکس می‌تونه خیلی جالب و مفید باشه و ما از همکاری سازنده با شما در این زمینه استقبال می‌کنیم.

روزتون بخیر.

z-amini avatar Nov 10 '25 15:11 z-amini