Доработка ботов (советников, индикаторов) vol. 2

consul

Активный участник
К уважаемым программистам .
Прикрепленный индикатор дает сигналы на закрытии бара . Пожалуйста , перенесите эти сигналы на один бар вперед , чтоб данные сигналы появлялись на открытии нового бара на нем . Вроде задание не сложное , но у самого не получается это осуществить . Благодарю заранее за помощь .
 

Вложения

  • 4_7.gif
    4_7.gif
    19,1 КБ · Просмотры: 253
  • DT-ZigZag-ATR.mq4
    DT-ZigZag-ATR.mq4
    2,2 КБ · Просмотры: 46

BUT

Местный знаток
К уважаемым программистам .
Прикрепленный индикатор дает сигналы на закрытии бара . Пожалуйста , перенесите эти сигналы на один бар вперед , чтоб данные сигналы появлялись на открытии нового бара на нем . Вроде задание не сложное , но у самого не получается это осуществить . Благодарю заранее за помощь .
Пожалуйста.
 

Вложения

dato896

Активный участник
можете пожалуйста, исправить мой индикатор? У него проблема с обновлением, стрелки не генерируются при появлении новых баров.
 

Вложения

BUT

Местный знаток

Вложения

  • WolfeWaves_Complicated.mq4
    WolfeWaves_Complicated.mq4
    4,1 КБ · Просмотры: 167
  • 1718518003760.png
    1718518003760.png
    50,4 КБ · Просмотры: 294

Dmitry2kk

Активный участник
Добрый день уважаемые программисты, может кто подправить данный индюк, что-бы он отображал стрелки не на каждой новой свече а только когда она меняется на противоположную
 

Вложения

BUT

Местный знаток
Добрый день уважаемые программисты, может кто подправить данный индюк, что-бы он отображал стрелки не на каждой новой свече а только когда она меняется на противоположную
 

Вложения

  • LP_entry.mq4
    LP_entry.mq4
    6,2 КБ · Просмотры: 85
  • 1718532628096.png
    1718532628096.png
    46,3 КБ · Просмотры: 286

vcegda

Новичок форума
Разделите пожалуйста алерты, чтобы иметь возможность включить алерт или на нижний фрактал, или на верхний.
 

Вложения

t2g

Активный участник
Здравствуйте. Могли бы вы добавить опцию для закрытия позиции при использовании сигналов других стрелочных индикаторов в этом универсальном советнике (EA)? Также нужно добавить ограничения на максимальное количество открытых позиций как для покупок, так и для продаж. Спасибо заранее.
 

Вложения

dato896

Активный участник
Держи. Теперь работает.
Видимо, нерабочая версия рисовала стрелки 5 баров назад. Теперь исправлено, и новые стрелки появляются, но всё равно 5 баров назад. Можно с этим что-нибудь поделать? спасибо за ранее
 

BUT

Местный знаток
Разделите пожалуйста алерты, чтобы иметь возможность включить алерт или на нижний фрактал, или на верхний.
В настройках отдельно включайте/выключайте алерт на нижний/верхний фракталы.
 

Вложения

  • 1718616939420.png
    1718616939420.png
    22,7 КБ · Просмотры: 48
  • Fine_Fractals.mq4
    Fine_Fractals.mq4
    6,8 КБ · Просмотры: 33

BUT

Местный знаток
Видимо, нерабочая версия рисовала стрелки 5 баров назад. Теперь исправлено, и новые стрелки появляются, но всё равно 5 баров назад. Можно с этим что-нибудь поделать? спасибо за ранее
У этого индикатора такой расчет. Он рассчитывается по пяти последним барам и сигнал ставит на пятом баре.
А Вы думали, в сказку попали и грааль нашли с идеальными сигналами?:ROFLMAO::ROFLMAO::ROFLMAO:
Имея такой индикатор и 10$ долларов в кармане, через год Вы бы имели все, что Вы хотите. Или практически все.

Поймите, пожалуйста, одну вещь. Если Вы видите на скриншоте или у себя в терминале идеальные сигналы, да еще и на самых пиках графика, то первая мысль, которая должна возникнуть у Вас в голове: "А не пересчитывается/перерисовывается этот индикатор? Запаздывает ли он?" Вы к каждому индикатору должны иметь предвзятое, скептическое отношение, а не представлять золотые горы или долларовые острова.

P.S. Я передвинул сигналы на нулевой бар (Появляются на открытии нулевого бара и не рисуют). Как видите, они сразу стали не такими граальными...
 

Вложения

erex

Элитный участник
У этого индикатора такой расчет. Он рассчитывается по пяти последним барам и сигнал ставит на пятом баре.
А Вы думали, в сказку попали и грааль нашли с идеальными сигналами?:ROFLMAO::ROFLMAO::ROFLMAO:
Имея такой индикатор и 10$ долларов в кармане, через год Вы бы имели все, что Вы хотите. Или практически все.

Поймите, пожалуйста, одну вещь. Если Вы видите на скриншоте или у себя в терминале идеальные сигналы, да еще и на самых пиках графика, то первая мысль, которая должна возникнуть у Вас в голове: "А не пересчитывается/перерисовывается этот индикатор? Запаздывает ли он?" Вы к каждому индикатору должны иметь предвзятое, скептическое отношение, а не представлять золотые горы или долларовые острова.

P.S. Я передвинул сигналы на нулевой бар (Появляются на открытии нулевого бара и не рисуют). Как видите, они сразу стали не такими граальными...
Если вот эту всю хренотень убрать, получше будет смотреться
1718621838266.png
 

dato896

