Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1049

 
Какое значение возвращает iTickVolume(NULL, 0,0) в момент появления нового бара? 
 
Alexander Fedosov:
Какое значение возвращает iTickVolume(NULL, 0,0) в момент появления нового бара? 

1

Это если не пачкой пришли тики.
 
Alexey Viktorov:

1

Это если не пачкой пришли тики.
Пачкой это когда тики по нескольким событиям? Цена, объем.. 
Как тогда узнать тиковый объем по событию изменение цен? 
 
Alexander Fedosov:
Пачкой это когда тики по нескольким событиям? Цена, объем.. 
Как тогда узнать тиковый объем по событию изменение цен? 

Новый бар не начнётся пока не будет тика во время этого нового бара. Пачка, это громко сказано. Лично я не наблюдал такого, но читал что определять новый бар по объёму не надёжно именно по причине, что может прийти сразу не один тик.

 

Помогите прояснить пару вопросов по CTRADE:


1. Для чего в PositionOpen требуется указывать цену, ведь это по сути рыночный ордер. Что будет если указанная там цена на несколько пунктов отличается от текущей, те фактически является нерыночной? Пока единственное объяснение я нашел что она используется для вычисления отклонения и сравнения со значением указаного в SetDeviationInPoints.

Так ли это?

2. SetDeviationInPoints ограничивает проскальзывание в обе стороны или только в минус? Почему-то в PositionClose есть возможность указывать отклонение, а в PositionOpen этого делать нельзя.

 

Всем привет.

Проблема с отображением функции Print(); в mt5.

                  
                  Print("Але Где Текст");
                  Print("1");
                  Print("2");
                  Print("3");
                  Print("4");
                  Print("5");
                  Print("6");
                  Print("7");
                  Print("8");

И по идее цифорки должны выводиться в Логах по порядку. Внимание в Логах, а не в журнале.

А вот такую ерунду вижу в логах.

RE      0       21:27:29.430    Core 1  2019.02.14 11:09:42   6
QL      0       21:27:35.537    Core 1  2019.02.14 11:09:57   4
IJ      0       21:27:41.655    Core 1  2019.02.14 11:24:40   5
EP      0       21:27:47.763    Core 1  2019.02.14 11:34:57   8
MN      0       21:27:53.868    Core 1  2019.02.14 11:44:31   2
EE      0       21:27:59.973    Core 1  2019.02.14 11:54:36   1
NS      0       21:28:06.089    Core 1  2019.02.14 12:04:46   4
JI      0       21:28:12.198    Core 1  2019.02.14 12:14:51   7
NG      0       21:28:18.324    Core 1  2019.02.14 12:54:40   4
JN      0       21:28:24.431    Core 1  2019.02.14 13:19:48   8
KD      0       21:28:30.535    Core 1  2019.02.14 13:34:37   4
KR      0       21:28:36.647    Core 1  2019.02.14 13:49:45   7
KH      0       21:28:42.752    Core 1  2019.02.14 13:59:44   5
PG      0       21:28:48.864    Core 1  2019.02.14 14:04:55   3
EM      0       21:28:54.969    Core 1  2019.02.14 14:09:46   6
DK      0       21:29:01.072    Core 1  2019.02.14 14:14:44   5
MQ      0       21:29:07.214    Core 1  2019.02.14 14:39:43   6
IH      0       21:29:13.318    Core 1  2019.02.14 15:29:38   2
QF      0       21:29:19.421    Core 1  2019.02.14 15:49:56   7
JL      0       21:29:25.542    Core 1  2019.02.14 16:14:51   5
LJ      0       21:29:31.648    Core 1  2019.02.14 16:19:59   6
NQ      0       21:29:37.751    Core 1  2019.02.14 16:39:48   5
KO      0       21:29:43.861    Core 1  2019.02.14 16:39:57   3
PE      0       21:29:49.967    Core 1  2019.02.14 16:44:38   4


