А как в цикл всунуть, чтобы проверялся этот буфер?
Ну капец... :) Если вы знаете с какого буфера брать данные, то и организуйте цикл по этому буферу от текущего бара вглубь истории и, если буфер имеет ненулевое значение - значит стрелка...
А как в цикл всунуть, чтобы проверялся этот буфер?Может быть вот так?
for (int i=0; i<Bars(); i++)
{
signal = iCustom (NULL,0 и так далее )
if (signal>0)
return(signal)
break
}
Где-то так...
double DataIndUP, DataIndDN;
int i, BarWithArrowUP, BarWithArrowDN, nBars = 250 ; // nBars = количество проверяемых баров вглубь историиfor (i=0; i<nBars; i++) {
DataIndUP = iCustom(Symbol(),Period(),"Имя индюшонка", через запятую все параметры индюка , номер буфера стрелки вверх, i)
DataIndDN = iCustom(Symbol(),Period(),"Имя индюшонка", через запятую все параметры индюка , номер буфера стрелки вниз, i)
if (DataIndUP !=EMPTY_VALUE) // или if (DataIndUP !=0) // найдена стрелка вверх
// всё зависит от того, что выдаёт буфер при отсутствии стрелки // нажмите Ctrl+D и посмотрите что вам в окне данных будет показано
BarWithArrowUP=iBarShift(Symbol(),Period(),Time[i]); // найден бар со стрелкой вверхif (DataIndDN !=EMPTY_VALUE) // или if (DataIndDN !=0) // найдена стрелка вниз
// всё зависит от того, что выдаёт буфер при отсутствии стрелки // нажмите Ctrl+D и посмотрите что вам в окне данных будет показано
BarWithArrowDN=iBarShift(Symbol(),Period(),Time[i]); // найден бар со стрелкой вниз
}
Этот код ничего полезного не сделает - каждый раз при нахождении стрелки в цикле он будет присваивать переменным BarWithArrowUP и BarWithArrowDN номер бара, на котором найдена стрелка. Вам и решать как их обрабатывать. Можете создать массив, в который будете записывать бары со стрелками вверх и вниз, а потом уже брать из этих массивов номера баров со стрелками, а можете, а можете, а чё хотите, то и можете... :)
В вашем коде будет найдена самая первая стрелка от начала цикла. break прервёт выполнение цикла, а return нужен если только это у вас функция и вернёт она вам значение найденного буфера со стрелкой, а не номер бара, на котором стрелка эта стоит.
artmedia70: Ну капец... :) Если вы знаете с какого буфера брать данные, то и организуйте цикл по этому буферу от текущего бара вглубь истории и, если буфер имеет ненулевое значение - значит стрелка...
Используется 0 и 1 индикаторные буферы для отрисовки стрелок.
если посмотреть на рисунок, то между точками А и Б стрелок нет, то интересно в буферах тоже ничего не будет .Будет ноль?
А последнее значение буфера сохраняется?
Ctrl+D и поводите мышкой по графику. Увидите какие значения при каких обстоятельствах имеют буферы индюкатора. Последнее значение буфера - это его значение на текущем баре.
Этот код ничего полезного не сделает - каждый раз при нахождении стрелки в цикле он будет присваивать переменным BarWithArrowUP и BarWithArrowDN номер бара, на котором найдена стрелка. Вам и решать как их обрабатывать. Можете создать массив, в который будете записывать бары со стрелками вверх и вниз, а потом уже брать из этих массивов номера баров со стрелками, а можете, а можете, а чё хотите, то и можете... :)
Спасибо !
а можно чтобы находилась первая стрелка и потом выход из цикла?
Ну да, про индикаторные буферы это понятно.
А как в цикл всунуть, чтобы проверялся этот буфер?
Ну да, про индикаторные буферы это понятно.
А как в цикл всунуть, чтобы проверялся этот буфер?Может быть вот так?
for (int i=0; i<Bars(); i++)
{
signal = iCustom (NULL,0 и так далее )
if (signal>0)
return(signal)
break
}
Где-то так...
Этот код ничего полезного не сделает - каждый раз при нахождении стрелки в цикле он будет присваивать переменным BarWithArrowUP и BarWithArrowDN номер бара, на котором найдена стрелка. Вам и решать как их обрабатывать. Можете создать массив, в который будете записывать бары со стрелками вверх и вниз, а потом уже брать из этих массивов номера баров со стрелками, а можете, а можете, а чё хотите, то и можете... :)
В вашем коде будет найдена самая первая стрелка от начала цикла. break прервёт выполнение цикла, а return нужен если только это у вас функция и вернёт она вам значение найденного буфера со стрелкой, а не номер бара, на котором стрелка эта стоит.
Ну капец... :) Если вы знаете с какого буфера брать данные, то и организуйте цикл по этому буферу от текущего бара вглубь истории и, если буфер имеет ненулевое значение - значит стрелка...
Используется 0 и 1 индикаторные буферы для отрисовки стрелок.
если посмотреть на рисунок, то между точками А и Б стрелок нет, то интересно в буферах тоже ничего не будет .Будет ноль?
А последнее значение буфера сохраняется?
Используется 0 и 1 индикаторные буферы для отрисовки стрелок.
если посмотреть на рисунок, то между точками А и Б стрелок нет, то интересно в буферах тоже ничего не будет .Будет ноль?
А последнее значение буфера сохраняется?
Уважаемые эксперты. Подскажите пожалуйста функцию, которая показывает только уровень безубытка для рыночных ордеров одного типа
Уважаемые эксперты. Подскажите пожалуйста функцию, которая показывает только уровень безубытка для рыночных ордеров одного типа
Где-то так...
Этот код ничего полезного не сделает - каждый раз при нахождении стрелки в цикле он будет присваивать переменным BarWithArrowUP и BarWithArrowDN номер бара, на котором найдена стрелка. Вам и решать как их обрабатывать. Можете создать массив, в который будете записывать бары со стрелками вверх и вниз, а потом уже брать из этих массивов номера баров со стрелками, а можете, а можете, а чё хотите, то и можете... :)
Спасибо !
а можно чтобы находилась первая стрелка и потом выход из цикла?
У вас поиск по сайту не работает???
Работает!! Только в том что я находил много лишнего, а я не знаю как это лишнее отсеять
Работает!! Только в том что я находил много лишнего, а я не знаю как это лишнее отсеять
СПАСИБО К названию ветки можно добавить " С вами тоже никуда"