Настройка торгового бота для binance

Как создать бота для торговли на бирже Binance

В данной статье мы расскажем вам о том, как создать и настроить вашего первого бота. Данная инструкция поможет вам лучше разобраться в интерфейсе и параметрах настройки. Итак, приступим:
Регистрируемся и логинимся в https://revenuebot.io/, переходим во вкладку «Bots» (https://app.revenuebot.io/office/#/bots/)

Раскрываем меню «CREATE NEW BOT»…

Идентификация, API и кошелек бота

Bot name: Название бота (чаще всего в названии используются характеристики: биржа, торговая пара криптомонет, алгоритм работы и тп.)

Exchange: Выбираем биржу в выпадающем списке (рассмотрим на примере Binance)

Как только вы выберете биржу вам станут доступны следующие поля для заполнения:

Pair: Выбрать торгуемую пару криптомонет. О том, как выбрать эффективную торговую пару подробно написано тут — «Как подобрать эффективную торговую пару криптомонет»

API key: Выбрать API ключ из ранее созданных, либо создать новый.

Depo: Выбрать виртуальный кошелек из ранее созданных, либо создать новый, где ввести:

Commission: Выбрать вариант комиссии, которая будет применятся биржей. Данная настройка актуальна только для биржи Binance, так как на ней возможна оплата комиссии в третьем токене, который не участвует непосредственно в текущей торговле (BNB токен).

Для использования такого вида комиссии, необходимо активировать ее в аккаунте биржи Binance. Рекомендуем всегда использовать этот вид оплаты комиссии торговли на бирже Binance, так как это дешевле.

Необходимо лишь следить, чтобы BNB был на аккаунте. Для этого наш бот проверяет баланс BNB токена перед каждым пуском. Если баланс токена меньше необходимого, то бот не запускается в работу и отправляет нотификацию пользователю с информацией о необходимости пополнить баланс BNB токена для начала торговли.

Алгоритмы работы бота и его настройки

Algo: Выбрать алгоритм работы бота.

Бот использует API интерфейс бирж для выставления ордеров по выбранному алгоритму и отслеживания их выполнения.
На данный момент существует два алгоритма работы бота RevenueBot:

После выбора алгоритма работы бота, пользователю предлагается воспользоваться шаблонами настройки данного алгоритма: Light trade mode, Normal trade mode, Extreme trade mode.

Все поля настроек заполнятся автоматически при выборе любого из предложенных шаблонов.

Rate cover: Процент перекрытия изменения цены для расчета сетки ордеров. Данная настройка определяет в процентах отступ последнего ордера в сетке ордеров.

First order indent: Отступ в процентах первого ордера в сетке ордеров.

Price rate to use: Выбор рейта на бирже, от которого вести расчет сетки ордеров. Это могут быть рейты buy, sell, average.

Orders matrix, martingale: Сетка ордеров и мартингейл.

Тут задается количество ордеров в сетке и мартингейл (на сколько процентов каждый следующий ордер в сетке будет весомее предыдущего). Кликнув на view orders matrix, Вы сможете увидеть рассчитанную сетку ордеров.

Profit: Тут задаем в процентах профит, который будет заложен ботом при расчете цены завершающего цикл ордера.

Profit coin: Данная настройка доступна только для алгоритма short. Задает в какой из торгуемых монет будет профит.

Cycle up: Бывает, что бот выставил сетку ордеров, а цена ушла в другую сторону. Получается, что нужно ждать пока цена не вернется, а ждать можно долго.

Читайте также:  Рентабельность окупаемости издержек производства

Этого ожидания можно избежать, настроив актуализацию сетки ордеров к текущей цене. Тут задается процент, при достижении которого, текущая сетка ордеров отменяется и выставляется новая.

Sleep before cancel orders for cycle up: Тут задается задержка в минутах, перед тем как начать отменять текущую сетку ордеров, когда срабатывает настройка Cycle up.

Данная настройка позволяет избежать частых отмен текущей сетки ордеров, когда цена за очень короткое время изменилась и вернулась к прежнему уровню.
Можно выждать некоторое время, чтобы зря не снимать текущую сетку ордеров.

Sleep before cycle up after cancel orders: Тут задается задержка в минутах перед выставлением новой сетки после отмены предыдущей сетки ордеров.

Данная настройка также позволяет избежать негативных последствий в ситуации, когда цена за очень короткое время изменилась и вернулась к прежнему уровню.

Sleep after end of cycle: Тут задается задержка в минутах перед тем как начать новый цикл после завершения текущего цикла.

Так же можно задать каждую из этих настроек самостоятельно и сохранить свой шаблон.

Дополнительные настройки

