[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 124
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
Buenas tardes,
¿Podría decirme cómo poner un marcador en el gráfico? Por ejemplo, la orden no se abrió, pero al menos para ver en el gráfico, en el que debería haber abierto.
Me gustaría colocar un marcador en un gráfico.
Así
Sí, lo siento, me confundí, es la primera vez que escribo en el foro. Primero copié, luego decidí escribir a mano y me confundí... Pero el ejemplo anterior es correcto...
MA1>MA2 y MA1<MA3 y MA3<MA4
Consulte el siguiente hilo
Hay algo extraño aquí.
MA1>MA2 y MA2>MA3 y luego MA1<MA3
Sobre todo porque basta con
La cuestión es la siguiente. No es la primera vez que me encuentro con esta situación:
Si se llama a la función traal o breakeven en cada tick, por ejemplo, aparecerá un error 1. Lo que significa, según la documentación:
ERR_NO_RESULT 1 Нет ошибки, но результат неизвестен
Si no se llama abiertamente en la función de inicio, es decir, no se acaba de introducir la función con parámetros directamente en el inicio, sino que se llama en cada barra, es decir, no por tic, entonces error...
Me refiero a esto:
¿Por qué así?
Y en general, ¿cómo se aplica de forma más inteligente? ¿Consumirá muchos recursos en cada tic?
Всем добрый день.
Necesito tu ayuda. No entiendo lo que está pasando.
if (OrderStopLoss() != NormalizeDouble(t6,5))
{
a=10;
}
LacondiciónOrderStopLoss()= 1,3017 yNormalizeDouble(t6,5)=1,3017 se mantiene, es decir, a=10. Pero no debería estar satisfecho.
¿Cuál puede ser la razón de esto?
La cuestión es la siguiente. No es la primera vez que me encuentro con esta situación:
Si la función traal o breakeven se llama en cada tick, por ejemplo, aparecerá un error 1. Lo que significa, según la documentación:
Si no se llama abiertamente en la función de inicio, es decir, no se acaba de introducir la función con parámetros directamente en el inicio, sino que se llama en cada barra, es decir, no por tic, entonces error...
Me refiero a esto:
¿Por qué así?
Y en general, ¿cómo se aplica de forma más inteligente? ¿Consumirá muchos recursos en cada tic?
La cuestión es la siguiente. No es la primera vez que me encuentro con esta situación:
Si se llama a la función traal o breakeven en cada tick, por ejemplo, aparecerá un error 1. Lo que significa, según la documentación:
Si no se llama abiertamente en la función de inicio, es decir, no se acaba de introducir la función con parámetros directamente en el inicio, sino que se llama en cada barra, es decir, no por tic, entonces error - no...
Me refiero a esto:
¿Por qué así?
Y en general, ¿cómo se aplica de forma más inteligente? ¿Va a consumir muchos recursos en cada tic?
Hay que añadir una comprobación, el nivel de arrastre debe ser diferente al de la SL actual.
La red de arrastre intenta mover el SL al mismo nivel. Debe añadirse una comprobación, el nivel de arrastre debe ser diferente del SL actual.
Si la parada - nueva parada (en b.u.) no es cero... entonces modificamos... Si no, no modificamos. Por eso no me queda claro cómo ocurre esto. Al fin y al cabo, entiendo que tengo que comprobar la igualdad de la parada pasada y la nueva y lo he hecho.Tengo un cheque para eso:
Hola, por favor, aconséjeme cómo puedo modificar mi pedido inicial y final a 1 T/P, gracias.
gi_304 = CountTrades();
g_price_212 = 0;
double ld_24 = 0;
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
g_price_212 += OrderOpenPrice() * OrderLots();
ld_24 += OrderLots();
}
}
}
if (gi_304 > 0) g_price_212 = NormalizeDouble(g_price_212 / ld_24, Digits);
if (gi_332) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_BUY) {
g_price_180 = g_price_212 + TakeProfit2 * Point;
gd_unused_196 = g_price_180;
gd_308 = g_price_212 - Stoploss * Point;
gi_268 = TRUE;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) {
if (OrderType() == OP_SELL) {
g_price_180 = g_price_212 - TakeProfit2 * Point;
gd_unused_204 = g_price_180;
gd_308 = g_price_212 + Stoploss * Point;
gi_268 = TRUE;
}
}
}
}
if (gi_332) {
if (gi_268 == TRUE) {
for (g_pos_300 = OrdersTotal() - 1; g_pos_300 >= 0; g_pos_300--) {
OrderSelect(g_pos_300, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != g_magic_176) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == g_magic_176) OrderModify(OrderTicket(), g_price_212, OrderStopLoss(), g_price_180, 0, Yellow);
gi_332 = FALSE;
}
}
}
return (0);
Hola, por favor, aconséjeme cómo puedo modificar mi pedido inicial y final a 1 T/P, gracias.
Edita este código para que no parezca un hack