This type of comment discourages those who might just be willing to help... But, come on...
When you run your EA in the strategy tester on the symbols and timeframes checked in automatic validation, does the EA open positions frequently, rarely, or not at all?
EDIT.1: ... Using the default settings of the input parameters.Cuando ejecuta su EA en el probador de estrategias con los símbolos y plazos verificados en la validación automática, ¿el EA abre posiciones con frecuencia, rara vez o nunca?
EDITAR.1: ... Usando la configuración predeterminada de los parámetros de entrada.Thank you for your suggestion. Yes, I have tested and with the default settings it does open positions in the validator assets.
Antonio, can you be more specific with that article and the relationship to USD symbols? Thanks
From your response, I understood that you had identified the problem reported in the opening of the topic. Has the initial problem been resolved?
No Vinicius, the problem is still not solved. One doubt I have is if the validations, for example of correct volumes, should just warn them or correct them and leave them in the minimum volume allowed, for example.
It must be corrected, Juan. For example: if the EA uses a fixed volume parameter and by default this volume is set at 0.01, but during validation testing the tested symbols do not allow volume 0.01, then the EA does not open a position and will not be able to be published. So, to avoid this problem, you can use a function like the following, in addition to the volume checks recommended in the article:
//+--------------------------------------------------------------------------------------------------------------------+ //| This function normalizes the volume according to the minimum volume change step | //+--------------------------------------------------------------------------------------------------------------------+ double NormalizeVolume(double Lot) { ResetLastError(); //--- Minimal and maximal allowed volume for trade operations double LotMin = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MIN); double LotMax = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MAX); //--- Get minimal step of volume changing double LotStep = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_STEP); //--- Check if an execution error occurred if(GetLastError() != ERR_SUCCESS) { return(WRONG_VALUE); } //--- Normalizes the volume Lot = LotMin + MathFloor((Lot - LotMin) / LotStep) * LotStep; Lot = NormalizeDouble(MathMin(LotMax, MathMax(LotMin, Lot)), 2); //--- Normalized volume return(Lot); }
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Can someone give me a hand? Life is short...