TMA. Наблюдение поведения индикатора на истории.

Slim33

Гуру форума
Индикатор TMA_Test
Предназначен для наблюдения поведения стандартного индикатора TMA в прошлом.
Стандартный индюк TMA перерисовывается. Обычно для исследования таких индюков
используют тестер в визуальном режиме.
Но при этом отсутствует возможность быстрой «отмотки» графика назад в прошлое.
TMA_Test позволяет быстро выбирать любой момент времени на графике в любом направлении
и показывать состояние TMA именно в тот момент.

attachment.php


Индюк упрощенный. Не показывает данные с бОльших таймфреймов. Работает только на текущем таймфрейме.

Вертикальная зеленая линия показывает момент времени, который мы хотим исследовать.
Эту линию можно таскать по графику произвольно.
С приходом нового тика котировок индикатор TMA_Test отрисовывает свои линии.
Если котировки не поступают (например в выходные), следует принудительно
«взбодрить» индикатор одним из способов:
- перещелкнуть таймфрейм
- отобразить окно свойств инюка (doubleclick по линии индюка) и закрыть его.

Если вертикальная зеленая линия не видна в окне графика, можно быстро установить
её на нужное нам место с помощью скрипта @script_Drop_TMA_Line, просто бросив скрипт
в нужную точку на графике методом drag and drop. После этого «взбодрить» индикатор.
Автопрогрутку графика отключить
 

Вложения

  • files.zip
    5,3 КБ · Просмотры: 707
  • 11.gif
    11.gif
    16,3 КБ · Просмотры: 7 132

AlexNe

Элитный участник
Также "взбодрять" можно правой кнопкой мыши на графике - обновить.
А также бросать сразу несолько индюков TMA Test с разными настройками, например с разными halflength/atr и т.д., все эти TMA будут контролироваться этой зелёной линией.
 
Последнее редактирование:

Slim33

Гуру форума
Продолжим препарирование TMA.
Вероятно, я далеко не первый заметил, что в индикаторе используется вызов машки такого вида:
Код:
iMA(NULL,0,1,0,MODE_SMA,Price,i)
Очевидно, что значение этой функции равно Close (при дефолтном значении параметра индикатора Price = PRICE_CLOSE).
Похоже, автор оставил применение машки на вырост, или наоборот исключил этот вариант из рассмотрения. В любом случае, параметры этой машки пользователю недоступны.
Казалось бы, да и хрен с ним, но мне стало любопытно, насколько вызовы функции iMA вместо Close тормозят работу терминала.
Приделаем к стандартному индюку ТМА небольшой счетчик. Он показывает время работы при первом прогоне по всем барам истории.
Кроме того, для сравнения я модифицировал индюк (TMA_speed), заменив вызов бесполезной в данном случае машки ценой Close.

Вот результат измерения при параметре HalfLength = 20 (распечатка из протокола индюка).
2012.11.15 22:27:03 TMA_speed EURUSD,M5: ****** Bars = 124802 Running time = 593 mSec
2012.11.15 22:27:02 TMA_speed EURUSD,M5: initialized
2012.11.15 22:27:01 TMA_speed EURUSD,M5: loaded successfully
2012.11.15 22:26:56 TMA EURUSD,M5: ****** Bars = 124802 Running time = 1685 mSec
2012.11.15 22:26:55 TMA EURUSD,M5: initialized

при параметре HalfLength = 56.
2012.11.15 22:35:18 TMA_speed EURUSD,M5: ****** Bars = 124804 Running time = 1420 mSec
2012.11.15 22:35:16 TMA_speed EURUSD,M5: initialized
2012.11.15 22:35:13 TMA_speed EURUSD,M5: loaded successfully
2012.11.15 22:35:08 TMA EURUSD,M5: ****** Bars = 124804 Running time = 4415 mSec
2012.11.15 22:35:03 TMA EURUSD,M5: initialized

Выводы.
TMA_speed почти в 3 раза быстрее, чем TMA.
В той конфигурации, в которой ТМА используется повсеместно, логично применять модифицированный индюк TMA_speed
Отмечу, что я измерял время работы в первом цикле прогона – по всем барам. Далее, при вычислении индюка только на последних барах это время будет существенно меньше.
Параметр HalfLength значительно влияет на скорость работы индюка.
Все-таки 4415 mSec (4,4 сек) при подключении индюка к графику слегка раздражает.