add revenue to depo: При получении прибыли можно добавлять ее к депозиту который использует бот, таким образом увеличивая депозит.
При включенной настройке весь профит от работы бота зачисляется на виртуальный кошелек, который использует данный бот.

logarithmic scale for orders: Обычно сетка ордеров рассчитывается так, что все ордеры в ней расположены линейно, на одинаковом расстоянии друг от друга по всему перекрытию цены.

При небольших колебаниях цены будут чаще всего выполняться первые, самые маленькие по объему, ордеры в сетке.
Чтобы вовлечь побольше депозита в торговлю при небольших колебаниях цены, можно использовать логарифмическое распределение, которое позволит повысить плотность ордеров вблизи текущей цены и понизить плотность ордеров при удалении от текущей цены.

Плотность ордеров можно настроить для разных ситуаций по разному с помощью коэффициента logarithmic factor увеличивая или уменьшая его.
Для большинства случаев подойдет значение logarithmic factor = 1.5.

Кликнув на «view orders matrix», Вы сможете увидеть рассчитанную сетку ордеров.

cost limit: Используйте эту настройку, чтобы не начать покупать слишком дорого и не начать продавать слишком дешево.
Задает максимальную цену, выше которой бот не начнет цикл для алгоритма Long и минимальную цену ниже которой бот не начнет цикл при алгоритме Short.

fix first partial order with profit: Бывает, что первый ордер в сетке частично выполнился, но цена пошла в другую сторону. Такое случается, когда бот оперирует большим депо и ордеры в сетке довольно объемные, даже самый первый.

В такой ситуации можно долго ждать возвращения цены и выполнения ордера полностью, чтобы работа алгоритма продолжилась. Включив данную настройку можно задать процент профита для расчета такой цены, при достижении которой мы получим профит, если отменим частично выполненный ордер и выставим на его сумму завершающий цикл ордер. Ведь цена ушла в ту сторону, где мы получим профит, просто ордер оказался слишком объемным.

Фильтры для старта бота

Мы рекомендуем всегда настраивать фильтры для старта бота. Они необходимы для того, чтобы бот начал торговлю в самое выгодное время, основываясь на выбранном алгоритме торговли и ваших предпочтениях. Подробнее читайте тут: «Фильтры для старта бота. Описание и настройка.»

Уведомления

Выставляем необходимые уведомления: WEB, E-mail, SMS, Telegram

И нажимаем «Create New Bot».

Поздравляем! Вы создали своего первого бота для биржи!

Источник

ВСЕ О CLOUDBOT

первый облачный бот для торговли на криптовалютных биржах

Настройка бота для торговли на BINANCE

BINANCE немного отличается от других бирж несколькими деталями, имеющими важные последствия при торговле ботом: возможность биржи снимать комиссию не в валютах сделки, а в BNB, а так же очень грубые требования к точности чисел в ордерах (в основном это касается количества). Оба этих нюанса должны быть учтены при торговле ботом. О том, как настроить бота для торговли на BINANCE и почему именно так я и расскажу в этом посте.

Читайте также:  Защита рампы рено симбол

Начнем с вопроса о точности чисел. Каждая биржа, и BINANCE не исключение, требуют, что бы числа в ордере (количество и цена) соответствовали определенному формату по точности (количество знаков после запятой). Более того, на многих биржах эта точность разная для разных пар. Требование выражается в том, что если числа содержат больше знаков после запятой, чем задано, то биржа отвергает такие команды создания ордера (через API) либо выводит вам на экран соответствующее сообщение и не создает ордер (при попытке его создать через web). Так же иногда при работе через web биржа просто не дает ввести больше знаков после запятой, чем допустимо.

Во время работы бота все числа после расчетов имеют очень большую точность, всегда превышающую требования любых бирж. Например, вы выставляли ордер на покупку 1,34562 BTC и он исполнился. Обычно биржа берет свою комиссию в конечной валюте сделки. Предположим, что комиссия биржи 0,2%. Это значит, что после исполнения вашей закупки на счет вам упадет на 0,2% меньше средств, чем покупалось, и бот должен это учесть. Отнимем 0,2% от суммы закупки и получим 1,342934131736527. У нас получилось 15 знаков после запятой. Теперь бот должен выставить продажу на эту сумму. Но мы не можем этого сделать, потому что биржа требует, к примеру, максимум 8 знаков после запятой.

Для решения проблемы бот всегда округляет значения до уровня требований биржи (эти требования бот умеет получать от биржи через API). В данном случае бот проведет округление количества до 8 знаков, по правилу «всегда вниз», поскольку при округлении вверх нам просто не хватит средств на ордер. Наше число превратится в 1,34293413.

Это все хорошо работает до тех пор, пока мы не начинаем работать на BINANCE. У этой биржи правила округления гораздо строже других. Например, для пары ETH/BTC она требует максимум 3 знака после запятой. Отсюда вытекает минимальный ордер: 0,001 ETH.

