¡Pide! - página 105

 

Pregunta para los codificadores

Hola

Escribí la Alerta pero sólo funciona cuando abro la ventana con mi indicador. También funciona cuando salto entre las ventanas de los gráficos, en otras palabras, cuando salto entre los niveles de tiempo de los gráficos. Parece que el indicador no puede contar cuando funciona. ¿Cómo puedo resolver mi problema? Necesito ayuda. ¿Esta relacionado con el indicador? ¿Debo hacer algo en el parámetro de Alerta? ¿Cómo hacerlo?

¿Debo usar algo como

doble

? = ObjectGetValueByShift(string name, int shift));

si (???????????)

Alert("Patrón en " + Symbol() + " " + Period());

Pucio

 

Pregunta tonta..

¿Alguien? Intentando crear lo que debe ser el indy más sencillo de todos los tiempos y metiendo la pata..

Entrada: Ultimo Valor Tic de (1)Par X y (2) Par Y.

( ambos "pares" CDF ..es decir 3 símbolos de letras))

Salida 1: Imprimir en pantalla X-Y

Salida 2: Graficar en la ventana del Indicador MA de X-Y..

No pregunte... LoL

 

Alerta una vez

Hola,

Por favor, podrías escribir un ejemplo de código en el que la Alerta sea sólo una vez.

Cuando un objeto aparece en el gráfico y se quiere tener Alert una vez.

Pucio

 
Pucio:
Hola,

Por favor, podría escribir un ejemplo del código donde la Alerta es sólo una vez.

Cuando un objeto aparece en el gráfico y quieres que la Alerta sea una sola vez.

Pucio

Tal vez usted podría utilizar esta pieza de código: https://www.mql5.com/en/forum/general

 

Tengo un indicador similar a este. ¿Alguien sabe cómo pasar sus valores al EA? He intentado usar el buffer, de esta manera

doble Tendencia[];

...

SetIndexBuffer(0,Trend);

...

Trend[0]=UpRating;

return(0);

}

No sé si funciona pero sé que toda la inscripción del indicador ha desaparecido. ¿Alguna idea al respecto?

 

necesito ayuda para modificar

Hola compañeros de profesión

Necesito ayuda con este código.

La función actual es cerrar las primeras órdenes abiertas por tiempo y cualquier orden siguiente, lo que significa que podría haber más de 2 órdenes cerradas en el mismo tiempo.

Pregunta: como puedo cambiarla para que cierre las 2 primeras órdenes abiertas por tiempo SOLO.

aquí el código.

gracias por la ayuda

//+------------------------------------------------------------------+

//| Condición de Cierre Tipo 2 ||

//+------------------------------------------------------------------+

void CheckCloseConditionType2()

{

int Pedidos[];

int i, j;

ArrayResize(Orders, 0);

int cnt = OrdersTotal();

for (i=0; i < cnt; i++)

{

if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;

if (OrderSymbol() != Symbol()) continue;

if (OrderMagicNumber() != Magic) continue;

int tipo = OrderType();

if (type == OP_BUY || type = OP_SELL)

{

int size = ArraySize(Orders);

ArrayResize(Pedidos, tamaño+1);

Pedidos = OrderTicket();

}

}

//-----

size = ArraySize(Pedidos);

for (i=0; i < tamaño; i++)

{

if (!OrderSelect(Orders, SELECT_BY_TICKET)) continue;

si (OrderCloseTime() > 0) continuar;

datetime tm1 = OrderOpenTime();

for (j=i+1; j < tamaño; j++)

{

if (!OrderSelect(Orders[j], SELECT_BY_TICKET)) continue;

if (OrderCloseTime() > 0) continue;

datetime tm2 = OrderOpenTime();

si (tm1 > tm2)

{

int ticket = Pedidos;

Pedidos = Pedidos[j];

Pedidos[j] = ticket;

}

}

}

//-----

for (i = tamaño-1; i >= 1; i--)

{

double Profit = ArrayGetOrdersProfit(Orders);

if ((Profit >= TotalTakeProfit && TotalTakeProfit > 0) || (Profit >= Profit2Exit && Profit2Exit > 0))

{

Print("[Enter] Cerrar por condición Tipo2");

string msg1 = "";

string msg2 = "";

doble P;

double T.P = 0;

for (j=0; j < tamaño; j++)

{

if (Orders[j] == -1) continue;

if (!OrderSelect(Orders[j], SELECT_BY_TICKET)) continue;

if (OrderCloseTime() > 0) continue;

if (StringLen(msg1) > 0) msg1 = msg1 + " + ";

msg1 = msg1 + "order " +Orders[j];

GetOrderProfit(Pedidos[j], P);

if (StringLen(msg2) > 0) msg2 = msg2 + " + ";

msg2 = msg2 +DoubleToStr(P, 2);

T.P += P;

}

Print("Cierre: " + msg1);

Print("Beneficio: " + msg2 + " = " + DoubleToStr(T.P, 2));

ArrayCloseOrders(Orders);

Print("[Exit] Cierre por condición Tipo2");

devolver;

}

Órdenes = -1;

}

}

 

Cómo contar el número de pips

Hola,

Me di cuenta de que después de que el mercado ha ido por un gran movimiento (tendencia alcista o bajista). El mercado restante es de alguna manera arriesgado para el comercio. Estoy tratando de programar un EA para evitar entrar en cualquier comercio decir después de un gran movimiento de alrededor de 90pips.

Necesito saber cómo calcular el número de pips desde la primera barra a las 8am (apertura del mercado de Londres) hasta la barra actual. Si el mercado ya se ha movido por más de 90pips no tomaré ninguna operación.

¿Puede alguien codificar unas líneas para darme alguna pista? Muchas gracias y apreciado.

Shek

 
yyc196:
Hola,

Me di cuenta de que después de que el mercado ha ido para un gran movimiento (tendencia alcista o bajista). El mercado restante es de alguna manera arriesgado para el comercio. Estoy tratando de programar un EA para evitar entrar en cualquier comercio decir después de un gran movimiento de alrededor de 90pips.

Necesito saber cómo calcular el número de pips desde la primera barra a las 8am (apertura del mercado de Londres) hasta la barra actual. Si el mercado ya se ha movido por más de 90pips no tomaré ninguna operación.

¿Puede alguien codificar unas líneas para darme alguna pista? Muchas gracias y se agradece.

Shek

Si es necesario, comprueba primero que estás más tarde de las 8 de la mañana:

if(Hour() < 8) return;[/PHP]

Then, find the max and min of the current day. (if its ok for you, its easier than from 8 am): [PHP]double Max = iHigh(Symbol(), PERIOD_D1, 0);

double Min = iLow(Symbol(), PERIOD_D1, 0);

int Range = (Max - Min) / Point;

if(Range > 90) return;

...

 

Intento añadir una nueva función a este indicador High_Low (Zigzag) V2 para que cada vez que se forme un nuevo high-low el ZZ me avise. No se sabe donde va mal. El indi en cambio no aparece en mi pantalla. ¿Alguien? Ayudenme por favor.. Soy nuevo en la codificación, por favor refinen lo que he hecho para que el indi haga justo lo que quiero en lo anterior. Aquí está el código.

alto_bajo_v2_zigzag_con_alerta.mq4

Archivos adjuntos:
 

Hola,

¿Cómo dibujar un fondo de rectángulo? Me refiero a través de conding. Sé que utiliza ObjectCreate() pero no sé cómo escribirlo como se supone que debo hacerlo.

Razón de la queja: