Математические основы индикаторов

Lexxodessa

Гуру форума
для прогноза берется слишком маленькая история, вот и скачет время от времени... тут какие ножницы могут быть: мало истории - большая чувствительность, много истории - сильно сглаживает... к примеру, если взять всю историю, то скорее всего мы получим прогноз вида - что было, то и будет (прогнозное значение равно предыдущему)
но можно попробовать поиграться со склерозом))) параметр Smooth - чем больше, тем сильнее сглаживание
Приветствую . а если в подвал и привязать к каким-то уровням ?
 

AlexeNP

Гуру форума
с вашего дозволения разобью ответ на две части...
часть 1
Любой мало-мальски по уму сделанный индикатор, можно выжимать очень долго. И этот - не исключение.
Берем формулу этого самого чуды-юды: x0 = x1 + k1*(x1-x2) + k2*(x1-2*x2+x3) + k3*(x1-3*x2+3*x3-x4)
x0 - прогнозная цена, x1..x4 - уже известные нам цены.
Сначала посмотрим, попадает ли этот расчет в формулу благородных индикаторов. Для этого раскрываем скобки, а потом группируем все хозяйство вокруг значений х. Получаем: x0 = (1 + k1 + k2 + k3)*x1 - (k1 + 2*k2 + 3*k3)*x2 + (k2 + 3*k3)*x3 - k3*x4
Новые коэффициенты обозначим через большие К:
K1 = 1 + k1 + k2 + k3
K2 = - k1 - 2*k2 - 3*k3
K3 = k2 + 3*k3
K4 = - k3
Найдем их сумму: K1 + K2 + K3 + K4 = 1.
Класс, ы имеем дело с нормальным индикатором, и можем применять к нему кое-какие общие соображения. Например, индикатор должен быть устойчив, а не метаться туда-сюда как подрезанный. Чтобы это условие выполнялось, достаточно чтобы все большие какашки лежали в пределах -1...+1. То есть, в нашем случае мы получим четыре неравенства:

-2 < k1 + k2 + k3 < 0
-1 < k1 + 2*k2 + 3*k3 < 1
-1 < k2 + 3*k3 < 1
-1 < k3 < 1

Решаем эти неравенства, и получаем всего-то 42 разных варианта. Начинающего трейдера, такое количество может напугать. Но опытному трейдеру - как два байта отослать. Смотрим один из примеров первого варианта

EURUSDH1.png

Все варианты вписаны в инициализации индикатора. Каждая строчка - свой вариант, можно выбрать любой, главное чтобы больше-меньше соблюдалось)
 

Вложения

  • AIS Forecast Four Counts.mq4
    6,8 КБ · Просмотры: 18
  • AIS Forecast Four Counts.mq5
    5,7 КБ · Просмотры: 9

Lexxodessa

Гуру форума
с вашего дозволения разобью ответ на две части...
часть 1
Любой мало-мальски по уму сделанный индикатор, можно выжимать очень долго. И этот - не исключение.
Берем формулу этого самого чуды-юды: x0 = x1 + k1*(x1-x2) + k2*(x1-2*x2+x3) + k3*(x1-3*x2+3*x3-x4)
x0 - прогнозная цена, x1..x4 - уже известные нам цены.
Сначала посмотрим, попадает ли этот расчет в формулу благородных индикаторов. Для этого раскрываем скобки, а потом группируем все хозяйство вокруг значений х. Получаем: x0 = (1 + k1 + k2 + k3)*x1 - (k1 + 2*k2 + 3*k3)*x2 + (k2 + 3*k3)*x3 - k3*x4
Новые коэффициенты обозначим через большие К:
K1 = 1 + k1 + k2 + k3
K2 = - k1 - 2*k2 - 3*k3
K3 = k2 + 3*k3
K4 = - k3
Найдем их сумму: K1 + K2 + K3 + K4 = 1.
Класс, ы имеем дело с нормальным индикатором, и можем применять к нему кое-какие общие соображения. Например, индикатор должен быть устойчив, а не метаться туда-сюда как подрезанный. Чтобы это условие выполнялось, достаточно чтобы все большие какашки лежали в пределах -1...+1. То есть, в нашем случае мы получим четыре неравенства:

-2 < k1 + k2 + k3 < 0
-1 < k1 + 2*k2 + 3*k3 < 1
-1 < k2 + 3*k3 < 1
-1 < k3 < 1

Решаем эти неравенства, и получаем всего-то 42 разных варианта. Начинающего трейдера, такое количество может напугать. Но опытному трейдеру - как два байта отослать. Смотрим один из примеров первого варианта

Посмотреть вложение 457492

Все варианты вписаны в инициализации индикатора. Каждая строчка - свой вариант, можно выбрать любой, главное чтобы больше-меньше соблюдалось)
К сожалению не дружу с mql , да и с математикой до твоего уровня как до небес ) Поэтому предоставляю свободу вашей фантазии ) Может что-то и получится ) Я про подвал .
 

AlexeNP

Гуру форума
часть 2.
некоторые социально безответственные трейдеры, говорят: " - А ну-ка в подвал". Нет, чтобы на природе, на свежем воздухе, да под шашлычок-коньячок... Нет, в подвал и всё тут. Не будем показывать пальцем от кого это предложение поступило...
Ну, ок. Рассуждаем примерно так. Неравенства у нас есть, а теперь положим, что все коэффициенты не связаны друг с другом, и тогда мы найдем минимальное и максимальное возможные значения этих коэффициентов. Введем какую-нибудь небольшую поправку р, и тогда получится примерно такое:
k1_max = (13 - 15*p)/2
k1_min = 9*(1 - p)/2
k2_max = 4*(1 - p)
k2_min = 4*(p - 1)
k3_max = 1 - p
k3_min = p - 1
с такими коэффициентами индикатор будет отплясывать танцы имени св. Вита, чтобы не сводить трейдеров с ума, будем считать разницу между максимальным и минимальным значением и выводить его в подвальчик)
EURUSDH1.png

параметр Correct нужно устаканивать в пределах Point <= Correct <= 1 - Point
 

Вложения

  • AIS Forecast Four Counts.mq4
    3,7 КБ · Просмотры: 12
  • AIS Forecast Four Counts.mq5
    2,6 КБ · Просмотры: 7

Lexxodessa

Гуру форума
часть 2.
некоторые социально безответственные трейдеры, говорят: " - А ну-ка в подвал". Нет, чтобы на природе, на свежем воздухе, да под шашлычок-коньячок... Нет, в подвал и всё тут. Не будем показывать пальцем от кого это предложение поступило...
Ну, ок. Рассуждаем примерно так. Неравенства у нас есть, а теперь положим, что все коэффициенты не связаны друг с другом, и тогда мы найдем минимальное и максимальное возможные значения этих коэффициентов. Введем какую-нибудь небольшую поправку р, и тогда получится примерно такое:
k1_max = (13 - 15*p)/2
k1_min = 9*(1 - p)/2
k2_max = 4*(1 - p)
k2_min = 4*(p - 1)
k3_max = 1 - p
k3_min = p - 1
с такими коэффициентами индикатор будет отплясывать танцы имени св. Вита, чтобы не сводить трейдеров с ума, будем считать разницу между максимальным и минимальным значением и выводить его в подвальчик)
Посмотреть вложение 457513

параметр Correct нужно устаканивать в пределах Point <= Correct <= 1 - Point
No comments . Спс.
 

AlexeNP

Гуру форума
ну, и чтоб два раза не вставать, сделаем еще один подвальчик... суть, принимаем все коэффициенты равными 1, и считаем насколько текущая цена отклонилась от предсказываемой. Тогда индикатор, по идее, должен бурно реагировать на какие-то сильные движухи - типа смена тренда, примерка бренда и всякое такое.
EURUSDH1.png
 

Вложения

  • AIS Forecast Four Counts.mq4
    3,3 КБ · Просмотры: 15
  • AIS Forecast Four Counts.mq5
    2,1 КБ · Просмотры: 9

Surem

Местный житель
Алекс, можешь MTF сделать версию? И подскажи, плиз, почему числовые значения на метках инвертированы от значений столбцов?
Смею предположить, что инвертирование цифр от столбцов намеренное. А то нам жирно и так будет бесплатно дали нам индюк а тут ещё он полностью удобен. Короче чтоб не расслаблялись)) Попрошу вас если можно отмените инвертирование цифр от столбцов и выложите индюк без инвертирования. Я отменил сам на МТ5, тут не надо быть программистом,но на МТ4 у меня уже давненько не работает редактор и не могу сделать.((
 

AlexeNP

Гуру форума
Смею предположить, что инвертирование цифр от столбцов намеренное. А то нам жирно и так будет бесплатно дали нам индюк а тут ещё он полностью удобен. Короче чтоб не расслаблялись)) Попрошу вас если можно отмените инвертирование цифр от столбцов и выложите индюк без инвертирования. Я отменил сам на МТ5, тут не надо быть программистом,но на МТ4 у меня уже давненько не работает редактор и не могу сделать.((
опять за рыбу деньги....
 

Вложения

  • AIS Extreme Positions Opening.mq4
    6,4 КБ · Просмотры: 24
  • AIS Extreme Positions Opening.mq5
    6,4 КБ · Просмотры: 10

AlexeNP

Гуру форума
так-с... сегодня поговорим о броуновском движении. По последним данным, Браун открыл это движение когда дал своей жене безлимитную кредитную карту в каком-то гипер-супер-мега-маркете. Давайте посмотрим, можно ли это открытие использовать в мирных целях.
Итак, суть довольно проста: разница между некоторой начальной и какой-то конечной точками пропорциональна сигме (которая характеризует бешенность движения) и квадратному корню из времени, которое было потрачено. Если знать сигму и одну точку, то из нее можно построить прогноз коридора в котором будет лежать это движение.
Но у нас-то точек - целый график, поэтому сделаем всё по-нашему, по-кумбаяшному. Параметры индикатора: Length - количество баров, используемых для расчета сигмы, Forecast - на сколько баров вперед давать прогноз, Shift - смещение по истории. Используя его, можно посмотреть чего там индикатор наколдовал в прошлом. Sensitivity - чувствительность прогноза, чем меньше этот параметр тем ширше будет канал. Ну, и картинка примерно такая у нас выходит
EURUSDH1.png
 

Вложения

  • AIS Brownian Motion.mq4
    7,8 КБ · Просмотры: 27
  • AIS Brownian Price Movement.mq5
    3,6 КБ · Просмотры: 15
Последнее редактирование:

kudinoff

Почетный гражданин

AlexeNP,​

вопрос.. какие есть альтернативы стандартному отклонению для выявления критических значений?
 

MERFY

Активный участник
так-с... сегодня поговорим о броуновском движении. По последним данным, Браун открыл это движение когда дал своей жене безлимитную кредитную карту в каком-то гипер-супер-мега-маркете. Давайте посмотрим, можно ли это открытие использовать в мирных целях.
Итак, суть довольно проста: разница между некоторой начальной и какой-то конечной точками пропорциональна сигме (которая характеризует бешенность движения) и квадратному корню из времени, которое было потрачено. Если знать сигму и одну точку, то из нее можно построить прогноз коридора в котором будет лежать это движение.
Но у нас-то точек - целый график, поэтому сделаем всё по-нашему, по-кумбаяшному. Параметры индикатора: Length - количество баров, используемых для расчета сигмы, Forecast - на сколько баров вперед давать прогноз, Shift - смещение по истории. Используя его, можно посмотреть чего там индикатор наколдовал в прошлом. Sensitivity - чувствительность прогноза, чем меньше этот параметр тем ширше будет канал. Ну, и картинка примерно такая у нас выходит
Посмотреть вложение 457760

В чем прикол в разных стилях писать код? Для МТ4 нет внешних параметров, а для МТ5 есть )) Типо МТ5 лучше чем МТ4 ))
 

AlexeNP

Гуру форума

AlexeNP,​

вопрос.. какие есть альтернативы стандартному отклонению для выявления критических значений?
вот первое что в голову пришло - расстояние Минковского... правда, немного подрихтуем его под свои цели)
EURUSDH1.png
параметр Power можно и дробным сделать, главное чтобы больше ноля был)
 

Вложения

  • AIS Minkowski Sliding Distance.mq4
    2,9 КБ · Просмотры: 25
  • AIS Minkowski Sliding Distance.mq5
    2,9 КБ · Просмотры: 9

kudinoff

Почетный гражданин
вот первое что в голову пришло - расстояние Минковского... правда, немного подрихтуем его под свои цели)
параметр Power можно и дробным сделать, главное чтобы больше ноля был)
Я правильно понимаю, что суть та же, что и на стандартном отклонении, только у нас есть возможность настраивать степень вручную, а не придерживаться квадрата? Помучил терминальный индюк
 

