возможно ли создать советника для Triggerlines, как я вижу на истории, он проделал отличную работу, но немного сложно постоянно нянчиться с ним.
Обычно я совмещаю его с тренд менеджером, так что когда триггерлайнс пересекается вверх и меняет цвет на синий и у TM есть синий сигнал на покупку, если вы можете создать советника, который может совмещать оба индикатора, это было бы очень полезно .Спасибо большое.
Я пытался получить некоторую помощь с советником, похожим на ваш, потому что я не программист ни в коем случае. Однако, я не могу вызвать интерес, поэтому я подумал, раз ваш советник так близок, может быть, его можно адаптировать для того, что я пытаюсь сделать. Ниже приведено простое объяснение 3 переменных:
Если EMA 9 пересекается выше EMA 30, а Momentum(21) пересекает 100, создается сигнал на покупку. Выход на покупку будет сгенерирован, если EMA 9 пересечется ниже EMA 30, независимо от того, что делает линия импульса.
Если EMA 9 пересекается ниже EMA 30, а Momentum(21) пересекает отметку ниже 100, формируется сигнал на продажу. Выход на продажу будет сформирован, когда ЕМА 9 пересечется выше ЕМА 30, независимо от того, что делает линия импульса.
Что вы думаете? Можно ли это как-то подкорректировать или это вообще выполнимый советник? Любая помощь будет оценена по достоинству!
Сначала я хочу поблагодарить вас за такую замечательную работу, за уроки по MT4. Еще неделю назад МТ4 казался мне очень трудным, но теперь я начинаю опираться.
Я пытаюсь преобразовать индикатор в советника. Индикатор использует "int counted_bars = IndicatorCounted()", для подсчета баров, в советнике я думаю я не могу использовать это, так как это связано с индикатором.
Я только что прочитал руководство по MQL4 в прошлые выходные и создал свой первый советник.
Огромное спасибо за ваше руководство. Я не смог найти в сети ничего, что позволило бы изучить язык так легко. Вы действительно развивали каждый урок с правильным уклоном.
В общем, вот мой первый советник: я не знаю, прибыльная это система или нет, но результаты бэк-теста моего советника не совпадают с результатами ручного бэк-теста, который я проводил. Я знаю, что есть два фильтра, которые я не смог понять, как запрограммировать, но я займусь этим после того, как все объясню. (Я приложил текстовый файл с кодом).
Вот основа моей системы:
Начальная установка:
15-метровый временной интервал
Если он находится между 200 и 1400 EST.
Если ADX больше 20.
Если диапазон [1] последнего бара меньше диапазона [2] предыдущего бара. (Внутренний период).
Если диапазон [1] последнего бара меньше 7 пунктов.
Условная установка A:
Если 20-периодная EMA поднялась.
Если Bid больше максимума [1] последнего бара (я предполагаю, что графики показывают только Bid... это так?).
Покупаем по цене спроса со стоп-лоссом на один тик ниже минимума последнего периода.
Условная установка B:
Если 20-периодная EMA находится внизу.
Если Bid меньше минимума последнего бара [1].
Продаем по Bid со стоп-лоссом на один тик выше high+ask последнего бара.
Я хочу установить тейк-профит при определенном соотношении риск:вознаграждение. В своем бэк-тестировании я обнаружил, что когда баров периода Inside меньше 5, соотношение вознаграждения 3:1 является хорошим. (лимитный ордер на 30 пунктов (5(диапазон) + 3(спред) + 2(SL и вход))*3=30)..... Однако я не думаю, что правильно запрограммировал это в своем коде.
Первый вопрос:
Правильно ли я использую код для инициирования сделок? Правильно ли я использовал максимумы, аски и т.д.?
Второй вопрос:
Мой временной фильтр, похоже, не работает. Правильно ли я это делаю?
Третий вопрос:
Я хочу, чтобы сделки инициировались только на ОДИН ПИП выше High+ask последнего бара. Я думаю, что мой текущий код будет инициировать сделки при прорыве цены выше этой цены. Как мне это исправить?
Четвертый вопрос:
Я думаю, что это самая большая ошибка в моем коде: У меня нет фильтра для случаев, когда 20-EMA разворачивается, но ADX все еще выше 20. Я также хотел бы посмотреть, как эта система работает, если 20-EMA разворачивается, ADX падает (но не ниже 20), а затем снова поднимается, так что МОЖНО было бы отфильтровать сделки, когда ADX находится в нисходящем тренде, но опять же, это может отфильтровать много прибыльных сделок). Если бы мне могли помочь с кодированием, я бы с удовольствием поэкспериментировал с этими различными факторами.
Из моего ручного тестирования я думаю, что у меня может быть прибыльная система, поэтому любая помощь будет оценена по достоинству.
Привет, Гордон, как вы можете видеть на коде, который вы только что опубликовали, если вы хотите изменить цвет, просто измените ALL WHITE и RED слово на любой цвет, который вам нравится, а затем скомпилируйте пользовательский индикатор. Пожалуйста, дайте мне знать, если это может решить вашу проблему. Надеюсь, это поможет
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
привет кодеры,
возможно ли создать советника для Triggerlines, как я вижу на истории, он проделал отличную работу, но немного сложно постоянно нянчиться с ним.
Обычно я совмещаю его с тренд менеджером, так что когда триггерлайнс пересекается вверх и меняет цвет на синий и у TM есть синий сигнал на покупку, если вы можете создать советника, который может совмещать оба индикатора, это было бы очень полезно
.Спасибо большое.
ema-крест
Здравствуйте, codersguru,
Я пытался получить некоторую помощь с советником, похожим на ваш, потому что я не программист ни в коем случае. Однако, я не могу вызвать интерес, поэтому я подумал, раз ваш советник так близок, может быть, его можно адаптировать для того, что я пытаюсь сделать. Ниже приведено простое объяснение 3 переменных:
Если EMA 9 пересекается выше EMA 30, а Momentum(21) пересекает 100, создается сигнал на покупку. Выход на покупку будет сгенерирован, если EMA 9 пересечется ниже EMA 30, независимо от того, что делает линия импульса.
Если EMA 9 пересекается ниже EMA 30, а Momentum(21) пересекает отметку ниже 100, формируется сигнал на продажу. Выход на продажу будет сформирован, когда ЕМА 9 пересечется выше ЕМА 30, независимо от того, что делает линия импульса.
Что вы думаете? Можно ли это как-то подкорректировать или это вообще выполнимый советник? Любая помощь будет оценена по достоинству!
BW
IndicatorCounted
Здравствуйте, Codegru,
Сначала я хочу поблагодарить вас за такую замечательную работу, за уроки по MT4. Еще неделю назад МТ4 казался мне очень трудным, но теперь я начинаю опираться.
Я пытаюсь преобразовать индикатор в советника. Индикатор использует "int counted_bars = IndicatorCounted()", для подсчета баров, в советнике я думаю я не могу использовать это, так как это связано с индикатором.
Как я могу решить эту проблему.
Спасибо большое....
Система ADX
Здравствуйте, Гуру Кодера,
Я только что прочитал руководство по MQL4 в прошлые выходные и создал свой первый советник.
Огромное спасибо за ваше руководство. Я не смог найти в сети ничего, что позволило бы изучить язык так легко. Вы действительно развивали каждый урок с правильным уклоном.
В общем, вот мой первый советник: я не знаю, прибыльная это система или нет, но результаты бэк-теста моего советника не совпадают с результатами ручного бэк-теста, который я проводил. Я знаю, что есть два фильтра, которые я не смог понять, как запрограммировать, но я займусь этим после того, как все объясню. (Я приложил текстовый файл с кодом).
Вот основа моей системы:
Начальная установка:
15-метровый временной интервал
Если он находится между 200 и 1400 EST.
Если ADX больше 20.
Если диапазон [1] последнего бара меньше диапазона [2] предыдущего бара. (Внутренний период).
Если диапазон [1] последнего бара меньше 7 пунктов.
Условная установка A:
Если 20-периодная EMA поднялась.
Если Bid больше максимума [1] последнего бара (я предполагаю, что графики показывают только Bid... это так?).
Покупаем по цене спроса со стоп-лоссом на один тик ниже минимума последнего периода.
Условная установка B:
Если 20-периодная EMA находится внизу.
Если Bid меньше минимума последнего бара [1].
Продаем по Bid со стоп-лоссом на один тик выше high+ask последнего бара.
Я хочу установить тейк-профит при определенном соотношении риск:вознаграждение. В своем бэк-тестировании я обнаружил, что когда баров периода Inside меньше 5, соотношение вознаграждения 3:1 является хорошим. (лимитный ордер на 30 пунктов (5(диапазон) + 3(спред) + 2(SL и вход))*3=30)..... Однако я не думаю, что правильно запрограммировал это в своем коде.
Первый вопрос:
Правильно ли я использую код для инициирования сделок? Правильно ли я использовал максимумы, аски и т.д.?
Второй вопрос:
Мой временной фильтр, похоже, не работает. Правильно ли я это делаю?
Третий вопрос:
Я хочу, чтобы сделки инициировались только на ОДИН ПИП выше High+ask последнего бара. Я думаю, что мой текущий код будет инициировать сделки при прорыве цены выше этой цены. Как мне это исправить?
Четвертый вопрос:
Я думаю, что это самая большая ошибка в моем коде: У меня нет фильтра для случаев, когда 20-EMA разворачивается, но ADX все еще выше 20. Я также хотел бы посмотреть, как эта система работает, если 20-EMA разворачивается, ADX падает (но не ниже 20), а затем снова поднимается, так что МОЖНО было бы отфильтровать сделки, когда ADX находится в нисходящем тренде, но опять же, это может отфильтровать много прибыльных сделок). Если бы мне могли помочь с кодированием, я бы с удовольствием поэкспериментировал с этими различными факторами.
Из моего ручного тестирования я думаю, что у меня может быть прибыльная система, поэтому любая помощь будет оценена по достоинству.
Заранее спасибо!
Джейсон
Помощь в программировании
Привет кодерсгуру,
Мне нужна помощь в создании советника. Можете ли вы помочь, если да, то какова ваша плата?
Здравствуйте, Codersguru,
было бы здорово, если бы вы нашли немного времени, чтобы взглянуть на мою проблему:https://www.mql5.com/en/forum/general.
С наилучшими пожеланиями
Питер
Вопрос новичка
Не могли бы вы помочь, только начинаю
Подскажите, пожалуйста, как изменить цвета по умолчанию на свечах heiken ashi?
Я могу менять цвета на графике, но они возвращаются к красным и белым по умолчанию, если я меняю время или валюту.
спасибо
Гордон
Вы можете помочь, только начинаю
Подскажите, пожалуйста, как изменить цвета по умолчанию на свечах heiken ashi?
Я могу менять цвета на графике, но они возвращаются к красным и белым по умолчанию, если я меняю время или валюту.
спасибо
ГордонПривет, Гордон, не могли бы вы разместить здесь файл MQ4, тогда мы сможем вместе помочь вам. Надеюсь, это поможет
спасибо Дэйв,
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Red
#property indicator_color2 White
#property indicator_color3 Red
#property indicator_color4 White
//---- буферы
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
//----
int ExtCountedBars=0;
//+------------------------------------------------------------------+
//| Пользовательская функция инициализации индикатора |
//|------------------------------------------------------------------|
int init()
{
//---- индикаторы
SetIndexStyle(0,DRAW_HISTOGRAM, 0, 1, Red);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexStyle(1,DRAW_HISTOGRAM, 0, 1, White);
SetIndexBuffer(1, ExtMapBuffer2);
SetIndexStyle(2,DRAW_HISTOGRAM, 0, 3, Red);
SetIndexBuffer(2, ExtMapBuffer3);
SetIndexStyle(3,DRAW_HISTOGRAM, 0, 3, White);
SetIndexBuffer(3, ExtMapBuffer4);
//----
SetIndexDrawBegin(0,10);
SetIndexDrawBegin(1,10);
SetIndexDrawBegin(2,10);
SetIndexDrawBegin(3,10);
//---- отображение буферов индикаторов
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexBuffer(3,ExtMapBuffer4);
//---- инициализация выполнена
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция деинициализации индикатора |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: добавьте свой код сюда
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
double haOpen, haHigh, haLow, haClose;
if(Bars<=10) return(0);
ExtCountedBars=IndicatorCounted();
//---- проверка на возможные ошибки
if (ExtCountedBars<0) return(-1);
//---- последний подсчитанный бар будет пересчитан.
if (ExtCountedBars>0) ExtCountedBars--;
int pos=Bars-ExtCountedBars-1;
while(pos>=0)
{
haOpen=(ExtMapBuffer3[pos+1]+ExtMapBuffer4[pos+1])/2;
haClose=(Open[pos]+High[pos]+Low[pos]+Close[pos])/4;
haHigh=MathMax(High[pos], MathMax(haOpen, haClose));
haLow=MathMin(Low[pos], MathMin(haOpen, haClose));
if (haOpen<haClose)
{
ExtMapBuffer1[pos]=haLow;
ExtMapBuffer2[pos]=haHigh;
}
else
{
ExtMapBuffer1[pos]=haHigh;
ExtMapBuffer2[pos]=haLow;
}
ExtMapBuffer3[pos]=haOpen;
ExtMapBuffer4[pos]=haClose;
pos--;
}
//----
return(0);
}
//+---------------------------
Привет, Гордон, как вы можете видеть на коде, который вы только что опубликовали, если вы хотите изменить цвет, просто измените ALL WHITE и RED слово на любой цвет, который вам нравится, а затем скомпилируйте пользовательский индикатор. Пожалуйста, дайте мне знать, если это может решить вашу проблему. Надеюсь, это поможет