Форум » Консультации по программированию » Template_Lines_Color_Expert и FastTMA Line » Ответить

Template_Lines_Color_Expert и FastTMA Line

Genry: День добрый, Scriptong! Периодически возвращаюсь к изучению MQL и часто налетаю на одну и туже кочку - запаздывание при открытии позиции. Вроде на графике и на рисунках тестера индикатор своевременно отслеживает ситуацию, а при открытии позиции ордер выставляется значительно позже. Вот очередная заковыка: индикатор FastTMALine очень привлекательно рисует центральную 3-х цветную линию, где красный участок - медвежий, зеленый - бычий, а белый соответствует флету. Я взял за основу Template_Lines_Color_Expert и сделал советника. Целью было даже не торговать по FastTMALines, а отработать ее сигналы по смене тренда. Логика такая: выставляем ордер при появлении краного или зеленого цвета, закрываем при смене цвета или появлении белого цвета. FastTMALine красиво рисует на графике, так что в тестере надеялся получить как минимум безубыток вместо которого постоянно рисуется http://f4.s.qip.ru/NYzSvWel.png Валюта UsdJpy m15 пятизнак, параметры торговли выставлены как параметры ЕА. TP, SL нет - вход и выход по сигналам индикатора. Сделал запись всех сигналов в лог, вроде логика работает верно, а ордера выставляет поздно. Может это какой-то общеизвестный факт, типа задержки с периодом, но здесь я читаю сигналы индюка, который уже цвет сменил.... Игорь, взгляните, пожалуйста, в чем может быть проблема? Индикатор и советник в прицепе FastTMALine_EA. Спасибо!

Ответов - 55, стр: 1 2 3 4 All

Scriptong: Пока не могу заняться такими вещами, т. к. для подобного материала нужно "пожить" им достаточно продолжительное время. Сейчас же много сил и времени отнимает становление сайта и доведение до ума накопленного материала. Так, на следующей неделе планирую освежить еще одну старую статью.

Genry: Scriptong пишет: Пока не могу заняться такими вещами, т. к. для подобного материала нужно "пожить" им достаточно продолжительное время. Игорь, так я же не спешу и Вас не тороплю Постепенно пополняю материалами идею, чтобы оставалось меньше неясности. А когда критическая масса нарастет ... тогда и статья, надеюсь, поспеет

Scriptong: Genry пишет: А когда критическая масса нарастет ... тогда и статья, надеюсь, поспеет Договорились - ждем, когда взорвется


Genry: Игорь, день добрый! По ходу изысканий столкнулся с интересной негативной особенностью работы советника MCCE_Skewness_Eviews_Expert.mq4 (скрин внизу): при отработке трендового сигнала, в случае возникновения убытка на открытом ордере, эксперт сдвигает SL (и ТР) в отрицательную зону Если для ТР это еще как-то объяснимо -поставить его поближе к входу, то логика смещения SL до 1.34498 (так по SL закрылся в итого этот ордер) - в бОльший убыток от SL 1.35358, выставленного при открытии ордера, явно эти убытки увеличивает. Происходит это потому, что либо не запоминается первоначальный SL для последующего сравнения, либо что-то не так с механизмом контроля сделки при возникновении убытка после первоначального смещения SL в плюс. Более того, на скрине последний уровень перед падением был 1.35406, что еще лучше сократило убытки, но он тоже модифицировался Логичнее было остановить рост убытков на 1.35406 или при достижении ценой первого SL, выставленного при открытии ордера, а так цена модифицирует SL и TP вдоль убыточного канала. Буду рад увидеть, что советник более профитный , если внести такое изменение.

Scriptong: Genry пишет: По ходу изысканий столкнулся с интересной негативной особенностью работы советника MCCE_Skewness_Eviews_Expert.mq4 (скрин внизу): при отработке трендового сигнала, в случае возникновения убытка на открытом ордере, эксперт сдвигает SL (и ТР) в отрицательную зону Немного не так. В этом советнике не заложен механизм слежения за состоянием SL и TP в чистом виде. Он несколько завуалирован. Происходит следующее: 1. Открыт ордер. 2. На следующей свече поступает новый сигнал, совпадающий по направлению с имеющимся. В такой ситуации есть несколько вариантов действий: 1. Ничего не делать. 2. Открыть дополнительный ордер по новому сигналу. 3. Модифицировать текущий ордер в соответствии с новым сигналом. При реализации советника был выбран вариант №3. То есть все модификации, которые показаны на рисунке, это сигналы открытия новых ордеров. Так часто эти сигналы возникают, скорее всего, потому, что выбрана достаточно либеральная модель фильтрации сигналов, а именно: реагировать на все трендовые и флэтовые сигналы. Причем флэтовые сигналы не фильтровались по тренду. То есть набор был такой: i_useTrendSignals = true; i_useFlatSignals = true; i_useFlatByTrend = false; Если указать фильтрацию флэтовых сигналов по тренду (i_useFlatByTrend = true), то сигналов станет меньше. Еще меньше их станет, если отбросить флэтовые сигналы (i_useFlatSignal = false). Если же сделать то, о чем Вы просите (запретить советнику наращивать стоп), то проблема все равно не решится, т. к. после срабатывания уровня стопа на следующей же свече будет открыта новая сделка в том же направлении, т. е. стратегия ко всему прочему будет терять на лишних спредах.

Genry: Scriptong пишет: Если же сделать то, о чем Вы просите (запретить советнику наращивать стоп), то проблема все равно не решится, т. к. после срабатывания уровня стопа на следующей же свече будет открыта новая сделка в том же направлении, т. е. стратегия ко всему прочему будет терять на лишних спредах. Понятно, т.к. индикаторы внутри советника и не визуализируются при открытии графика тестирования я для визуализации использовал MultipleCorrelationCoefficient_Evaluation вместо MCCE_Skewness_EViews_Signals, на котором видно множество сигналов. Спасибо, Игорь, с этим разобрался, подзабыл уже особенности.

Genry: Игорь, когда вышла статья, этот вариант советника мне понравится своей универсальностью - Вы заложили в него стратегии для флета и тренда. Плюс асимметрия и регрессионный анализ , думаю он еще на многое способен ---------------------------------------------------------------------------- Что если расширить стратегию и урезать убытки? Алгоритм который работает сейчас, в случае когда ордер открылся против тренда иногда выводит сделку в безубыток или дает небольшую прибыль, но именно в этот момент часто идет сигнал смены тенденции, а вот убыточный тренд, как мы видим на скрине, может развиваться достаточно долго Я нашел свои старые записи, тех времен когда вышла статья, где анализировал все варианты настроек, за полгода было 48 трендовых сигналов и прибыль , а с флетовыми было 448 сделок, но прибыль в половину меньше. Часто убытки росли из-за ситуации которая показана на скрине выше. Может к трем ранее озвученным вариантам: "В такой ситуации есть несколько вариантов действий: 1. Ничего не делать. 2. Открыть дополнительный ордер по новому сигналу. 3. Модифицировать текущий ордер в соответствии с новым сигналом. ", с учетом сказанного Вами: Scriptong пишет: Если же сделать то, о чем Вы просите (запретить советнику наращивать стоп), то проблема все равно не решится, т. к. после срабатывания уровня стопа на следующей же свече будет открыта новая сделка в том же направлении, т. е. стратегия ко всему прочему будет терять на лишних спредах. можно добавить еще два: 4. Модифицируем текущий ордер в соответствии с новым сигналом, если прибыль увеличивается. Если сработал SL, переходим на Вариант №1 до появления противоположного сигнала. 5. Модифицировать текущий ордер в соответствии с новым сигналом, если прибыль увеличивается. Фиксируем локальные MAX|MIN. Если сработал SL (разворот или тренд не состоялся и рынок идет против нас), то при повторении сигналов текущей тенденции новый ордер в этом-же направлении открываем только при/после обнаружения локальной вершины или впадины. ============================= PS. еще после 3 часов разглядывания графиков: Возможно эти добавления и не решат задачи

Scriptong: Genry пишет: Плюс асимметрия и регрессионный анализ , думаю он еще на многое способен В этом советнике, чтобы вносить подобные изменения, придется еще решить задачу перехода на новый MQL4, т. е. потребуется полная переработка существующего кода. Так что это будет возможно только в рамках новой статьи.

Genry: Игорь, день добрый! Попался вот такой индикатор. По сути его все понятно, вопрос возникает при попытке использовать его в советнике, рекомендации он выдает текстом, уровни рисует в графике. Работа с индикатором через буфер понятна, а как быть с такими индикаторами? Или для удобства имеет смысл создать в нем нужный буфер? Мне уже несколько раз попадались такие индикаторы (например WATL или WATI), а проверить их эффективность мог только руками, хотелось бы понять как с ними работать программно. Вы могли бы на его примере показать как использовать сигналы такого индикатора в советнике? Спасибо!

Scriptong: Genry пишет: Вы могли бы на его примере показать как использовать сигналы такого индикатора в советнике? Самый простой вариант: 1. В индикаторе задать специальный префикс для имен объектов. 2. В советнике на каждом тике производится считывание параметров заранее известных имен объектов. Минус такого подхода - возможность тестирования только в режиме визуализации, т. к. при быстром тестировании и оптимизации графические объекты не создаются. Для полноценного использования индикатора в советнике потребуется только его полная перестройка.

Genry: Scriptong пишет: Самый простой вариант: 1. В индикаторе задать специальный префикс для имен объектов. 2. В советнике на каждом тике производится считывание параметров заранее известных имен объектов. Минус такого подхода - возможность тестирования только в режиме визуализации, т. к. при быстром тестировании и оптимизации графические объекты не создаются. Для полноценного использования индикатора в советнике потребуется только его полная перестройка. А если через глобальные переменные? Тогда возможно быстрое тестирование?

Scriptong: Genry пишет: А если через глобальные переменные? Тогда возможно быстрое тестирование? Возможно. Но на мой взгляд, с таким вариантом будет больше мороки (нужно разработать интерфейс общения между советником и индикатором), чем с переделкой индикатора на вывод данных в буфер.

Genry: Игорь, день добрый! Подбирая материал для поста в "Импульсах" я еще раз посмотрел материалы по построению волновых структур. И возник вопрос: возможно-ли внести изменения в индикатор ThreeWaves из статьи " Три волны" и сделать его сигнальным? Т.е. чтобы индикатор отрисовывал стрелки при развитии 3 волны за переделы вершины первой и крестик при окончании. При этом даже несостоявшаяся волна вполне укладывается в определение контрендовой и частенько пригодна для торговли.

Genry:

Scriptong: Genry пишет: И возник вопрос: возможно-ли внести изменения в индикатор ThreeWaves из статьи " Три волны" и сделать его сигнальным? Т.е. чтобы индикатор отрисовывал стрелки при развитии 3 волны за переделы вершины первой и крестик при окончании. Да, вполне возможно. Но когда за это смогу взяться даже обещать не буду.



полная версия страницы