Стохастик, добавить в советник на MQL5

 

ребят подскажите, нужно в советник на mql5 добавить показания от стохастика, на mq4 просто

counD[i] = iStochastic(Symbol(), 0, 5, 3, 3, MODE_SMA, 0, MODE_MAIN, i);
counK[i] = iStochastic(Symbol(), 0, 5, 3, 3, MODE_SMA, 0, MODE_SIGNAL, i);
а на 5 не могу найти инфу, есть возможность также просто сделать считывание данных, мне просто в советнике нужны данные с разных пар и код бы максимально простым сделать, типа этого.. подскажите если не трудно!
 
Готовые шаблоны для подключения индикаторов в экспертах (Часть 1): Осцилляторы
Готовые шаблоны для подключения индикаторов в экспертах (Часть 1): Осцилляторы
  • www.mql5.com
В статье рассмотрим стандартные индикаторы из категории осцилляторов. Создадим готовые к применению шаблоны их использования в советниках — объявление и установка параметров, инициализация, деинициализация индикаторов и получение данных и сигналов из индикаторных буферов в советниках.
 
//+------------------------------------------------------------------+
//|                                                          bot.mq5 |
//|                                  Copyright 2024, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"

input ENUM_STO_PRICE InpPrice    =  STO_LOWHIGH;   
input ENUM_MA_METHOD InpMethod   =  MODE_SMA;  
int handle;    
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   handle = iStochastic(Symbol(),PERIOD_CURRENT,5,3,3,InpMethod,InpPrice);
//---
   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
  double counD[], counK[];

  ArrayResize(counD, 1);
  ArrayResize(counK, 1);
  
  CopyBuffer(handle, MAIN_LINE, 0, 1, counD);
  CopyBuffer(handle, SIGNAL_LINE, 0, 1, counK);
  
  Print("counD[0] = ", counD[0]);
  Print("counK[0] = ", counK[0]);
  
  Comment(StringFormat("\ncounD[0] = %G\ncounK[0] = %G",counD[0],counK[0]));
  
  //---
  }
//+------------------------------------------------------------------+


как то так вышло, если попроще..

 
uniface #:

как то так вышло, если попроще..

Классно! Если это не великий секрет, то может поделитесь. для чего нужны данные цифры конкретно в Вашем случае?

С уважением, Владимир.

 
uniface #:

как то так вышло, если попроще..

Сделайте статические массивы с размером 1, тогда не нужно их ресайзить на каждом тике, и проверяйте результаты CopyBuffer. Созданный хэндл не проверяете на валидность. Приучайте себя к правильной логике. 
У Вас не попроще получилось, а по-неправильному. В стиле четвëрки, где почти никто ничего не проверяет по научению горе-гуру-ютуберов. 
 
Artyom Trishkin #:
Сделайте статические массивы с размером 1, тогда не нужно их ресайзить на каждом тике, и проверяйте результаты CopyBuffer. Созданный хэндл не проверяете на валидность. Приучайте себя к правильной логике. 
У Вас не попроще получилось, а по-неправильному. В стиле четвëрки, где почти никто ничего не проверяет по научению горе-гуру-ютуберов. 

да какой ютубер, я в принципе учился сам для своих целей, в mql5 вообще не шарю, в 4 более менее - поэтому немного попроще.. я не осилю то о чем вы говорите...

 
MrBrooklin #:

Классно! Если это не великий секрет, то может поделитесь. для чего нужны данные цифры конкретно в Вашем случае?

С уважением, Владимир.

для мульти хедж торговли по отклонениям рынка с поддержанием математического нуля при открытии ордеров - результаты пока оч хорошие..