Ораничить время работы Советника. помогите исправить код

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
afsmerinostra
19
afsmerinostra  
Вот код он работает,  но я пологаю из тестов что неправильно, тк как самая долгая сделка больше временного ограничителя. 
string cur_time = TimeToString(TimeCurrent(),TIME_MINUTES);
   if (cur_time==Finish)
   {
      long ticket = PositionGetInteger(POSITION_TICKET); \\ 
      trade.PositionClose(ticket,15);
   }
   if (cur_time<Start || cur_time>Finish)return;  
Taras Slobodyanik
38393
Taras Slobodyanik  
сравнивать нужно время (datetime) а не строки (string)
afsmerinostra
19
afsmerinostra  
Да я понимаю, формат записи, меня интересует.  Как задать входные переменные для datetime? справка выдает -   datetime (целое число, представляющее собой количество секунд, прошедших с 0 часов 1 января 1970 года). В упор не пойму. 
Alekseu Fedotov
1479
Alekseu Fedotov  
afsmerinostra:
Да я понимаю, формат записи, меня интересует.  Как задать входные переменные для datetime? справка выдает -   datetime (целое число, представляющее собой количество секунд, прошедших с 0 часов 1 января 1970 года). В упор не пойму. 

Попробуйте с помощью функции   StringCompare(cur_time,Finish);

Ihor Herasko
21867
Ihor Herasko  
afsmerinostra:
Да я понимаю, формат записи, меня интересует.  Как задать входные переменные для datetime? справка выдает -   datetime (целое число, представляющее собой количество секунд, прошедших с 0 часов 1 января 1970 года). В упор не пойму. 

В справке есть примеры:

datetime NY=D'2015.01.01 00:00';     // время наступления 2015 года 

Если же нужно закрыть позиции в определенное время суток, то во входных параметрах datetime не требуется:

input int i_nEndHour = 20;     // Час закрытия
input int i_nEndMinute = 30;   // Минуты закрытия

int g_nEndMinute = i_nEndHour * 60 + i_nEndMinute;

...

MqlDateTime stTime;
TimeCurrent(stTime);
int nCurMinuteOfDay = stTime.hour * 60 + stTime.min;
if (nCurMinuteOfDay >= g_nEndMinute)
{
  // Закрыть позицию
}
Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий