Скачать MetaTrader 5

RRRRRR............

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

Если кто то ввести в редактор МТ5 выражение :

  double Т= TimeCurrent(); 

Сразу ему ответ :

 possible loss of data due to type conversion 

И ето появлеядса при каждым попытке пользаватся ТimeCurrent();

Ну в оба языка выажение одинакого и доволно простое

Чему копиляторе еще надо чтобы сработало  ТimeCurrent();

Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Основы языка / Типы данных / Приведение типов - Документация по MQL5
Vladimir Gomonov
8306
Vladimir Gomonov  
stenrobot:

Если кто то ввести в редактор МТ5 выражение :

  double Т= TimeCurrent(); 

Сразу ему ответ :

 possible loss of data due to type conversion 

И ето появлеядса при каждым попытке пользаватся ТimeCurrent();

Ну в оба языка выажение одинакого и доволно простое

Чему копиляторе еще надо чтобы сработало  ТimeCurrent();

Моя вводить

datetime Т= TimeCurrent();

Капилятор довольная, малчит савсем, писала

0 error(s), 0 warning(s)        1    1

--

Тема  плохой "RRRRRR..........."

Нужна руская смысла про вопрос.  Ато модератора злитца ругатца и забанить на 300 летов по гринвич.

Nikolay Demko
12568
Nikolay Demko  
stenrobot:

Если кто то ввести в редактор МТ5 выражение :

  double Т= TimeCurrent(); 

Сразу ему ответ :

 possible loss of data due to type conversion 

И ето появлеядса при каждым попытке пользаватся ТimeCurrent();

Ну в оба языка выажение одинакого и доволно простое

Чему копиляторе еще надо чтобы сработало  ТimeCurrent();

TimeCurrent() возвращает datetime тогда как переменная Т объявлена как double, вот компилятор вас и предупреждает.

Но это всего лишь предупреждение а не ошибка. Цель предупреждения привлечь внимание, так как в этом месте возможна потенциальная ошибка.

например в datetime можно уместить число намного больше чем в double из-за разницы внутреннего представления типов.

Stefan Stoyanov
18636
Stefan Stoyanov  
Urain:

TimeCurrent() возвращает datetime тогда как переменная Т объявлена как double, вот компилятор вас и предупреждает.

Но это всего лишь предупреждение а не ошибка. Цель предупреждения привлечь внимание, так как в этом месте возможна потенциальная ошибка.

например в datetime можно уместить число намного больше чем в double из-за разницы внутреннего представления типов.

Спосибо Вам Urain:

Я каждое пробобовал но все равно

Вот и сам абзац кода но  ,екпрерт не хочет открывать сделок  в тестере

//==============================================
   MqlRates mrate[];  ArraySetAsSeries(mrate,true); 
     double close=mrate[0].close;  double open=mrate[0].open;     
       double C=-1.0;   int t= 0; int H; 
    {  close=close/Sec;        
     if (C!= -1.0)  
    { H = TimeCurrent()- t;         
    if (MathAbs(close-C)> Prmin*Poin && H<=Sec)    
    {if (close < C)  U=-1;   
     if (close > C) U=1;  
   //=======================================
     if (H> Sec){ C = close;   t = TimeCurrent(); }}      
       else {  C= close;   t = TimeCurrent(); }     } }

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных - Документация по MQL5
Stefan Stoyanov
18636
Stefan Stoyanov  

MetaDriver

Я попробую и ваш метод

пока я пробовал с int  и  double  а  компирятор мне : RRRRRRRRRRR 

И поетому и тема такая  

Nikolay Demko
12568
Nikolay Demko  
stenrobot:

Спосибо Вам Urain:

Я каждое пробобовал но все равно

Вот и сам абзац кода но  ,екпрерт не хочет открывать сделок  в тестере

//==============================================
   MqlRates mrate[];  ArraySetAsSeries(mrate,true); 
     double close=mrate[0].close;  double open=mrate[0].open;     
       double C=-1.0;   int t= 0; int H; 
    {  close=close/Sec;        
     if (C!= -1.0)  
    { H = TimeCurrent()- t;         
    if (MathAbs(close-C)> Prmin*Poin && H<=Sec)    
    {if (close < C)  U=-1;   
     if (close > C) U=1;  
   //=======================================
     if (H> Sec){ C = close;   t = TimeCurrent(); }}      
       else {  C= close;   t = TimeCurrent(); }     } }

 

Не изучал весь код но вот это MqlRates mrate[];  ArraySetAsSeries(mrate,true); 

не заполнит массив mrate данными.

нужно вызвать функцию CopyRates

Stefan Stoyanov
18636
Stefan Stoyanov  

в общем то ,в другой вариант експерта где не было TimeCurrent(); ето работало

Но наверно Вы имеете предвид что то такое  :

 MqlRates mrate[];  
   ArraySetAsSeries(mrate,true);
   if(CopyRates(_Symbol,_Period,0,3,mrate)<0)
{Print("Error copying rates/history data - error:",GetLastError(),"!!"); return(0);}
   double close=mrate[0].close; 

 

Stefan Stoyanov
18636
Stefan Stoyanov  

Дааа

В общем то переделал код :

//============================== 

MqlRates mrate[];  
   ArraySetAsSeries(mrate,true);
   if(CopyRates(_Symbol,_Period,0,3,mrate)<0)
{Print("Error copying rates/history data - error:",GetLastError(),"!!"); }
     double close=mrate[0].close;  double open=mrate[0].open;        
       double C=-1.0;  int Sec= 4; datetime t= 0; datetime H= TimeCurrent();    
    {    if (C!= -1.0)  
    { H = TimeCurrent()- t;         
    if (MathAbs(close-C)> Prmin*Poin && H<=Sec)    
    {if (close < C)  U=-1; // Когда U=- 1  это условие  для открытие  селл   
     if (close > C) U=1; //Когда U=1 експерт должен открыт бай  но он этого не делает

     if (H > Sec) C = close;   t = TimeCurrent(); }       
      else {  C= close;   t = TimeCurrent(); }     } } 

//=========================================== 

Пока копилятор молчит а експерт сделки не открывает  !

Всякое бывает  

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура исторических данных - Документация по MQL5
Stanislav Korotky
21011
Stanislav Korotky  
stenrobot:

Дааа

Пока копилятор молчит а експерт сделки не открывает  !


Тестер случайно не в режиме по ценам открытия, вместо потикового?
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
Stefan Stoyanov
18636
Stefan Stoyanov  
marketeer:
Тестер случайно не в режиме по ценам открытия, вместо потикового?

Режим торговли "Обычны" , а  ценам открытия : "Все тики "

Хочу добавить что также такой код успешно работает на платформе МТ4 и никакие проблемов нет 

И поетому ,  для платформе  МТ 5    ...    RRRRRRRRRR 

 

Nikolay Demko
12568
Nikolay Demko  
stenrobot:

Режим торговли "Обычны" , а  ценам открытия : "Все тики "

Хочу добавить что также такой код успешно работает на платформе МТ4 и никакие проблемов нет 

И поетому ,  для платформе  МТ 5    ...    RRRRRRRRRR 

 

Тогда торговые функции в студию :)

опубликуйте коды функций которые выставляют ордера, а то с МТ4 много поменялось, может там ошибки.

ЗЫ кстати код лучше вставлять используя кнопку SRC

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