Открыли новую минирубрику в нашем Гайде. «Микроменеджмент позиций». О том, какие бывают паттерны управления позициями, и как это выглядит в исходном коде (т.е. на примерах).
Поговорим о том, что там будет.
В гайде этот раздел можно найти тут:
На данный момент подготовлено ПЯТЬ примеров работы со сложной работой с позициями. Для них пишутся статьи:
Вопрос менеджмента позиций сложный, и копий сломано немало…
Каждый отдельный робот в OsEngine может открывать множество разнонаправленных позиций. При этом, чтобы различать позиции для различного управления ими в будущем, их необходимо помечать. Поговорим об одном из способов помечать позиции через поля SignalTypeOpen и SignalTypeClose у позиции.
Сегодня с Вами разберём робота, который торгует ДВЕ торговые логики одновременно, разделяя логику как раз по сигналам.
Каждый экземпляр класса робота одновременно может вести несколько позиций. Фактически это число ничем не ограниченно, все упирается в производительность железа и размер средств на счете. В таких случаях роботу бывает необходимо разделять позиции по каким-либо критериям, например, по причинам открытия и/или закрытия позиции. Для этих целей в классе Position имеется два открытых поля:
Оба они могут содержать произвольное строковое значение, передаваемое через торговые методы.
Как правило, сигналы используются для анализа позиций и удобства восприятия информации, но также с их помощью можно строить сложные торговые системы, основанные на ветвлении логики в зависимости от сигнала, приведшего к открытию и закрытию позиции.
ФРС США сегодня впервые с 2020 года снизила ставку на 0,5%. Это говорит о том, что уже даже ФРС признает проблемы в экономике. А исторически начало цикла снижения ставок вкупе с началом роста безработицы (что мы сейчас и наблюдаем) — это сильный сигнал грядущего кризиса в США и падения рынков. Теперь оба эти индикатора сходятся. Пора валить из американских акций, из российских пожалуй тоже. Благо такое турбулентное время — это хлебные периоды для нашей алгоритмической стратегии, которая зарабатывает на волатильности, как на росте, так и на падении рынков.
Мой телеграм-канал: @alfa_quant
Алгоритмическая стратегия на комоне: https://www.comon.ru/strategies/109402/
Извините, за совсем новичковый вопрос.
Где вы берете историю котировок российской биржи?
Ранее я брал с финама, но теперь вижу, к примеру, что данные по минуткам по фьючам на нефть ограничены октябрем 23го:
Я попробовал выкачать данные у брокера (Алор), но у него аналогичные ограничения.
Где взять историю за пару лет хотя бы?
В данном посте будем учиться запускать «профилирование» в Visual Studio, чтобы глазами увидеть место самых больших нагрузок у бота.
Ну и в целом заканчиваем нашу минисерию постов про производительность роботов и как делать так, чтобы у Вас никакие очереди не забивались, а роботы работали быстро и качественно.
Профилировка производительности C# — это процесс анализа производительности программы путём мониторинга использования процессора различными функциями и сегментами кода.
Профилируя приложение C#, можно определить, какие части кода занимают больше всего времени процессора и вызывают проблемы с производительностью. Эта информация важна для оптимизации приложения и улучшения его общей производительности.
С точки зрения прикладного:
Профилировка производительности – один из способов запуска проектов на СиШарп (OsEngine), который помогает увидеть «узкие» места в коде, где больше всего расходуется ЦП.
Так проект OsEngine можно запустить в нескольких режимах: