La variable _Symbol almacena el nombre del símbolo del gráfico actual.
Por lo tanto, la comprobación del símbolo por parte del gráfico actual debería tener éxito.
¡Gracias, Konstantin! ¡Todo ha funcionado! He cometido un error al corregir el código. Ahora lo he arreglado y ha funcionado. ¡Que Dios te conceda salud y prosperidad!
inputstring Symbol_Main="GBPUSDrfd"; //Валютная пара, на которую ставим советник//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
/* Определим график валютной пары, на который будем устанавливать советник*/if(Symbol_Main==_Symbol) //если график валютной пары совпадает со входным параметром
{
/* выводим окно сообщений на торговом терминале и продолжаем работу советника */MessageBox("Работа советника на данной валютной паре разрешена!");
return(INIT_SUCCEEDED); //возвращаем для функции OnInit значение означающее "удачная инициализация"
}
else//в противном случае, если график валютной пары не совпадает со входным параметром
{
/* выводим окно сообщений на торговом терминале и закрываем советник */MessageBox("Работа советника на данной валютной паре запрещена! Выходим!");
return(INIT_FAILED); //возвращаем для функции OnInit значение означающее "неудачная инициализация"
}
}
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
Y disfruta de tu vida )))) Tenga en cuenta que solicito incluso no completamente escrito símbolo y el caso no es importante.
Muchas gracias, Konstantin, por el gran consejo. Sin duda lo utilizaré en mi EA. Creo que esta función también será útil para los principiantes en el aprendizaje del lenguaje de programación MQL5.
Y disfruta de tu vida )))) Tenga en cuenta que incluso estoy pidiendo un carácter que no está completamente escrito y no es sensible a las mayúsculas y minúsculas.
¿Por qué hay que burlarse de una mente inmadura? Su código no cumple el requisito en absoluto. Si sólo introduce "eu" o "eur" en los parámetros de entrada, esa parte de la condición
|| StringFind(s, symbol, 0) >= 0)
se cumplirá sin importar que el par de divisas contenga "EU" en su nombre y no importa que el EUR sea la moneda base o la cotizada. ¿Y por qué buscar el símbolo correcto en SymbolName MarketWatch?
¿Por qué burlarse tanto de una mente inmadura? Su código no cumple el requisito en absoluto. Si sólo se introduce "eu" o "eur" en los parámetros de entrada, esta parte de la condición
se cumplirá sin importar que el par de divisas contenga "EU" en su nombre y no importa que el EUR sea la moneda base o la cotizada. ¿Y por qué debo recorrer el SymbolName de MarketWatch en busca del símbolo correcto?
Hola Alexey! Para ser sincero, no se me da bien programar, así que me tomo muchas cosas a pecho. ¿Significa esto que el código proporcionado por Konstantin debe ser reelaborado?
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
¡Tenga cuidado!
Sinceramente, Vladimir.
Yo lo haría así
inputstring Symbol_Main="GBPUSD"; //Валютная пара, на которую ставим советник//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
/* Определим график валютной пары, на который будем устанавливать советник*/if(StringFind(_Symbol, Symbol_Main, 0) == 0) //если график валютной пары содержит входной параметр
{
/* выводим окно сообщений на торговом терминале и продолжаем работу советника */MessageBox("Работа советника на данной валютной паре разрешена!");
return(INIT_SUCCEEDED); //возвращаем для функции OnInit значение означающее "удачная инициализация"
}
else//в противном случае, если график валютной пары не совпадает со входным параметром
{
/* выводим окно сообщений на торговом терминале и закрываем советник */MessageBox("Работа советника на данной валютной паре запрещена! Выходим!");
return(INIT_FAILED); //возвращаем для функции OnInit значение означающее "неудачная инициализация"
}
}
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
MrBrooklin: . Por qué bailar cuando hay una petición directa del símbolo del gráfico actual.
Hola Konstantin, necesitaba comparar el símbolo que se especificó en los parámetros de entrada con el símbolo que el EA está tratando de establecer.
El código que has sugerido tampoco funciona.
Saludos, Vladimir.
Hola Konstantin, necesitaba comparar el símbolo que se especificó en los parámetros de entrada con el símbolo que el EA está tratando de establecer.
El código que has sugerido tampoco funciona.
Saludos, Vladimir.
En su configuración ha especificado
Símbolo
La variable _Symbol almacena el nombre del símbolo del gráfico actual.
Por lo tanto, la comprobación del símbolo en el gráfico actual debería funcionar bien.
En su configuración ha especificado
Símbolo
La variable _Symbol almacena el nombre del símbolo del gráfico actual.
Por lo tanto, la comprobación del símbolo por parte del gráfico actual debería tener éxito.
¡Gracias, Konstantin! ¡Todo ha funcionado! He cometido un error al corregir el código. Ahora lo he arreglado y ha funcionado. ¡Que Dios te conceda salud y prosperidad!
Les deseo a todos un feliz año nuevo.
Saludos, Vladimir.
El código debería ser así:
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
¡Tenga cuidado!
Saludos, Vladimir.
El código debería ser así:
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
¡Tenga cuidado!
Sinceramente, Vladimir.
Y disfruta de tu vida )))) Preste atención a que estoy pidiendo incluso símbolo no completamente escrito y el caso no es importante.
Y disfruta de tu vida )))) Tenga en cuenta que solicito incluso no completamente escrito símbolo y el caso no es importante.
Muchas gracias, Konstantin, por el gran consejo. Sin duda lo utilizaré en mi EA. Creo que esta función también será útil para los principiantes en el aprendizaje del lenguaje de programación MQL5.
¡Sigo tan cerca como arrastrándome a Pekín!
Saludos, Vladimir.
Y disfruta de tu vida )))) Tenga en cuenta que incluso estoy pidiendo un carácter que no está completamente escrito y no es sensible a las mayúsculas y minúsculas.
¿Por qué hay que burlarse de una mente inmadura? Su código no cumple el requisito en absoluto. Si sólo introduce "eu" o "eur" en los parámetros de entrada, esa parte de la condición
se cumplirá sin importar que el par de divisas contenga "EU" en su nombre y no importa que el EUR sea la moneda base o la cotizada. ¿Y por qué buscar el símbolo correcto en SymbolName MarketWatch?
¿Por qué burlarse tanto de una mente inmadura? Su código no cumple el requisito en absoluto. Si sólo se introduce "eu" o "eur" en los parámetros de entrada, esta parte de la condición
se cumplirá sin importar que el par de divisas contenga "EU" en su nombre y no importa que el EUR sea la moneda base o la cotizada. ¿Y por qué debo recorrer el SymbolName de MarketWatch en busca del símbolo correcto?
Hola Alexey! Para ser sincero, no se me da bien programar, así que me tomo muchas cosas a pecho. ¿Significa esto que el código proporcionado por Konstantin debe ser reelaborado?
Sinceramente, Vladimir.
El código debería ser así:
Nota: En el parámetro de entrada Symbol_Main, debe especificar el nombre del par de divisas según lo prescrito por su proveedor de divisas. En mi caso el símbolo GBPUSD tiene la terminación rfd.
¡Tenga cuidado!
Sinceramente, Vladimir.
Yo lo haría así