Обсуждение статьи "MQL5 Wizard для "чайников"

 

Опубликована статья MQL5 Wizard для "чайников":

В начале 2011 года мы выпустили первую версию Визарда MQL5. Этот шаг обеспечил трейдеров простым и понятным инструментом для автоматического создания торговых роботов. Любой пользователь MetaTrader 5 получил возможность написать собственный эксперт, не умея программировать на MQL5.

Автор: MetaQuotes Software Corp.

 

Вопросы к разработчикам: 

1. Почему не получается использовать другие сигналы?

Например, "Signals based on crossover of two EMA

https://www.mql5.com/ru/forum/2935/page1

2. Будет ли пополняться библиотека сигналов?

3. Будет ли возможность с помощью "Мастера" создавать свои классы сигналов?

4. Будет ли возможность с помощью "Мастера" создавать Индикаторы по индикаторным массивам?

5. Будет ли возможность сохранять настройки мастера, для  последующей корректировки созданной стратегии/ индикатора непосредственно в мастере.

На мой взгляд п. 3-5 существенно облегчили бы жизнь трейдерам "не программистам".

И полной "фантастикой" была бы возможность создавать свои кассы сигналов по любым индикаторам с помощью мастера по типу написания уравнений в Excel :)

Как это реализовано в Metaquots и у CQG.

Советники: Мастер MQL5 - Торговые сигналы по пересечению двух экспоненциальных скользящих средних
Советники: Мастер MQL5 - Торговые сигналы по пересечению двух экспоненциальных скользящих средних
  • www.mql5.com
В статье Создание эксперта без программирования с помощью Мастера MQL5 описаны шаги по автоматическому созданию кода советника при помощи Мастера MQL5.
 
пишу свой модуль сигналов, в нем функция проверки следующая:
//+------------------------------------------------------------------+
//| Проверка выполнения условия для продажи                          |
//| INPUT:  нет                                                      |
//| OUTPUT: Вес голоса от 0 до 100                                   |
//| REMARK: нет.                                                     |
//+------------------------------------------------------------------+
int CInnerBarSignal::ShortCondition(){
//--- проверка условия производится по закрытому предыдущему бару

  
   Print("call short condition");
   if(  Low(1) < Low(2) && High(2)<High(3) && Low(2)>Low(3) && Close(3)<Open(3) ){
     return(100);
   }
//--- условие не выполнено
   return(0);
  }

при запуске сгенерированного советника в режиме "все тики" видно, что функции производится дважды на открытии бара

2011.06.07 11:42:15 Core 1 connection closed

2011.06.07 11:42:15 Core 1 log file "D:\metatrader5\Tester\Agent-127.0.0.1-3000\logs\20110607.log" written

2011.06.07 11:42:15 Core 1 EURUSD,H1: 72504 ticks (24 bars) generated within 62 ms (total bars in history 8814, total time 312 ms)

2011.06.07 11:42:15 Core 1 OnTester result 0

2011.06.07 11:42:15 Core 1 2011.06.02 23:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 23:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 22:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 22:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 21:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 21:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 20:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 20:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 19:00:00   call short condition

 

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

Мастер MQL5: Создание эксперта без программирования
Мастер MQL5: Создание эксперта без программирования
  • 2010.12.15
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы хотите быстро проверить торговую идею, не тратя времени на программирование? Выберите в "Мастере MQL5" нужный тип торговых сигналов, подключите модули сопровождения позиций и управления капиталом - на этом вся работа закончена. Создайте свои реализации модулей или закажите их через сервис "Работа" - и комбинируйте новые модули с уже существующими.
 
gdtt:
пишу свой модуль сигналов, в нем функция проверки следующая:

при запуске сгенерированного советника в режиме "все тики" видно, что функции производится дважды на открытии бара

2011.06.07 11:42:15 Core 1 connection closed

2011.06.07 11:42:15 Core 1 log file "D:\metatrader5\Tester\Agent-127.0.0.1-3000\logs\20110607.log" written

2011.06.07 11:42:15 Core 1 EURUSD,H1: 72504 ticks (24 bars) generated within 62 ms (total bars in history 8814, total time 312 ms)

2011.06.07 11:42:15 Core 1 OnTester result 0

2011.06.07 11:42:15 Core 1 2011.06.02 23:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 23:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 22:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 22:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 21:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 21:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 20:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 20:00:00   call short condition

2011.06.07 11:42:15 Core 1 2011.06.02 19:00:00   call short condition

 

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

 

По-умолчанию эксперт генерируется Мастером для работы по ценам открытия.

В исходном коде эксперта замените:

//--- Initializing expert
   if(!Ext_Expert.Init(...,...,false,...))

на:

//--- Initializing expert
   if(!Ext_Expert.Init(...,...,true,...))
 

В начале 2011 года мы выпустили первую версию Визарда MQL5. Этот шаг обеспечил трейдеров простым и понятным инструментом для автоматического создания торговых роботов. Любой пользователь MetaTrader 5 получил возможность написать собственный эксперт, не умея программировать на MQL5.


