Logo hamster-bot
RU EN PT

Загрузка…

Выберите удобный способ запуска бота

Бесплатно
Self-Hosted версия

Скачайте бота и запустите на своём сервере или компьютере. Полный контроль, без ежемесячной платы.


Сборки доступны для:

Windows Linux ARM64 macOS
Скачать бота и инструкции →
Готовый Online бот

Не нужно заниматься хостингом — бот уже запущен и работает на нашем сервере. Получите персональную ссылку сразу после оплаты.

  • Изолированный инстанс бота
  • Поддержка от разработчика
19 USDT / месяц
Купить подписку →
Аренда VPS

VPS (VDS) - виртуальный выделенный сервер.
Для нас VPS это полноценный компьютер. Находится он в датацентре провайдера. И провайдер отвечает за бесперебойную работу сервера и стабильное интернет соединение. Это важно для трейдинга!

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

Какую конфигурацию сервера выбрать: При аренде своего первого VPS сервера можно выбрать просто самый дешевый. Его производительности будет достаточно. Софт оптимизирован и не требовательный к ресурсам.

Провайдеры для примера: zomro.com, contabo.com, melbicom.ru
По возможности воспользуйтесь моей реферальной ссылкой: zomro.com/vps?from=413202 Промокод: zomro_413202

Бот может работать на любой ОС Linux, macOS и Windows.
Рекомендуемые версии ОС  Ubuntu: 20.04 , 22.04 , 24.04

❗️Нужно выбирать локацию сервера не в США. (Обычно все биржи блокируют запросы из США). Регионы Europe и Asia - ОК

Нам предоставляется удаленный доступ к этому арендованному компьтеру. (IP адрес, логин (Обычно root) и пароль)
Подключатся к своему VPS с ОС Linux будем по SSH используя приложение termius (или putty)
Termius можно установить даже на смартфон. Будет достаточно бесплатной версии этой программы. (все предложения купить можно просто игнорировать)

Linux (CLI) | УСТАНОВКА

Вы выбрали путь с арендой личного VPS и Self-Hosted бот

Для начала нужно подключится к своему VPS по SSH используя приложение termius (Это бесплатный софт который настойчиво просит вас купить платную версию)
После оплаты сервера вам выдают IP адрес, логин (Обычно root) и пароль для подключения по SSH.

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

Готово! Бот установлен в папку hb1 и будет запущен сервис с таким же названием hb1.serviece.
В терминале пойдет вывод информации от бота (лог работы) в реальном времени. Можете закрывать termius и переходить к добавлению API ключей и настройке стратегий.


Если вы заменяете файлый бота на сервере вручную по SFTP протоколу - не забывайте команду выдачи исполняемому файлу прав на запуск: chmod +x ./hb_c

Linux (CLI) | ОБНОВЛЕНИЕ

Когда на вашем VPS работает 2 и более ботов:
/opt/hb1
/opt/hb2
/opt/hb3

Для обновления бота в каталоге /opt/hb2 вам нужно выполнить последовательно следующие команды:

Готово! Обновится и перезапустится бот только в папке /hb2. Скрипт сам находит сервис связаный с выбранной папкой.

Linux (CLI) | Поиск ботов на сервере

Если на вашем VPS с ОС Linux было установлено много разных ботов и вы не можете понять какой .service к какой папке бота относится - рекомендую воспользоваться командой:
grep -rl "hb_c" /usr/lib/systemd/system/

Эта команда выведет список всех сервисов в которых есть исполняемый файл hb_c (это исполняемый файл бота). Таким образом вы сможете найти нужный вам сервис и узнать к какой папке он относится.

hamster-bot.com

На картинке видим 5 сервисов, а в папке всего (2) бота - значит есть уже лишние.

Если в качестве искомой подстроки ввести имя каталога то будет выведен список сервисов которые ссылаются на эту папку:
grep -rl "/hb/" /usr/lib/systemd/system/

Если вы хотите удалить сервис бота то нужно выполнить команды:
1. systemctl stop hb2.service - остановить сервис hb2
2. systemctl disable hb2.service - отключить сервис hb2
3. rm -rf /usr/lib/systemd/system/hb2.service - удаление сервис файла hb2.service

Linux (CLI) | Рестарт всех активных ботов на сервере

wget -qO- https://raw.githubusercontent.com/ksandric/hamster-bot/refs/heads/master/restart_all.sh | bash

1. Этот скрипт находит все сервисы связанные с ботом. И отдельно выводит список какие из-них сейчас включены.
2. Перезапускает только включенные с паузой между сервисами в 15 секунд.

hb
Linux (CLI) | Обновление всех активных ботов на сервере

wget -qO- https://raw.githubusercontent.com/ksandric/hamster-bot/refs/heads/master/update_all.sh | bash

1. Этот скрипт находит все сервисы связанные с ботом. И отдельно выводит список какие из-них сейчас включены.
2. Обновляет только активных ботов.

Linux (CLI) | Ручная установка пошагово

Ссылка на видеоинструкцию youtu.be/jxb6aZQwtN4

Для начала нужно подключится к своему VPS по SSH используя приложение termius (или putty)

После этого файл можно запускать вот так ./hb_c но для бота это не годится. нужно создавать сервис - чтобы бот работал в фоне и не закрывался при завершении сеанса в консоли.

Контент файла: hamster-bot_1.service
[Unit]
Description=hamster-bot_1
After=multi-user.target
[Service]
Environment="DOTNET_BUNDLE_EXTRACT_BASE_DIR=%h/.net"
Type=simple
ExecStart=/opt/hb/hb_c
WorkingDirectory=/opt/hb
RestartSec=61
Restart=always
[Install]
WantedBy=multi-user.target


Linux (CLI) | Ручное обновление пошагово

Ссылка на видеоинструкцию youtu.be/FJgu7OfgUWU

Для начала нужно подключится к своему VPS по SSH используя приложение termius (или putty)

В примере название сервиса: "hamster-bot_1.service".
Папка в которой находятся файлы бота: "/opt/hb"

  1. Закрыть бота (остановить сервис)
    systemctl stop hamster-bot_1.service
  2. Перейти в папку с ботом
    cd /opt/hb
  3. Скачать zip архив
    wget https://github.com/ksandric/hamster-bot/blob/master/hb_linux-x64.zip?raw=true
  4. Распаковать архив с заменой файлов (файл settings_program.json проигнорируется)
    unzip -u hb_linux-x64.zip?raw=true -x settings_program.json
  5. Удалить архив zip
    rm -rf hb_linux-x64.zip?raw=true
  6. Снова выдать файлу права на запуск
    chmod +x ./hb_c
  7. Запустить бота
    systemctl restart hamster-bot_1.service
  8. Готово! Бот продолжит работу по вашим настройкам. Всё делается налету без закрытия позиций и ордеров
Рекомендация по администрированию

Если на вашем VPS с ОС Linux мало памяти:
hamster-bot.com

(1) Просмотр доступной и занятой памяти:
df -h

(2) Утилита с визуализацией занимаемой памяти. Для удобного поиска тяжелых папок:
ncdu /

Часто замечаю что в системах на Ubuntu с малым объемом памяти системные логи могут занимать много места. Эти две команды освободят место:
journalctl --vacuum-size=100M
rm /var/log/*.[0-9]

Но лучше поправить конфиг чтобы такие ситуации не наступали.

Логи бота тоже в некоторых ситуациях могут занимать много места. они лежат в папке /logs и так выглядят параметры лога в конфиге:
"log": {
"log_months": 2, -сколько месяцев хранить логи
"debug_mode": false,
"log_size_mb": 50, -ограничение размера фала лога
"log_files_count": 5 -ротация файла N раз при достижении лимита размера },

В логах бот выводит загрузку CPU RAM и диска. И отправляет алерт в telegram при критических значениях.

WatchDog — уведомление об офлайне бота

WatchDog — это отдельный независимый сервис (работает на внешнем сервере), который следит за тем, что ваш бот жив и работает. Если бот перестаёт выходить на связь — вы получаете уведомление в Telegram: WARNING! Bot is offline.

Настраивается в файле settings_program.json:

Причины срабатывания:

Запуск на MacOS

В архиве уже есть скрипты: mac_sign.sh — для подписи, run_tester_mac.sh — для запуска тестера.

После запуска исполняемого файла WEB интерфейс бота доступен в браузере локальн по адресу http://127.0.0.1:80.

Запуск на Windows

Инструкция как открыть порт в ОС Windows

После запуска исполняемого файла WEB интерфейс бота доступен в браузере локальн по адресу http://127.0.0.1:80. Если бот запущен на сервере то интерфейс будет доступен по IP адресу вашего сервера на порту из конфиг файла.

Рекомендуется установить Dimension 4 или nettime для синхронизации времени на windows

Подключение telegram:

hamster-bot.com