Websocket OKX API Python p2 - logging, errors, disconnects and reconnects

Поделиться
HTML-код
  • Опубликовано: 7 июн 2024
  • Easy debugging and error logging when developing trading bots in the OKX API in Python using Websocket. Catching websocket connection breaks and restoring the connection. Error handling from OKX API. This video is a continuation of the previous video about working with the Websocket OKX API in Python • OKX API Websocket + Py... .
    Affilate code for registration on OKX
    !!! Gives you -25% of commission
    www.okx.cab/join/AZZRAELCODE
    Websockets library for Python
    pypi.org/project/websockets/
    OKX Documentation
    www.okx.com/docs-v5/en/#overv...
    Logging in the Websockets library
    websockets.readthedocs.io/en/...
    OKH websocket error codes
    www.okx.com/docs-v5/en/#error...
    🤘 Timecodes
    00:00 What is the video about?
    01:03 Logging Websockets with the logging package
    04:55 Connection breaks - catching and reconnecting
    10:20 Errors and exceptions in data handlers
    15:44 OKX API errors
    .
    .
    .
    #algotrading #okxapi #python

Комментарии • 24

  • @TatyanaDmitrenko-vz7jh
    @TatyanaDmitrenko-vz7jh 20 дней назад

    Отличное видео. Спасибо!

  • @user-uf4dr6kc2h
    @user-uf4dr6kc2h 3 месяца назад

    Мужик, ты крутой, успехов тебе... И деняк конечно)

  • @user-yk4nu7mm9w
    @user-yk4nu7mm9w 4 месяца назад +2

    Тяжелая тема для меня, но все же начинаю разбираться и большей степени благодаря этому материалу. Жду продолжения!

  • @richblessbigsmoke9781
    @richblessbigsmoke9781 5 месяцев назад +1

    эх нашел бы я эти видео год назад, когда в сокетах разбирался) хороший материал)

  • @StanislavObrazcoff
    @StanislavObrazcoff 5 месяцев назад

    Главное - не торговля, главное - как разрулить дисконнекты :)

  • @user-kr6wj3ck1u
    @user-kr6wj3ck1u 5 месяцев назад

    хотелось бы увидеть продолжение в виде взаимосвязанных серий видео от вебсокета до готового рабочего бота на языке Python (самого простого, исключительно в познавательных целях)
    в идеале с обработкой исторических данных (бэктестом), интерфейсом и тд ))
    спасибо за твою работу !!

  • @user-ou3pw7ix1s
    @user-ou3pw7ix1s 5 месяцев назад +1

    Жду 3 часть вебсокета.

  • @ZenLebowski
    @ZenLebowski 2 месяца назад

    лайк, подписота. + .

  • @user-ou3pw7ix1s
    @user-ou3pw7ix1s 2 месяца назад

    Добрый день. Я немного не по теме. Вы когда делали видео про api тинькофф инвестиции, там же был ролик про логгирование при работе с api? Или я путаю, просто найти не могу.

    • @AzzraelCode
      @AzzraelCode  2 месяца назад +1

      Это было так давно, почти в другой жизни, не помню ;)

    • @user-ou3pw7ix1s
      @user-ou3pw7ix1s 2 месяца назад

      @@AzzraelCode очень жаль.

  • @non5309
    @non5309 5 месяцев назад +1

    Здравствуйте! У меня два вопроса: зачем асинхронный sleep, если мы действительно ждем 3 секунды до повторного подключения? Здесь же достаточно и обычного? На практике, как я понимаю, лучше не использовать рекурсивный вызов, хотя бы по причине ограничения глубины рекурсии?

    • @AzzraelCode
      @AzzraelCode  5 месяцев назад +3

      1. Насчет слипа. Конкретно в этом примере, вы правы, можно обойтись синхронным. Но на практике бывает что у вас есть параллельные задачи в рамках скрипта. Например если у вас бот на OKX API. То у вас может будет одна таска с вебсокетом для подключения к приватным ордерам и другая для вебсокета на тикеры. Если у вас отвалится один и мы будем его слипать, то не хотелось бы чтобы другая таска тоже стояла, что случится в сл синхронного слипа.
      2. Вы опять правы )) На практике я просто перезапускаю таску с отвалившимся вебсокетом. А в доках по websockets рекомендован вот такой способ websockets.readthedocs.io/en/stable/faq/client.html#how-do-i-reconnect-when-the-connection-drops . Но в рамках ролика для демонстрации этих способов пришлось бы погружаться в питон больше хотелось бы, хотелось этого избежать.

    • @richblessbigsmoke9781
      @richblessbigsmoke9781 5 месяцев назад

      @@AzzraelCode я вместо рекурсивного вызова просто использую цикл)

    • @AzzraelCode
      @AzzraelCode  5 месяцев назад

      И это правильно, в третьем видосе будет именно такой способ ;)

  • @termitomas
    @termitomas Месяц назад

    Может кто подсказать, к кому можно обратиться по проблеме с этим кодом? Голову уже 5 день ломаю, почему не ставится ордер более 1 раза((

  • @user-nikitisiks
    @user-nikitisiks 5 месяцев назад

    Можешь подсказать, нигде не могу найти информацию об этом. Есть ли возможность отправлять из трейдинг вью задачи на выставление ордеров в метатрейдер 4 через вебхуки? (По аналогии с выставленияси ордеров на okx через стратегию в Трейдинг Вью). Я уже и в вк писал, не знаю как с Вами связаться.

    • @AzzraelCode
      @AzzraelCode  5 месяцев назад

      Я давно не работаю с MetaTrader поэтому ответить на ваш вопрос не смогу. Но сомневаюсь что такое возможно. Вебхуки - это обычные HTTP запросы. Чтобы MT мог их принимать он должен быть где захосчен и работать как вебсервер. Не думаю что метаквотсы планировали такой функционал.

  • @randomra1880
    @randomra1880 3 месяца назад

    Здравствуйте, можете подсказать, в OKX есть rest или wss для получения funding rate(Ставка финансирования) сразу по всем монетам(Я нашел историю, но мне нужны актуальные данные)? И если такого нет, можете подсказать, каким образом можно получить эти данные?

    • @AzzraelCode
      @AzzraelCode  3 месяца назад

      Rest API
      www.okx.com/api/v5/public/funding-rate?instId=BTC-USD-SWAP
      www.okx.com/docs-v5/en/#public-data-rest-api-get-funding-rate
      Websocket
      www.okx.com/docs-v5/en/#public-data-websocket-funding-rate-channel

    • @randomra1880
      @randomra1880 3 месяца назад

      @@AzzraelCode Спасибо, но там же нужно указывать конкретную монету, получается надо будет все 200+ таким способом доставать?

    • @randomra1880
      @randomra1880 3 месяца назад

      Просто на других биржах монжо выгрузить ставку финансирования сразу по всем монетам одним запросом

    • @AzzraelCode
      @AzzraelCode  3 месяца назад

      Да, только по одному. Чтобы сразу по всем инструментам одним запросом, такого запроса нет к сож..

  • @ko-prometheus
    @ko-prometheus 5 месяцев назад

    А в трейдинге, полезны ваши logging??