Цифорки рандомно. Не по порядку.

В чем ошибка, как исправить.


Еще раз повторю это скрин из логов, а не журнала Tester\Logs

 
Никитос:

Всем привет.

Проблема с отображением функции Print(); в mt5.

И по идее цифорки должны выводиться в Логах по порядку. Внимание в Логах, а не в журнале.

А вот такую ерунду вижу в логах.


Цифорки рандомно. Не по порядку.

В чем ошибка, как исправить.


Еще раз повторю это скрин из логов, а не журнала Tester\Logs

Если Вы пытаетесь на каждом тике печатать - то терминал Вас просто банит как спамера - автоматически защищается и выводит не все комментарии.

 
скажи установил мобильное приложение mcl5 привходе требует логин и пароль перепробывал логин и пароль при регистрации в mcl5 и пробывал паролт и логин от счета ,не выходит как быть?
[Удален]  

Как добавить в блок работы советника по часам минуты?

//input parametrs
input uchar                InpStartHour            = 1;           // Start hour
input uchar                InpEndHour              = 23;           // End hour

//---------------------------

void OnTick()
  { 
   MqlDateTime STimeCurrent;
   TimeToStruct(TimeCurrent(),STimeCurrent);
  
   if(STimeCurrent.hour<InpStartHour || STimeCurrent.hour>InpEndHour)
      return;
   }

 
Vladimir Baskakov:

Как добавить в блок работы советника по часам минуты?

High Low Strategy On Time 2:

bool TimeControl() - функция отвечающая за проверку времени. Может работать в двух состояниях: обе даты внутри дня или переход дат через день.

//--- input parameters
***
input bool     InpTimeControl       = true;        // Use time control
input uchar    InpStartHour         = 10;          // Start Hour 
input uchar    InpStartMinute       = 01;          // Start Minute 
input uchar    InpEndHour           = 15;          // End Hour 
input uchar    InpEndMinute         = 02;          // End Minute 
***
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(!TimeControl())
      return;
  }
//+------------------------------------------------------------------+
//| TimeControl                                                      |
//+------------------------------------------------------------------+
bool TimeControl(void)
  {
   if(!InpTimeControl)
      return(true);
   MqlDateTime STimeCurrent;
   datetime time_current=TimeCurrent();
   if(time_current==D'1970.01.01 00:00')
      return(false);
   TimeToStruct(time_current,STimeCurrent);
   if((InpStartHour*60*60+InpStartMinute*60)<(InpEndHour*60*60+InpEndMinute*60)) // intraday time interval
     {
/*
Example:
input uchar    InpStartHour      = 5;        // Start hour
input uchar    InpEndHour        = 10;       // End hour
0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19 20 21 22 23 0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15
_  _  _  _  _  +  +  +  +  +  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  +  +  +  +  +  _  _  _  _  _  _
*/
      if((STimeCurrent.hour*60*60+STimeCurrent.min*60>=InpStartHour*60*60+InpStartMinute*60) && 
         (STimeCurrent.hour*60*60+STimeCurrent.min*60<InpEndHour*60*60+InpEndMinute*60))
         return(true);
     }
   else if((InpStartHour*60*60+InpStartMinute*60)>(InpEndHour*60*60+InpEndMinute*60)) // time interval with the transition in a day
     {
/*
Example:
input uchar    InpStartHour      = 10;       // Start hour
input uchar    InpEndHour        = 5;        // End hour
0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19 20 21 22 23 0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15
_  _  _  _  _  _  _  _  _  _  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  _  _  _  _  _  +  +  +  +  +  +
*/
      if(STimeCurrent.hour*60*60+STimeCurrent.min*60>=InpStartHour*60*60+InpStartMinute*60 || 
         STimeCurrent.hour*60*60+STimeCurrent.min*60<InpEndHour*60*60+InpEndMinute*60)
         return(true);
     }
   else
      return(false);
//---
   return(false);
  }