Дай-ка я угадаю :)
1. Есть два каталога с МТ4, и редактируя в одном, ты пытаешься увидеть изменения в другом
2. Скрипт переименован, запускается одним , а компилируется другой.
3. Может все-таки стоит нажать закладку "Эксперты"
4. И быть немного более упорным и не сдаваться сразу и идти за пустяком за помощью на форум
1. Есть два каталога с МТ4, и редактируя в одном, ты пытаешься увидеть изменения в другом
2. Скрипт переименован, запускается одним , а компилируется другой.
3. Может все-таки стоит нажать закладку "Эксперты"
4. И быть немного более упорным и не сдаваться сразу и идти за пустяком за помощью на форум
Rosh:
Дай-ка я угадаю :)
1. Есть два каталога с МТ4, и редактируя в одном, ты пытаешься увидеть изменения в другом
2. Скрипт переименован, запускается одним , а компилируется другой.
3. Может все-таки стоит нажать закладку "Эксперты"
4. И быть немного более упорным и не сдаваться сразу и идти за пустяком за помощью на форум
МЛЯЯЯЯЯЯЯЯЯЯЯЯ :)))))))))))))))))))), СОРИИИИИИИИИИИИИ, хреново быть
дубовым!!!!!!!!!!! (но честно я аж на какашку извелся), постараюсь
больше не буду :)
Дай-ка я угадаю :)
1. Есть два каталога с МТ4, и редактируя в одном, ты пытаешься увидеть изменения в другом
2. Скрипт переименован, запускается одним , а компилируется другой.
3. Может все-таки стоит нажать закладку "Эксперты"
4. И быть немного более упорным и не сдаваться сразу и идти за пустяком за помощью на форум
тогда последний вопрос плз (собсно из-за чего и разгорелся сырбор)
кусок кода:
for(j=0;j<100;j++)
{
h=High[i]-Open[i];
p=(spread+j)*Point;
Print(DoubleToStr(h,Digits)+" - "+DoubleToStr(p,Digits));
if(h==p)
{
TP[j]+=1;
Print("!!!"+DoubleToStr(High[i]-Open[i],Digits)+" - "+DoubleToStr((spread+j)*Point,Digits));
}
}
почему может не печатать по второму Print(), по первому печатает нормально, переменные h и p выше объявлены как double, на картинке ясно видно, что как минимум один раз условие равенства выполняется, и скрипт должен был зайти внутрь if ?
кусок кода:
for(j=0;j<100;j++)
{
h=High[i]-Open[i];
p=(spread+j)*Point;
Print(DoubleToStr(h,Digits)+" - "+DoubleToStr(p,Digits));
if(h==p)
{
TP[j]+=1;
Print("!!!"+DoubleToStr(High[i]-Open[i],Digits)+" - "+DoubleToStr((spread+j)*Point,Digits));
}
}
почему может не печатать по второму Print(), по первому печатает нормально, переменные h и p выше объявлены как double, на картинке ясно видно, что как минимум один раз условие равенства выполняется, и скрипт должен был зайти внутрь if ?
Файлы:
____2_.jpg
98 kb
Ну так сначала нормализуй их на самом деле , а не в распринтовке.
NormalizeDouble( ,Digits) , а потом сравнивай. Ку...
NormalizeDouble( ,Digits) , а потом сравнивай. Ку...
Причём это желательно делать как можно ближе к сравнению.
if(NormalizeDouble( h,Digits)==NormalizeDouble( p,Digits))
Rosh:
Ну так сначала нормализуй их на самом деле , а не в распринтовке.
NormalizeDouble( ,Digits) , а потом сравнивай. Ку...
гы, сенк :), хотя я конечно не понимаю почему два равных дабла
отличны друг от друга (раньше то, с чем приходилось иметь дело,
нормально сравнивало даблы без всякой нормализации), ну лан,
буду знать. Еще раз сенк :)
Ну так сначала нормализуй их на самом деле , а не в распринтовке.
NormalizeDouble( ,Digits) , а потом сравнивай. Ку...
SKif:
Причём это желательно делать как можно ближе к сравнению.
сорри, а почему ближе? разве с течением времени переменная сама
по себе может измениться? (просто я еще не знаю всех тонкостей
МКЛ4)
Причём это желательно делать как можно ближе к сравнению.
if(NormalizeDouble( h,Digits)==NormalizeDouble( p,Digits))
Не могу сказать почему. Но лучше делать так.
Кстати, разница двух нормализованных величин может дать ненормализованную. Поэтому нормализовать нужно при любом сравнении и непосредственно перед сравнением, не допуская промежуточных вычислений.
В том числе, необходимо нормализовать Bid, Ask и пр., одним словом, всё.
Следишь-следишь за этим, да нет-нет и всё равно наколешься..
Кстати, разница двух нормализованных величин может дать ненормализованную. Поэтому нормализовать нужно при любом сравнении и непосредственно перед сравнением, не допуская промежуточных вычислений.
В том числе, необходимо нормализовать Bid, Ask и пр., одним словом, всё.
Следишь-следишь за этим, да нет-нет и всё равно наколешься..
SKif:
Не могу сказать почему. Но лучше делать так.
Кстати, разница двух нормализованных величин может дать ненормализованную. Поэтому нормализовать нужно при любом сравнении.
В том числе, необходимо нормализовать Bid, Ask и пр., одним словом, всё.
Следишь-следишь за этим, да нет-нет и всё равно наколешлся..
геморно :(... биг сенк за инфу :)
Не могу сказать почему. Но лучше делать так.
Кстати, разница двух нормализованных величин может дать ненормализованную. Поэтому нормализовать нужно при любом сравнении.
В том числе, необходимо нормализовать Bid, Ask и пр., одним словом, всё.
Следишь-следишь за этим, да нет-нет и всё равно наколешлся..

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Элементарный скрипт:
//************************************************************************************
//+------------------------------------------------------------------+
//| _Test.mq4 |
//| Copyright © 2006, MetaQuotes Software Corp. |
//| https://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, MetaQuotes Software Corp."
#property link "https://www.metaquotes.net/"
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
//----
Print("Ok!");
//----
return(0);
}
//+------------------------------------------------------------------+
//************************************************************************************
который нихрена не печатает в журнале :((((((((( (принтскрин прилагается)