Вложения

  • DevMinkovsky.mq4
    7,3 КБ · Просмотры: 14

AlexeNP

Гуру форума
Я правильно понимаю, что суть та же, что и на стандартном отклонении, только у нас есть возможность настраивать степень вручную, а не придерживаться квадрата? Помучил терминальный индюк
не совсем... ты повторил, расчет среднеквадратичного отклонения, но тут (если все делать в лоб) скрывается две засады - устойчивая оценка как среднего, так и самого отклонения... но даже если мы их будем использовать, то они все равно будут относиться к середине рассматриваемого интервала, а не к его краям...
а вот расстояние Минковского можно использовать и для прогнозаEURUSDH1.png
 

Вложения

  • AIS Minkowski Sliding Distance.mq4
    2,9 КБ · Просмотры: 15
  • AIS Minkowski Sliding Distance.mq5
    2,9 КБ · Просмотры: 8

AlexeNP

Гуру форума
Здесь по возможности подробнее, как это сделать?
тут все простенько... пусть у нас имеются исторические данные (красные стрелочки). Находим расстояние Минковского. Ну, и от последней известной цены делаем шаг впередEURUSDH1.png
 

AlexeNP

Гуру форума
ну, и на сладенькое - есть еще вариант. Здесь Power может принимать любые значения
EURUSDH1.png
Этот вариант интересен тем, что его можно применять в индикаторах - сначала преобразовывается цена, потом применяется расчеты индикатора, потом делается обратное преобразование, полученное значение выводится на график. Но тут работают только индикаторы с весовыми коэффициентами. К примеру, на графике - средняя преобразована туда-сюда, но от обычной скользящей средней она вряд ли отличается
 

Вложения

  • AIS Power Transform.mq4
    7,7 КБ · Просмотры: 17
  • AIS Power Transform.mq5
    7,8 КБ · Просмотры: 7

AlexeNP

Гуру форума
интересная история получается... делал я делал индикатор с броуновским движением, но по ошибке чего-то не того загрузил... Ну, ладно, я-то старенький и малость того, а вы-то куды смотрите? Как говорили в старославянском интернете - длань-чело...
Вот за то, что вы себя плохо ведете, добавил еще две полоски
EURUSDH1.png
 

Вложения

  • AIS Brownian Price Movement.mq4
    4,3 КБ · Просмотры: 18
  • AIS Brownian Price Movement.mq5
    4,4 КБ · Просмотры: 8

Genry_05

Отдыхает
AlexeNP,
вопрос.. какие есть альтернативы стандартному отклонению для выявления критических значений?
вот первое что в голову пришло - расстояние Минковского... правда, немного подрихтуем его под свои цели)
параметр Power можно и дробным сделать, главное чтобы больше ноля был)
Почему торговый народ так притягивает ТМА? Делая экстраполяцию, она красиво пересчитывает половину своего периода.;) Поэтому: МА всегда по центру, а границы - на экстремумах цены... Благодать :)
file.php

Разумеется такое благолепие хочется повторить на графике, но без перерасчета.
Младен формулировал это так:
Существует множество индикаторов полосного типа. Почти все они работают схожим образом: некоторое базовое значение считается центральной линией, а границы канала отрисовываются от него на одинаковом расстоянии сверху и снизу. Это хорошо очерчивает границы ценовых колебаний, но обычно вызывает запаздывание при развороте тренда. Это отставание обусловлено тем, что противоположная сторона полосы находится слишком далеко от текущей цены.

Один из способов исправить проблему: вместо равноудаленных от центральной линии полос, здесь используются асимметричные.

Когда цена становится выше среднего, сужается нижняя полоса, а когда цена ниже среднего значения — сужается верхняя. Это с течением времени "приближает" противоположную полосу к среднему значению. Таким образом, сигналы на пробоях полос поступают быстрее и чаще, чем в обычных полосных индикаторах.
cb-1__30.png


1639257403938.png
 

Вложения

  • Asymmetric bands.mq5
    9,3 КБ · Просмотры: 16
  • Centered TMA (asymmetric bands).ex4
    20,6 КБ · Просмотры: 25
Последнее редактирование:
Верх