Smoothed ADX by John Ehlers [

0
(0)
Имя:
Smoothed ADX by John Ehlers [ RU | Сп ]
Автор: МетаЦитаты (2008.02.10 15:45)
Скачано: 4699
Скачать:
Smoothed ADX by John Ehlers [ 1
ADX_Smoothed.mq4 (3.6 Кб) Вид

Indicator Smoothed ADX was written on demand of a forum visitor and was not too difficult. Однако, the search for a description of the smoothed ADX algorithm resulted in nothing. This is why I give below only the code that has been provided:


Входы: {declaring inputs}
Length( 14 ),
ADXTrend( 25 ), alpha1(0.25), alpha2(0.33);

переменные: {declaring variables}
DMIPlus( 0 ), DMIMinus( 0 ), DMI( 0 ), ADX( 0 ),
DIPlusLead(0), DIMinusLead(0), DIPlusFinal(0), DIMinusFinal(0),
ADXLead(0), ADXFinal(0);

{now calling the built-in ADX functions, so we don't need to calculate them}
Value1 = DirMovement( ЧАС, л, С, Length, DMIPlus, DMIMinus, ADX);
{this part is the actual smoothing of the original ADX indicator, DI+, DI- and ADX lines are smoothed}
DIPlusLead = 2*DMIPlus + (alpha1 - 2) * DMIPlus[1] + (1 - alpha1) * DIPlusLead[1];
DIPlusFinal = alpha2*DIPlusLead + (1 - alpha2) * DIPlusFinal[1];
DIMinusLead = 2*DMIMinus + (alpha1 - 2) * DMIMinus[1] + (1 - alpha1) * DIMinusLead[1];
DIMinusFinal = alpha2*DIMinusLead + (1 - alpha2) * DIMinusFinal[1];
ADXLead = 2*ADX + (alpha1 - 2) * ADX[1] + (1 - alpha1) * ADXLead[1];
ADXFinal = alpha2*ADXLead + (1 - alpha2) * ADXFinal[1];
{Plotting them on chart}
Plot1( DIPlusFinal, "DMI+" ) ;
Plot2( DIMinusFinal, "DMI-" ) ;
Plot3( ADXFinal, "ADX" ) ;


Действительно, if you don't try to get into the deep sense underlying the initial text of the smoothed ADX, this smoothing can be divided into two stages. Suppose we have a numerical sequence P and we have to smooth it with a minimum lag. Для этого, we build at the first stage function V(п) of P-sequence oscillation from the following formula:

V0 = (8*P0 - 7*Р1 + 3*V1) / 4,
где:

  • P0 is the current value of the sequence (a price or an indicator);
  • P1 is the preceding value of the sequence;
  • V1 is the preceding value of oscillation;
  • V0 is the current value of oscillation.

Или, in a different way:

V0 = (Том(п) + 3*V1) / 4,

где:

Том(п) "=" 8*P0 - 7Р1 - Ehlers' burst (the term is invented by myself).

At the second stage, we apply the simple weighted smoothing:

W0 = (1*V0 + 2*П1) / (2 + 1).
где:

  • W0 is the current smoothed value of sequence P;
  • V0 является the current value of P-sequence oscillation;
  • П1 is the preceding smoothed value.
In Smoothed ADX, this smoothing algorithm is applied to all three buffers of standard indicator ADX. This is why the obtained indicator is called Smoothed ADX. If we were smoothing indicator RSI, we would call it Smoothed RSI, и т. д.. The figure below shows that Smoothed ADX, indeed, is not so 'twitchy' as the original, standard ADX (Средний индекс направленного движения).

Smoothed ADX by John Ehlers [ 2


1 комментарий Чтобы опубликовать новый комментарий, пожалуйста авторизоваться или регистр

This is a reallly good indicator. Thanks Rosh! I have one question. How would I compare the current ADXFinal value with the ADXFinal value 3 periods ago? Shouldn't it already be housed in the array? Если так, где? I the array count down confused me a bit as it's been a long time since I've coded. TIA.

Насколько полезным был этот пост?

Нажмите на звездочку, чтобы оценить!

Средний рейтинг 0 / 5. Подсчет голосов: 0

Голосов пока нет! Будьте первым, кто оценит этот пост.

Сожалеем, что этот пост не оказался для вас полезным!

Давайте улучшим этот пост!

Расскажите нам, как мы можем улучшить этот пост?



Автор: Команда Форекс Вики
Мы команда опытных трейдеров Forex. [2000-2023] которые посвящены жизни на наших собственных условиях. Наша основная цель - достижение финансовой независимости и свободы, и мы занимались самообразованием и приобрели обширный опыт на рынке Forex, чтобы достичь самодостаточного образа жизни..