Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Не можешь разобраться в коде? Статьи помогут!
Anton
12
Anton 2012.03.19 13:27 

Помогите разобраться с проблемой, нижние фракталы не отображаются


Print("i = " + i + "; FractalsDown[i] = " + FractalsDown[i]);

здесь, одни нули


Код


//+------------------------------------------------------------------+
//|                                                   MyFractals.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
double FractalsUp[];
double FractalsDown[];


//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//---- indicators
   SetIndexBuffer(0, FractalsUp);
   SetIndexBuffer(1, FractalsDown);   
//----
   SetIndexStyle(0, DRAW_ARROW, 0, 2);
   SetIndexArrow(0, 241);
//----
   SetIndexStyle(1, DRAW_ARROW, 0, 2);
   SetIndexArrow(1, 241);

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
//----
   int Bars_Numb  = 150;
   
   for (int i = 1; i <= Bars_Numb-1; i++) {
      FractalsUp[i]   = iFractals(NULL, 0, MODE_UPPER, i);
      FractalsDown[i] = iFractals(NULL, 0, MODE_LOWER, i);
      Print("i = " + i + "; FractalsDown[i] = " + FractalsDown[i]);
      
   }
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
Victor Nikolaev
Модератор
14069
Victor Nikolaev 2012.03.19 14:09  
MQL_PROF:

Помогите разобраться с проблемой, нижние фракталы не отображаются


Print("i = " + i + "; FractalsDown[i] = " + FractalsDown[i]);

здесь, одни нули


Код



Попробуйте так

//+------------------------------------------------------------------+
//|                                                   MyFractals.mq4 |
//|                      Copyright © 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window

#property indicator_buffers 2
#property indicator_color1 Yellow
#property indicator_color2 Yellow

double FractalsUp[];
double FractalsDown[];


//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//---- indicators
   SetIndexBuffer(0, FractalsUp);
   SetIndexBuffer(1, FractalsDown);   
//----
   SetIndexStyle(0, DRAW_ARROW, 0, 2);
   SetIndexArrow(0, 241);
//----
   SetIndexStyle(1, DRAW_ARROW, 0, 2);
   SetIndexArrow(1, 241);

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
//----
   int Bars_Numb  = 150;
   
   for (int i = 1; i <= Bars_Numb-1; i++) {
      FractalsUp[i]   = iFractals(NULL, 0, MODE_UPPER, i);
      FractalsDown[i] = iFractals(NULL, 0, MODE_LOWER, i);
      Print("i = " + i + "; FractalsDown[i] = " + FractalsDown[i]);
      
   }
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
Anton
12
Anton 2012.03.19 15:32  

Спасибо за ответ,


нужно было добавть


#property indicator_buffers 2

Anton
12
Anton 2012.03.19 16:19  

Можно ли сделать так чтобы пользовательская функция возвращала 2 и более значений (можно массив)?


Если можно пример.


Спасибо!

o_O
Модератор
23306
o_O 2012.03.19 18:24  
MQL_PROF:

Можно ли сделать так чтобы пользовательская функция возвращала 2 и более значений (можно массив)?

Если можно пример.

Спасибо!


void Get(int &arr[], double &a)
Anton
12
Anton 2012.03.20 03:41  
Огромное спасибо!
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий