Чтобы запустить маркет-мейкинг нужно:
У вас должна быть виртуальная машина или сервер с ОС 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
Готово.
Бот принимает команды в блокчейн-мессенджере АДАМАНТ. Диалог с ботом зашифрован и защищен от вмешательства посторонних.
На вашем локальном компьютере или смартфоне создайте два аккаунта мессенджера, один для бота и один для себя. Создание аккаунтов занимает меньше минуты: https://msg.adamant.im (Clear-web) или http://adamant6457join2rxdkr2y7iqatar7n4n72lordxeknj435i4cjhpyd.onion (Tor-приложение). Получите бесплатные токены на оба аккаунта. Посмотрите Как пользоваться мессенджером на блокчейне.
В итоге у вас будет два адреса ADM и две пассфразы к ним, например:
Аккаунт-1 для бота:
Аккаунт-2 для вас:
Первым аккаунтом будет пользоваться бот, а со второго вы будете отправлять боту команды. Поэтому откройте мессенджер и войдите в Аккаунт-2, добавьте диалог с вашим ботом и задайте ему имя. Приложение с Аккаунтом-1 открывать не нужно.
Каждое сообщение от вас боту и от бота к вам стоит 0.001 ADM. Бесплатных токенов достаточно на первое время, затем получите больше токенов, участвуя в баунти-кампаниях https://adamant.im/bounty/ или купите немного — на год достаточно по 50 ADM на каждом аккаунте.
Бот работает с программным интерфейсом API биржи, чтобы получать информацию о текущих ордерах и размещать новые.
Чтобы получить API-ключи, войдите в ваш аккаунт на бирже, и создайте ключи в разделе API. Например, на бирже Resfinex это https://trade.resfinex.com/account/apikey. Вы получите apikey и apisecret. На некоторых биржах, как Bit-Z, нужен также торговый пароль tradepassword.
Пополните на бирже балансы для торговой пары, на которой будете делать маркет-мейкинг. Например, для пары COIN1/USDT нужно пополнить балансы COIN1 и USDT. Не вносите много денег сразу, пока не научитесь управляться с ботом.
Вернитесь к серверу. Перейдите в каталог с ботом:
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
.
Следите за уведомлениями, которые присылает вам бот. Например, если балансов будет недостаточно для маркет-мейкинга, бот сообщит об этом.