Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 115

 
gyfto:
¿Se puede leer AccountNumber( ) desde la dll y cómo? Al menos dame una pista de dónde cavar. Me refiero a no pasar el valor de la función a la dll, es decir, desde la propia librería dinámica.
De la cabecera de la ventana de MT4, pero se puede sustituir fácilmente. Tengo que pensar cómo trazar la sustitución.
 
pako:

No entiendo por qué tiene que ser tan complicado.
¿No sería eso más fácil?

Eh... Si sólo pudiera decidir cómo hacerlo yo mismo... Si mi cliente necesita recalcular los puntos de toma de todas las posiciones (además, las siguientes posiciones de media pueden abrirse con un lote aún más grande y la toma total se recalcula de nuevo) y cerrar exactamente por órdenes de parada, en lugar de por Expert Advisor, entonces eso es lo que debemos hacer.
 
Zhunko:
Desde la cabecera de la ventana de MT4, pero puede ser fácilmente manipulada. Tenemos que pensar en cómo rastrear la suplantación de identidad.

Pero hay una cosa de la que estoy bastante seguro: no hay ningún lugar en Windows para ver la última vez que se accedió al búfer de la ventana.
 
gyfto:
Pero hay una cosa de la que estoy bastante seguro: no hay ningún lugar en Windows para ver la última vez que se accedió al búfer de la ventana.
Tenemos que interceptar los mensajes.
 

Necesito ayuda, no puedo entenderlo.

La idea es que el búho utilice el relleno de la tendencia, si la señal se repite. Así que la pregunta es, ¿cómo puedo enseñar a la función de fracción a saltarse la primera señal?

Por ejemplo, había una señal de compra, el búho compra y en el siguiente tick se llama a la función de entrada (porque hay una orden abierta), la señal de entrada sigue vigente y la función se llena con éxito (lo cual es erróneo).

La función en sí se llama sólo si hay una orden abierta.

Sólo necesito saltar la barra actual. ¿Cómo implementarlo en MQL?

 
MarkTrade:

Necesito ayuda, no puedo entenderlo.

La idea es que el búho utilice el relleno de la tendencia, si la señal se repite. Así que la pregunta es, ¿cómo puedo enseñar a la función de fracción a saltarse la primera señal?

Por ejemplo, había una señal de compra, el búho compra y en el siguiente tick se llama a la función de entrada (porque hay una orden abierta), la señal de entrada sigue vigente y la función se llena con éxito (lo cual es erróneo).

La función en sí se llama sólo si hay una orden abierta.

Sólo necesito saltar la barra actual. ¿Cómo implementarlo en MQL?

¿Qué demonios estás fumando? ¿De qué plantaciones recogen los cigarrillos? El búho fue a la tienda y compró algunos... Y entonces llegó el funk y lo jodió todo.

Qué pena...

 

Utilice la función que le devolverá el número de barras después de la última posición abierta:

//+----------------------------------------------------------------------------+
int BarsAfterOpenLastPos(int op, int mn) {
   datetime t=0;
   int      i, k=OrdersTotal();

   for (i=0; i<k; i++) {
      if (OrderSelect(i, SELECT_BY_POS)) {
         if (OrderSymbol()!=Symbol())  continue;
         if (OrderType()!=op)          continue;
         if (OrderMagicNumber()!=mn)   continue;
         if (t<OrderOpenTime()) t=OrderOpenTime();
         }
      }
   return((TimeCurrent()-t)/60/Period());
}
//+----------------------------------------------------------------------------+

Cómo comprobar una posición de compra con Magic

if (BarsAfterOpenLastPos(OP_BUY, Magic)>1) {// доливаем}
 
artmedia70:

Mierda... ¿qué estás fumando? ¿De dónde sacas los cigarrillos? El búho fue a la tienda y compró algunos... Y entonces llegó un funk y lo arruinó todo.

Oh, qué pena...



:) De todos modos, así son las cosas

if (OrdersCount()==0)
{CheckBuy();
CheckSell();}
if (OrdersCount()==1) DolivkaBuy();
if (OrdersCount()==-1) DolivkaSell();

¿Qué debo escribir en Dolivka...() para que salte la barra en la que se abrió la primera operación?

No tengo el código fuente, sólo estoy recordando...

 
¡О! Ya hay una respuesta mientras escribo. Gracias.
 
artmedia70:
Eh... Si sólo pudiera decidir cómo hacerlo yo mismo... Si el cliente necesita recalcular la toma de todas las posiciones (sobre todo porque las siguientes posiciones de media pueden abrirse con un lote aún mayor y la toma total se recalcula de nuevo) y cerrar exactamente por órdenes de stop, y no por Expert Advisor, entonces eso es lo que tengo que hacer.


Arreglar los datos de posición