Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
Multi Arbitration 1.1xx - Asesor Experto para MetaTrader 5
- Visualizaciones:
- 742
- Ranking:
- Publicado:
- 2017.11.21 07:49
- Actualizado:
- 2018.06.26 14:51
- ¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
Desarrollo del código Multi Arbitration 1.000.
Diferencia con respecto a 1.000:
-
El asesor se inicia SOLO en el periodo PERIOD_M1 (hay aclaraciones más abajo, vea el parámetro Time frame).
-
Ahora el asesor comercia directamente con dos símbolos. El segundo símbolo se toma de la matriz estática ExtArrSymbols:
string ExtArrSymbols[20]= { "EURUSD","GBPUSD","USDCHF","USDJPY","USDCAD", "AUDUSD","AUDNZD","AUDCAD","AUDCHF","AUDJPY", "CHFJPY","EURGBP","EURAUD","EURCHF","EURJPY", "EURNZD","EURCAD","GBPCHF","GBPJPY","CADCHF" }; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit()
-
Se ha modificado el principio de apertura de las posiciones:
- Ahora una nueva posición "BUY" se podrá abrir solo cuando el precio actual este por debajo de la posición "BUY" más baja;
- La nueva posición "SELL" se podrá abrir solo cuando el precio actual este por encima de la posición "SELL" más alta:
-
Se ha introducido el parámetro Time frame: ahora es posible realizar la optimización en cualquier periodo del gráfico. El propio asesor funciona solo en el momento de aparición de una nueva barra en el símbolo principal (en el símbolo en cuyo gráfico se haya iniciado el asesor):
//+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- we work only at the time of the birth of new bar static datetime prevtime=0; datetime time_0=iTime(0,m_symbol_one.Name(),InpTimeFrame); if(time_0==prevtime) return; prevtime=time_0;
Aquí la variable InpTimeFrame es precisamente nuestro parámetro de entrada Time frame. ¡De esta forma, dependiendo del valor del parámetro de entrada Time frame podremos obligar a trabajar al asesor en cualquier marco temporal!
Resultados de la simulación en EURUSD:
Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/18751
Indicador de Paramon que colorea el fondo del canal.
Exp_Omni_TrendSistema comercial construido con las señales del indicador Omni_Trend.
Canal construido con los picos y los valles del indicador de Zigzag ZigZagOnParabolic
AFStarIndicador de señal de semáforo.