
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Когда что-то под что-то заточено, то оно всегда и ограничено, а здесь в наших руки дано все в этом и прелесть. Ну а этот стандартный зигзаг... это вечный ночной кошмар.
Ограниченный набор букв алфавита операций позволяет получить более высокое быстродействие, так как некоторые вещи просто сделать не возможно и следовательно и проверять что-то лишнее не приходится, и можно более свободно ( без граничных ситуаций) получить более высокое быстродействие.
Да я видел Ваш зигзаг. Интересно. Но тут вопрос несколько о другом. нужен именно СТАНДАРТНЫЙ, зигзаг. Кстати Ваш считается оптимально? Насколько он быстрее стандартного? И какие параметры если такое вообще возможно, ему надо выставить чтобы он полностью соответсвовал стандартному, если он конечно быстрее считается чем тот что в поставке.
Он на 95% идентичен стандартному (визуально всмысле), только с другим алгоритмом построения. iExtPeriod = ExtDepth. Остальные параметры не совпадают и будут небольшие отличия...
На сколько быстрее не проверял....
Ограниченный набор букв алфавита операций позволяет получить более высокое быстродействие, так как некоторые вещи просто сделать не возможно и следовательно и проверять что-то лишнее не приходится, и можно более свободно ( без граничных ситуаций) получить более высокое быстродействие.
Тогда при написании индикаторов представьте, что у вас нет операторов while и for, кроме как для основного цикла, они не нужны. Однако они могут потребоваться в ините и деините, будет плохо, если их не будет. Тема философская - давать или не давать, или взрослые сами примут решение. Во всех языках одну и ту же задачу можно решить разными способами - оптимальными и не очень, это не значит, что нужно что-то запрещать. MQ наоборот пошли по пути предоставления максимального количества возможностей.
Тогда при написании индикаторов представьте, что у вас нет операторов while и for, кроме как для основного цикла, они не нужны. Однако они могут потребоваться в ините и деините, будет плохо, если их не будет. Тема философская - давать или не давать, или взрослые сами примут решение. Во всех языках одну и ту же задачу можно решить разными способами - оптималными и не очень, это не значит, что нужно что-то запрещать. MQ наоборот пошли по пути предоставления максимального количества возможностей.
Да конечно же, но все же как мне кажется, такие например вещи как копирование буферов в советники из iCustom для их ЧТЕНИЯ имеет смысл делать не действительно копированием, а псевдо копированием с проверкой на запись в них еще на этапе компиляции. Например. Это бы весьма существенно бы увеличило быстродействие в типичных задачах.
Ради интереса прогнал на одном ядре:
Получение значения 0-ого бара на каждом тике:
Пустой советник - 71 сек
iCustom(типовой ZigZag) - 1557 сек
Мой класс (iCustom(AlexSTAL_ZigZagProf_NotSeries) чуть быстрее будет) - 289 сек
"чуть" быстрее получается ))))))))))))))))
Ради интереса прогнал на одном ядре:
Получение значения 0-ого бара на каждом тике:
Пустой советник - 71 сек
iCustom(типовой ZigZag) - 1557 сек
Мой класс (iCustom(AlexSTAL_ZigZagProf_NotSeries) чуть быстрее будет) - 289 сек
"чуть" быстрее получается ))))))))))))))))
Ну нужно не получение на нулевом баре. Посмотрите ( сохраните и запустите на графике ) индикатор который я показал. Надо как минимум четыре точки ZigZag
Всё в Ваших руках... Все коды открыты... Этого не будет:
Мне просто хочется, свое время сэкономить
Всё в Ваших руках... Все коды открыты... Этого не будет:
Да конечно же, но все же как мне кажется, такие например вещи как копирование буферов в советники из iCustom для их ЧТЕНИЯ имеет смысл делать не действительно копированием, а псевдо копированием с проверкой на запись в них еще на этапе компиляции. Например. Это бы весьма существенно бы увеличило быстродействие в типичных задачах.
Наверно что-то такое было в четверке, но в ней память загружалось несколько индикаторов с одинаковыми наборами параметров (если они вызывались из разных программ). А здесь только один индикатор загружается, но пользоваться им могут все. Это экономит память. Тики по разным символам идут не синхронно, из советника работающего на одном символе при обращении к индикатору с другого символа можно нарваться на процесс его расчета (наверно)... Выполнять расчет непосредственно при обращении к индикаторы - от этого как раз ушли, индикатор живет собственной жизнью и вычисляется только один раз при тике по своему символу, а не всегда, когда к нему кто-то обращается - это повышает быстродействие в целом. И т.д. и т.п. Можно много рассуждать, думаю, что MQ лучше знают как писать терминалы.