PS значения модифицированного индюка полностью совпадают с оригинальным.
 

Вложения

  • TMA_speed.mq4
    9,1 КБ · Просмотры: 632

Slim33

Гуру форума
О перерисовке. Иллюстрации.

Явная проблема с перерисовкой очевидна – сначала, на нулевом баре, мы видим одну картину,
а некоторое время спустя, когда этот бар станет историей, картинка может радикально измениться.
Вот конкретный пример.

attachment.php

Тут изображен отбой от нижней границы канала (в качестве подтверждающего сигнала для принятия торгового решения), этот момент отмечен желтой линией.

Давайте попытаемся увидеть, как это выглядело НА САМОМ ДЕЛЕ в тот самый момент – 14 ноября, 16:08 .
Терминал Альпари, реал. Интересующий нас момент отмечен желтыми овалами.

attachment.php

На левой половине рисунка мы видим, что фиолетовый индюк TMA_Test показывает отсутствие отбоя от нижней линии канала.
Цена находится на средней линии этого индикатора. Возникают сомнения в корректной работе индюка TMA_Test?
Не обязательно использовать именно его для проверки. Проверим еще одним способом – прогон графика с оригинальным ТМА в визуальном режиме тестера.
На правой части картинки изображен оригинальный индюк ТМА в нужный нам момент времени. Видим принципиальное отличие положения белого канала.
Белый канал на правой половине показывает то же самое, что и фиолетовый на левой половине картинки. Цена на средней линии канала, нижней границы не касается.
Так оно и выглядело в реальном времени.

Всё еще сомневаемся в корректности работы TMA_Test или в корректности исторических котировок?
А проверим-ка еще и в другом терминале- RVD, реал.
Так же будем использовать визуальный тестер.
Картинка та же самая. (Сдвиг времени у RVD минус 2 часа относительно Альпари).

attachment.php

Надеюсь, эти картинки понятно объясняют как суть перерисовки,
так и конкретную ситуацию с интерпретацией показаний индикатора ТМА
 

Вложения

  • m1.gif
    m1.gif
    9,5 КБ · Просмотры: 3 893
  • Alpari.gif
    Alpari.gif
    28,1 КБ · Просмотры: 3 951
  • RVD.gif
    RVD.gif
    20 КБ · Просмотры: 3 818
Последнее редактирование модератором:

Slim33

Гуру форума
О перерисовке. Психология.

Тут хрень такая вышла. Чтобы не засорять ветку про ТС Коперник, выскажусь здесь.
Ну так вот, кроме собственно перерисовки, есть еще и другая опасность –
слепая вера в непогрешимость как свою, так и своего любимого индикатора.

Вот разместил я вполне безобидный пост. Там как раз и изображена эта самая ситуация, что описана на картинках выше.
Я просто указал на явную ОШИБКУ в интерпретации показаний индюка ТМА.
Ссылку в том посте сюда, на мой мод индюка я добавил уже позже, после первой публикации поста. Один из форумчан попросил.

В ответ на это Бомбардир разразился серией оскорбительных постов,
в которых так и видится яростное топанье ногами и брызганье слюной.
Бомбардир уже заявлял, что дискуссия о перерисовке ТМА его достала, и обсуждать её он не намерен.
Хорошо, понимаю, нет проблем. Но когда такой подход приводит к очевидной ошибке, причем ошибочное суждение
преподносится в качестве учебного материала, ситуация требует аргументированного разъяснения.

Ситуация – то была вполне рабочая, найти истину было легко. Нет желания проверять? Могу понять.
Но трансформировать это нежелание в ложные голословные утверждения – это некорректно.
Картинки в предыдущем посте показывают анализ ситуации во всех деталях.
Индюк TMA_Test свою задачу выполняет правильно. Не было там сигнала от индикатора.

Когда в ответ на свою безобидную картинку я получил поток истерической брани и беспочвенных обвинений, я сразу вспомнил анекдот:

Стоит девочка у холодильника и жрёт из морозилки сырые пельмени.
Заходит на кухню мама и говорит: - доченька, может тебе пельмешки отварить?
- КТО ОБКУРЕННЯ!? Я ОБКУРЕННАЯ!?

Когда-то Бомбардир удачно и самоиронично скаламбурил о себе – “загурел”.
А ведь и вправду похоже, что командор загурел. :)
 

Turtle1990

Новичок форума
Слим33, все правильно! ТМА перерисовывается не только на истории но и в тестере! Заметил это только сегодня.. Вообщем ТМА можно смотреть только в реал тайме иначе будет просто самообман
 

ale002

::: __,,,^._.^,,,__ :::
Слим33, все правильно! ТМА перерисовывается не только на истории но и в тестере! Заметил это только сегодня.. Вообщем ТМА можно смотреть только в реал тайме иначе будет просто самообман

Это да. Сидеть на стуле с двумя ножками тоже можно после некоторой практики и при определённой деформации здравого смысла. mladen с TSD, автор тучи рисующихся версий TMA, задолбался объяснять почему его не следует использовать в реальном времени, создал спецтопик с объяснялками и всех посылает туда, когда зоходит речь про TMA -
http://www.forex-tsd.com/metatrader-4/32719-triangular-moving-average-tma.html

В расчётах MA этого типа каждый бар периода имеет собственный вес. У Linear Weighted MA эти веса распределяются линейно, по убыванию от новых к старым. У TMA по горбу треугольника - сначала повышаются, как у LW, потом понижаются (LW наоборот). Centered TMA (рисующийся) сдвигает полпериода, т.е. перерисовывает понижающуюся часть горба, а повышающуюся оставляет как есть. Поэтому неперерисовывающейся остается LW с периодом, равным половине горба

Почему не пользоваться нормальным TMA или LWMA я не вижу др причины кроме тока патомушта на фоне истории колченогий красиво смотритсо
 

Slim33

Гуру форума
ТМА перерисовывается не только на истории но и в тестере
Turtle1990, я бы уточнил: это не свойство ТМА, а свойство тестера - в визуальном режиме отображать индюки максимально близко к тому, что было в реале.
Ну и, соответственно, тестер можно использовать как инструмент для быстрой проверки перерисовки.
А индюк из первого поста - для еще более быстрой и удобной :)
Я не любитель перерисовывающихся индюков, предпочитаю на истории видеть максимально достоверную картину.
Потому и начал эту тему.
 

absorber

Новичок форума
Почему не пользоваться нормальным TMA или LWMA я не вижу др причины кроме тока патомушта на фоне истории колченогий красиво смотритсо
Правильно ли я понял мысль, что существуют индикаторы, сходные по функционалу с ТМА, но не перерисовывающиеся на истории?
 

ale002

::: __,,,^._.^,,,__ :::
Позволю себе ответить за ale002. Вот тут.
Версии с метками true, endpoint, norepaint - попытки искривлённое искривить в обратную сторону, бо это переделки рисующегося (centered) варианта. В них есть дефекты - квалификация авторов разная. Напр, в этом ширина канала вычисляется из устаревших на 10 баров данных ATR (как в рисующемся) + алгоритм расчёта MA не совпадает с оригиналом

Правильно ли я понял мысль, что существуют индикаторы, сходные по функционалу с ТМА, но не перерисовывающиеся на истории?

Смотря что назвать "сходные по функционалу". Индюка, сразу рисующего то, что centered постепенно дорисовывает в прошлом нет, он не совместим с Форексом - либо он, либо Фора должна сдохнуть

А оригинальный TMA, каким он был до добавления переписывалки истории тихо стоит в сторонке от ажиотажа - см аттач и 1ю картинку. Ничего особенного. Если переписывалку истории добавить в любую стандартную МАшку, тоже получится феноменальный резалт на истории

Алгоритм переписывалки в TMA centered таков, что ближе к получаемой после всех перерисовок картинке будет стандартная MA в режиме LW. На 2й картинке LWMA - синяя, рисучий TMA - красный

© автор картинок и индикатора - mladen, ссылку на топик TSD см выше
 

Вложения

  • tma.jpg
    tma.jpg
    66,1 КБ · Просмотры: 926
  • tma lwma.jpg
    tma lwma.jpg
    68,5 КБ · Просмотры: 775
  • TMA.mq4
    2,3 КБ · Просмотры: 216

serdon

Местный житель
Подскажите, есть ли возможность внести такие изменения в индикатор TMA_test, чтобы при прогоне в тестере он показывал реальные результаты на тот период времени?
 
Верх