Как совместить Периоды iClose

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Rewerpool
112
Rewerpool  

Как не зависимо от текущего графика заставить работать такую конструкцию:  если предыдущий Дневной бар закрылся ниже Линии и 4 бара на таймфрейме М30 тоже закрылись ниже Линии = далее условие

Написал вот так, не работает !!! ХЕЛПпппппппп

extern int

HTF     =1440,      //Старший ТФ для определения пробоя уровня уровня 

LTF      =30,        //Младший ТФ для определения консолидации

Tol = 150;         //Толеранс от Линии

bool  OTBOI=false;

double Line = 1.0050; // ориентир

double   CLD1,CLM1,CLM2,CLM3,CLM4;

CLD1=iClose(NULL,HTF,1); CLD2=iClose(NULL,HTF,2); //Закрытие баров на старшем ТФ 

CLM1=iClose(NULL,LTF,1);CLM2=iClose(NULL,LTF,2);CLM3=iClose(NULL,LTF,3);CLM4=iClose(NULL,LTF,4); //Закрытие баров на младшем ТФ


if(iClose(NULL,CLD1,1)>Line)

{

if(CLM1<Line&&CLM2<Line&&CLM3<Line&&HLM4>Line

   &&CLM1>Line-Tol*Point&&CLM2>Line-Tol*Point

   &&CLM3>Line-Tol*Point&&CLM4>Line-Tol*Point)

 OTBOI=true;

}

Ihor Herasko
21867
Ihor Herasko  
Rewerpool:

Как не зависимо от текущего графика заставить работать такую конструкцию:  если предыдущий Дневной бар закрылся ниже Линии и 4 бара на таймфрейме М30 тоже закрылись ниже Линии = далее условие

Написал вот так, не работает !!! ХЕЛПпппппппп

Видимо, запарились ))

Что это за конструкция такая?

iClose(NULL,CLD1,1)

Взять цену закрытия на таймфрейме, который вычислен как цена закрытия предыдущего дневного бара. Такого ТФ, конечно же, нет.

Rewerpool
112
Rewerpool  
Ihor Herasko:

Видимо, запарились ))

Что это за конструкция такая?

Взять цену закрытия на таймфрейме, который вычислен как цена закрытия предыдущего дневного бара. Такого ТФ, конечно же, нет.

Я ж и прошу помощи, ваши слова не прояснили ситуацию! как можно и правильно это сделать учитывая моё задание?


Понял что нужно прикрутить 

PRICE_CLOSE

Но как правильней?
Ihor Herasko
21867
Ihor Herasko  
Rewerpool:
Я ж и прошу помощи, ваши слова не прояснили ситуацию! как можно и правильно это сделать учитывая моё задание?
CLD1 - это значение цены, а нужно передать таймфрейм, т. е. 1, 5, 15, 30, 60, 240, 1440, 10080 или 43200. Но никак не что-то типа 1.325648, коим является значение в переменной CLD1. В Вашем случае, наверное, HTF.
Rewerpool
112
Rewerpool  

Понял что нужно прикрутить 

PRICE_CLOSE

Но как правильней?
Ihor Herasko
21867
Ihor Herasko  
Rewerpool:

Понял что нужно прикрутить 

PRICE_CLOSE

Но как правильней?

Нет. iClose - это и есть цена закрытия. Нужно лишь указать, чего:

  • первый параметр - символ. Вы указали NULL. Значит нужен тот символ, к графику которого прикреплен советник/скрипт/индикатор.
  • второй параметр - таймфрейм. Вы указали CLD1. Это точно неправильно. Нужно указать таймфрейм в минутах. В Вашем случае нужен либо дневной, либо получасовой график. Значит, либо 1440, либо 30. Ну или переменные HTF и LTF.
  • третий параметр - индекс бара. Вы указали 1. Это первый бар слева от формирующегося.
Таким образом, загвоздка именно в передаче функции iClose корректного значения второго параметра. Определитесь, какой ТФ нужен в данном месте и вставьте его туда. По всей видимости, там должен быть именно HTF.
Rewerpool
112
Rewerpool  
Ihor Herasko:

Нет. iClose - это и есть цена закрытия. Нужно лишь указать, чего:

  • первый параметр - символ. Вы указали NULL. Значит нужен тот символ, к графику которого прикреплен советник/скрипт/индикатор.
  • второй параметр - таймфрейм. Вы указали CLD1. Это точно неправильно. Нужно указать таймфрейм в минутах. В Вашем случае нужен либо дневной, либо получасовой график. Значит, либо 1440, либо 30. Ну или переменные HTF и LTF.
  • третий параметр - индекс бара. Вы указали 1. Это первый бар слева от формирующегося.
Таким образом, загвоздка именно в передаче функции iClose корректного значения второго параметра. Определитесь, какой ТФ нужен в данном месте и вставьте его туда. По всей видимости, там должен быть именно HTF.

iClose(NULL,HTF,1) - Как я думаю! Закрытие=текущего символа, ТФ 1440, 1 бара и это я присваиваю к CLD1. 

Rewerpool
112
Rewerpool  
Я и создал переменную HTF, LTF для того что б можно было поэксперементировать с ТФ
Rewerpool
112
Rewerpool  
CLD CLM я так понимаю содержат в себе цену закрытия баров в нужном ТФ.
Ihor Herasko
21867
Ihor Herasko  
Rewerpool:

iClose(NULL,HTF,1) - Как я думаю! Закрытие=текущего символа, ТФ 1440, 1 бара и это я присваиваю к CLD1. 

И я о том же говорю.
Aleksey Semenov
3792
Aleksey Semenov  
функция "принт" или "коммент" вам в помощь, если невидно где косяк то выводите инфу на экран или в лог, говорят очень помогает
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий