[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 58

 
Vinin:

Надо бы посмотреть индикатор. Может и найдется решение

Спасибо, что помотрели пост. Индикатор прицепляю.

В нем нужен фильтр, который бы отфилтровал бы ненужные стрелки. На 56 стр. на картинке видно. Из всех подряд идущих одинаковых стрелок нужна только первая.

Делал еще так, но что то не так.

for(int i=limit-1;i>=0;i--){

if ( flag[i] == 1 && условие продажи){

Продажа[i] = High[i]+point*Point;

flag[i] == -1 ;

}

if (flag[i] == - 1 && условие покупки){

Покупка[i] = Low[i]-point*Point;

flag[i] == 1 ;}

}

}

Файлы:
cross.mq4  4 kb
 
gince:

Спасибо, что помотрели пост. Индикатор прицепляю.

В нем нужен фильтр, который бы отфилтровал бы ненужные стрелки. На 56 стр. на картинке видно. Из всех подряд идущих одинаковых стрелок нужна только первая.

Делал еще так, но что то не так.



Как вариант - лучше контроль делать не нулевом баре, а на первом. Количество ложных сигналов уменьшится.

Появится конечно запаздывание на один бар.

Контроль на нулевом реализовать сложнее и будет естественно перерисовка на нулевом. Сигнал может и исчезнуть и повториться потом, позже, на другом баре

 
Vinin:


Как вариант - лучше контроль делать не нулевом баре, а на первом. Количество ложных сигналов уменьшится.

Появится конечно запаздывание на один бар.

Контроль на нулевом реализовать сложнее и будет естественно перерисовка на нулевом. Сигнал может и исчезнуть и повториться потом, позже, на другом баре

Данные с индикаторов беру по первому бару
 
gince:
Данные с индикаторов беру по первому бару

Так там для этого было почти все, но почему-то оно закоментировано
 
Vinin:

Так там для этого было почти все, но почему-то оно закоментировано

Если снять //, тогда рисует по одной стрелке.

Прикладываю картинку - дата таже, а два разных варианта отображения индикатора

1 наложен на график ( иногда отображаетса последняя, а не первая)

2 с тестера

3 все стрелки

Есть несовподения . На демо рисует так как на тестере, пока непереключуш тайм фрейм

 
gince:

Если снять //, тогда рисует по одной стрелке.

Прикладываю картинку - дата таже, а два разных варианта отображения индикатора

1 наложен на график ( иногда отображаетса последняя, а не первая)

2 с тестера

3 все стрелки

Есть несовподения . На демо рисует так как на тестере, пока непереключуш тайм фрейм


Хорошо. Сделаю по своему
 

А неможет быть из за того, что

for (i = 0; i < counted_bars; i++)

надо вести обратный щет

 
gince:

А неможет быть из за того, что

for (i = 0; i < counted_bars; i++)

надо вести обратный щет


Я сделаю по своему и отсчет будет другой. Всегда делаю из прошлого в настоящее. Хотя это дело вкуса. На самом деле при правильном подходе это не имеет значения
 

Здравствуйте. Посмотрите, пожалуйста, где ошибка? Идея - отлов пипсов, а при возникновении ситуации замка - отмена фиксации результата.

if(OrderType()==OP_BUY) {
if((OrderType()==OP_SELL) == false) {
if(Bid>=(OrderOpenPrice()+PipsProfit*Point)) {
fm=OrderClose(OrderTicket(),OrderLots(),Bid,Proskalz);
if(fm!=0 && fm!=-1){
Comment("Buy-ордер закрыт по достижении пипспрофита = ",PipsProfit," пунктов");
Print("Buy-ордер закрыт по достижении пипспрофита = ",PipsProfit," пунктов");
}
if(fm==0 || fm==-1){
GLE=GetLastError();
ED=ErrorDescription(GLE);
Print("Ошибка № ", GLE, " при попытке закрыть Buy-ордер № ",OrderTicket());
Print ("Описание ошибки - ",ED);
}
}}}

???????

Заранее благодарю.

 
Ну...., пожалуйста, ПРОФИ, дайте ответ, что делать с индикатором. Скажите, возможно или невозможно? (вопрос был написан раньше по ветке, если его продублирую, то у меня будет вторая жёлтая :о) )
Причина обращения: