به python-binance v1. 0. 17¶ خوش آمدید

ساخت وبلاگ

این یک پوشش غیر رسمی پایتون برای تبادل بایننس REST API v3 است. من به هیچ وجه به Binance وابسته نیستم، با مسئولیت خودتان استفاده کنید.

اگر به دنبال صرافی Binance برای خرید ارزهای دیجیتال به اینجا آمده اید، به اینجا بروید. اگر می خواهید تعاملات با Binance را خودکار کنید، به اطراف خود ادامه دهید.

اگر به زنجیره بایننس DEX جدید بایننس علاقه دارید، به کتابخانه python-binance-chain من مراجعه کنید.

  • اصول Async برای Binance
  • آشنایی با فیلترهای سفارش بایننس

مطمئن شوید که اغلب به روزرسانی می کنید و Changelog را برای ویژگی های جدید و رفع اشکال بررسی می کنید.

امکانات¶

  • پیاده سازی تمام نقاط پایانی عمومی، داده های بازار و حساب.
  • پیاده سازی Asyncio
  • پشتیبانی از Testnet برای Spot، Futures و Vanilla Options
  • مدیریت ساده احراز هویت شامل کلیدهای RSA است
  • نیازی نیست خودتان مهر زمانی ایجاد کنید، لفاف آن این کار را برای شما انجام می دهد
  • رسیدگی به استثنای پاسخ
  • مدیریت سوکت وب با اتصال مجدد و اتصالات چندگانه
  • کش عمق نماد
  • عملکرد واکشی کلین/شمع تاریخی
  • قابلیت برداشت
  • آدرس های سپرده
  • معامله حاشیه
  • معاملات آتی
  • گزینه های وانیلی
  • پشتیبانی از سایر دامنه ها (. us، . jp، و غیره)

ارتقا به نسخه 1. 0. 0+¶

تغییرات نهایی شامل انتقال از wapi به نقاط انتهایی sapi است که مربوط به نقاط پایانی کیف پول است که در Binance Docs توضیح داده شده است.

تغییر شکسته دیگر مربوط به جریان های وب سوکت و Depth Cache Manager است که به استفاده از مدیران زمینه ناهمزمان تبدیل شده اند. نمونه هایی را در بخش Async در زیر ببینید یا سوکت های وب و اسناد کش عمقی را مشاهده کنید.

شروع سریع¶

یک کلید API ایجاد کنید و مجوزهای مربوطه را اختصاص دهید.

اگر از مبادله ای از ایالات متحده، ژاپن یا TLD دیگر استفاده می کنید، هنگام ایجاد مشتری، مطمئن شوید که tld=’us’ را پاس کنید.

برای استفاده از Spot یا Vanilla Options Testnet، هنگام ایجاد کلاینت، testnet=True را پاس کنید.

پیپ نصب پایتون-باینانس 
از جانب باینانس وارد كردن مشتری, ThreadedWebsocketManager, ThreadedDepthCacheManager مشتری = مشتری(کلید ای پی ای, api_secret) # عمق بازار را بدست آورید عمق = مشتری.دریافت_سفارش_کتاب(سمبل='BNBBTC') # یک سفارش خرید در بازار آزمایشی قرار دهید، برای ثبت سفارش واقعی از تابع create_order استفاده کنید سفارش = مشتری.create_test_order( سمبل='BNBBTC', سمت=مشتری.SIDE_BUY, نوع=مشتری.ORDER_TYPE_MARKET, تعداد=100) # تمام قیمت های نماد را دریافت کنید قیمت = مشتری.get_all_tickers() # برداشت 100 ETH # اسناد را برای فرضیات در مورد برداشت بررسی کنید از جانب binance. exceptions وارد كردن BinanceAPIException تلاش كردن: نتیجه = مشتری.کنار کشیدن( دارایی='ETH', نشانی='', میزان=100) بجز BinanceAPIException as e: چاپ(e) دیگر: چاپ("موفقیت") # واکشی فهرست برداشت ها کنار می کشد = مشتری.get_withdraw_history() # لیست واکشی های ETH eth_withdruds = مشتری.get_withdraw_history(سکه='ETH') # یک آدرس سپرده برای BTC دریافت کنید نشانی = مشتری.get_deposit_address(سکه='BTC') # داده های kline تاریخی را از هر محدوده تاریخ دریافت کنید # واکشی 1 دقیقه Klines برای آخرین روز تا الان کولین = مشتری.get_historical_klines("bnbbtc", مشتری.kline_interval_1minute, "1 روز پیش UTC") # 30 دقیقه Klines برای آخرین ماه 2017 کولین = مشتری.get_historical_klines("ETHBTC", مشتری.kline_interval_30minute, "1 دسامبر ، 2017", "1 ژانویه ، 2018") # KLINES هفتگی را از آنجا که ذکر شده است کولین = مشتری.get_historical_klines("neobtc", مشتری.kline_interval_1week, "1 ژانویه ، 2017") # مدیر سوکت با استفاده از موضوعات دوتایی = ThreadedWebsocketManager() دوتایی.شروع() # مدیر حافظه پنهان عمق با استفاده از موضوعات DCM = ThreadedDepthCacheManager() DCM.شروع() دنباله Handle_socket_message(مگس): چاپ(f"نوع پیام: مگس['e']>") چاپ(مگس) دنباله Handle_dcm_message(عمق_): چاپ(f"سمبل عمق_.سمبل>") چاپ("5 پیشنهاد برتر") چاپ(عمق_.get_bids()[:5]) چاپ("5 نفر برتر سؤال می کنند") چاپ(عمق_.get_asks()[:5]) چاپ("آخرین زمان به روزرسانی <>".قالب(عمق_.بروزرسانی_ زمان)) دوتایی.start_kline_socket(بازپرداخت=Handle_socket_message, سمبل='BNBBTC') DCM.start_depth_cache(بازپرداخت=Handle_dcm_message, سمبل="ETHBTC") # با یک نماد گزینه های فعلی جایگزین کنید گزینه_سیمبول = 'BTC-210430-36000-C' DCM.start_options_depth_cache(بازپرداخت=Handle_dcm_message, سمبل=گزینه_سیمبول) # به مدیران رشته ای به موضوع اصلی بپیوندید دوتایی.پیوستن() DCM.پیوستن() 

مثال async ¶

برای اطلاعات بیشتر اصول اولیه Async را برای Binance بخوانید.

وارد كردن بی پروا وارد كردن json از جانب باینانس وارد كردن مبهم, دلهره, دوقطبی درز دنباله اصلی(): # مشتری را آغاز کنید مشتری = در انتظار مبهم.ايجاد كردن() # برخی از درخواست های ساده را اجرا کنید چاپ(json.زباله(در انتظار مشتری.get_exchange_info(), توطئه=2)) چاپ(json.زباله(در انتظار مشتری.get_symbol_ticker(سمبل="btcusdt"), توطئه=2)) # مدیر کارخانه WebSocket Initialise BSM = دوقطبی(مشتری) # با استفاده از async با شنونده ایجاد کنید # این پس از 5 پیام از اتصال خارج و بسته می شود درز با BSM.Trade_socket("ETHBTC") as ts: برای _ in دامنه(5): سر = در انتظار ts.recv() چاپ(frecv سر>') # داده های kline تاریخی را از هر محدوده تاریخ دریافت کنید # واکشی 1 دقیقه Klines برای آخرین روز تا الان کولین = مشتری.get_historical_klines("bnbbtc", مبهم.kline_interval_1minute, "1 روز پیش UTC") # از ژنراتور برای واکشی 1 دقیقه Klines برای آخرین روز تا الان استفاده کنید درز برای کول in در انتظار مشتری.get_historical_klines_generator("bnbbtc", مبهم.kline_interval_1minute, "1 روز پیش UTC"): چاپ(کول) # 30 دقیقه Klines برای آخرین ماه 2017 کولین = مشتری.get_historical_klines("ETHBTC", مشتری.kline_interval_30minute, "1 دسامبر ، 2017", "1 ژانویه ، 2018") # KLINES هفتگی را از آنجا که ذکر شده است کولین = مشتری.get_historical_klines("neobtc", مشتری.kline_interval_1week, "1 ژانویه ، 2017") # یک متن async را تنظیم کنید حافظه نهان عمق و پس از 5 پیام از آن خارج شوید درز با دلهره(مشتری, سمبل="ETHBTC") as dcm_socket: برای _ in دامنه(5): عمق_ = در انتظار dcm_socket.recv() چاپ(f"سمبل عمق_.سمبل> به روز شده:عمق_.بروزرسانی_ زمان>") چاپ("5 نفر برتر سؤال می کنند:") چاپ(عمق_.get_asks()[:5]) چاپ("5 پیشنهاد برتر:") چاپ(عمق_.get_bids()[:5]) # گزینه های عمق گزینه های وانیل همان کار را انجام می دهند ، نماد را به یک مورد فعلی به روز کنید گزینه_سیمبول = 'BTC-210430-36000-C' درز با OptionsDepthCacheManager(مشتری, سمبل=گزینه_سیمبول) as dcm_socket: برای _ in دامنه(5): عمق_ = در انتظار dcm_socket.recv() شمردن += 1 چاپ(f"سمبل عمق_.سمبل> به روز شده:عمق_.بروزرسانی_ زمان>") چاپ("5 نفر برتر سؤال می کنند:") چاپ(عمق_.get_asks()[:5]) چاپ("5 پیشنهاد برتر:") چاپ(عمق_.get_bids()[:5]) در انتظار مشتری.close_connection() if __نام__ == "__main__": حلقه = بی پروا.get_event_loop() حلقه.run_until_complete(اصلی()) 

