Установка и настройка бота маркет-мейкинга

Чтобы запустить маркет-мейкинг нужно:

  • Установить программу бота на сервер
  • Создать два аккаунта ADAMANT Messenger
  • Получить API-ключи для биржи
  • Настроить config-файл
  • Запустить бота
  • Настроить маркет-мейкинг

Установить программу бота на сервер

У вас должна быть виртуальная машина или сервер с ОС Ubuntu 18/20 64-bit. Если ее нет, то идем к любому сервису VPS, например, Digital Ocean, Ramnode, Scaleway, Hetzner.

Если на вашей машине больше 40 ГБ диска, 1 ГБ памяти, то рекомендуем установить на нее ноду АДАМАНТа. Это делается одной командой — запуском скрипта install_node.sh в командной строке. С установленной нодой бот будет работать надежнее.

Для работы бота на машину нужно установить MongoDB. Выполните эти инструкции под пользователем root.

Установку бота лучше выполнять под отдельным пользователем, в этом примере — под пользователем adamant. Если вы установили ноду, то пользователь adamant уже есть в системе, а если нет — выполните этап 5 из той же инструкции установки ноды.

Для работы бота на машину нужно установить Node.js для пользователя adamant. Если вы установили ноду, то Node.js уже есть, в если нет — выполните этап 6 из той же инструкции установки ноды.

Теперь можно устанавливать программу бота.

Выберите пользователя adamant:

su - adamant

Скачайте код бота с GitHub:

git clone https://github.com/Adamant-im/adamant-tradebot.git

Перейдите в каталог с ботом:

cd ./adamant-tradebot

Установите зависимости:

npm i

Готово.

Создать два аккаунта ADAMANT Messenger

Бот принимает команды в блокчейн-мессенджере АДАМАНТ. Диалог с ботом зашифрован и защищен от вмешательства посторонних.

На вашем локальном компьютере или смартфоне создайте два аккаунта мессенджера, один для бота и один для себя. Создание аккаунтов занимает меньше минуты: https://msg.adamant.im (Clear-web) или http://adamant6457join2rxdkr2y7iqatar7n4n72lordxeknj435i4cjhpyd.onion (Tor-приложение). Получите бесплатные токены на оба аккаунта. Посмотрите Как пользоваться мессенджером на блокчейне.

В итоге у вас будет два адреса ADM и две пассфразы к ним, например:

Аккаунт-1 для бота:

  • Адрес U7845253844178751258
  • Пассфраза "record pill lizard broom student.."

Аккаунт-2 для вас:

  • Адрес U1470193608913646963
  • Пассфраза "normal fatigue lawn timber round.."

Первым аккаунтом будет пользоваться бот, а со второго вы будете отправлять боту команды. Поэтому откройте мессенджер и войдите в Аккаунт-2, добавьте диалог с вашим ботом и задайте ему имя. Приложение с Аккаунтом-1 открывать не нужно.

Каждое сообщение от вас боту и от бота к вам стоит 0.001 ADM. Бесплатных токенов достаточно на первое время, затем получите больше токенов, участвуя в баунти-кампаниях https://adamant.im/bounty/ или купите немного — на год достаточно по 50 ADM на каждом аккаунте.

Получить API-ключи для биржи

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

Чтобы получить API-ключи, войдите в ваш аккаунт на бирже, и создайте ключи в разделе API. Например, на бирже Resfinex это https://trade.resfinex.com/account/apikey. Вы получите apikey и apisecret. На некоторых биржах, как Bit-Z, нужен также торговый пароль tradepassword.

Пополните на бирже балансы для торговой пары, на которой будете делать маркет-мейкинг. Например, для пары COIN1/USDT нужно пополнить балансы COIN1 и USDT. Не вносите много денег сразу, пока не научитесь управляться с ботом.

Настроить config-файл

Вернитесь к серверу. Перейдите в каталог с ботом:

cd ./adamant-tradebot

Изменяем конфигурационный файл бота в редакторе nano:

nano config.json

Изначально в файле конфигурации указаны параметры по-умолчанию. Их необходимо изменить.

Необходимые параметры:

passPhrase Пассфраза аккаунта бота (Аккаунт-1). Пример:

"passPhrase": "record pill lizard broom student..",

admin_accounts Аккаунты администраторов бота. Их может быть несколько, но вы укажете только один (Аккаунт-2):

"admin_accounts": [
  "U1470193608913646963"
],

exchange и pair Укажите, на какой бирже и с какой торговой парой будет работать бот маркет-мейкинга. Пример:

"exchange": "Resfinex",
"pair": "COIN1/USDT",

apikey, apisecret, apipassword Укажите API-ключи биржи:

"apikey": "0d5sfswsseef63a104f3adf965",
"apisecret": "8JBSQexbvi5wAaMB9ouEjzgTEXHj0qKmn2WIgve4Jajq",
"apipassword": "", // не нужно для этой биржи

adamant_notify or slack Хотя это и не обязательно, мы рекомендуем указать адрес АДАМАНТа или Slack для уведомлений. Для уведомлений в АДАМАНТе лучше создать третий аккаунт.

Другие параметры не меняйте — вы можете сделать это позже. Чтобы сохранить изменения в редакторе nano, нажмите F2, y, Enter.

Настройки сделаны.

Запустить бота

Для запуска бота мы рекомендуем использовать менеджер процессов pm2. Если вы установили на сервер ноду АДАМАНТа, то pm2 уже есть, в если нет — pm2 можно установить командой npm install -g pm2 под пользователем adamant.

Теперь вы можете запустить торгового бота (под пользователем adamant):

pm2 start --name tradebot app.js

Посмотрите логи бота командой:

pm2 logs tradebot

Если бот работает правильно, вы увидите что-то вроде Lovely Trade Bot (U7845253844178751258) started for address U7845253844178751258 (ver. 3.0.17).

Чтобы выйти из режима просмотра логов, нажмите Ctrl^C.

Проверьте, правильно ли работает ваш бот — напишите ему /help. Напишите /balances и бот скажет ваши балансы на бирже. Если бот не отвечает, значит, вы что-то не так сделали. Смотрите логи.

Чтобы бот работал и после перезагрузки машины, добавьте его в cron:

crontab -e

В редакторе добавьте строку в конец

@reboot cd /home/adamant/adamant-tradebot && pm2 start --name tradebot app.js

И сохраните.

Настроить маркет-мейкинг

Перед запуском маркет-мейкинга зайдите на сайт биржи и вручную заполните книгу заказов по вашей торговой паре COIN1/USDT. И на покупку, и на продажу рекомендуем хотя бы по 10 ордеров. Заполнять книги заказов лучше с другого аккаунта, а не с того, который использует бот по API.

Бот будет работать так, как вы ему скажете. Ознакомьтесь со списком команд.

Объемы торгов на бирже — это выполненные ордеры на покупку и на продажу за сутки. Для создания объема бот торгует сам с собой. Он может торговать “в спред”, чтобы не сливать ваши активы, и может покупать из “стаканов” — тогда торги будут выглядеть очень правдоподобно.

Откройте приложение-мессенджер с Аккаунтом-2 и откройте чат с ботом.

Посмотрите ваши балансы на бирже командой /balances.

Установите количество токенов в ордере командой /amount. Например:

/amount 1-250

Бот будет размещать в ордеры в диапазоне от 1 до 250 COIN1.

Затем установите частоту размещения ордеров:

/interval 3-350 sec

Бот будет торговать раз в 3-250 секунд.

Дневной объем зависит и от amount, и от interval. Вы определите эти значения опытным путем.

Теперь можно запустить маркет-мейкинг:

/start mm

Откройте сайт биржи, и посмотрите как торгует бот. Если торги не идут, смотрите логи.

Заполнение книги заказов включено по умолчанию. Изменить это можно командами /enable ob и /disable ob.

Включить поддержку спреда и ликвидности можно командой /enable liq, а контролировать цену — командой /enable pw.

Посмотрите все текущие параметры: /params.

Следите за уведомлениями, которые присылает вам бот. Например, если балансов будет недостаточно для маркет-мейкинга, бот сообщит об этом.

  • Market Making App 2020–2021
  • Если вам понравился бот маркет-мейкинга, посмотрите также баунти-бота.