Как вытащить данные из индюка без индикаторных буферов?

 

 Есть индюк, у которого нет индикаторных буферов. Нужно получить значение массива, в котором хранятся рассчитываемые значения. Как это удобнее реализовать?

 Я, конечно, понимаю, что можно перелопатить индюк, и, добавить ему буферы. И, вообще, привести его к нормальному виду, что б он соответствовал индикатору в полном смысле слова. Т.е. добавить соответствующие свойства, необходимое количество буферов, привязать к ним массивы и тд. Но мне это не особо интересно. Т.к. обычно всё, чем пользуюсь я пишу сам.

 Но иногда бывают случаи, когда нужно проверить некоторые вещи, и это нужно сделать с наименьшими усилиями. ЧТоб не лопатить любой попавшийся индюк, чтоб проверить  некоторые мысли.

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

 
hoz:

 Есть индюк, у которого нет индикаторных буферов. Нужно получить значение массива, в котором хранятся рассчитываемые значения. Как это удобнее реализовать?

 Я, конечно, понимаю, что можно перелопатить индюк, и, добавить ему буферы. И, вообще, привести его к нормальному виду, что б он соответствовал индикатору в полном смысле слова. Т.е. добавить соответствующие свойства, необходимое количество буферов, привязать к ним массивы и тд. Но мне это не особо интересно. Т.к. обычно всё, чем пользуюсь я пишу сам.

 Но иногда бывают случаи, когда нужно проверить некоторые вещи, и это нужно сделать с наименьшими усилиями. ЧТоб не лопатить любой попавшийся индюк, чтоб проверить  некоторые мысли.

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

Тогда никак...
 
hoz:

 Есть индюк, у которого нет индикаторных буферов. Нужно получить значение массива, в котором хранятся рассчитываемые значения. Как это удобнее реализовать?

 Я, конечно, понимаю, что можно перелопатить индюк, и, добавить ему буферы. И, вообще, привести его к нормальному виду, что б он соответствовал индикатору в полном смысле слова. Т.е. добавить соответствующие свойства, необходимое количество буферов, привязать к ним массивы и тд. Но мне это не особо интересно. Т.к. обычно всё, чем пользуюсь я пишу сам.

 Но иногда бывают случаи, когда нужно проверить некоторые вещи, и это нужно сделать с наименьшими усилиями. ЧТоб не лопатить любой попавшийся индюк, чтоб проверить  некоторые мысли.

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

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

 Есть индюк, у которого нет индикаторных буферов. Нужно получить значение массива, в котором хранятся рассчитываемые значения. Как это удобнее реализовать?

 Я, конечно, понимаю, что можно перелопатить индюк, и, добавить ему буферы. И, вообще, привести его к нормальному виду, что б он соответствовал индикатору в полном смысле слова. Т.е. добавить соответствующие свойства, необходимое количество буферов, привязать к ним массивы и тд. Но мне это не особо интересно. Т.к. обычно всё, чем пользуюсь я пишу сам.

 Но иногда бывают случаи, когда нужно проверить некоторые вещи, и это нужно сделать с наименьшими усилиями. ЧТоб не лопатить любой попавшийся индюк, чтоб проверить  некоторые мысли.

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

в глобальные переменные (и на экран тоже) пиши всё что хошь и пользуй експертом
 
hoz:

 Есть индюк, у которого нет индикаторных буферов. Нужно получить значение массива, в котором хранятся рассчитываемые значения. Как это удобнее реализовать?

 Я, конечно, понимаю, что можно перелопатить индюк, и, добавить ему буферы. И, вообще, привести его к нормальному виду, что б он соответствовал индикатору в полном смысле слова. Т.е. добавить соответствующие свойства, необходимое количество буферов, привязать к ним массивы и тд. Но мне это не особо интересно. Т.к. обычно всё, чем пользуюсь я пишу сам.

 Но иногда бывают случаи, когда нужно проверить некоторые вещи, и это нужно сделать с наименьшими усилиями. ЧТоб не лопатить любой попавшийся индюк, чтоб проверить  некоторые мысли.

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

В стародавние времена писана была статья о том, как  сделать доступ к массивам индикаторов (плевать, буферных или нет) из внешних программ. Идея там очень простая, см пункт 3.
 
Здравствуйте! Такой вопрос. Можно ли перетащить из пользовательского индикатора переменные в торговый эксперт не используя функцию iCoustom? Дело в  том, что в индикаторе происходит расчет уровней поддержки и сопротивления и строятся сами линии по значениям, которые и рассчитывает индикатор. Сами значения цены для определенных уровней присваиваются переменным. Так вот, как уже рассчитанные значения этих самых переменных перекинуть из индикатора в советник. Если с помощью глобальных переменных, то объясните пожалуйста, как это сделать более грамотно. Заранее спасибо.
 
Kapizdo4ka:
Здравствуйте! Такой вопрос. Можно ли перетащить из пользовательского индикатора переменные в торговый эксперт не используя функцию iCoustom? Дело в  том, что в индикаторе происходит расчет уровней поддержки и сопротивления и строятся сами линии по значениям, которые и рассчитывает индикатор. Сами значения цены для определенных уровней присваиваются переменным. Так вот, как уже рассчитанные значения этих самых переменных перекинуть из индикатора в советник. Если с помощью глобальных переменных, то объясните пожалуйста, как это сделать более грамотно. Заранее спасибо.
У любой линии есть имя. В советнике ищете нужную линию по её имени и считываете с неё данные - все функции для этого в mql есть. Только работать в тестере не будет. Работать будет только в визуальном режиме тестера, ну и на счетах естественно тоже.
 
artmedia70:
У любой линии есть имя. В советнике ищете нужную линию по её имени и считываете с неё данные - все функции для этого в mql есть. Только работать в тестере не будет. Работать будет только в визуальном режиме тестера, ну и на счетах естественно тоже.

Я делаю так в советнике без линий, но с расчётами:

  double close = iClose(Symbol(),PERIOD_D1,1); 
  double high = iHigh(Symbol(),PERIOD_D1,1); 
  double low = iLow(Symbol(),PERIOD_D1,1); 
  double pp = NormalizeDouble((close+high+low)/3.0,Digits); 
  double r1 = NormalizeDouble(2*pp-low,Digits); 
  double s1 = NormalizeDouble(2*pp-high,Digits); 

Может, от этого тормозит, надо проверить! ;))

 
artmedia70:
У любой линии есть имя. В советнике ищете нужную линию по её имени и считываете с неё данные - все функции для этого в mql есть. Только работать в тестере не будет. Работать будет только в визуальном режиме тестера, ну и на счетах естественно тоже.
Спасибо, получилось. Вообще есть идея объединить индикатор с советником, как думаете стоит или нет? Просто слышал, что из-за большого количества вычислений советник будет опаздывать.
 
Kapizdo4ka:
Спасибо, получилось. Вообще есть идея объединить индикатор с советником, как думаете стоит или нет? Просто слышал, что из-за большого количества вычислений советник будет опаздывать.
Это постараться нужно его загрузить вычислениями. Смотрите сами что вам удобнее.
Причина обращения: