Я пытаюсь разобраться с CopyTime, но не понимаю почему DayData[] не заполняется (хочу увидеть дату округлённую до целого дня). Ниже добавил пример, если кто заметит ошибку,пожалуйста, укажите или поправьте:
datetime Data[3]={D'2017.09.22 08:05',D'2017.09.22 10:05',D'2017.09.22 12:05'};
int count=0;
datetime DayData[];
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
//---
count++;
if(count<4)
{
int copied=CopyTime(NULL,PERIOD_D1,Data[count-1],1,DayData);
ArrayResize(DayData,count);
Print("0 Data[",count-1,"]= ",Data[count-1]," DayData[count-1]= ",DayData[count-1]); // 1 control
}
for(int i=0; i<ArraySize(DayData);i++)
Print("1 Data[",i,"]= ",Data[i]," DayData[i]= ",DayData[i]); // 2 control
}
//+------------------------------------------------------------------+
Далее если ордер открыт советником - модифицировать ордер на такой то тейк и такой то стоп.
В компиляции ошибок нет.
И вот в чем загвоздка, как бы я не пытался тестировать - тестер стратегий всегда открывает первый Бай ордер который упорно отказывается модифицировать. Далее все ордера открываются только в Продажу, которые прекрасно модифицируются и не создают проблем.
Это какая то ошибка в коде может иметь место?
Либо это особенность работы тестера такая? В настройках выбираю "использовать дату" - и с какой бы даты я его бы не гонял - всегда первый ордер в покупку который не модифицируется. Далее все в продажу которые прекрасно модифицируются и отлично отрабатывают.
в терминале есть пример советника Moving Average.mq4 - в нем так:
В другом видел:
Используйте MT4Orders - библиотека для MetaTrader 5
Я пытаюсь разобраться с CopyTime, но не понимаю почему DayData[] не заполняется (хочу увидеть дату округлённую до целого дня). Ниже добавил пример, если кто заметит ошибку,пожалуйста, укажите или поправьте:
Целая страница пустых постов (ошибка форума). Пришлось удалить.
Всем доброго времени суток!
Постепенно вникаю в mql4 по литературе Евгения Жданова.
В ней описан пример использования Envelopes, Zigzag.
Там описаны функции iCustom и iEnvelopes для получения данных индикаторов Envelopes и ZigZag.
Подскажите где можно найти информацию и выучить данные - чем описывать другие индикаторы? для начала классику - RSI и Bollinger Bands.
Может есть ссылка на ресурс где я смогу разобраться какими функциями какие индикаторы описываются?
Или все это есть в справке?
Заранее искренне благодарен!
смотрите iRsi и iBands
https://docs.mql4.com/ru/function_indices
смотрите iRsi и iBands
https://docs.mql4.com/ru/function_indices
Огромное вам спасибо!
Взял акваланг, пошел на погружение!
Есть еще такой вопрос.
Прописан советник
Если ZigZag меньше двух Envelopes - открыть бай.
Если ZigZag больше двух Envelopes - открыть селл.
Далее если ордер открыт советником - модифицировать ордер на такой то тейк и такой то стоп.
В компиляции ошибок нет.
И вот в чем загвоздка, как бы я не пытался тестировать - тестер стратегий всегда открывает первый Бай ордер который упорно отказывается модифицировать. Далее все ордера открываются только в Продажу, которые прекрасно модифицируются и не создают проблем.
Это какая то ошибка в коде может иметь место?
Либо это особенность работы тестера такая? В настройках выбираю "использовать дату" - и с какой бы даты я его бы не гонял - всегда первый ордер в покупку который не модифицируется. Далее все в продажу которые прекрасно модифицируются и отлично отрабатывают.
Нигде пока не нашел информации про это.
Спасибо за уделенное внимание!
Почему тестер выдает различные результаты при
extern bool Tral =true;
...
void OnTick()
{
if (Tral)Trailing();....
и если Tral не выносить во внешние переменные, а просто использовать туже функцию при тех же переменных:
void OnTick()
{
Trailing();
Почему тестер выдает различные результаты при ....
Попробуйте :
... или вам действительно нужно extern ?