BybitScalp_Spot Bot

Автоматический торговый бот для спотовых пар к USDT Bybit. Скальпинг по дельте и индикаторная торговля. Усреднение позиций, лимитные TP/SL, трейлинг-стоп.

Основные параметры

  • kline_intervalдлительность свечи (сек) – режим дельты
  • multi_klineнесколько (3) параллельных произвольных свечей (Каждая свеча начинается со своей ценой и временем, которые обновляются каждые kline_interval / 3) (True/False), отключает price_rollback
  • kline_deltaдиапазон дельты, "2%..4%"
  • super_kline_deltaдиапазон дельты для super_asset ( по умолчанию '0%..10%')
  • price_rollbackрасчет цены от экстремумов в kline_interval (True/False)
  • start_orderначальный объём ордера в USDT
  • max_open_posмакс. кол-во открытых позиций

Фильтры отбора пар

  • min_turnover_24мин. 24ч объём (USDT)
  • delta_24диапазон % изменения от 24ч минимума цены, "12.5%..24%"
  • delta_1hдиапазон % изменения от цены 1ч назад
  • delta_30moff или диапазон % изменения от цены 30 минут назад, проверяется непосредственно перед открытием позиции, запрос занимает 0.2-0.3 сек
  • delta_7Doff или диапазон % изменения от цены 7 дней назад, проверяется непосредственно перед открытием позиции, запрос занимает 0.2-0.3 сек
  • delta_24_from_lowTrue: для фильтров отбора использовать lowPrice24h, False: использовать prevPrice24h (цена 24ч назад)
  • max_volatility_pctфильтр отбора пар- максимальный процент волатильности экстремумов 24 от prev24
  • time_select_pairпериодичность отбора пар по фильтрам в минутах

Риски & TP/SL

  • Take_percтейк-профит в %
  • Loss_percстоп-лосс в %
  • BreakEvenвключение безубытка, 'off' или 2 числа- BreakEven % и trailing_stop % (например, '1.4 0.5') для выставленния trailing_stop % при BreakEven % в плюс позиции (режимы TP_Market, TP_Limit, Trade_ind)
  • cooldown_secondsблокировка пары после закрытия (сек)
  • max_ageвремя жизни позиции (сек)

Режимы работы

  • TP_LimitРежим дельты, лимитный TP + рыночный SL (после открытия)
  • Trade_indРежим индикаторов, лимитный TP + трейлинг-стоп (или + рыночный SL при вкл. усреднений) (после открытия)
Взаимоисключающие

Индикаторы

  • kline_indинтервал свечей (в минутах)
  • Level_indуровень строгости индикаторов:
  • — standartвход по тренду (EMA50>EMA200 или <) + пробой верхней/нижней полосы Боллинджера + фильтры свежести пробоя и наклона EMA50 (0.4%)
  • — simpleупрощает режим: вход по пробою максимума/минимума за 20 свечей + EMA200, с фильтрами объёма (>MA20*0.8), свежести пробоя, направления свечи и наклона EMA50 (0.2%)
  • — boostусиливает фильтры, добавляет RSI, MACD и повышает требование к объёму (>MA20*1.2)

Усреднение

  • averagingусреднение позиции (True/False)
  • step_av_LONGуровни усреднения LONG, например "1%..1.5%"
  • qty_av_LONGкоэффициенты объема усреднения для LONG, например "*1", "*1.1..*1.2"
  • kontr_trendконтртренд, контртренд, открывать на падении (True/False)

Дополнительные настройки

  • super_assetприоритетный список пар, игнорирующий фильтры отбора, для диапазона kline_delta по умолчанию будет применяться '0%..10%'
  • blacklistисключённые пары
  • licensionлицензионный ключ (опционально)
  • max_ageтаймер авто-закрытия позиции

Как работает бот?

Режим дельты (TP_Limit)

Произвольная свеча, дельта от цены открытия или экстремумов. Сигнал при попадании в диапазон kline_delta. Открытие с TP_Limit.

Индикаторный режим

Вход по индикаторам с учетом уровней строгости: 'standart', 'simple'- упрощение, 'boost'- усиление.

Усреднение (averaging) для режимов TP_Limit/Trade_ind

Лимитные ордера на уровнях step_av_LONG, с коэффициентами объема qty_av_LONG. При исполнении – пересчёт средней цены, перестановка TP, следующий уровень. Стоп-лосс по последнему усреднению.

Защита

Cooldown после закрытия, таймер max_age, отмена всех ордеров при закрытии позиции, выставление StopLoss Market для каждой открытой позиции. После применения фильтров отбора пар для работы проверяет последние 20 анонсов Bybit и, если есть аноснсы о делистинге, исключает эти пары.

Скорость открытия позиции после сигнала

≈ 0.2 сек если delta_30m=='off' и delta_7D=='off'.

≈ 1 сек если delta_30m!='off' и delta_7D!='off'.

Установка и запуск (Ubuntu VPS)

# 1. Создать папку и загрузить файл
mkdir BybitScalp && cd BybitScalp
# 2. Перенести исполняемый файл (BybitScalp) в эту папку
# 3. Открыть screen-сессию
screen -S BybitScalp
# 4. Дать права на запуск
chmod 755 BybitScalp
# 5. Запустить
./BybitScalp
# Управление в консоли:
#   -e ENTER – остановка бота (сохранит открытые позиции)
#   mute ENTER – откл/вкл вывода перезаписываемых строк перед входом(/после выхода) в режим копирования SCREEN (Ctrl+A, Esc)
#   Ctrl+A, D – отсоединиться от screen
#   screen -x BybitScalp – вернуться к сессии
            
 Решение проблем с локализацией (UnicodeEncodeError):
# dpkg-reconfigure locales  → выбрать ru_RU.UTF-8, en_US.UTF-8 по умолчанию
# sudo apt-get install language-pack-ru
# sudo update-locale LANG=ru_RU.UTF-8
# sudo apt-get install --reinstall locales
Скачать бинарник (для Linux x64)