Обсуждение статьи "Новый индикатор технического анализа Moving Mini-Max и его реализация в MQL5" - страница 4
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Задумка понравилась, но что-то не так. Индикатор по реализации просто в рассматриваемом окне находит лок макс и мин. Гармоники вроде могут что-то сказать о фазе рынка (флет или тренд) но не явно. Нужно смотреть в динамике этот индикатор. Пока мне кажется, что он бесполезен.
Секрет всего этого гораздо проще, чем можно подумать.
Допустим, у нас есть два числа, и они действительно принадлежат упорядоченному ряду. Пусть это будут 10 и 12. Итак, если мы начинаем с 30, то 40 означает увеличение на 20 %. (12-10)/(10) = 1.2. Если мы изменим их порядок, то это будет (10-12)/(12) = (-2)/(12) = -1/6 = - 0,1667 (-17 %).
Однако, допустим, оба числа неупорядочены. Таким образом, невозможно определить, какое из них правильное. В этом случае мы просто вычисляем среднее значение для обоих случаев. Итак, среднее 12 и 10 равно (12+10)/2 = 11. А их разность равна (12-10) = 2. Теперь делим оба числа и получаем 2/11 = 0,181818.
Итак, настоящий секрет заключается в делении разности на среднее значение: q = (x_2 - x_1) / ((x_1+x_2)/2) = 2 * (x_2 - x_1)/(x_1 + x_2).
Никаких новостей об этом. Математика K12.
Но давайте подумаем о реальной вероятности, а не о статистике. Можно заменить знаменатель на медиану, а не на среднее. Для двух чисел это не будет иметь никакого значения. Но для трех и более - да. Попробуйте :)
Я был бы очень признателен, если бы кто-нибудь конвертировал этот индикатор в mt4 с исходным кодом, пожалуйста.
спасибо
редактировать : После 12 часов проверки индикаторов направления, ..... этот индикатор имеет REPAINT !!!!
Ethos Trader Код Moving Mini-Max работает, но необходимо сделать исправление, начиная со строки 225:
//| ----- Error: Has been replaced by the lines below ----- |
//| double result=0;
//|**** Original:for(i=0; i<n; i++) { Print("i ="+i+" uSi ="+uSi[i]); result+=uSi[i]; }
//| ---------------------------------------------------------- |
double result=0;
for(i=0; i<n; i++) // Я отключил это --- >> { Print("i = "+(string)i+" uSi = "+(string)uSi[i]); result+=uSi[i]; }
// Я отключил это --- >> Print("Result ="+DoubleToString(result));
}
Я тестирую индикатор, и он отображается для всех активов, кроме индекса, будь то полный, мини или текущий контракт. Есть предложения, что происходит или как мне действовать, чтобы индикатор появился для индекса?
Спасибо.