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

 
Сергей:

Понял Вас прекрасно, но Вы не правы.

Взяв в кавычки получаем:

'EURUSD' - name expected MyIndi 3 (MA).mq4 61 14

правильно 

А где у вас тут кавычки?

'EURUSD'

 
Artyom Trishkin:

А где у вас тут кавычки?


Кавычки в коде у меня стоят двойные, в ошибке выдает одинарные ничего с этим поделать не могу.

С выводом данных в окно у меня проблем нет. Проблема в неправильных результатах. А именно вместо "flat" пишет "Attenthion!" и наоборот. Алгоритм элементарный, не пойму где накосячил...

С компиляцией тоже проблем нет. Пост с кодом #3437.

 

Сам индюк https://cloud.mail.ru/public/6Ney/gTq1xMcMd

Вопрос с тем что на графиках с JPY результаты меняются я поднимал уже здесь 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6.

Сергей, 2017.08.13 22:06

Ребят, подскажите, пожалуйста, почему мультивалютный индикатор основанный на МА показывает неправильные результаты, когда я его прикрепляю на все пары с JPY? На остальных парах работает нормально.

Индикатор о котором там шла речь здесь https://cloud.mail.ru/public/CAXu/p3uD3UzBJ . Тогда с вопросом мне не помогли, может сейчас поможете??
 
Сергей:

Кавычки в коде у меня стоят двойные, в ошибке выдает одинарные ничего с этим поделать не могу.

С выводом данных в окно у меня проблем нет. Проблема в неправильных результатах. А именно вместо "flat" пишет "Attenthion!" и наоборот. Алгоритм элементарный, не пойму где накосячил...

С компиляцией тоже проблем нет. Пост с кодом #3437.

Чтобы люди не гадали, и чтобы можно было нормально понимать о чём вы ведёте речь, есть все для этого возможности в редакторе сообщения, которое вы вводите:

вы можете прикрепить сюда код файлом (внизу же есть +Прикрепить файл),

вы можете вывести код индикатора как код,

например:

//+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries(const uint num_candle)
  {
   int total=m_series.Total();
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
   for(int i=0; i<total; i++){
      CCandleObject* candle=m_series.At(i);
      if(candle!=NULL){
         datetime time=candle.Time();
         if(time<TimeCurrent()-PeriodSeconds()*num_candle) continue;
         string tm=TimeToString(candle.Time());
         this.PrintCandle(candle);
         }
      }
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
  }
//+------------------------------------------------------------------+

вы можете и строку из журнала тоже оформить в виде кода (её можно скопировать ПКМ из журнала терминала и вставить сюда как код (кнопка SRC))

2017.10.20 04:04:09.014 Свеча NZDUSD 2017.10.20 00:00, open: 0.70296, high: 0.70360, low: 0.70260, close: 0.70355, vol tick: 87, размер: 100, тело: 59, верх. тень: 5, нижн. тень: 36, тип: Бычья

вот тогда у людей не будет недопонимания того, о чём вы говорите.

А отсылать людей на сторонний ресурс чтобы они скачивали от-туда не-пойми что - как-то не очень дружественно, верно же?

 
Сергей:
...

С компиляцией тоже проблем нет. Пост с кодом #3437.

Ну ведь можно же щёлкнуть ПКМ по #3437, выбрать "Копировать ссылку" и в своё сообщение вставить ссылку (тоже в редакторе сообщения) - дабы людям не листать туда, куда им не особо-то и нужно ;)

 
Artyom Trishkin:

А отсылать людей на сторонний ресурс чтобы они скачивали от-туда не-пойми что - как-то не очень дружественно, верно же?


Простите мою неграмотность.


MyIndi 1 МультиВалютный на МультиТаймФреймах. В низу показывает количество балов бай.

MyIndi 2 Тоже что и первый, но удалено лишнее. Добавлены данные внизу - это среднее изменение цены на минуту времени для разных временных отрезков.

MyIndi 3 МультиВалютный. Основан на одной МА со сдвигом. При достижении разницы в показателях МА показывает "Внимание!".


Все три работают неверно при прикреплении к графикам с JPY (почему-то). MyIndi 3 работает неправильно вообще, хотя код очень простой.

И разумеется во всех не могу найти в чем косяк, так как я новичек в этом деле.. Если у кого будет время разобраться и помочь, буду очень благодарен.
Файлы:
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей:

Простите мою неграмотность.


MyIndi 1 МультиВалютный на МультиТаймФреймах. В низу показывает количество балов бай.

MyIndi 2 Тоже что и первый, но удалено лишнее. Добавлены данные внизу - это среднее изменение цены на минуту времени для разных временных отрезков.

MyIndi 3 МультиВалютный. Основан на одной МА со сдвигом. При достижении разницы в показателях МА показывает "Внимание!".


Все три работают неверно при прикреплении к графикам с JPY (почему-то). MyIndi 3 работает неправильно вообще, хотя код очень простой.

И разумеется во всех не могу найти в чем косяк, так как я новичек в этом деле.. Если у кого будет время разобраться и помочь, буду очень благодарен.

Посмотрите "Point", у JPY отличается. Используйте MarketInfo. Например double EUR_point=MarketInfo("EURUSD",MODE_POINT);

 
Nauris Zukas:

Посмотрите "Point", у JPY отличается. Используйте MarketInfo. Например double EUR_point=MarketInfo("EURUSD",MODE_POINT);

Спасибо буду пробовать! У меня была мысль что проблема в этом, но я не знал КАК.


Помогло! Огромное спасибо, добрый человек! =)

Я добавил в начало       

      double USD_point=MarketInfo("EURUSD",MODE_POINT);
      double JPY_point=MarketInfo("USDJPY",MODE_POINT); 

и в соответсвии с тем какую пару обрабатываю (с JPY или без) использовал ту или иную переменную.

 
Nauris Zukas:

Посмотрите "Point", у JPY отличается. Используйте MarketInfo. Например double EUR_point=MarketInfo("EURUSD",MODE_POINT);

Лучше сразу 

Point
SymbolInfoDouble(Symbol(),SYMBOL_POINT)
 
Vitaly Muzichenko:

Лучше сразу 


Я так понимаю для мультивалютного подойдет вариант предложенный @Nauris Zukas, по крайней мере мне подошел.

А Ваш вариант лучше для одновалютного, т.к. он берет данные с графика на который прикреплен.

Причина обращения: