В данном посте будем учиться запускать «профилирование» в Visual Studio, чтобы глазами увидеть место самых больших нагрузок у бота.
Ну и в целом заканчиваем нашу минисерию постов про производительность роботов и как делать так, чтобы у Вас никакие очереди не забивались, а роботы работали быстро и качественно.
Профилировка производительности C# — это процесс анализа производительности программы путём мониторинга использования процессора различными функциями и сегментами кода.
Профилируя приложение C#, можно определить, какие части кода занимают больше всего времени процессора и вызывают проблемы с производительностью. Эта информация важна для оптимизации приложения и улучшения его общей производительности.
С точки зрения прикладного:
Профилировка производительности – один из способов запуска проектов на СиШарп (OsEngine), который помогает увидеть «узкие» места в коде, где больше всего расходуется ЦП.
Так проект OsEngine можно запустить в нескольких режимах:
Привет, трейдеры! 📈
Сегодня хочу поделиться, как я повышаю эффективность анализа своих сделок с помощью аналитических виджетов в Trader Make Money (TMM). Эти инструменты помогли мне оптимизировать мои стратегии и увеличить прибыльность. Вот несколько ключевых виджетов, которые я использую, и как их настраиваю.
Математическое ожидание
Этот виджет вычисляет среднее значение выигрыша или проигрыша для каждой сделки и показывает общее математическое ожидание. Это помогает мне быстро оценить, насколько прибыльна моя стратегия.
Профит-фактор
Этот виджет показывает соотношение суммарного выигрыша к суммарному проигрышу. Я часто использую его для анализа долгосрочной прибыльности стратегии.
Прибыль по дням недели и времени суток
Один из самых полезных для меня виджетов. Он показывает, в какие дни недели или время суток мои сделки самые успешные, что помогает планировать торговлю.
Распределение прибыли и убытков по монетам
Этот виджет в виде круговой диаграммы помогает мне увидеть, какие монеты приносят больше всего прибыли и какие стоит исключить из торгового плана.
В данной статье поговорим о проблемах «перегрузки» в пользовательской логике в роботе. Очень условно поговорим про поточную модель OsEngine и о том, почему нельзя нагружать поток робота «лишней» работой или укладывать «Спать».
Для начала давайте взглянем на поток, который отдаёт данные в роботов в реале. Для этого нужно открыть класс AServer. Это вот здесь:
Назвался груздем, пиши посты. Сегодня я расскажу про различные подключения (коннекторы) к биржевым терминалам и самим биржам, которые есть в нашей программе AutoTradePro. Вы же все равно сидите в LQDT и вам все равно, какая там ставка.
QUIK
Начнем с терминала QUIK, который как сильно любят, также сильно и ненавидят. :-) QUIK я увидел впервые в 2003 году, на заре интернет-трейдинга. Симпатичная программа, она и 20 лет назад также выглядела. Создана программистами для программистов. Не дай бог закрыть табличку с котировками, можно заново инсталлировать. Но для целей алготрейдинга квик хорош, надежен. Мой личный рекорд непрерывной работы квика без перезагрузки 9 месяцев на виртуальном сервере.
Действующий коннектор к QUIK осуществляет взаимодействие через Lua-скрипт, который обеспечивает транспорт основных данных. Из квика отдаются:
справочники инструментов
лимиты по деньгам и бумагам
клиентские портфели
позиции по фьючерсам и ограничения по счетам (информация ФОРТС)