Не рекламы ради, а помощи для.........

 

Братцы, в плотную решил перейти на MQL5, но времени мало... сколько бы его не было, я готов стараться. В принципе индюки есть но не до конца работают+ нужно организовать сохранение данных в файл и подкачкеу при инициализации... В принципе работа не сложная, но мне с моими знаниями MQL4 на уровне пользователя, теперь понять ПЯТЁРКУ сложновато. Мне не нужны коды. Мне нужно понять. Поможете???


П.С. Только у меня будет всё последовательно по времени. Не так уж его и много просто, но переход обязателен, поэтому думаю буду делать БЭБ!!!!! :-)))))))))

Кое что я уже зашарил в плане клосов, опенов, времени и т.д. Но вот в чём проблема.... Кстати суть работы в следующем. ИНДЕКТ РТС. ОБЪЁМ+ДЕЛЬТА+ОИ. Ознакомтесь. Нужно организовать качественный сбор этих данных с записью в файл.

Я понимаю что такое есть платно в маркете и даже есть бесплатно, которое не работает... Мне нужно организовать сбор и я это сделаю, поэтому прошу помочь в некоторых вопросах касаемо кода. Хочется именно понять почему так а не иначе.... и я напишу его сам... но не без Вашей помощи.... ну что... готовы?????

FXlab лаборатория форекс | ВКонтакте
FXlab лаборатория форекс | ВКонтакте
  • vk.com
Показать все 6 комментариев Turbo, тут есть чёткая грань, мм - всего лишь часть ТС, система подразумевает точное описание условий для входа, в случае гармоники - точка Д паттерна, в случае тс на машках - пересечение ма на разных периодах, в случае уровневой тс - отбои от уровней, в случае прайсэкшн - комбинации свечей, а так же описывает тс...
 

С понедельника решил полностью перейти на ПЯТЁРКУ, по этому вопросы походу в течении недели. Буду рад, ЛЮБОЙ ПОМОЩИ!!!! Спасибо!!!!

 
Mihail Marchukajtes:

С понедельника решил полностью перейти на ПЯТЁРКУ, по этому вопросы походу в течении недели. Буду рад, ЛЮБОЙ ПОМОЩИ!!!! Спасибо!!!!

Понедельник - выходной. Перенесите на вторник))
 
Dmitriy Skub:
Понедельник - выходной. Перенесите на вторник))
Да, и обязательно не проспать. топикстартер правильно написал в VK - "Это к слове, что вставать нужно ДО начала тренда.. "
Файлы:
1.png  70 kb
 
Dmitriy Skub:
Понедельник - выходной. Перенесите на вторник))

Классный план.. что то не подумал. Так или иначе надеюсь на Вашу помощь в плане разьяснения кода, почему именно так, а не иначе... :-) Спасибо!!!

 
Mihail Marchukajtes:

Классный план.. что то не подумал. Так или иначе надеюсь на Вашу помощь в плане разъяснения кода, почему именно так, а не иначе... :-) Спасибо!!!

Ну, чем смогу. Правда, умею мало, а знаю еще меньше)
 
Dmitriy Skub:
Ну, чем смогу. Правда, умею мало, а знаю еще меньше)

Спасибо!!! Будем как грицца решать проблемы по мере их поступления... Сегодня РТС отдыхает, поэтому и задач на сегодня нет.... дальше видно будет...

 
Mihail Marchukajtes:

Спасибо!!! Будем как грицца решать проблемы по мере их поступления... Сегодня РТС отдыхает, поэтому и задач на сегодня нет.... дальше видно будет...

Завтра будут очень интересные задачи с утра)
 

Ну вот и первая затырка, как грится.... Никак не могу побороть индикатор дельты.

Задача: Узнать количество ордеров на покупку и на продажу в текущем баре.

Вроде бы додумался как это реализовать, вопрос в другом. Почему индикатор не выводит гистограмму и максимальные значения индюка какието странные???

Не понятно... Можете посмотреть и пояснить что там не так и как нужно.... опыта для.....

//+------------------------------------------------------------------+
//|                                                Open Interest.mq5 |
//|                              Copyright © 2016, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.001"
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_plots   2
//--- plot Max
#property indicator_label1  "Interest Max"
#property indicator_type1   DRAW_HISTOGRAM2
#property indicator_color1  clrBlue
#property indicator_style1  STYLE_SOLID
#property indicator_width1  3
//--- plot Сurrent
#property indicator_label2  "Interest Min"
#property indicator_type2   DRAW_HISTOGRAM2
#property indicator_color2  clrRed
#property indicator_style2  STYLE_SOLID
#property indicator_width2  3
//--- indicator buffers
double         BufferMaxUp[];
double         BufferMaxDown[];
double         BufferMinUp[];
double         BufferMinDown[];
//---
int b;
double LastB,LastS;
datetime       StartDate=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   Print(__FUNCTION__);
//--- indicator buffers mapping
   SetIndexBuffer(0,BufferMaxUp,INDICATOR_DATA);
   SetIndexBuffer(1,BufferMaxDown,INDICATOR_DATA);
   SetIndexBuffer(2,BufferMinUp,INDICATOR_DATA);
   SetIndexBuffer(3,BufferMinDown,INDICATOR_DATA);
   ArraySetAsSeries(BufferMaxUp,true);
   ArraySetAsSeries(BufferMaxDown,true);
   ArraySetAsSeries(BufferMinUp,true);
   ArraySetAsSeries(BufferMinDown,true);
//---
   PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| 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[])
  {
   if(prev_calculated==0)
     {
      Print("prev_calculated==0, StartDate=",StartDate);
      if(StartDate<D'2015.01.01 00:00')
        {
         StartDate=TimeCurrent();
        }
      else
        {
         return(rates_total);
        }
     }
//---
   int limit=rates_total-prev_calculated;


   double bay=SymbolInfoInteger(Symbol(),SYMBOL_SESSION_BUY_ORDERS);
   double sell=SymbolInfoInteger(Symbol(),SYMBOL_SESSION_SELL_ORDERS);
 //  double interest=bay;
//---

   for(int i=0;i<limit;i++) // в случае когда prev_calculated==0 или когда limit>1
     {
      BufferMaxUp[i]=(LastB-bay)+((LastS-sell)*-1) ;
     // BufferMaxDown[i]=0;
    //  BufferMinUp[i]=0;
    //  BufferMinDown[i]=0;
       if(b!=rates_total)
     {
 LastB=bay;   
 LastS=sell; 
      b=rates_total;
    //  BufferMaxUp[0]=0;
    
}  

     }
//---
/*
   if(interest>BufferMaxUp[0])
     {
      BufferMaxUp[0]=interest;
     }
   if(interest<BufferMinDown[0])
     {
      BufferMinDown[0]=interest;
     }*/
//BufferMaxUp[0]=bay;  
//BufferMaxDown[0]=BufferMaxDown[0]+((LastS-sell)*-1);   
  /* if(b!=rates_total)
     {
      b=rates_total;
    //  BufferMaxUp[0]=0;
    //  BufferMaxDown[0]=0;
}  */
//LastB=bay;
//LastS=sell; 
//BufferMaxUp[0]=bay;  
BufferMaxUp[0]=(LastB-bay)+((LastS-sell)*-1) ;
//BufferMaxDown[0]=LastS-sell;

   if(b!=rates_total)
     {
 LastB=bay;   
 LastS=sell; 
      b=rates_total;
    //  BufferMaxUp[0]=0;
    
}  


  
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 

Вообще говоря, надо Вам начать с изучения справки - разделы, относящиеся к индикаторам. Читать последовательно все.

То, что в тексте показывает непонимание того, что делаете. Так у Вас ничего не получится (малой кровью).

Также полезно пользоваться контекстной справкой - выделяем слово и жмем F1.

Не показывает ничего потому, что сами запретили показ :

ENUM_PLOT_PROPERTY_DOUBLE

Идентификатор

Описание

Тип свойства

PLOT_EMPTY_VALUE

Пустое значение для построения, для которого нет отрисовки

double

 
Dmitriy Skub:

Вообще говоря, надо Вам начать с изучения справки - разделы, относящиеся к индикаторам. Читать последовательно все.

То, что в тексте показывает непонимание того, что делаете. Так у Вас ничего не получится (малой кровью).

Также полезно пользоваться контекстной справкой - выделяем слово и жмем F1.

Не показывает ничего потому, что сами запретили показ :

ENUM_PLOT_PROPERTY_DOUBLE

Идентификатор

Описание

Тип свойства

PLOT_EMPTY_VALUE

Пустое значение для построения, для которого нет отрисовки

double


Душевно!!! Всё заработало. Почему тогда в других индюках стоит тоже самое и при этом всё показывает???

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