Финансовая Лаборатория
1.25K subscribers
59 photos
11 videos
2 files
236 links
Личные финансы, инвестиции, трейдинг
Download Telegram
В чате трейдеров ФинЛаба в последние 2 недели было не скучно. Идеи, тесты, разбор ошибок, доработки... На сегодняшний день все изменения сделаны.

Финальная версия доступа к Алору из Python >>>
Финальная версия коннектора Алора к BackTrader >>>

Одна из главных "фишек" заключается в том, что не нужно заморачиваться при торговле, по какому портфелю, бирже и серверу стопов нужно выставлять заявки. Просто выбираете тикер, остальное система сама найдет и подставит. Конечно, есть и ручной режим, например, для тикера, торгующегося на нескольких рынках.

Берите и используйте! Открыт весь исходный код. К каждой строке комментарий на человеческом языке. Множество примеров.

Хочу поблагодарить 2-х Олегов и Надежду за проведение независимых тестов системы!
Так получилось, что у других брокеров тоже есть интерфейс взаимодействия как у Алора. Какого брокера делаем следующего для автоторговли через BackTrader?
Anonymous Poll
43%
Финам
60%
Тинькофф
Внимание! В последней версии 3.7.0 библиотеки matplotlib возникает ошибка при построении графиков. Пока решение такое. При установке matplotlib ставьте принудительно предыдущую версию 3.6.2:

pip install matplotlib==3.6.2
Закрываю Мечел. +26.4% с декабря. Неплохо...
Закрываю Сегежу. +18.39% с декабря
Для тех, кто еще не до конца разобрался как работает автоторговля, новый пост здесь >>>
Представляю вашему вниманию курс "Лаборатория Монте-Карло". В нем мы с вами с нуля создадим и реализуем алгоритм оценки сделок торговых систем.

Для чего это нам нужно? Чтобы оценить, насколько в торговой системе мы увлеклись подгонкой под историю цен.

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

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

Ответы на все эти вопросы вы найдете в курсе "Лаборатория Монте-Карло". Первые 2 урока открыл вам здесь >>>

Я увидел, что вам больше нравится когда мы с вами начинаем с чистого листа, а затем, шаг за шагом, идем к цели. Поэтому, практически в каждом занятии мы будем обсуждать алгоритмы, и сразу их реализовывать в коде на Python. Будет даже небольшое исследование. В результате мы напишем полноценный анализатор с построением графиков для BackTrader. Кстати, советую пересмотреть видео по построению базового анализатора здесь >>> Очень пригодится при прохождении курса.
Что-то заработался в последнее время.. Что имеем на сегодняшний день:

1. Финам. Скоро выдадут новую версию API с подпиской. Тогда закончу клиента и интегрирую его с BT. Версию клиента "на посмотреть" выложил здесь: https://github.com/cia76/FinamPy

2. Тинькофф. Клиент у них уже есть, делать не нужно. Протестировал подписки. Пока не удовлетворен результатом. Отписался разработчикам.

3. Алор. Все работает, но хочу внедрить работу на множестве счетов. Например, на торговом счете и ИИС одновременно. Предупреждаю заранее, что будет обновление, которое не будет совместимо с текущей версией. Сейчас мы передаем 1 счет, а будем передавать 1 или несколько.

4. Мультиброкер. Как сделаю работу со множеством счетов на Алоре и Квике, то сделаю обертку, которая будет работать как брокер в BT, но на самом деле, в нее можно вложить все брокеры, которые пожелаете.
Сегодня с утра на сайте появилась возможность для тех, кто приобретал курсы, и входил через учетную запись, привязать учетную запись Telegram, и удобно входить в один клик. Я придумал как упростить процесс связывания учетных записей сервера и Telegram. Изменил инструкцию. Выложил ее здесь >>>

Вроде, все описал компактно, доходчиво и с картинками. Будем развивать интеграцию с Telegram дальше.
Обычно, при анонсе нового курса, я выкладываю его описание, чтобы все заинтересованные трейдеры имели возможность в него вписаться. В этот раз новый курс называется BackTrader: Мультиброкер. А вот анонса его не будет. Лучше сразу покажу через чат-бота, что вы получите в результате. Я же говорил, что будем развивать интеграцию с Telegram!

Для иллюстрации возможностей чат-бота я сделал мультиброкера по 4-м счетам 3-х брокеров.

Вот чат-бот Мультиброкер

Курс готов, приступаю к его записи. Скидки здесь тоже не будет. Получите ее у бота. Как выложу весь курс, купон на скидку отзову.
Кстати, как вам позиция в чат-боте Мультиброкера по Сбербанку? 😊
Выложил весь курс BackTrader: Мультиброкер. Начинаю выкладывать бесплатные компоненты FinamPy, BackTraderFinam, BackTraderTinkoff на GitHub. Скидку на курс подержу до их финальной публикации.

Далее планирую сделать просмотр активных заявок. Будут и операции. Постановка заявки, снятие заявки/всех заявок, закрытие позиции/всех позиций. Хочу также высылать уведомления в Telegram об изменении статуса заявок и позиций.
Много новостей по бесплатным библиотекам автоторговли. Выкладываю списком.

AlorPy - изменения для работы с мультиброкером

BackTraderAlor - работа с мультисчетами, мультипортфелями, мультиброкером

FinamPy - изменения для работы с BackTraderFinam

BackTraderFinam - Новинка! Ждем от Финама получение текущего времени их сервера и исторических/"живых" баров. После этого будет вам полноценная автоторговля с Финамом. Но уже сейчас можете изучать, разбирать, тестировать.

Работаю над последним обещанным компонентом. BackTraderTinkoff. Как его сделаю, то в курс BackTrader: Мультиброкер добавлю функции создания заявки, удаления заявки, удаления всех заявок, закрытия позиции, закрытия всех позиций. Также отзову у бота скидочный купон. Поэтому, не теряйте времени, заказывайте курс!

Если что, то бот живет здесь >>>

Был вопрос о том, зачем нужен мультиброкер, если вы торгете через одного любимого единственного и неповторимого брокера?

Отвечаю. Со временем много что меняется. У вас всегда будет возможность торговать через любого брокера. Сейчас это Алор, Финам, Тинькофф, а будет еще больше. Из мультиброкера всегда можно сделать одного брокера, если использовать только одну учетную запись 😊
Выложил интеграцию Тинькофф Инвестиции с BackTrader здесь >>>

Дальше буду смотреть особенности работы провайдеров Алор/Финам/Тинькофф. Если обнаружу ошибки (свои или брокера), то буду оперативно исправлять.

Что осталось сделать.
- Ждем от Финама спецификацию работы с историей и временем.
- Для Тинькофф придется писать алгоритм получения нужных баров в нужное время, раз они так поступили с подписками.
Принимайте участие и выигрывайте в хакатоне Финама!

Все подсказки для победы опубликовал в новом посте здесь >>>

Сейчас голосом поясню, почему призываю именно вас поучаствовать в этом конкурсе.
Хорошие новости. Автор библиотеки автоторговли BackTrader продолжит ее развивать. По крайней мере, конечная дата разработки с 2020 года сместилась на 2023 год.

Поэтому, свою ветку backtrader из репозитория GitHub я убрал. Оригинальная библиотека доступна здесь >>>
Хорошо, для тех, кому нужна версия backtrader с моими правками, вот ссылка >>>

Сегодня исправил ошибки по работе с ненастоящими заявками. Что это за зверь такой?

Когда мы выставляем заявку, то нужно указать тикер, который будем покупать/продавать. Если для этого использовать полноценный тикер из BackTrader, то начнутся попытки получить последний бар, а из него последнюю дату и последнюю цену. Потом еще посчитают срок действия заявки.

А если мы просто хотим поставить заявку без этих заморочек? Тогда при создании тикера в BackTrader указываем параметр simulated=True (это официальный параметр). Тогда тикер в заявке третировать не будут. Просто возьмут название.

Вот эти механизмы и были написаны "на отвали". Но раз уж нам зашла тема мультиброкера, то для быстрой постановке заявок пришлось ошибки в оригинальном коде исправить. Результат выложил в свою версию. Также отправил предложение изменить код и в оригинале.