Questions for the developers:
1. Why can't I use other signals?
For example,"Signals based on crossover of two EMAs"
https://www.mql5.com/ru/forum/2935/page1
2. Will the library of signals be replenished?
3. Will it be possible to create your own classes of signals using the "Wizard"?
4. Will it be possible to create Indicators based on indicator arrays using the "Wizard"?
5. Will it be possible to save the wizard settings for further adjustment of the created strategy/indicator directly in the wizard.
In my opinion, items. 3-5 would make the life of traders "not programmers" much easier.
And a complete "fantasy" would be the ability to create your own cassettes of signals for any indicators with the help of the wizard like writing equations in Excel :)
As it is implemented in Metaquots and CQG.

- www.mql5.com
//+------------------------------------------------------------------+ //| Checking whether the condition for a sale has been met | //| INPUT:none| //| OUTPUT: Voice weight from 0 to 100| //| REMARK: No.| //+------------------------------------------------------------------+ int CInnerBarSignal::ShortCondition(){ //--- the condition is checked by the closed previous bar Print("call short condition"); if( Low(1) < Low(2) && High(2)<High(3) && Low(2)>Low(3) && Close(3)<Open(3) ){ return(100); } //--- condition not met return(0); }
when running the generated EA in the "all ticks" mode, you can see that the function is performed twice on the bar opening
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.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:00 call short condition
2011.06.07 11:42:15 Core 1 2011.06.02 21:00: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
Is this the way it is designed and is postic processing not available in the signal module?

- 2010.12.15
- MetaQuotes Software Corp.
- www.mql5.com
I am writing my own signals module, in it the test function is as follows:
when running the generated EA in the "all ticks" mode, you can see that the function is performed twice on the bar opening
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.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:00 call short condition
2011.06.07 11:42:15 Core 1 2011.06.02 21:00: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
Is this the way it is designed and is postic processing not available in the signal module?
By default, the Expert Advisor is generated by the Wizard to work at opening prices.
In the source code of the Expert Advisor, replace:
//--- Initializing expert if(!Ext_Expert.Init(...,...,false,...))
to:
//--- Initializing expert if(!Ext_Expert.Init(...,...,true,...))
At the beginning of 2011, we released the first version of Wizard MQL5. This step provided traders with a simple and clear tool for automatic creation of trading robots. Any MetaTrader 5 user was able to write their own Expert Advisor without knowing how to program in MQL5.
This is good, but it is not enough for beginners to write their own robots, i.e. you can write them, but only using your library. And if a beginner needs to write an Expert Advisor with his own signals? Here we are...
If you want any beginner to be able to write his own Expert Advisor, you need to add a visualiser. This is implemented, for example, in Trade Navigator. There you can add signals to the library by selecting some chart section. And the visualiser transfers everything itself into the programming language. And it takes into account everything, candlesticks, indicators and graphical lines on the chart. That is, you can create any library. And then you can build any Expert Advisor from these signals. This is what we should strive for.
Regards!
This is good, but it is not enough for beginners to write their own robots. That is, of course, you can write, but only using your library. And if a beginner needs to write an expert of his own signals? Here we are...
If you want any beginner to be able to write his own Expert Advisor, you need to add a visualiser. This is implemented, for example, in Trade Navigator. There you can add signals to the library by selecting some chart section. And the visualiser transfers everything itself into the programming language. And it takes into account everything, candlesticks, indicators and graphical lines on the chart. That is, you can create any library. And then you can build any Expert Advisor from these signals. This is what we should strive for.
Regards!
Are you not familiar with these articles yet?
1. MQL5 Wizard: How to Write Your Own Module for Open Positions Maintenance
2. MQL5 Wizard: How to write your own capital and risk management module
3. MQL5 Wizard: How to Write Your Trading Signals Module
4. MQL5 Wizard: Creating an Expert Advisor without Programming
Can you tell me how to place pending orders in the wizard?
Another question: is this code correct?
//+------------------------------------------------------------------+ //|| Global expert object| //+------------------------------------------------------------------+ CExpert ExtExpert; CExpert ExtExpert1; //+------------------------------------------------------------------+ //| Initialisation 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); }
And what symbol/period to set in the tester in this case
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)
In the generated Expert Advisor there is a parameter Inp_Signal_PricrLivel. it is set in 2/4 significant points.
Value 0 - market entry.
Value greater than 0 - entry is better than the market (according to the limit order).
Value less than 0 - entry is worse than the market (by stop order).
I am not ready to answer the second question at once.Here are the parameters
//+------------------------------------------------------------------+ //| 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 volumeHow should I execute to be able to enter the market on any of the options.
Here are the parameters
How should I format to be able to enter the market on either option.To enter better than the market (on the rebound):
input double Signal_PriceLevel =50.0; // Price level to execute a deal
To enter worse than the market (on breakout):
input double Signal_PriceLevel =-50.0; // Price level to execute a deal
But you can pick it up in the tester by running optimisation on the parameter from -50.0 to 50.0 in increments of 1.0(5.0).
I am not ready to answer the second question at once.

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
New article MQL5 Wizard for Dummies is published:
Author: MetaQuotes