Активный участник
У этого индикатора такой расчет. Он рассчитывается по пяти последним барам и сигнал ставит на пятом баре.
А Вы думали, в сказку попали и грааль нашли с идеальными сигналами?:ROFLMAO::ROFLMAO::ROFLMAO:
Имея такой индикатор и 10$ долларов в кармане, через год Вы бы имели все, что Вы хотите. Или практически все.

Поймите, пожалуйста, одну вещь. Если Вы видите на скриншоте или у себя в терминале идеальные сигналы, да еще и на самых пиках графика, то первая мысль, которая должна возникнуть у Вас в голове: "А не пересчитывается/перерисовывается этот индикатор? Запаздывает ли он?" Вы к каждому индикатору должны иметь предвзятое, скептическое отношение, а не представлять золотые горы или долларовые острова.

P.S. Я передвинул сигналы на нулевой бар (Появляются на открытии нулевого бара и не рисуют). Как видите, они сразу стали не такими граальными...
Я знаю об этом, мне просто нужно было посмотреть, как это будет работать, если расчет начнется с текущего бара. спасибо
 

egor008

Активный участник
Алексей, если вас не затруднит, помогите пожалуйста с индикатором. Не могу, стрелку правильно выставить.

A.png

На картинке: Линия МА с периодом 20. Нормализована до 3 знаков. (ступенчатая bufer_MA[] );

На каждой ступеньке вверх, выставляется синяя стрелка (код: 159 arrow_up[]);

Количество непрерывных ступеней, записывается в счётчик. ( count_up[] );

Использовал 4 буфера: 1.Линия МА. 2. Синяя стрелка. 3. Счётчик ступеней. 4. Для красной стрелки.


Нужно выставить красную стрелку (круг код: 161) всегда на синюю стрелку,

при таких условиях:

При появлении первой синей стрелки - (это первая ступень вверх) выставить Красную стрелку на синюю стрелку.
При появлении второй синей стрелки - (это вторая ступень вверх) выставить Красную стрелку на синюю новую-верхнюю стрелку. При этом удалить предыдущую Красную стрелку, с нижн(ей-их) ступеней.
При появлении третей синей стрелки - (это третья ступень вверх) выставить Красную стрелку на синюю новую-верхнюю стрелку. При этом удалить предыдущую Красную стрелку, с нижн(ей-их) ступеней.

и т.д.

То есть, если синих стрелок больше одной, и счётчик ступеней больше нуля, то переставить Красную стрелу, на новую (верхнюю) синюю стрелку.


Делал так:

PHP:
#property strict
#property indicator_chart_window

#property indicator_buffers 4

#property indicator_color1 clrSteelBlue
#property indicator_color2 clrDodgerBlue
#property indicator_color3 clrNONE
#property indicator_color4 clrRed




input int period_MA = 20;
input int Normalize = 3;


double bufer_MA[];
double arrow_up[];
double count_up[];


double arr_verh[];

 
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
    //--- indicator buffers mapping
    SetIndexBuffer(0, bufer_MA);  SetIndexStyle(0, DRAW_LINE);                                         // Синяя линия
    SetIndexBuffer(1, arrow_up);  SetIndexStyle(1, DRAW_ARROW, 0, 2); SetIndexArrow(1, 159);           // Синяя стрелка
    SetIndexBuffer(2, count_up);  SetIndexStyle(2, DRAW_NONE);                                         // Счётчик ступеней
 
    SetIndexBuffer(3, arr_verh);  SetIndexStyle(3, DRAW_ARROW, 0, 1); SetIndexArrow(3, 161);           // Для красной стрелки

 
    return (INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{

    int limit = rates_total - prev_calculated;
    if (limit > 1)limit -= 1;


 

    // Ступеньки из линии МА
    for (int i = 0; i < limit; i++)  bufer_MA[i] = NormalizeDouble(iMA(Symbol(), 0, period_MA, 0, 0, 0, i), Normalize);



    // Счётчик количества непрерывных ступеней
    int continuous_steps_up = 0;


    // Определить сколько раз, у первой линии, было непрерывно ступеней вверх.
    for (int i = limit - 1; i >= 0; i--){
 
 
    //+----------------------------------------------------------------------------------------------------+
        if (i < rates_total - 1 && bufer_MA[i] > bufer_MA[i + 1] && bufer_MA[i] != bufer_MA[i + 1]){
            continuous_steps_up++;
            arrow_up[i] = bufer_MA[i];
      

         }
    //+----------------------------------------------------------------------------------------------------+
    //|   счётчик ступеней
    //+----------------------------------------------------------------------------------------------------+
 
      if(   bufer_MA[i] < bufer_MA[i + 1]){   continuous_steps_up = 0;  }

        count_up[i] = continuous_steps_up;
    //+----------------------------------------------------------------------------------------------------+


      }




    return (rates_total);
}

/////////////////////////////////////////////////

Это я так делал..

Не могли бы вы, мне помочь, прикрутить красную стрелку, так как на картинках?


Картинки:
 

Вложения

  • 003.png
    003.png
    35,4 КБ · Просмотры: 69
  • 004.png
    004.png
    35,2 КБ · Просмотры: 57
  • 005.png
    005.png
    36,2 КБ · Просмотры: 50
  • 006.png
    006.png
    34,1 КБ · Просмотры: 48
  • 007.png
    007.png
    34,2 КБ · Просмотры: 37
  • 008.png
    008.png
    34 КБ · Просмотры: 35
  • 009.png
    009.png
    34,6 КБ · Просмотры: 31
  • 010.png
    010.png
    35,5 КБ · Просмотры: 29
  • 011.png
    011.png
    34,7 КБ · Просмотры: 50
Последнее редактирование:

Посмотрели (725) Посмотреть

Отслеживают (1809) Посмотреть

Верх