Маркет - рынок готовых экспертов для MetaTrader 5 - страница 18

 

Вот вот, я об этом же, процедура должна быть доступна трейдерам, не знакомым с назначением кнопки F7

PS Чёй то вы друзья тут не добдели :)

Можно было бы написать универсальную пустышку с передачей имени индикатора в стринге параметра, но идею гробит процедура присоединения индикатора в предпроцессоре #property tester_indicator


 
stringo:

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

Индикатор автоматически создастся на графике визуального тестирования (при условии, что Вы не используете специализированный шаблон <имя_эксперта>.tpl)

Это очень сложно для НЕпрограммиста.

Выход очень простой - раз нельзя накидывать на чарт тестера в визуальном режиме как в 4-ке (тестер ведь отдельная независимая часть платформы), то можно реализовать контекстное меню на чарте (или соответствующее меню "Вставить", из которого можно вызвать и присоединить к чарту любой эксперт (скомпилированный) из соответствующей папки.

 
joo:

Это очень сложно для программиста.

Выход очень простой - раз нельзя накидывать на чарт тестера в визуальном режиме как в 4-ке (тестер ведь отдельная независимая часть платформы), то можно реализовать контекстное меню на чарте (или соответствующее меню "Вставить", из которого можно вызвать и присоединить к чарту любой эксперт (скомпилированный) из соответствующей папки.

Тогда уж так: накидываешь демо-индикатор на график, а тебе автоматом запускается "визуальное тестирование" этого индикатора.

Думать надо.

Документация по MQL5: Операции с графиками / ChartIndicatorAdd
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
  • www.mql5.com
Операции с графиками / ChartIndicatorAdd - Документация по MQL5
 
stringo:

Тогда уж так: накидываешь демо-индикатор на график, а тебе автоматом запускается "визуальное тестирование" этого индикатора.

Во! Так ещё лучше (проще).
 
stringo:

Тогда уж так: накидываешь демо-индикатор на график, а тебе автоматом запускается "визуальное тестирование" этого индикатора.

Думать надо.

Напишите спец пустышку-советник, который при запуске имеет стринг параметры имя индикатора и перечисленные параметры индикатора (это всего два стринга)

и поставляйте его в стандартных примерах (только в скомпилированном виде, тк вам придётся обойти #property tester_indicator). Но я думаю что MQ программистам для одной отдельной проги это не составит труда.

ЗЫ А ещё лучше чтоб при компиляции демо индикатор сразу заворачивался в обёртку советника.

 

Вроде обещали подумать над удалением или модификацией  #property tester_indicator ?

Обязательность этого свойства просто хоронит все возможности функции iCustom().


 
MoneyJinn:

Вроде обещали подумать над удалением или модификацией  #property tester_indicator ?

Обязательность этого свойства просто хоронит все возможности функции iCustom().

Если уберут обязательность #property tester_indicator,то вот функция позволяющая запускать индикатор с любым количеством параметров,

переданных через ";" в стргинге.

Функция определяет тип параметра по его виду, целочисленный long, число с точкой double, буквенный параметр стргинг.

int InitCustom(string symbol,ENUM_TIMEFRAMES period,string name,string params)

вот так в таком случае будет выглядеть универсальная тестилка для маркетных индикаторов

#include <InitCustom.mqh>
//--- input parameters
input string   name="";
input string   parametrs="";
int hndl; double res[];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   hndl=InitCustom(_Symbol,_Period,name,parametrs);
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason){}
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   CopyBuffer(hndl,0,0,1,res);
  }
//+------------------------------------------------------------------+
Файлы:
InitCustom.mqh  26 kb
 

Еще один вариант посмотреть работу индикатора из маркета:

1. Скачиваем демо-версию индикатора, к примеру этот

https://www.mql5.com/ru/market/product/116

2. Редактируем дефолтный шаблон для тестера, лежащий тут

путь установки\MetaTrader 5\Profiles\Templates\tester.tpl

добавляем вот такой стандартный конфиг кастомного индикатора, прописав имя до ex5 внутрь секции <window>

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

<indicator>
name=Custom Indicator
path=Indicators\Market\Elder_-_AutoEnvelope__3_demo.ex5
apply=0
show_data=1
scale_inherit=0
scale_line=0
scale_line_percent=50
scale_line_value=0.000000
scale_fix_min=0
scale_fix_min_val=0.000000
scale_fix_max=0
scale_fix_max_val=0.000000
expertmode=0
fixed_height=-1
<graph>
name=EA1
draw=1
style=0
width=3
color=11186720
</graph>
<graph>
name=EA2
draw=1
style=2
width=1
color=3329434
</graph>
<graph>
name=EA3
draw=1
style=2
width=1
color=11788021
</graph>
<inputs>
name=AE
Fixed_Channel_Size=1
Factor=27
EMA_Length=22
</inputs>
</indicator>


Сохраняем.

3. Запускаем любой эксперт на визуальное тестирование, к примеру входящий в поставку терминала.

4. Убеждаемся, что индикатор не отображается в визуальном режиме. Тут видимо баг. т.к. я убедился, что тестер в визуальном режиме не отображает первый из кастомных индикаторов закинутых в шаблон.

5. Добавляем кастомный индикатор который попадет под немилость, перед предыдущей секцией

<indicator>
name=Custom Indicator
path=Indicators\Examples\AMA.ex5
apply=2
show_data=1
scale_inherit=0
scale_line=0
scale_line_percent=50
scale_line_value=0.000000
scale_fix_min=0
scale_fix_min_val=0.000000
scale_fix_max=0
scale_fix_max_val=0.000000
expertmode=4
fixed_height=-1

<graph>
name=AMA(10,2,30)
draw=1
style=0
width=1
color=255
</graph>
<inputs>
InpPeriodAMA=10
InpFastPeriodEMA=2
InpSlowPeriodEMA=30
InpShiftAMA=0
</inputs>
</indicator>

Сохраняем, убеждаемся что в визуальном режиме работает показ индикатора из маркета.

Возможно, именно на основе шаблонов можно реализовать более удобную схему просмотра демо-версий индикаторов.

Прикрепляю полученный файл шаблона.

Технический индикатор Elder AutoEnvelope
Технический индикатор Elder AutoEnvelope
  • 39.00 USD
  • Financial Trading Seminars Inc.
  • www.mql5.com
Конверты (Envelopes) или линии канала схожи со скользящими средними (или медленной MA при использовании двух MA). Внутри линий канала дневного графика находится около 95% цен за последние два или трех месяца, за линии канала выходят...
Файлы:
tester.tpl  5 kb
 
Vigor:

Еще один вариант посмотреть работу индикатора из маркета:

1. Скачиваем демо-версию индикатора, к примеру этот

https://www.mql5.com/ru/market/product/116

2. Редактируем дефолтный шаблон для тестера лежащий тут

путь установки\MetaTrader 5\Profiles\Templates\tester.tpl

добавляем вот такой стандартный  xml кастомного индикатора прописав имя до ex5 внутрь секции <window>

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


Сохраняем.

3. Запускаем любой эксперт на визуальное тестирование, к примеру входящий в поставку терминала.

4. Убеждаемся, что индикатор не отображается в визуальном режиме. Тут видимо баг. т.к. я убедился, что тестер в визуальном режиме не отображает первый из кастомных индикаторов закинутых в шаблон.

5. Добавляем кастомный индикатор который попадет под немилость, перед предыдущей секцией

Сохраняем, убеждаемся что в визуальном режиме работает показ индикатора из маркета.

Возможно, именно на основе шаблонов можно реализовать более удобную схему просмотра демо-версий индикаторов.

Прикрепляю полученный файл шаблона.


А чё, классная идея, меняешь одну строчку и всё, жаль только что не для всех способ подходит, есть категория народу что лишнюю кнопку нажать боится, а тут какие то шаблоны править.
 
Urain:
А чё, классная идея, меняешь одну строчку и всё, жаль только что не для всех способ подходит, есть категория народу что лишнюю кнопку нажать боится, а тут какие то шаблоны править.
Да, сложновато. И не одну строчку. В секциях graph настройки всех линий индикатора (в приведенном примере 3 линии), и входные параметры в секуции inputs.

Конечно, если при попытке накинуть на чарт в терминале демо-индикатор по прежнему бы не запускался, но сохранял свое состояние в настройках чарта, то можно было бы  засейвить состояние чарта как шаблон (tester.tpl или имя_эксперта.tpl) и прогнать в тестере.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Линии индикаторов - Документация по MQL5