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
Gracias por tu esfuerzo Nicholishen. Lamentablemente no ha funcionado. Esta modificando las ordenes pero en ambos sentidos. Lo que quiero decir sólo para clarificar es en una situación de compra se moverá la parada hacia arriba por los puntos de rastro, sino que también se moverá hacia abajo.
Entiendo lo que quieres decir, pero el código es correcto. O bien hay otro EA modificando estas órdenes o bien hay otro código en el EA que lo está haciendo porque ciertamente no es este código. Tendrás que parar todos los demás EAs y comprobar el código del EA principal en busca de otras llamadas a OrderModify()
Buena suerte =)
Gracias por su tiempo con mi noobish yo
la única otra orden que se ha modificado en el código es la de romper el equilibrio y bloquear los pips.
BEx=cantidad de pips a bloquear
El código es el único que se puede modificar en la orden, es decir, el break even y el bloqueo de pips.
¡Gracias de nuevo Nicholishen!
{
for (int i = 0; i < OrdersTotal(); i++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if ( OrderSymbol()==Symbol() && ( (OrderMagicNumber() == uniqueGridMagic) || (OrderComment() == GridName)) ) // only look if mygrid and symbol...
{
if (OrderType() == OP_BUY) if (Bid - OrderOpenPrice() > byPips * MarketInfo(OrderSymbol(), MODE_POINT)) if (OrderStopLoss() != (OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT))) OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
if (OrderType() == OP_SELL) if (OrderOpenPrice() - Ask > byPips * MarketInfo(OrderSymbol(), MODE_POINT)) if (OrderStopLoss() != (OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT))) OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
}
}
}Oh se olvidó de añadir, este es el único EA. Sólo actualmente backtesting.
Gracias por su tiempo con mi yo noobish
la única otra orden que se ha modificado en el código es la de romper el equilibrio y bloquear los pips.
BEx=cantidad de pips a bloquear
He sido a través de él tantas veces im seguro de que está mirando a la derecha en mí, pero yo no soy un profesional, un hack en el mejor.
¡Gracias de nuevo Nicholishen!
{
for (int i = 0; i < OrdersTotal(); i++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if ( OrderSymbol()==Symbol() && ( (OrderMagicNumber() == uniqueGridMagic) || (OrderComment() == GridName)) ) // only look if mygrid and symbol...
{
if (OrderType() == OP_BUY) if (Bid - OrderOpenPrice() > byPips * MarketInfo(OrderSymbol(), MODE_POINT)) if (OrderStopLoss() != (OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT))) OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
if (OrderType() == OP_SELL) if (OrderOpenPrice() - Ask > byPips * MarketInfo(OrderSymbol(), MODE_POINT)) if (OrderStopLoss() != (OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT))) OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
}
}
}[/PHP]
Oh forgot to add, this is the only EA. Just currently backtesting.Probablemente lo que sucede es que una función está anulando la otra. Tendrás que revisar tu lógica para que sólo opere una a la vez.
[PHP]void DoBE(int byPips)
{
for (int i = 0; i < OrdersTotal(); i++)
{
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if ( OrderSymbol()==Symbol() && ( (OrderMagicNumber() == uniqueGridMagic) || (OrderComment() == GridName)) ) // sólo mira si migrid y símbolo...
{
si (OrderType() == OP_BUY)
{
if (Bid - OrderOpenPrice() > byPips * MarketInfo(OrderSymbol(), MODE_POINT))
{
if (OrderStopLoss() != (OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT))
{
OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() + MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
}
}
}
if (OrderType() = OP_SELL)
{
if (OrderOpenPrice() - Ask > byPips * MarketInfo(OrderSymbol(), MODE_POINT))
{
if (OrderStopLoss() != (OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT))
{
OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice() - MarketInfo(OrderSymbol(), MODE_POINT)*BEx, OrderTakeProfit(), Red);
}
}
}
}
}
volver;
}Verificación de comandos/código MQL4
Mensaje borrado. Disculpe las molestias.
Código para 'Permitir el comercio en vivo'
Hola, para que los EAs funcionen tenemos que habilitar la opción "Permitir trading en vivo", así que en lugar de tener que marcarla todo el tiempo al cargar el EA, ¿qué línea de código añado para tener automáticamente esa opción habilitada en el EA?
Gracias
No se necesita código para hacer eso..
Hola, para que los EA's funcionen tenemos que habilitar la opción "Permitir trading en vivo" así que en lugar de tener que marcarla todo el tiempo al cargar el EA ¿qué línea de código añado para tener automáticamente habilitada esa opción en el EA? Gracias
Hola Matrixebiz,
Usted puede hacer eso fácilmente por ir al menú de MetaTrader. Ir a "Herramientas" y luego "Opciones" (o simplemente escriba CRTL-O). Luego, en la pestaña "Asesor Experto", marque las opciones de Permitir el comercio en vivo. Ahí lo tienes, todos los EA que adjuntes después de eso serán permitidos para operar en vivo.
-RJ1-
Oh, ok, eso fue fácil Gracias
Código de tiempo de EA
Quiero el código de tiempo de EA. Por ejemplo, que sólo permita operar de 18:00 a 1:00. ¿Es posible?
Encontré esto
if (UseHourTrade){
if(!(Hour()>=FromHourTrade&&Hour()<=ToHourTrade)){
Comentario("¡Horas no comerciales!");
return(0);
Una pregunta:
Utiliza la hora de mi broker de forex : ¿Si o no?
Creo que sí, pero quiero estar seguro
¿Y cómo puedo poner allí minutos como 15:30? Sólo hay horas?