Автоматизированная торговая система hamster-bot


Скачать

Cсылки на скачивание актуальной версии 2.0241116:
Win -> Download NEW Win - Download previous version Win
Linux -> Download NEW Linux - Download previous version Linux
macOS -> Download NEW macOS - Download previous version macOS


  • Для всех стратегий доступны бэктесты для проверки и подбора настроек на исторических данных. Также ожидается скорый анонс собственного точного тикового тестера стратегий.
  • Уведомления о сделках в telegram
  • WEB интерфейс. Для удобного мониторинга работы бота и быстрой смены настроек без необходимости заходить на свой сервер. Вы можете открывать WEB интерфейс бота из любого места с любого браузера просто открывая страницу бота по ip адресу вашего сервера.
  • Кроссплатформенный. Имеется нативная сборка под любую ОС.
  • Консольный интерфейс для продвинутых пользователей.
  • Оптимизация одновременной работы множества аккаунтов и вариантов настроек в одном боте. Протестирована на стабильность работа более 2000 ботов в одном процессе. При этом потребление ресурсов системы крайне незначительны. Для примера бот работающий на пяти стратегиях по трем аккаунтам потребляет всего 70 МБ памяти.
  • Множество доступных торговых стратегий.
    • Трендовые
    • Контртрендовые
    • Пробойные
    • Возврат к среднему
    Что позволяет составить комбинацию стратегий для свего уникального портфеля стратегий. Есть возможность авторебалансировки своего портфеля чтобы стратегии делились профитом/убытком между собой.
    Вы можете торговать любую стратегию в hamster-bot - просто оставляйте заявку через форму forms.gle/RLVqNCjg4dtosqmF6

Инструкция:

Видео инструкции
Инструкция по установке и запуску на Linux

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

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

  • Создать папку для бота (в примере имя папки "hb")
    mkdir -p /opt/hb
  • Перейти в каталог
    cd /opt/hb
  • Скачать zip архив
    wget https://github.com/ksandric/hamster-bot/blob/master/hb_linux-x64.zip?raw=true
  • Если не установлен unzip - установить
    sudo apt install unzip
  • Распаковать архив
    unzip hb_linux-x64.zip?raw=true
  • Удалить архив zip
    rm -rf hb_linux-x64.zip?raw=true
  • Дать файлу права на запуск командной (исполняемым файлом является - hb_c)
    chmod +x ./hb_c

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

  • Перейти в каталог
    cd /usr/lib/systemd/system/
  • Создаем файл hamster-bot_1.service. Создать файл можно командой:
    nano hamster-bot_1.service
    (имя может быть любое, формат всегда .service. Таким образом можно создать Множество сервисов но только смотрите чтобы в конфиг файле у ботов были разные порты указаны)

Контент файла: 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

  • Cохранить изменения и закрыть файл Ctrl+x далее нажимаем клавишу Y и затем клавишу Enter
  • Выполнить команды:
    • systemctl daemon-reload
    • systemctl enable hamster-bot_1.service
    • apt-get update
    • apt-get install -y libfreetype6
    • apt-get install -y libfontconfig1
    • apt-get install -y fontconfig
    • sudo timedatectl set-timezone UTC
    • Дополнительно можно установить fail2ban:
      apt-get install fail2ban
  • Для открытия порта на котором вы запускаете бота чтобы web интерфейс был доступен из любого браузера по IP адресу вашего сервера (в примере порт 80):
    • iptables -I INPUT -p tcp --dport 80 -j ACCEPT
    • ufw allow 80
  • Для запуска сервиса выполните команду:
    systemctl start hamster-bot_1.service
  • Готово! На этом этапе сервис уже доступен и автоматически будет запускаться при запуске сервера (+ авторестарт если выключится). Для управления сервисом:
    • Смотреть вывод в консоль в реальном времени (лог работы): journalctl --follow -u hamster-bot_1.service
    • Посмотреть текущее состояние: systemctl status hamster-bot_1.service
    • Остановить: systemctl stop hamster-bot_1.service
    • Выключить: systemctl disable hamster-bot_1.service
    • Перезапуск: systemctl restart hamster-bot_1.service
  • После запуска чтобы читать лог бота в реальном времени нужно:
    • Перейти в папку cd /opt/hb/logs
    • Открыть лог tail -f log_тут_дата_лога.log (это общий файл лога + бот пишет логи еще отдельно по каждой стратегии)

Инструкция по обновлению бота на Linux

Ссылка на видеоинструкцию 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. Готово! Бот продолжит работу по вашим настройкам. Всё делается налету без закрытия позиций и ордеров
Запуск на MacOS

Не знаю зачем но такая возможность имеется

  • Скачать архив https://github.com/ksandric/hamster-bot/blob/master/hb_osx-x64.zip?raw=true
  • Распаковать архив в папку hb на рабочем столе
  • Открыть командную строку (terminal)
  • Перейти в папку с программой. Выполнить команду в терминале cd Desktop/hb
  • Дать права на запуск chmod a+x hb_c
  • Запустить бота ./hb_c
  • открыть браузер (safari) и перейти по адресу: 127.0.0.1
Подключение telegram:
    Получение токена для входа в WEB интерфейс
  • После нажатия кнопки "Get token" - Токен отправляется сообщением от telegram бота @new_hamster_bot
  • Чтобы бот мог отправить вам личное сообщение нужно начать с ботом диалог нажав кнопку /start
  • Однаразовый токен на вход выглядит примерно вот так: re0hcc4rIE6cYUI
  • Время действия токена = 24 часа с момента создания
  • ⚠️ Сообщение отправляется по вашему telegram id. Этот id должен быть прописан в файле settings_program.json параметр "telegram_id" (для применения изменений нужно перезапустить приложение ⚠️)
  • Получите свой "telegram_id" используя бота @getmyid_bot
    Получение уведомлений от бота в telegram
  • Id чата в который нужно отправить уведомление должен быть прописан в файле settings_program.json параметр "id_chat"
  • Получите "id_chat" нужного чата используя бота @getmyid_bot. Если нужно получить id_chat конкретного чата - нужно добавить бота @getmyid_bot в чат и он сразу пришлет id (для чата это отрицательное число). Для получения id_chat у telegram канала - перешлите любой пост с канала боту @getmyid_bot
  • (опционально) Вы можете прописать в файле настроек settings_program.json токен от своего телеграм бота. "bot_token": "",. Но токен на вход в WEB интерфейс отправляет только бот @new_hamster_bot
  • Для более гибкой настройки уведомлений вы можете прописать отдельно для каждой настройки стратегии индивидуальный чат. Раздел в настройках "tg_notification" параметр "id_chat"

hamster-bot.com

Рекомендуемый VPS contabo.com VPS S 5.99€ (алтернативы: melbicom, zomro)

Рекомендуемая версия ОС Ubuntu 20.04

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

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


Контакты: разработчик @dreamcast2 | актуальные новости в Telegram канале | chat

Donate bitcoin address 1JjzXNVKdbPscPFMXNptgtTM9KekTiz63a
Donate USDT TRC-20 address $ TQrGSbDM2wqvRqrmZKryEZAaedDzTYEhnc