Продолжаем изучение скринеров и как их делать в OsEngine. Сегодня начинаем разговаривать про вопросы программирования роботов. Пока теоретические. Поговорим про концепцию источника BotTabScreener и посмотрим расположение файлов скринеров в проекте.
Создавая источник типа BotTabScreener, надо помнить, что это по сути массив источников BotTabSimple. Да, в рамках скринера есть какие-то уникальные штуки, но в основном это всё-таки массив источников для одного инструмента:
Перефразируя классика, график всегда лучше тысячи цифр.
Осенжин добавили в свой функционал очень полезную опцию – графическое представление результатов оптимизации. Возможно к этому их побудил мой недавний пост-просьба.)) Для меня это очень удобный инструмент и уже извлек из него пользу. На мой взгляд, лучше всего при оптимизации менять один параметр (на рисунке изменяется параметр от 0 до 35), тогда можно точнее понять влияние этого параметра на систему. Тестирование на нескольких коротких периодах поможет понять влияние на систему других факторов, например изменение волатильности.
При переключении вкладок результатов оптимизации можно видеть распределение других параметров, например здесь просадка
Всем доброго времени.
Провел бэктест по стратегии RSI + CCI на 15-минутнике, вроде работает. Единственное, что смущает на текущем этапе это проставление tp/sl. Не совсем понимаю, как проанализировать и выставить их, какую индикацию в отчете от TV использовать, чтобы опитимизировать стратегию. В идеале, хочу написать свой торговый бот для этой стратегии. Тем более, что уже сбор по осцилляторам сделал, стабильно данные забираются сервером и выдают сигналы на покупку/продажу. Единственное, что осталось сделать, так это правильно оптимизировать tp/sl для торговли. Если кто-то может помочь, буду благодарен
Начнем с традиционной таблицы
Как и февраль, март для моей торговли получился месяцем с очень разными периодами. Собственно весь убыток марта был получен мной с 3 по 13 марта
Продолжаем практические занятия по созданию новых источников для роботов в OsEngine.
Сегодня возвращаемся к самому источнику и добавим в него прорисовку данных.
Данная серия постов строго для программистов со стажем, которые не только знают C# на уровне мидлов и сеньоров, но и УЖЕ разбираются в том, как делать новые сервера подключения к OsEngine.
Суть этой статической части класса источника в том, чтобы всего один поток занимался прорисовкой всех таблиц по данным типам источников, чтобы не создавать десятки или сотни потоков для этого и не нагружать ЦП:
С 1 апреля 2025 года данные торгового календаря Московской биржи будут доступны по API.
Новый сервис позволит получать информацию в машиночитаемом формате, что будет полезно в первую очередь брокерам и банкам. Они смогут получать все данные из одного источника, обрабатывать их и передавать внутренним и внешним пользователям.
Для участников рынка операции станут удобнее: теперь можно видеть информацию о режиме торгов и расчетов через свои приложения и торговые терминалы. При этом привычный торговый календарь продолжит работать в прежнем режиме.
На новый сервис до конца года действует льготная цена: от 160 до 550 рублей в месяц.
➡️ Просматривать и выгружать данные можно здесь.
Больше подробностей о новом календаре смотрите на сайте.
Парадокс дней рождения — это одна из самых известных и контринтуитивных задач теории вероятностей. Он утверждает, что в группе из всего лишь 23 случайно выбранных людей вероятность того, что хотя бы у двоих из них совпадет день рождения (день и месяц, игнорируя год), превышает 50%. При этом в году 365 дней (или 366, если учитывать високосные годы), что делает это утверждение на первый взгляд удивительным.
Парадокс заключается не в противоречии, а в том, что наша интуиция часто недооценивает, как быстро растет вероятность совпадений в подобных ситуациях.
Давайте посчитаем.
Сначала посчитаем обратную вероятность — что у всех 23 человек дни рождения будут разными. Для первого человека есть 365 вариантов (любой день года). Для второго — уже 364 (чтобы не совпасть с первым), для третьего — 363, и так далее до 343 для 23-го. Умножим эти вероятности: (365/365) × (364/365) × (363/365) ×… × (343/365). Результат примерно равен 0,4927, то есть вероятность отсутствия совпадений — около 49,27%. Значит, вероятность хотя бы одного совпадения — это 1 — 0,4927 = 0,5073, или чуть больше 50%. При увеличении группы до 50 человек вероятность возрастает до 97%, а при 70 — почти до 99,9%. Это и есть парадокс: совпадения возникают гораздо чаще, чем мы ожидаем.