Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1165
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Мастерство не пропьёшь.
Да? Тогда по сто? С лимончиком...
На скрине отображение буфера смещено на пять баров вправо. Значит - чтобы получить пятый бар индикаторного буфера (с индексом 4), и далее по списку влево, откуда их нужно получить? Из Buffer[4] и далее влево.
В теории. На практике - дааавно не открывал код индикаторов, и не работал с ними - почти год как... Попробуйте.
Это верно. Но мне не нужны эти 5 значений справа, хочется иметь сразу в Buffer[0] нужное значение. Иначе в кучу функций для вычислений фракталов по MA и прочего мне придется передавать не только буфер, но еще и смещение. Это лишнее усложнение кода и лишнее замедление вычислений.
Скопировать в Buffer требуемые значения (без 5 значений MA справа) мне удается, только если в CopyBuffer для start_pos я передаю -2*ma_shift.
В этом и изначальный вопрос - откуда там двойное отрицательное смещение. Просьба пояснить. Возможно - это баг, а возможно - и особенность MQL5.
Это верно. Но мне не нужны эти 5 значений справа, хочется иметь сразу в Buffer[0] нужное значение. Иначе в кучу функций для вычислений фракталов по MA и прочего мне придется передавать не только буфер, но еще и смещение. Это лишнее усложнение кода и лишнее замедление вычислений.
Скопировать в Buffer требуемые значения (без 5 значений MA справа) мне удается, только если в CopyBuffer для start_pos я передаю -2*ma_shift.
В этом и изначальный вопрос - откуда там двойное отрицательное смещение. Просьба пояснить. Возможно - это баг, а возможно - и особенность MQL5.
Вы видите, что Вас не понимают. В таком случае обычно рисуют рисунок. ПОка не ясно ЧТО Вы хотите получить.
Добавлено: на рисунке нужно отобразить ЧТО должно получится В ИТОГЕ.
Это верно. Но мне не нужны эти 5 значений справа, хочется иметь сразу в Buffer[0] нужное значение. Иначе в кучу функций для вычислений фракталов по MA и прочего мне придется передавать не только буфер, но еще и смещение. Это лишнее усложнение кода и лишнее замедление вычислений.
Скопировать в Buffer требуемые значения (без 5 значений MA справа) мне удается, только если в CopyBuffer для start_pos я передаю -2*ma_shift.
В этом и изначальный вопрос - откуда там двойное отрицательное смещение. Просьба пояснить. Возможно - это баг, а возможно - и особенность MQL5.
Смещение - это просто сдвиг отображения машки. Самое правое значение будет в Buffer[0]. Если нужно узнать значение машки на нулевом баре, то оно будет в Buffer[0 + shift].
Если хотите без + shift, то в CopyBuffer() начальную позицию указывайте 0 + shift, тогда Buffer[0] будет содержать нужное значение.
Подскажите, какой инклюдник нужно подключить, чтобы добраться до функции MathCorrelationKendall() ?
Подключить:
#include <Math\Stat\Math.mqh>
Подключить:
Спасибо.
Это все понятно. Вопрос - какую начальную позицию указать в CopyBuffer, чтобы получилось в ваших терминах "без + shift" ?
Вы видите, что Вас не понимают. В таком случае обычно рисуют рисунок. ПОка не ясно ЧТО Вы хотите получить.
Добавлено: на рисунке нужно отобразить ЧТО должно получится В ИТОГЕ.
Рисунок уже был. Я повторю.
Нужно, чтобы в Buffer[0] попало значение MA, соответствующее красной вертикальной линии.
В Buffer[1] значение MA слева от красной линии. И т.д.
И все это - в индикаторе.
Это все понятно. Вопрос - какую начальную позицию указать в CopyBuffer, чтобы получилось в ваших терминах "без + shift" ?
То значение, которое Вы добавляете для смещения МА - 1.