No la función funciona correctamente, ¿por qué el valor de retorno no es 1 y14 órdenes sino 2?
¿es un probador?
A mí me funciona correctamente.
Tienes que ordenar por precio, porque no puedes buscar por tamaño, la cuadrícula puede estar mezclada, y encontrarás el más grande o el más pequeño, pero no el primero ni el último
Pero para ello, primero hay que averiguar el ticket de la última orden 14
Entonces, ¿se debe seguir buscando primero el orden como en la primera función?
O simplemente sustituirSELECT_BY_POS porSELECT_BY_TICKET
Depende de lo que necesite comprobar. De hecho, podemos averiguar todo aquí, seleccionar el pedido por precio y luego escribir los parámetros necesarios para ello y devolver todo.
Usar bucles una vez más no es una buena idea, así que es mejor realizar todo en un solo bucle; no se nota en el comercio real, pero las pruebas en el probador se ejecutarán durante mucho tiempo. Sin embargo, todo depende de la tarea, alguien escribe programas para el probador, y alguien para el comercio, por lo que puede utilizar más de un ciclo.
P.D. Si el Asesor Experto es un pipsqueak, por supuesto, es mejor no utilizar un solo ciclo)
Gracias, por alguna razón no funciona así con el lote.
double r=-1;
if (sy=="0") sy=Symbol();
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()>1 && OrderType()<6) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (r>OrderLots() || r==-1) {
r=OrderLots();
}}}}}}}
return(r);
}
¿Cómo devuelvo el lote de la decimocuarta parada de venta en el lote instantáneo= 0,03?
Gracias, por alguna razón no funciona así con el lote.
if (sy=="0") sy=Symbol();
double r=MarketInfo(sy, MODE_MINLOT);
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()>1 && OrderType()<6) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (r>OrderLots()) {
r=OrderLots();
}}}}}}}
return(r);
}
Aquí se busca el lote más alejado del precio
datetime t=0;
double r=-1,l=0;
if (sy=="0") sy=Symbol();
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()>1 && OrderType()<6) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (r>OrderOpenPrice() || r==-1) {
r=OrderOpenPrice();
l=OrderLots();
}}}}}}}
return(l);
}
Gracias, por alguna razón no funciona así con el lote.
double r=-1;
if (sy=="0") sy=Symbol();
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()>1 && OrderType()<6) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (r>OrderLots() || r==-1) {
r=OrderLots();
}}}}}}}
return(r);
}
¿Cómo devuelvo el lote de la decimocuarta parada de venta en la instantánea lote= 0,03?
No la función funciona correctamente, ¿por qué el valor de retorno no es 1 y14 órdenes sino 2?
¿es un probador?
A mí me funciona correctamente.
Aquí se busca el lote más alejado del precio
Gracias, eso tiene sentido. Lo encontré, ahora puedes encontrar todo lo que necesitas saber sobre él )
No la función funciona correctamente, ¿por qué el valor de retorno no es 1 y14 órdenes sino 2?
¿es un probador?
A mí me funciona correctamente.
Gracias, eso tiene sentido. Lo encontré, ahora puedes encontrar todo lo que necesitas saber sobre él )
Para conocer toda la información sobre una orden o una posición, es mejor hacerlo con un ticket
// всё что угодно
}
...¿por qué el valor de retorno no es 1 y14 órdenes sino 2?
Porque yo lo llamo así
Para conocer todos los detalles de una orden o posición, es mejor hacerlo desde el ticket
// всё что угодно
}
Pero para ello, primero tenemos que conocer el billete de la última orden 14
Entonces, ¿se debe seguir buscando primero el orden, como en la primera función?
O simplemente sustituir SELECT_BY_POS por SELECT_BY_TICKET
Pero para ello, primero hay que averiguar el ticket de la última orden 14
Entonces, ¿se debe seguir buscando primero el orden como en la primera función?
O simplemente sustituir SELECT_BY_POS por SELECT_BY_TICKET
Depende de lo que necesite comprobar. De hecho, podemos averiguar todo aquí, seleccionar el pedido por precio y luego escribir los parámetros necesarios para ello y devolver todo.
Usar bucles una vez más no es una buena idea, así que es mejor realizar todo en un solo bucle; no se nota en el comercio real, pero las pruebas en el probador se ejecutarán durante mucho tiempo. Sin embargo, todo depende de la tarea, alguien escribe programas para el probador, y alguien para el comercio, por lo que puede utilizar más de un ciclo.
P.D. Si el Asesor Experto es un pipsqueak, por supuesto, es mejor no utilizar un solo ciclo)