Часто при внесении изменений в проект возникает ситуация, когда ваши изменения могут конфликтовать с обновлениями в главном репозитории проекта. Это происходит тогда, когда главный репозиторий успел обновиться уже после того как вы внесли свой новый код. Как автоматически избегать подобной проблемы рассказываем в новом видео для программистов.
VK Видео:
RuTube:
Искусственный интеллект (ИИ) радикально трансформирует финансовые рынки, отодвигая на второй план традиционные профессии аналитиков, трейдеров и управляющих активами. Алгоритмическая торговля, основанная на ИИ, становится основным инструментом на фондовых биржах, превосходя человеческие возможности в скорости, точности и объеме анализа. Будущее инвестиций — это мир, где алгоритмы управляют капиталом, оставляя все меньше пространства для участия человека.
ИИ действует полностью автономно, исключая субъективные ошибки, эмоциональные реакции и медленные решения, присущие людям. Алгоритмы способны анализировать терабайты данных в режиме реального времени, мгновенно адаптируясь к изменениям рыночных условий. Человеческие аналитики и трейдеры постепенно становятся устаревшими, поскольку ИИ принимает более точные и быстрые решения. Например, фонд Bridgewater Associates, управляемый Рэйем Далио, использует алгоритмы для принятия решений на основе данных, что позволило ему привлечь активы более чем на $120 млрд. Компания активно инвестирует в ИИ, стремясь автоматизировать до 75% своих процессов управления активами.
Видеообзор функционала выставления наклонных и горизонтальных уровней, по которым можно входить и выходить из позиций.
VK Видео:
RuTube:
Сегодня рассмотрим пример того, как можно усредняться через отложенные ордера на открытие других позиций.
Данный тип усреднения позволяет в полной мере тестировать торговую логику робота на свечных данных, т.к. использует заявки на усреднение типа BuyAtStop и SellAtStop.
На ГитХаб в репозитории OsEngine это находится здесь:
https://github.com/AlexWan/OsEngine
Внутри проекта здесь:
Использовать ATR для адаптации торгового алгоритма к моментальному изменению рынка нецелесообразно!
Это легко доказать, если вникнуть в формулу расчёта индикатора. Как и большинство других индикаторов и осцилляторов он анализирует массив прошлых значений, а значит имеет эффект запаздывания.
Единственным параметром индикатора является период – чем он выше, тем сильнее сглаживание, а значит текущие всплески волатильности будут несильно влиять на расчётный результат.
Нередко вижу ролики и посты алготрейдеров, пытающихся впихнуть этот индюк в параметры торговой системы.
Например, при использовании сеточных роботов они пытаются увязать текущий шаг сетки со значением ATR и ожидаемо терпят крах этой затеи.
Почему?
Сегодня рассмотрим пример того, как можно выставлять несколько ордеров на закрытие по позиции одновременно. Делать это будем через открытие нескольких позиций на входе.
Напоминаем, что архитектура OsEngine запрещает выставлять на рынок больше одного лимитного ордера на закрытие по позиции за раз, и при помощи такой конструкции можно это ограничение обойти.
На ГитХаб, в репозитории OsEngine это находится здесь:
Внутри проекта здесь:
Открыли новую минирубрику в нашем Гайде. «Микроменеджмент позиций». О том, какие бывают паттерны управления позициями, и как это выглядит в исходном коде (т.е. на примерах).
Поговорим о том, что там будет.
В гайде этот раздел можно найти тут:
На данный момент подготовлено ПЯТЬ примеров работы со сложной работой с позициями. Для них пишутся статьи:
Вопрос менеджмента позиций сложный, и копий сломано немало…
Каждый отдельный робот в OsEngine может открывать множество разнонаправленных позиций. При этом, чтобы различать позиции для различного управления ими в будущем, их необходимо помечать. Поговорим об одном из способов помечать позиции через поля SignalTypeOpen и SignalTypeClose у позиции.
Сегодня с Вами разберём робота, который торгует ДВЕ торговые логики одновременно, разделяя логику как раз по сигналам.
Каждый экземпляр класса робота одновременно может вести несколько позиций. Фактически это число ничем не ограниченно, все упирается в производительность железа и размер средств на счете. В таких случаях роботу бывает необходимо разделять позиции по каким-либо критериям, например, по причинам открытия и/или закрытия позиции. Для этих целей в классе Position имеется два открытых поля:
Оба они могут содержать произвольное строковое значение, передаваемое через торговые методы.
Как правило, сигналы используются для анализа позиций и удобства восприятия информации, но также с их помощью можно строить сложные торговые системы, основанные на ветвлении логики в зависимости от сигнала, приведшего к открытию и закрытию позиции.