Так же есть еще одно требование биржи, которое так и называется — минимальное количество (бывает объем) ордера. Для этой пары на этой бирже объем ордера (произведение цены на количество) не может быть меньше 0,001 BTC.

Минимальный депозит для торговли ботом

Мы определили минимальный объем ордера 0,001 BTC. Бот же создает не один ордер, а много. При стандартных настройках это 20 ордеров. Для простоты примем что у нас нет мартингейла, а следовательно все ордера могут быть равны минимально допустимому. Получается, на таблицу нам понадобится 0,001 * 20 = 0,02 BTC, то есть 134 USDT. С мартингейлом будет еще больше. На многих других биржах, практически на всех, требования куда более демократичные, и торговать можно и с 50, и с 30 USDT.

Округления количества и BINANCE

А теперь представим, как будет работать бот на BINANCE, паре ETH/BTC и стандартной схеме снятия комиссии (напомню, она по умолчанию снимается в конечной валюте сделки).

Мы покупаем 0,025 ETH по цене 0,042 BTC. Как результат нам на счет падает 0,025 — 0,2% = 0,024950099800399 ETH, мы потратили 0,025 * 0,042 = 0,00105 BTC.

Далее нам надо продать все вырученное с профитом 1%. То есть нам после продажи нужно выручить на 1% больше средств, чем мы потратили. Помним, что биржа после продажи так же снимет комиссию, но уже в BTC. Считаем, какую сумму мы должны выручить: 0,00105 + 1% + 0,2% = 0,001062621 BTC. Для того, что бы выручить эту сумму, мы должны продать все ETH, которые купили. А зная сумму и количество, мы можем посчитать цену продажи: 0,001062621 / 0,024950099800399 = 0,04258984968 BTC.

Читайте также:  Состав заемных источников финансового обеспечения инвестиций

Итого, мы посчитали наш фикс: 0,024950099800399 ETH по цене 0,04258984968 BTC.

И вот тут мы должны округлить наше количество до 3 знаков после запятой, иначе мы не сможем выставить ордера. Округляем вниз и получаем 0,024 ETH. То есть продав это количество по расчетной цене, мы выручим 0,00102215639232 BTC, что на 3,81% меньше расчетного, и даже меньше, чем мы потратили! Недополученная часть осталась в ETH на счету, и неизвестно когда и по какой цене она будет продана.

Глядя на расчеты выше, мы видим, что чем больше размеры ордеров превышают минимально допустимые, тем меньше получается погрешность. Именно по этому в свое время была введена проверка, которая проверяет насколько размер ордера превышает минимально допустимые значения, и если размер ордера менее чем в 100 раз больше минимально допустимого, то торговля не происходит и мы получаем в журнал сообщение об ошибке: Order amount too small. Bot can’t trade with such small deposit. Please, increase deposit or change settings to make order amount at least 3 significant digits.

Таким образом, минимальный ордер бота для BINANCE становится в 100 раз больше минимально допустимого биржей, то есть для пары ETH/BTC это 0,001 * 100 = 0,1 ETH. При 20 ордерах минимальный депозит получается аж 2 ETH, то есть 560 USD по текущему курсу. Это очень много во многих случаях. Но, к счастью, есть решение (о нем ниже).

Комиссия не в валюте сделки

Стандартным способом снятия комиссии для BINANCE является снятие в конечной валюте сделки. То есть если вы покупаете ETH за BTC, комиссия будет снята в ETH. Если продаете ETH за BTC — за BTC. Однако есть еще один вариант настройки комиссий на BINANCE — снятие комиссии в BNB независимо от валют сделки. Даже больше — у них есть бонусная программа, по которой первое время при настройке комиссии на BNB вы получаете скидку на комиссию. Этих нюансов бот не знает. Он знает стандартный способ снятия комиссии и её размер, который запрашивает у биржи через API.

А теперь самое главное:

Настройка бота для учета комиссии в BNB и снятия лимита на минимальный ордер в стократном размере

Настройка весьма проста. У бота в параметрах стратегии есть возможность указать комиссию биржи вручную. Нам нужно сказать боту, что бы он не учитывал комиссию биржи, а учесть её самостоятельно в настройках профита стратегии. Таким образом, мы должны:

  • указать боту комиссию биржи 0%
  • увеличить значение профита на удвоенное значение нашей реальной комиссии.
  • настроить аккаунт на BINANCE на снятие комиссии в BNB.
  • положить на счет некоторое количество BNB для комиссий.

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

Все! Удачной торговли, если у вас остались какие-либо вопросы — пишите, не стесняйтесь.

Источник

Оцените статью