Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1039

 
User_mt5:
Sí, debería haber presentado el código. Pero es sencillo: en la función OnChartEvent(), la primera línea es print:

Probablemente no sea suficiente...

Has proporcionado cadenas de programación, cuyo contenido miraré en detalle y experimentaré. Tal vez eso resuelva el problema.

¡Muchas gracias!

el código en la ayuda funciona, tengodelta =+120 ydelta =- 120 en el registro para el desplazamiento de la rueda

Que corresponde al desplazamiento en un sentido y en el otro

SZY: tenga en cuenta que el terminal Printy a veces puede "tragar" si habrá una salida frecuente en el registro

 
Igor Makanu:

el código en la ayuda funciona, tengodelta =+120 ydelta =- 120 para el desplazamiento de la rueda en el registro

que corresponde al desplazamiento hacia un lado y viceversa

SZY: tenga en cuenta que Prynty puede a veces "tragar" si usted será la salida frecuente en el registro

El MQL sigue siendo un misterio para mí en muchos aspectos. En este caso tras la activación del ratón el evento 9 no salió de los registros. Ahora son 9 y 11 a un lado y sólo 11 al otro. No entiendo esto, por mi vida.

Y no entiendo por qué algunos eventos deben ser incluidos, mientras que otros no lo requieren. (Ahora entiendo por qué me perdí la inclusión del ratón - porque no lo esperaba, y ayuda, no leemos toda la fila sin excepción).

120 que también recibí y también sigo sin entender qué es. Lo resolveré.

Gracias de nuevo, ¡han sido de gran ayuda!

 
User_mt5:

El MQL sigue siendo un misterio para mí en muchos aspectos. En este caso, tras la activación del ratón, el evento 9 no salió de los registros. Ahora son 9 y 11 a un lado y sólo 11 al otro. No entiendo esto, por mi vida.

Y no entiendo por qué algunos eventos deben ser incluidos, mientras que otros no lo requieren. (Ahora entiendo por qué me perdí la inclusión del ratón - porque no lo esperaba, y ayuda, no leemos toda la fila sin excepción).

120 que también recibí y también sigo sin entender qué es. Tendré que lidiar con ello.

Gracias de nuevo, son de gran ayuda.

Esto no es un problema de MQL, Windows genera eventos de esta manera, por ejemplo, un evento de clic de ratón de Windows se genera dando varios eventos: botón pulsado, luego botón pulsado - y sólo hay que procesar un clic

Lo mismo ocurre con la rueda: la cola de mensajes se genera

 
Igor Makanu:

Esto no es un problema de MQL, es la forma en que Windows genera los eventos, por ejemplo, el mensaje de Windows clic del ratón se genera mediante la generación de varios eventos: botón pulsado, a continuación, botón pulsado - y sólo un clic debe ser procesado

lo mismo con la rueda - se genera una cola de mensajes

Como tú lo dices, debe ser así. Pero no soy un programador profesional, así que me cuesta entender algunas cosas.

Gracias.

 

¡Saludos a todos!

Ayudar a entender inequívocamente la corrección del cálculo del riesgo aceptable en el dinero y el volumen de la posición prevista, estoy interesado en la fórmula que tiene en cuenta TickPrice y otros matices, en lugar de razonar sobre el tema.

Datos de entrada:

Depósito, $ = 3000
Riesgo por operación, % = 5
Precio de riesgo, $ = ?
Tamaño SL, punto= 250
Precio del tick = 1,3
Volumen del lote = ?

Lo calculo de la siguiente manera:

Precio de riesgo, $ = Depósito, $ * Riesgo por operación, % / 100
Volumen del lote = Precio de riesgo, $ / Tamaño SL, punto / Precio del tick

 
Anzhela Sityaeva:

¡Saludos a todos!

Ayudar a entender inequívocamente la corrección del cálculo del riesgo aceptable en el dinero y el volumen de la posición prevista, estoy interesado en la fórmula que tiene en cuenta TickPrice y otros matices, en lugar de razonar sobre el tema.

Entradas:

Depósito, $ = 3000
Riesgo por operación, % = 5
Precio de riesgo, $ = ?
Tamaño SL, punto = 250
Precio de la garrapata = 1,3
Volumen del lote = ?

Lo calculo de la siguiente manera:

Precio de riesgo, $ = Depósito, $ * Riesgo por operación, % / 100
Volumen del lote = Precio de riesgo, $ / Tamaño del SL, punto / Precio del tick

Mira en este asesor.
Советник 4UJ
Советник 4UJ
  • www.mql5.com
Рекомендаций по валютной паре нет. Используемые индикаторы: Простая скользящая средняя с периодом 48 — SMA(48). Индикатор ATR с периодом 7 и MA по ценам ATR с периодом 30 Условия для покупок: 1. Цена находится выше скользящей средней. 2. Индикатор ATR пересекает свою скользящую среднюю снизу вверх. 3. Как только сформируется первая медвежья...
 
Alexey Viktorov:
Mira este EA.

Gracias por su respuesta.

¿Hay algún matemático por ahí? Me gustaría entender la diferencia entre la primera y la segunda versión del cálculo, en ambos casos el resultado es el mismo. ¿Cuál de las dos es correcta?

Primera opción: Volumen = Precio en riesgo, $ / Tamaño SL, punto / Valor del tick
Segunda variante: Volumen del lote = Precio de riesgo, $ / ( Tamaño del SL, punto * Valor del Tick)

 
Anzhela Sityaeva:

Gracias por su respuesta.

¿Hay algún matemático por ahí? Me gustaría entender la diferencia entre la primera y la segunda versión del cálculo, en ambos casos el resultado es el mismo. ¿Cuál de las dos es correcta?

Primera opción: Volumen = Precio de riesgo, $ / Tamaño SL, punto / Valor del tick
Segunda variante: Volumen del lote = Precio de riesgo, $ / ( Tamaño SL, punto * Valor del tick)

¿Y qué papel juega la coma en las fórmulas? Bueno, si he entendido bien la pregunta, entonces recuerda tus lecciones de matemáticas de 5º curso: primero haces las expresiones entre paréntesis y luego las expresiones fuera de paréntesis. Primero se realizan los paréntesis, luego la multiplicación y la división, y finalmente la suma y la resta en la secuencia de izquierda a derecha.

Ejemplo:

100/10/10=1

100/(10*10)=1

 
Alexey Viktorov:

¿Qué función desempeña la coma en las fórmulas? Bueno, si he entendido bien la pregunta, entonces recuerda tu clase de matemáticas de 5º curso: primero haces las expresiones entre paréntesis y luego las expresiones detrás de los paréntesis. Primero se realizan los paréntesis, luego la multiplicación y la división, y finalmente la suma y la resta en la secuencia de izquierda a derecha.

Ejemplo:

100/10/10=1

100/(10*10)=1

La coma no juega ningún papel en la fórmula, lo has apuntado correctamente, sólo separa el valor del tipo, para facilitar la comprensión nada más. El 5º grado es hace mucho tiempo :), nunca se me han dado bien las matemáticas, lo que pasa es que. Pero sí recuerdo el orden de las operaciones.

La pregunta es exactamente la misma en ambas variantes del cálculo, ¿qué variante es la correcta?

 

Hola a todos...

Estoy tratando de eliminar un indicador que añadí de un EA. Estoy haciendo lo siguiente:

//Объявляю переменные
int win_ind=-1,
    handle_ind = INVALID_HANDLE;

//Создаю
   handle_ind= iCustom(NULL,0,"ind");
   if(handle_ind== INVALID_HANDLE){
      Print("Не удалось создать индикатор. Код ошибки: ",GetLastError());
      return(false);
   }
   win_ind=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL); //--- получим номер нового подокна, в которое добавим индикатор 
   if(!ChartIndicatorAdd(0,win_ind,handle_ind)){
      Print("Не удалось добавить индикатор на окно графика. Код ошибки: ",GetLastError());
      return(false);
   }

//Удаляю
   string name = ChartIndicatorName(0, win_ind, 0);
   bool res = ChartIndicatorDelete(0, win_ind, name); 
   if (!res) PrintFormat("Не удалось удалить индикатор %s с окна №%d. Код ошибки %d", name,win_ind,GetLastError());

En el Indicador:

int OnInit(){
   IndicatorSetString(INDICATOR_SHORTNAME,"blablabla");

Se añade el indicador, el número de subventana y el nombre corto son correctos, pero hay un error al borrar:

2019.05.08 12:01:10.068 2019.04.03 12:39:31 Fallo al eliminar el indicador blablabla de la ventana #2. Código de error 4014

4014 - "La función del sistema no puede ser llamada". ¿Pueden decirme qué significa esto, cómo eliminar el indicador?