Cómo saber cuántas pérdidas hubo en las últimas 10 operaciones

 

Publi

Resultados 1 al 8 de 8

Tema: Cómo saber cuántas pérdidas hubo en las últimas 10 operaciones

  1. #1
    Hola,
    Estoy tratando de codificar cuántas pérdidas han habido en las últimas 10 operaciones. Hice esto:

    int ContarPérdidas()


    int Historial = 10;

    int ProfCout=0, LosCount=0;

    int HistorialPedidos=TotalHistorialPedidos();

    if(OrdHistorygt;0 OrderSymbol() == Symbol() OrderMagicNumber() == MagicNumber)

    for(int I=Historia;igt;=1;I--)


    if(OrderSelect(OrdHistory-i,SELECT_BY_POS,MODE_HISTORY) OrderProfit()lt;0)LosCount ;


    retorno (LosCuenta);




    pero no funciona, solo comienza a acumular pérdidas después de 10 operaciones,
    Gracias

  2. #2
    1 Adjunto(s) pls. Ver adjunto, creo que funciona (si no hay bloops
    , realizado inmediatamente)... mire el código fuente para más detalles...
    https://www.forexycfds.com/attachmen...1423210052.mq4

  3. #3

    Cita Iniciado por ;
    gracias por la corrección, pero no funciona. ¿Qué pasa si agregomodifico. Gracias
    Muestre lo que ha cambiado en su código y luego se lo diremos

  4. #4
    Gracias por la corrección, pero no funciona. ¿Qué debo agregar/alterar? Gracias

  5. #5
    Debe ver que los índices de pedidos no comienzan en 1, comienzan en 0. Código insertado int OrdHistory=OrdersHistoryTotal(); OrderSelect(OrdHistory,SELECT_BY_PO S,MODE_HISTORY); Digamos, por ejemplo, que hay 10 pedidos en OrdersHistoryTotal() Están indexados de 0 a 9, por lo tanto, si intenta acceder al pedido número 10, no existe. Esto generalmente significa que todavía no está eligiendo ningún pedido. SELECT_BY_PO S No hay espacio, debería ser SELECT_BY_POS

  6. #6
    Tiene esta línea en su código if(OrdHistorygt;0 OrderSymbol() == Symbol() OrderMagicNumber() == MagicNumber) sin embargo, no ha elegido un pedido anterior.

  7. #7
    Hola, gracias a ti. Responder, lo agregué, no cambió nada, int CountLosses() int Bistory = 10; int ProfCout=0, LosCount=0; int HistorialPedidos=TotalHistorialPedidos(); OrderSelect(OrdHistory,SELECT_BY_POS,MODE_HISTORY) ; if(OrdHistorygt;0 OrderSymbol() == Symbol() OrderMagicNumber() == MagicNumber) for(int I=Bistory;igt;=1;I--) if(OrderSelect(OrdHistory-i,SELECT_BY_POS,MODE_HISTORY) OrderProfit( )lt;0) LosCount ; de lo contrario LosCount = 0; retorno (LosCuenta);

  8. #8

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Cookies
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información y política de cookies aquí.