[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 625

 
evillive:

А можно узнать, зачем "нормализовать до 4 или 2 знаков. (если котировки 5 значные)"? 5 и 3 знака тоже должны работать как бы...

на 5 значных котировках много мелких разрывов, боюсь как-бы цена не перепрыгнула... чтоб не пропустить вход.

кстати если убрать pip из кода, ордера все-равно не открываются :(

 
Скажите а сколько будет стоить прикрутить алерт к простенькой ТС из двух индикаторов?
 
alsu:
Ваша функция iTime берет i-й бар из файла (для каждого тамфрейма отдлельно) в папке tester\history, возможно, файлы истории для D1 и H1, в которых последний бар соответствует 13 января, лежат там с какого-то старого прогона.
А что нужно сделать? Я историю вроде систематически обновляю.
 
MarkTrade:

Добрый день.

Подскажите почему этот код не торгует?

И алерт не срабатывает.

В журнале полнейшая тишина...

На скрине видно совпадение условий.


На скрине график пятизнака. При таком проскальзывании как у вас

OrderSend(Symbol(),OP_SELL,0.1,Bid,2,Ask+SL*pip*Digits,Ask-TP*pip*Digits,0,0,0,CLR_NONE);

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

-----

Алерт сработает, но при равенстве, да еще на пятизнаке

if (NormalizeDouble(Bid, Digits*pip)==NormalizeDouble(ma, Digits*pip)) Alert("!!!!!!!!!!!");

нужно подождать, годика два, когда будет точное совпадение - цена ведь любит прыгать, перескакивать, а надо чтобы было точно до 5-го знака

 
alsu:
Если средствами MQL, то только внутри папки experts\files

Да, файл который необходимо скопировать находится внутри experts\files.

Как его можно скопировать средствами MQL4?

 
zxc:


На скрине график пятизнака. При таком проскальзывании как у вас

OrderSend(Symbol(),OP_SELL,0.1,Bid,2,Ask+SL*pip*Digits,Ask-TP*pip*Digits,0,0,0,CLR_NONE);

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

-----

Алерт сработает, но при равенстве, да еще на пятизнаке

if (NormalizeDouble(Bid, Digits*pip)==NormalizeDouble(ma, Digits*pip)) Alert("!!!!!!!!!!!");

нужно подождать, годика два, когда будет точное совпадение - цена ведь любит прыгать, перескакивать, а надо чтобы было точно до 5-го знака

Для этого-то и нормализую до 4 знаков.

Причем здесь проскальзывание? Если бы в журнале реквоты были, тогда да.

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

 
MarkTrade:

Для этого-то и нормализую до 4 знаков.

Причем здесь проскальзывание? Если бы в журнале реквоты были, тогда да.

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

Вы неправильно нормализуете. Если хотите нормализовать до 4 знаков, пишите NormalizeDouble(...,4) - еще раз прочитайте справку, что означает второй параметр: количество знаков после запятой. Умножьте 3 или 5 на 10 как вы делаете - получите 30 либо 50 знаков, но никак не 4.
 
MarkTrade:

Для этого-то и нормализую до 4 знаков.

Причем здесь проскальзывание? Если бы в журнале реквоты были, тогда да.

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


Данный тип счета позволяет открывать ордера сразу со стопами?
 
atztek:

Да, файл который необходимо скопировать находится внутри experts\files.

Как его можно скопировать средствами MQL4?


Как таковой функции копирования файлов нет. Но можно, например, так:

//копирует src в dest
void CopyFile(string dest, string src )
{
   int handle1,handle2;
   handle1=FileOpen(src ,FILE_BIN|FILE_WRITE);
   handle2=FileOpen(dest,FILE_BIN|FILE_READ);
   FileSeek(handle1, 0, SEEK_END);
   FileSeek(handle2, 0, SEEK_SET);
   while(true)
   {
      string s=FileReadString(handle2,1);
      if(!FileIsEnding(handle2))
         FileWriteString(handle1,s,1);
      else break;  
   }
   FileClose(handle1);
   FileClose(handle2);
}
 
Fox_RM:
А что нужно сделать? Я историю вроде систематически обновляю.

Вообще-то это какой-то косяк, в тестере не должно быть такого...

Попробуйте похимичить с файлами истории, сотрите все вообще в папке tester\history для начала...

Причина обращения: