Могли бы вы рассказать о случае, когда участник форума оказался полезным в вашей работе, и можете ли вы описать это подробно? - страница 14
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
зачем тут 2 раза вызывается функция?
Обсчитывает текущий бар, и закрытый предыдущий, иначе индикатор "плывёт" на различных моделях тестера (по ценам открытия и тд.) и реале
т.е. обрабатываются только 2 бара свежих всегда, остальное надежда на терминал
Яндекс тоже с ума сходит
зачем тут 2 раза вызывается функция?
Работает точно так-же, как вот этот код. Только, как по мне, вариант со switch гораздо более очевидный и читаемый.
Предстасьте тот код в следующем виде:
Представьте, что rates_total = 100, а prev_calculated = 101. Тогда цикл for превратится в это:
нет проверки на изменение истории, кто знает когда она может понадобиться.
Вот она:
Работает точно так-же, как вот этот код. Только, как по мне, вариант со switch гораздо более очевидный и читаемый.
Предстасьте тот код в следующем виде:
Представьте, что rates_total = 100, а prev_calculated = 101. Тогда цикл for превратится в это:
Вот она:
Не дорого функцию вызывать?
В кейсах можно лимиты обозначить одной строкой и далее цикл без функции, если код небольшой, должно быть быстрее
Я в свое время с большим трудом понял логику вычислений переменной limit
Ниже код встроенного в МТ4 MACD
Я об этом говорил в том числе. Возможно это со мной что-то не так, но мне реально сложно было понять его в свое время, я просто сидел и долго смотрел на него как баран. Особенно, учитывая что это только одна из нескольких популярных реализаций, гулявших по форуму.
Не дорого функцию вызывать?
Абсолютно. Накладными расходами на вызов функций или даже на ООП можно спокойно принебречь. Я не думаю, что в принципе можно умудриться замерить оверхед на вызов функции, так как вы упретесь в погрешность измерений скорее всего.
Дороже писать километровые функции. Чем длиннее становится ваш код, тем более безумной становится идея отказываться от разбиения на функции (хотя такая идея является безумной по своей сути).
Не даром умные дядьки советуют разбивать функции, которые не помещаются на экран. "Не помещается на один экран" - уже достаточно веский повод что бы из одной фунции сделать несколько.
В кейсах можно лимиты обозначить одной строкой и далее цикл без функции, если код небольшой, должно быть быстрее
Нет смысла задумываться о производительности говоря о таких вещах. Вы не сможете измерить разницу в скорости работы варианта со switch и варианта с циклом. Потому что разницы нет.
Для меня преимущество варианта со switch заключается в том, что он более читаемый и так гораздо меньше шансов случайно сделать баг. Возможно, это субъективная история. Возможно, для кого-то limit + цикл выглядит понятней/очевидней.
А что касается вот этого
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Могли бы вы рассказать о случае, когда участник форума оказался полезным в вашей работе, и можете ли вы описать это подробно?
Vladislav Boyko, 2024.10.08 04:04
Я, как и Артем, решил что в случае форс-мажора лучше просто пересчитать весь индикатор
Работает точно так-же, как вот этот код. Только, как по мне, вариант со switch гораздо более очевидный и читаемый.
Предстасьте тот код в следующем виде:
Представьте, что rates_total = 100, а prev_calculated = 101. Тогда цикл for превратится в это:
Вот она:
Это где можно такое посмотреть? Когда бывает так, чтобы посчитанных баров было больше чем есть на графике???
И вот ещё тема для обсуждения:
Код из вашего сообщения
Зачем заполнять массив пустым значением или нулём перед заполнением рабочими значениями? Ведь по любому будет перебор всех баров и весь буфер будет заполнен…
Это где можно такое посмотреть? Когда бывает так, чтобы посчитанных баров было больше чем есть на графике???
Встречается такая проверка в кодах, может когда-то имело место быть, а может и сейчас актуально, темный лес тут, вроде копеечная проверка, можно и включить ее
Встречается такая проверка в кодах, может когда-то имело место быть, а может и сейчас актуально, темный лес тут, вроде копеечная проверка, можно и включить ее
В mql3 и не такое могло быть. Но это не значит, что и в mql5 сейчас надо делать такую проверку.