Как заработать на трейдинге криптовалют? Создаем свой торговый бот для Бинанс

В этой статье мы разработаем прибыльную торговую стратегию, создадим торгового бота для биржи Binance и попробуем заработать на криптовалютном трейдинге.

Как заработать на трейдинге криптовалют? Создаем свой торговый бот для Бинанс

Создаём торговую стратегию

Один из самых успешных фондов Medallion от компании Renaissance Technologies на протяжение более 30 лет демонстрирует рентабельность более 66% годовых. Фонд использует множество торговых стратегий в том числе - высокочастотный трейдниг. Вдохновимся их результатом и реализуем собственную скальпинг стратегию.

Для реализации скальпинг стратегии нам потребуются:

  • низкие комиссионные сборы биржи: 0% для лимитных ордеров
  • высокая ликвидность торгуемого инструмента: $3 млрд в сутки
  • стабильная волатильность на рынке: биткоин
  • небольшой спред: 0,01 - 0,03%

Под данные параметры нам подходит криптовалютная пара BTC/FDUSD на бирже Бинанс.

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

Для начала определим стоп-лимит, например, 60 000. Если цена падает ниже этой отметки, мы просто приостанавливаем торговлю.

Наша сделка будет состоять из пары лимитных ордеров, первый ордер в сделке у нас всегда будет "продажа" (SELL), а второй ордер, закрывающий, соответственно "покупка" (BUY).

Пример прибыльной сделки. Первый ордер SELL по цене 63421.13 , второй BUY 63401.47
Пример прибыльной сделки. Первый ордер SELL по цене 63421.13 , второй BUY 63401.47

Для пары BTC/FDUSD на бирже Бинанс нулевая комиссия за сделку, но только для лимитного ордера. Для маркетного ордера взымается комиссия в 0.1% Для скальпинга это существенная комиссия, поэтому нам необходимо будет избегать проскальзывания, чтобы не платить комиссию бирже.

<a href="https://api.vc.ru/v2.8/redirect?to=https%3A%2F%2Fwww.binance.com%2Fen%2Forderbook%2FBTC_FDUSD&postId=1159558" rel="nofollow noreferrer noopener" target="_blank">Книга ордеров</a> BTC/FDUSD в режиме реального времени.
Книга ордеров BTC/FDUSD в режиме реального времени.

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

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

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

Как только пара ордеров выполнена, мы может открывать новую пару ордеров. Также новую пару одрдеров можно открывать не дожидаясь закрытия предыдущего BUY ордера, если цена выросла более чем на 0,1 от последнего выполненного SELL ордера. Таким образом мы можем продолжать торговлю на новом ценовом диапазоне.

Создаём торгового бота для Binance

Для реализации криптовалютного скальпинг бота возьмем NodeJS и библиотеку Node Binance API, которая позволит ускорить разработку нашего бота.

Устанавливаем библиотеку:

npm install -s node-binance-api

Подключаем библиотеку и активируем API ключ от биржи Binance:

const Binance = require('node-binance-api'); const binance = new Binance().options({ 'APIKEY': 'Ваш API ключ от биржи Binance', 'APISECRET': 'Ваш секретный ключ от биржи Binance' });

Для быстрого и асинхронного получения актуальной информации о цене, балансе и о статусе наших ордеров будем использовать WebSocket:

binance.websockets.bookTickers("BTCFDUSD", onBookTickers); binance.websockets.userData(onBalanceUpdate, onOrderStatusUpdate);

Пример обновления цены в режиме реального времени через WebSocket:

let price = {sell: 0, buy: 0}; function onBookTickers(data) { price.sell = data.bestBid; price.buy = data.bestAsk; }

Вычисляем цену для получения заданной прибыли и открываем лимитный ордер на продажу:

let quantity=0.001;//размер ордера в BTC let profit=0.01;//желаемая прибыль в USD let orderPrice = (price.buy * quantity + profit/2) / quantity; binance.sell("BTCFDUSD", quantity, orderPrice, {type:'LIMIT'}, (error, response) => { console.log("Limit SELL order response:", response); console.log("Order id:", response.orderId); });

Отслеживаем выполнение SELL ордера и выставляем закрывающий BUY ордер:

function onOrderStatusUpdate(data) { let { x: executionType, s: symbol, p: price, q: quantity, S: side, o: orderType, i: orderId, X: orderStatus, c: clientOrderID, C: canceledClientOrderID, n: commissionAmount, Z: actualQuote, L: lastExecutedPrice } = data; if (orderStatus === "FILLED" && side === "sell") {//ордер исполнен let orderPrice = (price * quantity - profit) / quantity; binance.buy("BTCFDUSD", quantity, orderPrice, {type:'LIMIT'}, (error, response) => { console.log("Limit BUY order response:", response); console.log("Order id:", response.orderId); }); } }

В общих чертах наш торговый бот готов. Можем преступать к торговле.

Результаты криптовалютой торговли

Запускаем бота на 5 долларовых ордерах с прибылью $0.001 за сделку:

Лог работы криптовалютного бота на бирже Binace на $5 ордерах.

Работает. За полторы минуты работы тестового запуска бот успел выполнить 2 пары сделок и заработать $0,002.

Запускаем бота на более длительный срок на 150 долларовых ордерах с прибылью $0.04 за сделку SELL/BUY:

Лог работы криптовалютного бота на бирже Binace на $150 ордерах.
Лог работы криптовалютного бота на бирже Binace на $150 ордерах.

За 6,5 часов бот закрыл 258 сделок и получил доход $10,7 и один раз было проскальзование.

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

Если хотите попробовать бота в деле, можете написать мне в телеграм или в личку на vc.ru

Дисклеймер

Многие операции на криптовалютных или любых иных финансовых рынках могут быть высокорискованными. Автор привёл вышеуказанную информацию для ознакомления и не пропагандирует криптовалюты или высокорискованные торговые операции

4343
4 комментария