Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1163

 
индекс бара и беру для определения его времени. Видимо тут глубже надо копнуть, с переходом на секунды во времени формирования бара
 
Evgeniy Butakov:
индекс бара и беру для определения его времени. Видимо тут глубже надо копнуть, с переходом на секунды во времени формирования бара

Внимательно прочтите документацию. Обратите внимание на перегрузки функции.

Зачем вы берёте от времени количество баров??? Я вам пишу от времени до времени.

int  CopyRates( 
   string           symbol_name,       // имя символа 
   ENUM_TIMEFRAMES  timeframe,         // период 
   datetime         start_time,        // с какой даты 
   datetime         stop_time,         // по какую дату 
   MqlRates         rates_array[]      // массив, куда будут скопированы данные 
   );

с какой даты и по какую дату не просто дата, а дата_время. Вот и берите с времени открытия бара минус 2*PeriodSeconds(PERIOD_M15) и до времени следующего бара Н4

 
Alexey Viktorov:

Внимательно прочтите документацию. Обратите внимание на перегрузки функции.

Зачем вы берёте от времени количество баров??? Я вам пишу от времени до времени.

с какой даты и по какую дату не просто дата, а дата_время. Вот и берите с времени открытия бара минус 2*PeriodSeconds(PERIOD_M15) и до времени следующего бара Н4

 Подразобрался трохи... Необходимое время " с какой даты" и "по какую" я перевел в секунды и от них пляшу...  И почему именно 2*PeriodSeconds(PERIOD_M15)? Мне достаточно запасных 900 секунд, т.е. одного бара на М15. Спасибо большое!!

 
Evgeniy Butakov:

 Подразобрался трохи... Необходимое время " с какой даты" и "по какую" я перевел в секунды и от них пляшу...  И почему именно 2*PeriodSeconds(PERIOD_M15)? Мне достаточно запасных 900 секунд, т.е. одного бара на М15. Спасибо большое!!

Исходя из этого пожелания

Evgeniy Butakov:

Добрый день!

Второй раз со своей задачей расчетов внутри бара старшего фрейма (Н4) за счет баров младшего. Как получить данные на М15 по бару с Н4 разобрался. Но затромозил на таком моменте. К примеру, на 3 свече Н4 собираю данные с ТФ М15, в результате обрабатываются все 16 свечей внутри этого 3го бара. А как получить дополнительно еще пару баров на М15 в дополнение к этом 16, ведь они будут уже из 4ой свечи на Н4? Прошу, наведите, подскажите.

Для получения данных с М15 использует такой код:

Если нужен один бар, так просто не надо умножать и все дела.

И ещё один бесплатный совет: Откажитесь от секунд. Что более понятно при чтении чужого или своего кода через некоторое время 1800 или 2*PeriodSeconds(PERIOD_M15) что означает 2 бара периода М15 выраженные в секундах. А неделя или месяц в секундах сколько будет? Каждый раз пересчитывать или забивать свои ячейки памяти ненужной информацией?

 
Alexey Viktorov:

Исходя из этого пожелания

Если нужен один бар, так просто не надо умножать и все дела.

И ещё один бесплатный совет: Откажитесь от секунд. Что более понятно при чтении чужого или своего кода через некоторое время 1800 или 2*PeriodSeconds(PERIOD_M15) что означает 2 бара периода М15 выраженные в секундах. А неделя или месяц в секундах сколько будет? Каждый раз пересчитывать или забивать свои ячейки памяти ненужной информацией?

Да, Алексей, Спасибо на наставление и направление. Про функцию PeriodSeconds я совсем забыл ;).
 
int file = FileOpen("expert_file", FILE_WRITE | FILE_BIN);
   if (file != INVALID_HANDLE){
      uint file_bytes = FileWriteArray(file, file_data);
      FileClose(file);
      Print("Bytes count: ", file_bytes);
      Print("Error: ", GetLastError());
   } else{
      return false;  
   }    

Пытаюсь записать массив байт в файл. 

Лог

Сам файл

То есть, программа возвращает что произвела запись 186368 байт в файл, но сам файл остается абсолютно пустым. И при этом не происходит никакой ошибки.

 

Привет.

Есть такая проблемка. На счет брокера произведен депозит, условно, 1к. Потом этот депозит пополнен еще на 5к. В итоге в отчете "история" МТ5 первоначальные 1к обозначает как депозит, а пополнение - как прибыль, и естественно все показатели торговли зашкаливают. 


Вопрос: Можно ли как-то вручную задать размер начального торгового баланса от которого он должен считать прибыль?!


Заранее спасибо ^^

 
MQL_User:

Можно ли как-нибудь определить из OnChartEvent была ли нажата какая-нибудь кнопка на клавиатуре в момент клика мыши по графику?

Есть такая функция - GetAsyncKeyState. Можно ли её использовать в коде?

Я попробовал такую конструкцию:

#import "user32.dll"
   int GetAsyncKeyState(int a0);
#import

printf("--"+(GetAsyncKeyState(88)));

Но выдаётся сообщение DLL loading is not allowed.

Галочку в начтрйках "Разрешить импорт DLL" поставил. Не помогло.
 
Может я не в ту ветку вошел.Да простят меня Боги Мкл .!!! Мне надо написать индикатор.Который бы выдавал сигнал из комбинации четырех или пяти индикаторов.Установленных в подвале.Может есть шаблон. Или готовый советник.Подскажите Пожалуйста!!!!!!!!!!
 
How can I add an expert advisor to an mql5 folder and for it to show in the advisor section?