Skip to content

Latest commit

 

History

History
285 lines (205 loc) · 13.6 KB

ReadMe_ru.md

File metadata and controls

285 lines (205 loc) · 13.6 KB

Торговые стратегии на основе Debut / Community Edition

Debut - это экосистема для разработки и запуска торговых стратегий. Аналог известного ZenBot, но с гораздо более гибкими возможностями для конструирования стратегий. Все что вам нужно сделать, это придумать и описать точки входа в рынок и подключить нужные плагины для работы. Все остальное - дело техники: генетические алгоритмы - помогут подобрать самые эффективные параметры для стратегии (период, стопы, и другие), модуль подбора тикеров - поможет найти подходящий для стратегии актив (токен или акцию), на котором она будет работать лучше всего.

В основе Debut лежит архитектура ядра и надстраиваемых плагинов, позволяющих гибко кастомизировать любые решения. Основной целью всей экосистемы Debut, является упрощение процесса создания и запуска рабочих торговых роботов на различные биржи. На данный момент поддерживаются: Тинькофф Инвестиции и Binance.

В проекте есть две стартовые торговые стратегии "Для примера" как нужно работать с системой.

Пример работы стратегии SpikesG за 200 дней. Оптимизация проводилась за 180 дней и 20 дней свободной работы на необученных данных. Использовался стартовый депозит в размере 500$

Статистика стратегии собиралась на основе плагина статистики, по ссылке можно подробнее узнать о значении некоторых статистических данных.

Визуализация выполнена с помощью плагина Report.

Community edition

Мы верим в силу сообщества! Именно поэтому решили опубликовать проект. Комьюнити версия бесплатная, но имеет некоторые ограничения в коммерческом использовании (доход от торговли стратегий не является коммерцией), а также технические отличия в тестировании стратегий. Присоединяйтесь к комьюнити, вступайте в чат разработчиков

Enterprise edition

Энтерпрайз версия - это готовый набор инструментария для "больших дядек", для тех, кто занимается услугами торговли или создания стратегий профессионально. Здесь есть всё! И это всё уже готово работать на вас и на повышение скорости вашей разработки.

Функционал Community Enterprise
Тестер стратегий
Эмуляция OHLC тиков в тестере
Моудль поиска (finder) подходящих под стратегию активов
Набор плагинов из коллекции
Базовый набор готовых торговых стратегий
Данные свеч м1 для эмуляция тиков
Синтетическая эмуляция тиков в тестере (размер тика не более 0.75%)
Система управления рисками
Отчеты о работе в мессенджер
Готовые решения для запуска на VPS/VDS и Cloud серверах
Техническая поддержка
Система быстрых подписок на сигналы по токену, для продаж сигналов

Мы ведём прямой эфир сделок на основе Enterprise решения в нашем телеграмм канале

Узнайте цену, отправив запрос на [email protected]

Дисклеймер

  • Debut не гарантирует 100% вероятности получения прибыли. Используйте его на свой страх и риск, полагаясь на собственный проффесионализм.
  • Криптовалюта это глобальный эксперимент, поэтому Debut - тоже. То есть оба могут выйти из строя в любой момент.

Начало работы

Всё, что нужно знать, для запуска и разработки собственных решений на основе Debut.

Помните! Запуск бота и торговля в целом требуют тщательного изучения связанных с этим рисков и параметров. Неправильная настройка может стать причиной серьезных финансовых потерь.

Системные требования

Для работы вам потребуется NodeJS 14.x.x / npm 7.x.x (инструкция по установке)

Файловая структура проекта

|-- .tokens.json - пользовательские токены доступа для работы с биржей
|-- schema.json - описание расположения файлов запуска
|-- public/ - папка для отчётов finder (создаётся при запуске finder)
|-- src/
    |-- strategies/
        |-- strategy1/ - Директория стратегий
            |-- bot.ts - Реализация стратегии
            |-- meta.ts - Мета данные, для запуска и для оптимизации
            |-- cfgs.ts - Конфигурации, для запуска в tester и genetic
        |-- strategy2/
        ...

Установка и настройка

Получение токенов API

Инструкция Binance

Инструкция Tinkoff

Установка токенов

Для работы необходимо создать файл .tokens.json, в него добавить токен для работы.

Для Тинькофф:

{
    "tinkoff": "YOU_TOKEN"
}

Для Binance:

{
    "binance": "YOU_TOKEN",
    "binanceSecret": "YOU_SECRET
}

Можно использовать любое название поля для токена, подробнее в разделе документации о настройках токенов.

Установка npm пакетов

Для установки пакетов выполните:

npm install

Сборка проекта

npm run compile

Рекомендуется выполнять сборку перед каждым запуском тестирования

npm run compile && npm run ...

Запуск тестирования на исторических данных

Исторические данные будут загружаться автоматически при запуске. Все загружаемые данные сохраняются в папку history в корне проекта, затем переиспользуются.

Перед запуском стоит убедиться:

  • В файле cfgs.ts есть нужный вам тикер
  • Для получения истории в файле .tokens.json может требоваться токен
  • История акции или токена существует в запрашиваемом количестве дней

Для запуска выполните команду:

npm run testing -- --bot=FTBot --ticker=CRVUSDT --days=200 --gap=20

Для просмотра результатов тестирования в браузере выполните

npm run serve

Результаты будут доступны для просмотра на http://localhost:5000/

Подробнее о параметраз запуска тестирования можно прочитать в документации

Запуск генетической оптимизации

Выполните команду:

npm run genetic -- --bot=FTBot --ticker=CRVUSDT --days=200 --gap=30 --gen=12 --pop=2000 --log

Подробрее о параметрах запуска генетика можно прочитать в документации

После запуска с параметром --log, генетик будет выдавать данные в консоль

Binance history loading from Wed Nov 18 2020 03:00:00 GMT+0300 (Moscow Standard Time)...

----- Genetic Start with 17314 candles -----

Generation:  0
Generation time:  5.15 s
Stats:  {
  population: 100,
  maximum: 20.8,
  minimum: -1.24,
  mean: 2.5174,
  stdev: 3.8101996325652054
}
Generation:  1
...

Запуск генетической оптимизации с перебором тикеров/токенов

Выполните команду:

npm run finder -- --bot=FTBot --ticker=CRVUSDT --days=200 --gap=30 --gen=12 --pop=2000 --log

Используйте опцию --crypt, чтобы брать крипто-пары из файла ./crypt.json (По умолчанию там актуальные кросс-маржинальные пары Binance)

По умолчанию для потоковой оптимизации используется набор тикеров акций из файла stocks.json

Подробнее о параметрах запуска потокового генетика можно прочитать в документации

Запуск стратегии

Установите любой процесс менеджер для NodeJS, например PM2

npm install -g pm2

Выполните команду запуска, путь к файлу запуска стратегии в директории ./out. Пример такого файла можно найти здесь /src/bootstrap.ts

pm2 start ./out/bootstrap.js

Для кастомизации имени токена в файле .tokens.json, можно передать параметр запуска и в файле .tokens.json записать токен в таком формате: { "tinkoffCustom": "YOU_API_TOKEN" }

pm2 start ./out/bootstrap.js -- --token=tinkoffCustom

Для Binance, параметров запуска можно передать 2: --btoken=... --bsecret=... если нужно изменить именя токенов.

Далее для работы и мониторинга можно использовать набор команд pm2

pm2 list - список активных процессов

pm2 delete $pid - остановка процесса

pm2 log - для просмотра логов запущенных процессов

и другие команды, о которых можно прочитать в документации процесс менеджера