Афтар. Хочешь ясности - разберись сам. У тебя код перед глазами.
В хелпе формулы неформальные. 100 означает 100%, что равно в точности 1.0
Загадочная переменная P (или pr в коде - который все правильно считает) соответствует параметру затухания ЕМА, при котором она примерно соответствует МА с периодом MA_period. Соответствующие рассуждения можно найти у Эйлерса в одной из его статей - но я сейчас это не смогу найти.
А вообще экспоненциальная средняя на нулевом баре считается так:
EMA[0] = pr * Sum( Close[i]*(1-pr)^i; i = 0..infinity )
Потому и зовется экспоненциальной. Обрати внимание, что сумма всех коэффициентов равна ровно 1, как и положено.
Но при вычислениях удобнее пользоваться рекуррентной формулой, как в коде. И именно из формулы выше и вытекает эта рекуррентная формула.
Вариант присоединения скользящей к индикатору с указанием параметра "First Indicator's Data" не подходит, ибо его впоследствии не запросишь через iCustom(). Или может я просто не знаю как это сделать?
Ай спасибки! :) Ни когда не приходилось пользоваться этой функцией языка, поэтому и из внимания вылетела.
Загадочная переменная P (или pr в коде - который все правильно считает) соответствует параметру затухания ЕМА, при котором она примерно соответствует МА с периодом MA_period. Соответствующие рассуждения можно найти у Эйлерса в одной из его статей - но я сейчас это не смогу найти.
А вообще экспоненциальная средняя на нулевом баре считается так:
EMA[0] = pr * Sum( Close[i]*(1-pr)^i; i = 0..infinity )
Потому и зовется экспоненциальной. Обрати внимание, что сумма всех коэффициентов равна ровно 1, как и положено.
Но при вычислениях удобнее пользоваться рекуррентной формулой, как в коде. И именно из формулы выше и вытекает эта рекуррентная формула.
Афтар. Хочешь ясности - разберись сам. У тебя код перед глазами.
В хелпе формулы неформальные. 100 означает 100%, что равно в точности 1.0
Спасибо. Это объясняет использование то сотки, то единицы. А по поводу "разберись сам - у тя код перед глазами" - не выходит. Код не даёт ясности в понимании алгоритма и обоснования причин почему всё именно так, а не иначе.
а -- это параметр
поэкспериментируй с различными значениями -- прояснится.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Понадобилось усреднить показания индикатора экспоненциальным мувингом. Рассчитать обычное среднее арифметическое, пройдясь по ячейкам индикаторного буффера - нет проблем. Но усреднить экспоненциальным МА оказалось проблематично - не как не получается прийти к однозначной формуле.
1. Из справки терминала:
Формула не даёт ясности, так как отсутствует формула вычисления загадочной переменной Р (долей использования значений цен), как и не разъяснено что такое эта самая доля.
2. Из кода пользовательского (метаквотесовского) индикатора МА:
Этот код сбивает с толку. В справке терминала в формуле ЕМА стоит " 100 - P ", тогда как в индикаторе метаквотесов употребляется подчёркнутое красным (1-pr). Непонятно почему вычитается из еденицы, а не из стоки.
Путешествия по интернету результатов не дали - в одних формулах вычитание ведётся из сотки, как и в справке терминала, в других - из единицы. И к тому же не удаётся найти вразумительное объяснения, как вычислить загадочную переменную Р и почему именно так, а не иначе.
Возникает естественный вопрос, так как же всё-таки в коде правильно усреднить при помощи ЕМА набор значений из индикаторного буффера, или вообще, любой другой набор значений произвольного одномерного массива?
P.S.
Вариант присоединения скользящей к индикатору с указанием параметра "First Indicator's Data" не подходит, ибо его впоследствии не запросишь через iCustom(). Или может я просто не знаю как это сделать?