Индикаторы: Half Trend New - страница 2

 
Kyrie_Prosopon #:
Слаб в коде, поэтому не понял, что Вы имели ввиду " Опрашивайте индикатор"?

Создайте хендл при помощи iCustom. Дальше опрашивайте индикаторные буферы.

Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
iCustom - Технические индикаторы - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Созданный таким образом хэндл прописывается в индикаторе или в коде стороннего советника, который должен торговать по сигналам Вашего индикатора? Извиняюсь за дилетантский вопрос, спасибо.

 
Kyrie_Prosopon #:

Созданный таким образом хэндл прописывается в индикаторе или в коде стороннего советника, который должен торговать по сигналам Вашего индикатора? Извиняюсь за дилетантский вопрос, спасибо.

Пожалуйста уточните свой вопрос. И также пользуйтесь кнопкой "Ответить" - чтобы было понятно, кому Вы задаёте вопрос.

Пример:  Ответить

 
Vladimir Karputov #:

Пожалуйста уточните свой вопрос. И также пользуйтесь кнопкой "Ответить" - чтобы было понятно, кому Вы задаёте вопрос.

Пример: 

Уважаемый Владимир, выше в обсуждении, Вы сообщили, что для получения глобального сигнала Бай или Селл от Вашего индикатора Half trend New, который сам по себе очень хорош J, вставка в код индикатора функции GlobalVariableSet  не годиться. Необходимо опрашивать буфера индикатора специально создаваемым для этой цели хэндлом. Вот я и спрашиваю куда необходимо прописывать такой хэндл , в сторонний советник, который может открывать/закрывать сделки по сигналам стороннего индикатора, выдающего глобальный сигнал (что затруднительно, нет доступа в моем конкретном случае), в сам Ваш индикатор или же это автономный код?Спасибо.

 
Kyrie_Prosopon #:

Уважаемый Владимир, выше в обсуждении, Вы сообщили, что для получения глобального сигнала Бай или Селл от Вашего индикатора Half trend New, который сам по себе очень хорош J, вставка в код индикатора функции GlobalVariableSet  не годиться. Необходимо опрашивать буфера индикатора специально создаваемым для этой цели хэндлом. Вот я и спрашиваю куда необходимо прописывать такой хэндл , в сторонний советник, который может открывать/закрывать сделки по сигналам стороннего индикатора, выдающего глобальный сигнал (что затруднительно, нет доступа в моем конкретном случае), в сам Ваш индикатор или же это автономный код?Спасибо.

Это основы основ - хотите в Эксперте получать данные с индикатора - Вы должны создать ХЕНДЛ индикатора. Хендл индикатора создаётся в OnInit советника.

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

Индикаторы: Half Trend New

Vladimir Karputov, 2021.09.30 05:05

Создайте хендл при помощи iCustom. Дальше опрашивайте индикаторные буферы.


 
Kyrie_Prosopon #:

Уважаемый Владимир, выше в обсуждении, Вы сообщили, что для получения глобального сигнала Бай или Селл от Вашего индикатора Half trend New, который сам по себе очень хорош J, вставка в код индикатора функции GlobalVariableSet  не годиться. Необходимо опрашивать буфера индикатора специально создаваемым для этой цели хэндлом. Вот я и спрашиваю куда необходимо прописывать такой хэндл , в сторонний советник, который может открывать/закрывать сделки по сигналам стороннего индикатора, выдающего глобальный сигнал (что затруднительно, нет доступа в моем конкретном случае), в сам Ваш индикатор или же это автономный код?Спасибо.

Вообще не могу Вас понять: что за ГЛОБАЛЬНЫЙ сигнал? Что за СТОРОННИЙ индикатор? Что за СТОРОННИЙ советник?

Попробуйте сформулировать свой вопрос иначе, выкинув из предложения выделенные слова.

Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
iCustom - Технические индикаторы - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Kyrie_Prosopon #:

Уважаемый Владимир, выше в обсуждении, Вы сообщили, что для получения глобального сигнала Бай или Селл от Вашего индикатора Half trend New, который сам по себе очень хорош J, вставка в код индикатора функции GlobalVariableSet  не годиться. Необходимо опрашивать буфера индикатора специально создаваемым для этой цели хэндлом. Вот я и спрашиваю куда необходимо прописывать такой хэндл , в сторонний советник, который может открывать/закрывать сделки по сигналам стороннего индикатора, выдающего глобальный сигнал (что затруднительно, нет доступа в моем конкретном случае), в сам Ваш индикатор или же это автономный код?Спасибо.

вот как я получил сигналы от индикатора 

1.

//+------------------------------------------------------------------+
//| Initialization of the indicators                                 |
//+------------------------------------------------------------------+
bool CSampleExpert::InitIndicators(void)
  {
//--- create MACD indicator
   if(m_handle_macd==INVALID_HANDLE)
      if((m_handle_macd=iCustom(NULL,0,"Half Trend New"))==INVALID_HANDLE)
        {
         printf("Error creating MACD indicator");
         return(false);
        }
//--- succeed
   return(true);
  }
//+------------------------------------------------------------------+

2.

//--- refresh indicators
   if(BarsCalculated(m_handle_macd)<2)
      return(false);
   if(CopyBuffer(m_handle_macd,0,0,2,m_buff_MACD_main)  !=2)
      return(false);
//   m_indicators.Refresh();
//--- to simplify the coding and speed up access
//--- data are put into internal variables
   m_macd_current   =m_buff_MACD_main[0];
   m_macd_previous  =m_buff_MACD_main[1];

3.

//+------------------------------------------------------------------+
//| Check for short position opening                                 |
//+------------------------------------------------------------------+
bool CSampleExpert::ShortOpened(void)
  {
   bool res=false;
//--- check for short position (SELL) possibility
   if(m_macd_current<m_macd_previous)
     {

Снимок экрана 2021-10-17 193822

Файлы:
 
Vladimir Karputov #:

Вообще не могу Вас понять: что за ГЛОБАЛЬНЫЙ сигнал? Что за СТОРОННИЙ индикатор? Что за СТОРОННИЙ советник?

Попробуйте сформулировать свой вопрос иначе, выкинув из предложения выделенные слова.

Спасибо, Вы уже ответили в предыдущем посте. Ваш индикатор будет "сторонним" по отношению к моему эксперту - ***. Эксперт, который я имею ввиду, может открывать позиции в т.ч. и по глобальной переменной (функция GlobalVariableSet(Symbol()+"_SymbolBuy",1), аналогично для сигнала Селл, которая прописывается в индикаторе с открытым кодом. На вашем индикаторе не работает, я пробовал. Прописать хэндл в эксперте нет возможности - нет естественно доступа к его коду. Жаль, был бы интересный тандем. 

 
SanAlex #:

вот как я получил сигналы от индикатора 

на 0 баре может обмануть - лучше на 1 баре, срабатывал сигнал (желтая единичка это 1 бар если 0 то может моргнуть открыть позицию противоположную - но продолжит по тому цвету )

   if(CopyBuffer(m_handle_macd,0,1,2,m_buff_MACD_main)  !=2)
 
Kyrie_Prosopon #:

функция GlobalVariableSet(Symbol()+"_SymbolBuy",1)

это вы хотите что бы ваша функция в истории прошла по сигналам этого Индикатора и записала её в отдельный файл - а потом эксперт ваш считывал ???