Logo

Вход

Войти с помощью соц. сетей
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения
ТОП СООБЩЕНИЙ
04.06.2015, 13:37
Лучший ответ
Выплачено: 860 RUB
04.06.2015, 16:45
Лучший ответ
Выплачено: 99793 RUB
Сообщение от AgGreSsiVe Посмотреть сообщение
Разобрался.
А поделиться решением?
04.06.2015, 18:36
Лучший ответ
Выплачено: 860 RUB
Та я думал никому не интересно
Да кстати небольшая ошибка в названии топика. Сравнивать Close N не c закрытием, а с High / Low. но если кому надо с Close, то я думаю поменять в коде это 5 сек.


MQL код:


for(f = 0; f < limit; f++)
{
int g = 3;
int N = 60; // Ну или сколько баров надо проверить
while (( High[f] != Close[g]) && (g < N))
g = g+1;

if ( High[f] == Close[g])
{
// какие либо действия, например рисуем линию.
Line("_high_close_",Time[g],Close[g], Time[f],High [f],linecolor ,0,1);
}
else
{
ObjectDelete("_high_close_");
}

while (( Low[f] != Close[g])&& (g < N))
g = g+1;

if ( Low[f] == Close[g])
{
iLine("_low_close_",Time[g],Close[g], Time[f],Low [f],linecolor ,0,1);
}
else
{
ObjectDelete("_low_close_");
}
}





Но, скажем так, способ не доработан, так как, если нашлось совпадение, то цикл прекращается, как будет время, доработаю, что бы проверял до N.
  • #1 Свернуть

    Вопрос по циклу. Закрытие последних баров сравнить с Close N баров.

    Здравствуйте форумчане.
    Если не сложно, помогите пожалуйста составить цикл.
    Нужно что бы High / Low, каждого, последнего закрытого бара, сравнивался с закрытием последних N баров.
    То есть
    MQL код:

    if (High[1] == Close[n])
    { действия }
    else if (Low [1] == Close[n])
    { действия }

    Я так понимаю и High / Low надо вставить в цикл, и Close, как сделать это правильно ?
  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
  • #2 Свернуть

    Разобрался. Тему можно удалить !

    Комментарий

    • #3 Свернуть

      Сообщение от AgGreSsiVe Посмотреть сообщение
      Разобрался.
      А поделиться решением?
      Правила форума | КИСА | Акция «Деньги за посты» | Как вставить картинку?

      Комментарий

      • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
      • #4 Свернуть

        Та я думал никому не интересно
        Да кстати небольшая ошибка в названии топика. Сравнивать Close N не c закрытием, а с High / Low. но если кому надо с Close, то я думаю поменять в коде это 5 сек.


        MQL код:


        for(f = 0; f < limit; f++)
        {
        int g = 3;
        int N = 60; // Ну или сколько баров надо проверить
        while (( High[f] != Close[g]) && (g < N))
        g = g+1;

        if ( High[f] == Close[g])
        {
        // какие либо действия, например рисуем линию.
        Line("_high_close_",Time[g],Close[g], Time[f],High [f],linecolor ,0,1);
        }
        else
        {
        ObjectDelete("_high_close_");
        }

        while (( Low[f] != Close[g])&& (g < N))
        g = g+1;

        if ( Low[f] == Close[g])
        {
        iLine("_low_close_",Time[g],Close[g], Time[f],Low [f],linecolor ,0,1);
        }
        else
        {
        ObjectDelete("_low_close_");
        }
        }





        Но, скажем так, способ не доработан, так как, если нашлось совпадение, то цикл прекращается, как будет время, доработаю, что бы проверял до N.
        Последний раз редактировалось AgGreSsiVe; 04.06.2015, 18:44.

        Комментарий

        X