Блог им. DanilRublev

Как мы бота пилили

Приветствую! Меня зовут Даниил и меня не отпускала задумка торгового бота, хочу рассказать что из этого вышло
Занявшись инвестициями в прекрасные года пандемии (когда что ни купи, все вырастет) и слив знатную часть депозита (около 80%) из-за эмоциональных необдуманных решений я начал знакомится с темой алготрейдинга.

Я наткнулся на фонды Тинькофф, которые мало того что торговались без комиссии и стоили копейки, так у них еще и спред был всегда! Да, пусть в 1-2 копейки, но если тебе повезло и твою заявку забрали, то ты мог сделать профит без особых умственных напрягов. Спустя сотню-две таких ручных сделок, меня это задолбало и я решил написать консольную программку, которая покупает и тут же продает, если спред был в прибыль. К слову, вот эта программа

Эта концепция мне вкатила и начала зудеть идея создания своего торгового бота. Заручившись помощью коллег (а одному делать не так весело, всегда хочется чем-то поделиться, обсудить) мы запилили v2 — апп на Electron + Vue.js. Это был скорее технический экстаз, чем работающий бот, потому что профита он не приносил, но мы могли поковырять тему, которая нам была интересна. Наступил февраль 22 года и нам стало не до этого, поэтому идея отошла на последний план

Но зуд не прошел! Стоило теме инвестиций появится в моем инфополе, как я вспоминал про бота. Собравшись с мыслями, в начале 24 года я начал работу над v3.    Как раз хотелось изучить Go, взял его, Electron и React. Смазал все gRPC и получил штуку, в которую другим людям сложно было вкатиться. Удалось собрать небольшую команду и заразить (надеюсь) их той же идеей — создать инструмент, который помогал бы инвесторам без особого скилла познать мир слитого депозита (зачеркнуто) заставлять свой капитал работать
Концепция такая, что мы делаем торговые стратегии, которые доступны юзерам. Пока мы тестируем на сколько вообще это вкатит людям, поэтому берем популярные стратегии, по типу MACD, но и свои наработки у нас есть в запасах.
Собственно, как то так оно сейчас выглядит

скрин ботанемножко ux

Мы хотим выкатить людям реально рабочий инструмент, а чтобы это сделать нужно иметь от них обратную связь. И мы запустили закрытое альфа тестирование. Набрали немного пользователей, дали им апп, обложили весь код логами, построили дашборды в Grafana и держим руку на пульсе.
Большое спасибо, если дочитали до этого момента. Хочется делится ходом развития проекта дальше, поэтому прошу написать в комменты чего хотелось бы видеть. как разработчик, я могу поделиться техническими деталями (или меня отправят с этим на хабр). А можно рассказать это с точки зрения запуска стартапа в нише алготрейдинга, что тоже имеет свои приколы. Или хочется видеть цифры/графики?
В любом случае, буду рад новым знакомствам, пишите в тг

34 комментария
Когда дойдете до версии v300, тогда, возможно, что-то начнёт получаться.
avatar
Cubigator, ну, не 10% в день, но получается
Данил Рублёв, Если вы оперируете около двузначной прибыли в день, жить вашему депозиту пару недель. В лучшем случае месяц.
avatar
Cubigator, скорее v30000
avatar

" Как раз хотелось изучить Go, взял его, Electron и React. Смазал все gRPC"

а все заточено на API Тинькова, или можно создать коннектор к другим брокерам?

 

avatar
Vadim S, можно к другим. Хотим подрубить крипту + других брокеров по запросу пользователей
Основная логика бота написана на чем? Go? а Electron и React как визуальная часть? 
avatar
Vadim S, да, на go крутится вся важная логика (стратегии, коннект к брокеру), а Electron с React чисто интерфейс и нативные плюшки системы хотим юзать (нотификации, например) 
реализован ли бек-тестинг? можно ли торговать «портфелем» инструментов?
avatar

Vadim S, бек тестинга нет, так как он ничего не гарантирует. Мы проверяем торгувую стратегию тестами (юнитами), добавляя граничные сценарии, когда их находим и проверяем на бою на небольшой сумме. Например, если мы в процесмсе торговли попали в ситуацию, где стратегия повела себя как не должна была, мы пишем юнит, который прогоняет через стратегию проблемный диапазон (свечи, стакан или просто поток сделок) и правим логику стратегии, пока не достигнем желаемого поведения. Такие проверки запускаются на каждое изменение в проекте, они атомарны и быстры, что эффективнее чем бектестинг

Данил Рублёв, «бек тестинга нет, так как он ничего не гарантирует.»

 

И согласен с данным высказыванием и нет.

Бектест помогает определить = рабочая ли Ваша идея или нет. Очень часто видишь какой то паттерн. На первый взгляд рабочий. Но прогнал тесты даже на небольшой истории = видишь что все «лажа».

 

 

avatar
Vadim S, для этого мы сначала пишем скрипт для tradingview, где смотрим на рентабельность стартегии в целом
Vadim S, По поводу портфеля не понял немного. Сейчас нужно выбрать акцию на которой запустить стратегию. Мы понимаем что это не совсем удобно и что пользователи вообще не понимают что им выбрать, над этим работаем

Данил Рублёв, " По поводу портфеля не понял немного"

Есть ли возможность запустить стратегию сразу по списку акций ? 

 

avatar
Vadim S, нет, такого пока нет
Vadim S, у чувака не трейдинг, а торговля. ему бектексты незачем
avatar
  
avatar
__rtx,
Изначально задумывался как инструмент чисто для себя, под свои задачи
Монетизировать будем через подписку (платишь, фикс, если был профит). Брокер тоже платит за привлечены оборот, но там нужно им привести минимум 500 лямов
  
avatar
__rtx, для начала далеко не джун. Инфоцыганством или какой то рекламой заниматься тут не планировал. Хотел рассказать в принципе про идею, может кому будет интересно услышать про какие то аспекты (например, про интеграцию с апи Тинькофф, какие есть подводные камни)
  
avatar

  

avatar
__rtx, с удовольствием бы пересел на алготрейдинг как основной источник дохода. Но пока что он не превышает мою зп и не закрывает основные потребности (по типу оплаты платежей)
  
avatar
__rtx, возможно на лендинге мы не донесли мысль. Мы против того, чтобы туда выкладывали большой капитал. Даже средний. Максимум 1-2к. Потому что мы тестируем сам инструмент, а не стратегии. Понятно что текущие стратегии это хлам, однако они позволяют выстроить процесс взаимодействия с пользователем. И повторюсь, тут я ничего и никому рекламировать не хочу, так как людей в альфу мы уже набрали (лендинг висит чтобы сео скопилось)
  
avatar
__rtx, нет какой то цели для нас, сколько хотим от проекта прибыли. Будет круто, если оно хоть кому то будет интересно и понадобится. Доходность стратегии мы видим минимум не ниже вклада банковского, иначе оно бессмысленно. Или в чем вопрос?
  
avatar
__rtx, я нигде не заявлял что с этим ботом кто то сможет уйти с работы)) в том числе я
Если это никому не нужно, и не будет интереса, то будем пользоваться узким кругом лиц, как сейчас
  
avatar
__rtx, сколько не читаю разных людей в алготрейдинг, но всем как то мало даже 100% годовых. А всем ли будет так мало? Да, чтобы человеку был рентабелен наш проект, нужно чтобы 2к (это кстати не финальная и довольно условная сумма, скорее всего будет меньше) было не большой частью профита в месяц
По поводу стратегий, надо смотреть сколько они «вместят» в себя, пока нет данных и очень зависит от торгуем ого актива
  
avatar
Суть проекта это торговый бот или фреймворк на котором можно делать стратегии? Если это фреймворк, то откуда берётся прогноз прибыли в 2 % годовых в месяц? А если торговый бот, то к чему конкретным пользователям эти графики и вообще вся нутрянка Go, React и всё остальное? Получается Ваш бот будет подавать одни и те же торговые сигналы всем подписчикам?
avatar
Плюсую за то что ты выбрал Golang. Язык топ.
Я с командой тоже делаю торговых ботов, но у нас платформа для их создания и запуска всем желающим. Я к этой теме даже подробный гайд по торговым ботам сделал.
avatar

теги блога Данил Рублёв

....все тэги



UPDONW
Новый дизайн