Это хорошо, но этого очень мало для того что бы новички могли писать свои роботы.То есть писать конечно можно, но только используя Вашу библиотеку. А если новичку надо написать эксперт собственным сигналам ? Тут и приехали...

Если Вы хотите что бы любой новичок мог написать свой эксперт, то надо добавлять визуализатор. Это реализовано например Trade Navigator. Там можно добавлять сигналы в библиотеку, выделив какой нибудь участок графика. А визуализатор все сам перекладывает на язык программирования. При чем он учитывает все, и свечи и индикаторы и графические линии на графике. То есть можно создать любую библиотеку. А потом из этих сигналов, можно построить любой эксперт. Вот к чему надо стремиться.

С уважением!

 
NGN:


Это хорошо, но этого очень мало для того что бы новички могли писать свои роботы.То есть писать конечно можно, но только используя Вашу библиотеку. А если новичку надо написать эксперт собственным сигналам ? Тут и приехали...

Если Вы хотите что бы любой новичок мог написать свой эксперт, то надо добавлять визуализатор. Это реализовано например Trade Navigator. Там можно добавлять сигналы в библиотеку, выделив какой нибудь участок графика. А визуализатор все сам перекладывает на язык программирования. При чем он учитывает все, и свечи и индикаторы и графические линии на графике. То есть можно создать любую библиотеку. А потом из этих сигналов, можно построить любой эксперт. Вот к чему надо стремиться.

С уважением!

С этими статьями еще не знакомы?

1. Мастер MQL5: Как написать свой модуль сопровождения открытых позиций

2. Мастер MQL5: Как написать свой модуль управления капиталом и рисками

3. Мастер MQL5: Как написать свой модуль торговых сигналов

4. Мастер MQL5: Создание эксперта без программирования

5. Мастер MQL5: Новая версия   

 

Подскажите как в мастере выставлять отложенные ордера.

Еще вопрос: корректен ли этот код

//+------------------------------------------------------------------+
//| Global expert object                                             |
//+------------------------------------------------------------------+
CExpert ExtExpert;
CExpert ExtExpert1;

//+------------------------------------------------------------------+
//| Initialization function of the expert                            |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- Initializing expert
   if(!ExtExpert.Init("GBPCHF",Period(),Expert_EveryTick,Expert_MagicNumber) || 
      !ExtExpert1.Init("GBPJPY",Period(),Expert_EveryTick,Expert_MagicNumber))
     {
      //--- failed
      printf(__FUNCTION__+": error initializing expert");
      ExtExpert.Deinit();
      ExtExpert1.Deinit(); 
      return(-1);
     }

И какой символ/период в таком случае выставлять в тестере

2011.06.16 10:15:25     Core 1  2011.06.01 00:00:00   CExpert::Init: wrong symbol or timeframe (must be GBPCHF:PERIOD_H1)
 
beginner:

Подскажите как в мастере выставлять отложенные ордера.

В сгенерированном эксперте есть параметр Inp_Signal_PricrLivel. задаётся в 2/4 знаковых пунктах.

Значение 0 - вход по рынку.

Значение больше 0 - вход лучше рынка (по лимит-ордеру).

Значение меньше 0 - вход хуже рынка (по стоп-ордеру).

По второму вопросу сразу ответить не готов.

 

Вот параметры

//+------------------------------------------------------------------+
//| Inputs                                                           |
//+------------------------------------------------------------------+
//--- inputs for expert
input string Expert_Title         ="2";   // Document name
int          Expert_MagicNumber   =13179; // 
bool         Expert_EveryTick     =false; // 
//--- inputs for main signal
input int    Signal_ThresholdOpen =10;    // Signal threshold value to open [0...100]
input int    Signal_ThresholdClose=10;    // Signal threshold value to close [0...100]
input double Signal_PriceLevel    =0.0;   // Price level to execute a deal
input double Signal_StopLevel     =50.0;  // Stop Loss level (in points)
input double Signal_TakeLevel     =50.0;  // Take Profit level (in points)
input int    Signal_Expiration    =4;     // Expiration of pending orders (in bars)
input double Signal__Weight       =1.0;   // InnerBar Weight [0...1.0]
//--- inputs for money
input double Money_FixLot_Percent =10.0;  // Percent
input double Money_FixLot_Lots    =0.1;   // Fixed volume
Как я должен оформить чтобы иметь возможность входить в рынок по любому из вариантов.
 
beginner:

Вот параметры

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

Для входа лучше рынка (на отбой):

input double Signal_PriceLevel    =50.0;   // Price level to execute a deal

Для входа хуже рынка (на пробой):

input double Signal_PriceLevel    =-50.0;   // Price level to execute a deal

Но можно подобрать в тестере запустив оптимизацию по параметру от -50.0 до 50.0 с шагом 1.0(5.0).

 
uncleVic:
По второму вопросу сразу ответить не готов.

Или подскажите как торговать по 2 инструментам.
Причина обращения: