Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1128
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Hola, tengo un comportamiento extraño de la función del sistema OrderCalcProfit, tengo la sensación de que el parámetro de volumen se ignora en el cálculo, es decir, el tamaño de las ganancias siempre se calcula para el volumen 1.0
Estoy tratando de comprobarlo en el probador para diferentes pares de divisas en diferentes cuentas demo.
1. El cálculo es correcto para 1.0, véase calc_profi101.png.
2. La segunda y cualquier llamada posterior de la función devuelve un resultado de beneficio basado en un volumen de 1,0, el valor del volumen se ignora, ver una captura de pantalla (calc_profit02.png) - pasó el volumen 0,5, pero el resultado sigue siendo el mismo que para 1,0
¿Puede decirme cuál puede ser el problema? Gracias
Hola, tengo un comportamiento extraño de la función del sistema OrderCalcProfit, tengo la sensación de que el parámetro del volumen se ignora en el cálculo, es decir, el beneficio se calcula siempre para el volumen 1.0
Estoy tratando de comprobarlo en el probador para diferentes pares de divisas en diferentes cuentas demo.
1. El cálculo es correcto para 1.0, véase calc_profi101.png.
2. La segunda y cualquier llamada posterior de la función devuelve un resultado de beneficio basado en un volumen de 1,0, el valor del volumen se ignora, ver una captura de pantalla (calc_profit02.png) - pasó el volumen 0,5, pero el resultado sigue siendo el mismo que para 1,0
¿Puede decirme cuál puede ser el problema? Gracias
Creo que la respuesta está en la ayuda:
"... beneficio
[out] Variable que contendrá el valor del beneficio calculado si la función tiene éxito. El valor de la estimación de beneficios depende de muchos factores y puede cambiar según el entorno del mercado. ... "
Añadido: aunque esto es sólo una suposición.
Hola, tengo un comportamiento extraño de la función del sistema OrderCalcProfit, tengo la sensación de que el parámetro del volumen se ignora en el cálculo, es decir, el valor de la ganancia siempre se calcula para el volumen 1.0
Estoy tratando de comprobarlo en el probador para diferentes pares de divisas en diferentes cuentas demo.
1. El cálculo es correcto para 1.0, véase calc_profi101.png.
2. La segunda y cualquier llamada posterior de la función devuelve un resultado de beneficio basado en un volumen de 1,0, el valor del volumen se ignora, ver una captura de pantalla (calc_profit02.png) - pasó el volumen 0,5, pero el resultado sigue siendo el mismo que para 1,0
¿Puede decirme cuál puede ser el problema? Gracias
Aquí está el examinador de prueba - todo funciona correctamente:
y el resultado:
¿Puedes darme una pista? ¿Es posible y cómo puedo averiguar mediante programación el idioma del terminal en uso?
Determino esto o el idioma ruso de la terminal o si otro - la salida es en Inglés.
Añadido: pensé que había guardado todos los idiomas de la enumeración TERMINAL_LANGUAGE - pero no lo encuentro. Debe haber perdido ...
Buenos días a todos, puede alguien ayudar a añadir aquí que en SL no sólo sería un rollover sino que además sumaría mucho o más. Y cuando el TP se dispara devolvería un lote.
1. Desaconsejo categóricamente el uso de funciones que seleccionen una posición por un carácter. Utilice una función que seleccione una posición por un índice en una lista.
2. Para saber cómo se cerró una posición, hay que ver la enumeraciónENUM_DEAL_REASON en OnTradeTransaction.
Ejemplo con ENUM_DEAL_REASON:
Stop Loss Take Profit
CodeBase | 2017.07.13 07:42 |Vladimir Karputov| EAs | MetaTrader 5
¿Es posible introducir los datos de acceso a la cuenta en un programa de terceros y gestionar la cuenta y, ya sabes, abrir/cerrar posiciones?
¿O es sólo a través de un robot que se instala en la cuenta?
Estoy transfiriendo indicadores de MQL4 a MQL5, pregunta sobre los buffers y "plots". El indicador tiene 2 tampones y 1 parcela:
#property indicator_buffers 2
#property indicator_plots 1
SetIndexBuffer(0,Array1,INDICATOR_CALCULATIONS);
SetIndexBuffer(1,Array2,INDICATOR_DATA);
Si la primera memoria intermedia se utiliza para los cálculos, etc., y la segunda debe ser trazada, entonces
En primer lugar, ¿es necesario establecer DRAW_NONE para el primer búfer si ya está establecido como INDICATOR_CALCULATIONS en la función SetIndexBuffer()?
PlotIndexSetInteger(?,PLOT_DRAW_TYPE,DRAW_NONE);
En segundo lugar, ¿qué índice debo establecer en PlotIndexSetInteger() en lugar del signo de interrogación (?) si sólo se debe dibujar el segundo búfer?
PlotIndexSetInteger(?,PLOT_DRAW_TYPE,DRAW_HISTOGRAM);
En tercer lugar, si utilizo dos estilos de tipo DRAW_HISTOGRAM, puedo establecer el color para cada uno de ellos y obtener un histograma como en el indicador de Volúmenes, donde se alternan las barras verdes y rojas, pero si utilizo DRAW_HISTOGRAM2, ¿puedo establecer dos colores para una barra también o sólo se establece un color para este estilo?
Estoy transfiriendo indicadores de MQL4 a MQL5, pregunta sobre los buffers y "plots". El indicador tiene 2 tampones y 1 parcela:
#property indicator_buffers 2
#property indicator_plots 1
SetIndexBuffer(0,Array1,INDICATOR_CALCULATIONS);
SetIndexBuffer(1,Array2,INDICATOR_DATA);
Si la primera memoria intermedia se utiliza para los cálculos, etc., y la segunda debe ser trazada, entonces
En primer lugar, ¿es necesario establecer DRAW_NONE para el primer búfer si ya está establecido como INDICATOR_CALCULATIONS en la función SetIndexBuffer()?
PlotIndexSetInteger(?,PLOT_DRAW_TYPE,DRAW_NONE);
En segundo lugar, ¿qué índice debo establecer en PlotIndexSetInteger() en lugar del signo de interrogación (?) si sólo se debe dibujar el segundo búfer?
PlotIndexSetInteger(?,PLOT_DRAW_TYPE,DRAW_HISTOGRAM);
En tercer lugar, si utilizo dos estilos de tipo DRAW_HISTOGRAM, puedo establecer el color para cada uno de ellos y obtener un histograma como en el indicador de Volúmenes, donde se alternan las barras verdes y rojas, pero si utilizo DRAW_HISTOGRAM 2, ¿puedo establecer dos colores para una barra también o sólo se establece un color para este estilo?
¿Por qué eres tan duro contigo mismo? ¿Qué problema hay en asignar primero las memorias de visualización y luego las auxiliares?
Para DRAW_HISTOGRAМ2 se definen 3 buffers y la secuencia es obligatoria, 2 buffers de valor primero, seguidos de un buffer de color. Pero hay una diferencia entre DRAW_HISTOGRAM y DRAW_HISTOGRAM2 en que DRAW_HISTOGRAM se dibuja desde cero hasta el valor del buffer, mientras que DRAW_HISTOGRAM2 se dibuja desde el valor de un buffer hasta el valor de otro buffer.