[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 384

 
KostelloArtua:

¡Hola!

Pregunta: He escrito un EA que funciona en el probador. Funciona en MetaTrader4 en un solo broker de 2, justo el que no necesito. Y donde lo necesito, no funciona..... Cuál puede ser el problema?????? Gracias de antemano....

Has respondido a tu propia pregunta. En el mercado de divisas hay un gran número de empresas de corretaje para zurdos. Donde su capital no está depositado en absoluto, sino que se encuentra en su empresa de corretaje. Tienen una simple arehmética El 90% de los depósitos se los llevan a sus bolsillos. Y son tan maestros (o más bien profesionales) que su trabajo consiste en que usted no gane dinero. Y hasta que no sepas qué hacer, se dejarán más de un depósito en el bolsillo. Mi consejo es que busques un broker con spreads ajustados. Personalmente tengo un margen de 0,8 para un lote completo

(El spread de 100.000 lotes es de 8 USD, la mayoría de los brokers tienen de 30 a 50 $) lo cual es una gran diferencia. Personalmente opero desde Deutsche Brokerbank donde no hay intermediarios. Y el terminal funciona con la Bolsa y no dentro de la oficina.

 
Vinin:

Supongo que deberías haber venido aquí
He leído detenidamente la documentación, pero sigo sin entender por qué la variable se niega obstinadamente a cambiar su valor cuando las órdenes se cierran normalmente...:-))
 
KostelloArtua:

¡Hola!

Pregunta: He escrito un EA que funciona en el probador. Funciona en MetaTrader4 en un solo broker de 2, justo el que no necesito. Y donde lo necesito, no funciona..... Cuál podría ser el problema?????? Gracias de antemano....


Por favor, facilite aquí el texto del cuaderno de bitácora del terminal en el que el EA no funciona.

 
Fartowiy:

Y el terminal funciona con la Bolsa, no dentro de la oficina.


El Forex no es un intercambio.
 
zoritch:
He leído atentamente la documentación, pero sigo sin entender por qué la variable se obstina en no cambiar su valor cuando las órdenes se cierran normalmente...:-)))

No puedo decir nada por ahora. Falta el código proporcionado
 
PapaYozh:

El Forex no es un mercado de valores.

¡¡¡Lo siento Colegas !!! Está un poco mal, porque no comercio sólo con divisas. Pero el significado es el mismo. Perdonadme, pero mi comentario está relacionado, ayuda y consejo para principiantes,

 
zoritch:

kickup es una variable declarada ordinaria, int, que por defecto es cero...:-))


Todavía tienes que entender lo que quieren ver de ti. Léelo de nuevo.
 
zoritch:

Señores, por favor, aconsejen por qué la condición de pasar la variable de rentabilidad kickup de una orden de compra o de venta no funciona obstinadamente...

for(int l = total - 1; l >= 0; l--) {
OrderSelect(l, SELECT_BY_POS, MODE_TRADES);
si ((OrderSymbol() == Symbol()) && (OrderMagicNumber() == mn)) {

if (OrderType() = OP_BUY) {
si (OrderProfit() > 0) kickup = 2;
if (! OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid,Digits), 2, CLR_NONE)) {
trymore();

}
} si no {
si (OrderProfit() > 0) kickup = 1;
if (! OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask,Digits), 2, CLR_NONE)) {
trymore();
}
}
}
}

No sé el significado de esta construcción tuya, me da pereza adivinarlo, pero inténtalo de esta manera:

   for (int l = total-1; l >=0; l--) {
      if (OrderSelect(l, SELECT_BY_POS)) {
         if (OrderSymbol() == Symbol() && OrderMagicNumber() == mn) {

            if (OrderType() == OP_BUY) {
               if (OrderProfit() > 0) kickup = 2;
               if (!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid,Digits), 2, CLR_NONE)) 
                  trymore();
                  } 
            if (OrderType() == OP_SELL){
               if (OrderProfit() > 0) kickup = 1;
               if (!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask,Digits), 2, CLR_NONE))
                  trymore();
               }
            }
         }
      }

 
artmedia70:

No sé qué sentido tiene esta construcción tuya, me da pereza adivinarla, pero inténtalo así:


¿Cuál es la diferencia?
 
Roger:

¿Cuál es la diferencia?
He añadido una condición más al bucle y he eliminado los paréntesis innecesarios. Puedes hacer todo de forma diferente en general (será incluso mejor). Tal vez una persona inicializa su variable cada vez después del bucle, no podemos ver más. Aprendamos de los telépatas...
Razón de la queja: