¿Cómo sé que en el historial de esta posición concreta hay algo cerrado?
Abrí una posición con 1.0 lote, la cerré con 0.5, y con 10$ de pérdida. Más tarde cerré otra de 0.25 con 5$ de beneficio. Lo cerraré todo con 50$ de beneficio. De hecho, ahora tengo 50 dólares de beneficio.
¿Cómo cierro -10 dólares y +5 dólares en el cálculo del beneficio actual? Para cerrar con un beneficio de 55 dólares
Ver el comentario de la posición (en mql4) - la parte cerrada tiene un ticket de la parte restante (a#1234556789), la parte restante tiene un ticket de la cerrada (de#123456788) - no recuerdo donde hay huecos - lo verás por ti mismo
Mira el comentario de la posición (en mql4) - la parte cerrada tiene un ticket del resto (a#1234556789), el resto tiene un ticket del cerrado (de#123456788) - no recuerdo donde están los espacios - lo verás por ti mismo
Comparo el comentario de la posición cerrada con el ticket de la abierta, devuelve "0.0"
double prof_cl_pos(string sy="0", int op=-1, int mn=-1) {
datetime ta;
int i, k=OrdersHistoryTotal();
double profit_=0;
string comment="";
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
// comment=OrderComment();if (ticket_op_pos(Symbol(), -1,mn)==OrderComment())
profit_=OrderProfit();
}
}
}
}
}
}
return(profit_);
}
int ticket_op_pos(string sy="", int op=-1, int mn=-1) {
datetime o;
double l=-1;
string comment="";
int ticket, i, k=OrdersTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
ticket=OrderTicket();
}
}
}
}
}
}
return(ticket);
}
[in] Длина извлекаемой подстроки. Если значение параметра равно -1 либо параметр не задан, то будет извлекаться подстрока, начиная с указанной позиции и до конца строки.
ps/ también debe utilizar una sola letra, ya sea mayúscula o minúscula. Desgraciadamente, no existe un protocolo para etiquetar los comentarios, por lo que es posible que algún servidor diga "FROM #" (en mayúsculas); en particular algunos ponen [sl] y otros (sl) al final del comentario en el stop-loss. Y el tamaño del comentario está limitado por cierto. Y así sucesivamente.
¿Cómo sé que en el historial de esta posición concreta hay algo cerrado?
Abrí una posición con 1.0 lote, la cerré con 0.5, y con 10$ de pérdida. Más tarde cerré otra de 0.25 con 5$ de beneficio. Lo cerraré todo con 50$ de beneficio. De hecho, ahora tengo 50 dólares de beneficio.
¿Cómo cierro -10 dólares y +5 dólares en el cálculo del beneficio actual? Para cerrar con un beneficio de 55 dólares
Ver el comentario de la posición (en mql4) - la parte cerrada tiene un ticket de la parte restante (a#1234556789), la parte restante tiene un ticket de la cerrada (de#123456788) - no recuerdo donde hay huecos - lo verás por ti mismo
Mira el comentario de la posición (en mql4) - la parte cerrada tiene un ticket del resto (a#1234556789), el resto tiene un ticket del cerrado (de#123456788) - no recuerdo donde están los espacios - lo verás por ti mismo
Comparo el comentario de la posición cerrada con el ticket de la abierta, devuelve "0.0"
La comparación de un comentario de una posición cerrada con un ticket de una posición abierta, devuelve "0,0".
Del comentario se debe destacar el ticket, es decir, se deben eliminar los caracteres extra como "de #" y "a #". No se hace aquí.
Del comentario hay que destacar el ticket, es decir, eliminar los caracteres extra como "de #" y "a #". Esto no se hace aquí.
¡Exactamente! ¿Cómo se corta "a #"?
tomar la parte sobrante y convertirla en larga
en-5e, hay un regexp rudimentario - será más fácil
encontrar la ocurrencia del carácter/subcadena #
¿Cómo lo encuentro?
¿No funciona la búsqueda del sitio? ¿No tiene documentación en la parte superior de la página?
¿No funciona la búsqueda del sitio? ¿No tiene documentación en la parte superior de la página?
Gracias, he hecho esto.
pero la función de historial de búsqueda comenzó a devolver el beneficio actual en la posición abierta
> Gracias, así es como lo hice.
No vuelvas a hacerlo :-) no puedes confiar en la longitud o el inicio de un fragmento cuando se trata de cadenas indefinidas
Hay una buena función StringFind() - busca "#" o "de #".
ps/ también debe utilizar una sola letra, ya sea mayúscula o minúscula. Desgraciadamente, no existe un protocolo para etiquetar los comentarios, por lo que es posible que algún servidor diga "FROM #" (en mayúsculas);en particular algunos ponen [sl] y otros (sl) al final del comentario en el stop-loss. Y el tamaño del comentario está limitado por cierto. Y así sucesivamente.
¿Cuál es el perjuicio de esta construcción?
¿O es mejor hacer deldatetime un tipo largo?