اهدای

اگر این کتابخانه به شما کمک کرد تا در صورت تمایل کمک مالی کنید.

  • ETH: 0xd7a7fddcfa687073d7cc93e51829a727f9fe70
  • LTC: LPC5VW9AJR1YNDE1HYVEO3KJ9LDHJCRCUZ
  • NEO: AVJB4ZGN7VGSUTARCT94Y7ZYT6D5NDFPBO
  • BTC: 1DKNP6L6ORZRHDECREDIHPZX2SSFMVEBYS

مبادلات دیگر

اگر از زنجیره Binance استفاده می کنید ، کتابخانه زنجیره ای پایتون-مین من را بررسی کنید.

اگر از Kucoin استفاده می کنید ، کتابخانه Python-Kucoin من را بررسی کنید.

اگر از IDEX استفاده می کنید ، کتابخانه Python-idex من را بررسی کنید.

فهرست¶

  • شروع شدن
    • نصب و راه اندازی
    • ثبت نام در Binance
    • یک کلید API ایجاد کنید
    • مشتری را آغاز کنید
    • با استفاده از Spot ، Futures یا گزینه های وانیلی TestNet
    • با استفاده از TLD متفاوت
    • برقراری تماس های API
    • ASYNC API تماس می گیرد
    • محدودیت نرخ API
    • تنظیمات درخواست می کند
    • پینگ سرور
    • زمان سرور را دریافت کنید
    • وضعیت سیستم را دریافت کنید
    • اطلاعات مبادله را دریافت کنید
    • اطلاعات نماد را دریافت کنید
    • تمام اطلاعات سکه را دریافت کنید
    • عکس فوری حساب روزانه دریافت کنید
    • محصولات فعلی را دریافت کنید
    • عمق بازار را بدست آورید
    • معاملات اخیر را دریافت کنید
    • معاملات تاریخی دریافت کنید
    • معاملات کل را دریافت کنید
    • تکرار تجارت کل
    • kline/candlesticks را دریافت کنید
    • kline/candlesticks تاریخی دریافت کنید
    • با استفاده از ژنراتور ، kline/candlesticks تاریخی دریافت کنید
    • قیمت متوسط برای یک نماد دریافت کنید
    • تیک 24 ساعته را دریافت کنید
    • تمام قیمت ها را دریافت کنید
    • کتاب سفارش را دریافت کنید
    • سفارش
    • حساب
    • لیست حساب زیر را دریافت کنید
    • سابقه انتقال حساب زیر را دریافت کنید
    • دارایی های زیر حساب را دریافت کنید
    • داده های بازار
    • سفارش
    • حساب
    • معاملات
    • وام
    • استفاده از WebSocket ThreadedWebSocketManager
    • استفاده از binancesocketmanager websocket
    • با استفاده از TLD متفاوت
    • خطاهای WebSocket
    • استفاده از WebSocket ThreadedDepthCacheManager
    • DepthCacheManager یا OptionsDepthCacheManager استفاده
    • یک مدیر سوکت به اشتراک بگذارید
    • خطاهای WebSocket
    • مثال ها
    • عقب نشینی کنید
    • تاریخ سپرده
    • واکشی تاریخ را واگذار کنید
    • آدرس سپرده دریافت کنید
    • binancerequestexception
    • BinanceAPIException
    • v1. 0. 17-2023-02-21
    • v1. 0. 16-2022-04-09
    • v1. 0. 15-2021-09-27
    • v1. 0. 14-2021-09-08
    • v1. 0. 13-2021-09-08
    • v1. 0. 12-2021-06-03
    • V1. 0. 10-2021-05-13
    • v1. 0. 9-2021-05-12
    • v1. 0. 8-2021-05-11
    • v1. 0. 7
    • v1. 0. 6
    • v1. 0. 5
    • v1. 0. 4
    • v1. 0. 3
    • v1. 0. 2
    • v1. 0. 1
    • v1. 0. 0
    • v0. 7. 11
    • v0. 7. 5. 5Dev
    • V0. 7. 5-2020-02-06
    • v0. 7. 4-2019-09-22
    • v0. 7. 3-2019-08-12
    • v0. 7. 2-2019-08-01
    • V0. 7. 1-2019-01-23
    • v0. 7. 0-2018-08-08
    • V0. 6. 9-2018-04-27
    • v0. 6. 8-2018-03-29
    • V0. 6. 7-2018-03-14
    • V0. 6. 6-2018-02-17
    • V0. 6. 5-2018-02-13
    • V0. 6. 4-2018-02-09
    • v0. 6. 3-2018-01-29
    • v0. 6. 2-2018-01-12
    • v0. 6. 1-2018-01-10
    • V0. 6. 0-2018-01-09
    • v0. 5. 17-2018-01-08
    • v0. 5. 16-2018-01-06
    • v0. 5. 15-2018-01-03
    • v0. 5. 14-2018-01-02
    • v0. 5. 13-2018-01-01
    • v0. 5. 12-2017-12-29
    • v0. 5. 11-2017-12-28
    • v0. 5. 10-2017-12-28
    • v0. 5. 9-2017-12-26
    • v0. 5. 8-2017-12-25
    • v0. 5. 7-2017-12-24
    • v0. 5. 6-2017-12-20
    • v0. 5. 5-2017-12-19
    • v0. 5. 4-2017-12-14
    • v0. 5. 3-2017-12-09
    • v0. 5. 2-2017-12-08
    • v0. 5. 1-2017-12-06
    • v0. 5. 0-2017-12-05
    • v0. 4. 3-2017-12-04
    • v0. 4. 2-2017-11-30
    • v0. 4. 1-2017-11-24
    • v0. 4. 0-2017-11-19
    • v0. 3. 8-2017-11-17
    • v0. 3. 7-2017-11-16
    • v0. 3. 6-2017-11-15
    • v0. 3. 5-2017-11-06
    • v0. 3. 4-2017-10-31
    • v0. 3. 3-2017-10-31
    • v0. 3. 2-2017-10-30
    • v0. 3. 1-2017-10-29
    • v0. 3. 0-2017-10-29
    • v0. 2. 0-2017-10-27
    • v0. 1. 6-2017-10-25
    • v0. 1. 5-2017-09-12
    • v0. 1. 4-2017-09-06
    • v0. 1. 3-2017-08-26
    • v0. 1. 2-2017-08-25
    • v0. 1. 1-2017-08-17
    • v0. 1. 0-2017-08-16
    • v0. 0. 2-2017-08-14
    • ماژول مشتری
    • ماژول DepthCache
    • ماژول استثنائات
    • ماژول یاران
    • ماژول WebSockets
کتاب آموزش بورس...
ما را در سایت کتاب آموزش بورس دنبال می کنید

برچسب : نویسنده : محمود استادمحمد بازدید : 50 تاريخ : دوشنبه 28 فروردين 1402 ساعت: 17:27