Вопросы от "чайника" - страница 49

 

Приветствую!!! У меня вопрос.Советник к примеру работает на м5.Вызываю индикатор через iCustom().Таймфрейм принудительно привязываю к м5.Могу ли я организовать вызов к тому же индикатору еще раз по другому периоду.Для этого будут другие буфера,другие входы выходы.Ордера будут различаться магиком.ЧТобы эксперт работал одновременно на нескольких таймфреймах.

ma1_handle= iCustom("EURUSD",PERIOD_M5,"Examples\\MACD.exe5"   ....
ma2_handle= iCustom("EURUSD",PERIOD_M15,"Examples\\MACD.exe5"    ....
 
uncleVic:
В работе переделка всех "старых" модулей под новый Мастер.
Лучше было бы если бы список модулей сигналов был такой же как и в старом мастере, чтоб не приходилось исправлять код после создания советника. Я имею ввиду что неудобно когда в каждом индикаторе уже включены несколько сигналов. А вот если бы они все были по порядку, допустим: сигнал пересечения средних скользящих, сигнал дивергенции CCI и т.д. Тогда то уж точно любой новичок смог собрать советника.
 
Karlson:

Приветствую!!! У меня вопрос.Советник к примеру работает на м5.Вызываю индикатор через iCustom().Таймфрейм принудительно привязываю к м5.Могу ли я организовать вызов к тому же индикатору еще раз по другому периоду.Для этого будут другие буфера,другие входы выходы.Ордера будут различаться магиком.ЧТобы эксперт работал одновременно на нескольких таймфреймах.

 

Можете.
 
kirill-demo:
Лучше было бы если бы список модулей сигналов был такой же как и в старом мастере, чтоб не приходилось исправлять код после создания советника. Я имею ввиду что неудобно когда в каждом индикаторе уже включены несколько сигналов. А вот если бы они все были по порядку, допустим: сигнал пересечения средних скользящих, сигнал дивергенции CCI и т.д. Тогда то уж точно любой новичок смог собрать советника.
Неудобства кажущиеся.
 

начал изучать MQL5 (полгода общался с четвертым). Создаю пустой индикатор по шаблону и добавляю в него одну строку:

Comment("low[1] = ", DoubleToString(low[1]));

кидаю на минутный евро-доллар и вижу low[1] = 1.44938

такого значения не было с июля..

с чем это связано?


полный код:

//+------------------------------------------------------------------+
//|                                                         test.mq5 |
//|                        Copyright 2011, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2011, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   Comment("low[1] = ", DoubleToString(low[1]));
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 
посмотрите время этого low[1]
 
sergeev:

посмотрите время этого low[1]

вижу, 2011.07.27


на данный момент исправил строкой

ArraySetAsSeries(low, true);

получается в таком случае при каждом вызове придется явно указывать значение флага?

 
да
 
Попробуй low[rates_total-2]
 
sergeev:

да
спасибо за помощь
Причина обращения: