Алгоритм, представляющий стратегию "сеточной торговли". Основная идея стратегии заключается в том, чтобы стараться извлекать прибыль из рыночных колебаний вне зависимости от направления движения цены. Так как большую часть времени, статистически, цена находится в боковом движении, упор на спекуляции сделан именно во флете.
Риски: при сильных движениях за пределы сетки есть риск либо недополучить прибыль,
либо закупить криптовалюту на все оставшиеся стейблкоины с уходом цены далеко ниже крайнего лимитного
SELL-ордера, что автоматически переквалифицирует стратегию в buy and hold
.
Для сбалансированной работы алгоритма необходимо наличие обеих криптовалют торгуемого инструмента, а также наличие BNB для сокращения комиссионных расходов.
- Парсинг рыночных данных с API Binance в режиме реального времени
- Сохранение данных в базу данных PostgreSQL
- Размещение сетки лимитных ордеров
- Создание конфиденциальных данных
В корне проекта необходимо создать файл .env, в котором прописать необходимые данные.
API ключи биржи Binance (их можно сгенерировать в своем аккаунте на сайте биржи Binance):
- API_KEY=(api_key)
- SECRET_KEY=(secret_key)
Приватные данные Telegram:
- CHAT_ID=(chat_id)
- TELETOKEN=(token)
CHAT_ID можно запросить, введя в строке поиска в Telegram Get My ID Чтобы создать телеграм-бота и получить его токен, нужно зайти в BotFather ввести /newbot и выбрать ему уникальное название. Полученная строка типа 6563736789:GVkbiluhy78yIU_hbhjtf-vbydrty6vBJBJ это то, что нужно поместить в переменную TELETOKEN.
DEBUG=1 в файле .env активирует тестовый режим. Алгоритм будет работать без открытия ордеров по сигналам. Переключение на DEBUG=0 активирует рабочий режим, ордера будут открываться при наступлении торгового сигнала.
- Запуск проекта в Docker-контейнере
-
Создать образ проекта, введя в терминале команду
docker build -t angrid .
-
Запустить контейнер на основе созданного образа
docker-compose up --build