el contador me vuelve loca.. jejeHOLA! disculpen que pregunte de nuevo tan rapido... es que ese contador de metatrader me esta volviendo loca... necesito AYUDA!!!
Este es el contador: for (int i = 0; i < OrdersTotal(); i ++) y aqui esta otro: for(int i=orders-1;i>=0;i++) (ese famoso contador.... ) voy a decirles lo que estoy viendo : digamos que tengo un metodo para comprar y quiero que lo haga un hasta 5 veces (5 veces para entrar) entonces, si cuando yo pongo ordersend la pongo asi: int ticket=ordersend(...), entonces yo pudiera decir asi?: int i=ticket for (int i = 0; i < 6; i ++) ticket=ordersend(...) (lo de ponerlo sin usar llaves es por facilidad en la pregunta) Aqui estoy diciendo que cuente cada vez que se pone una orden y que solo ejecute la operacion mientras hayan menos de 6 operaciones? seria algo como esto?: if (ask>SMA o algo parecido segun el metodo que yo uso) int i=ticket for (int i = 0; i < 6; i ++) ticket=ordersend(...) y si yo coloca el contador para que compre hast 5 veces, cuando puede volver a comprar? cuando yo active otra vez el expert? este contador, alguien me lo puede explicar paso a paso? pueden ayudarme?... Sandra_fx
Re: el contador me vuelve loca.. jejeint i=ticket ==> esta definicion es ta también en el for , una de las dos definiciones sobra, pero seguro que aqui lo que querias es poner a i el valor del número de ordenes abiertas debes poner i=OrdersTotal()
for (int i = 0; i < 6; i ++) Ahora i es es valor de ordenes y el bucle contara ahasta 5 ticket=ordersend(...) quedaria asi: for( int i=OrdersTotal(); i<6; i++) {.... Un saludo.
Re: el contador me vuelve loca.. jejeHola de nuevo elcctroo! me has respondido aquí tambien!
Tengo otra duda con el contador. Me dijiste que era mejor colocarlo con orderstotal, pero en ese caso, contaria tambien posiciones pendientes no? y las contaria así estas no se ejecutasen? Si es asi, ¿cómo hago para que me cuente solo las que hayan sido abiertas (ejecutadas)? Espero no sea mucho, Que estes muy bien Sandra_fx
Re: el contador me vuelve loca.. jejeHola Sandra, hay que filtrar las ordenes por el tipo de orden y solo contar las que correspondan al tipo filtrado
for (int i=1; i<=OrdersTotal(); i++) { if(OrderSelect(i-1,SELECT_BY_POS)==true) { if( OrderType()==OP_BUY ) numeroBUYs = numeroBUYs +1; if( OrderType()==OP_SELL ) numeroSELLs = numeroSELLs +1; ... .... if( OrderType()==OP_SELLSTOP ) numeroSELLSTOPs = numeroSELLSTOPs +1; } }
4 mensajes
• Página 1 de 1
|
|
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado