[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 934
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
El problema. Por favor, avisa.
En OrderSelect(0,SELECT_BY_POS,MODE_HISTORY)
La función OrderProfit() devuelve el primer beneficio de la lista del historial,
¿cómo puedo hacer que me devuelva el último beneficio de la lista del historial?
Lo intenté de esta manera:
A=OrdersHistoriTotal();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() no devuelve nada)
)) pero no funciona
Profesionales, por favor, aconsejen cómo arreglar el script. Utilizo un script para exportar los datos
Obtengo 5 archivos con datos en la salida. Quiero obtener un archivo que contenga los datos del primer instrumento, luego los del segundo, etc. No puedo ponerlo todo en un archivo... Gracias.
Profesionales, por favor, aconsejen cómo arreglar el script. Utilizo un script para exportar los datos
Obtengo 5 archivos con datos en la salida. Quiero obtener un archivo que contenga los datos del primer instrumento, luego los del segundo, etc. No puedo ponerlo todo en un archivo... Gracias.
Utilizar la apertura de archivos para leer y escribir, desplazarse al final del archivo y añadir
FileOpen(fname,FILE_WRITE|FILE_READ);
FileSeek()
ayudarte
El problema. Por favor, avisa.
En OrderSelect(0,SELECT_BY_POS,MODE_HISTORY)
La función OrderProfit() devuelve el primer beneficio de la lista del historial,
¿cómo puedo hacer que me devuelva el último beneficio de la lista del historial?
Lo intenté de esta manera:
A=OrdersHistoriTotal();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() no devuelve nada)
)) pero no funciona
Así que la última orden aún no se ha encontrado. Y que es el último. Por la hora de apertura o cierre. Y, por supuesto, no olvides qué instrumento buscar.
aconsejar qué escribir en un EA para un límite duro el volumen máximo de la transacción? acaba de decidir qué volumen para abrir, pero a veces se abre un gran volumen y luego ir a la quiebra, tengo que limitar el máximo 0.5
Si el hombre lo supiera, lo habría hecho él mismo. Pero aquí parece que hay que hacer cambios en el código de otra persona
Gracias
extern double TP=20; // ТР для открываемого ордера
extern double Lot=0.01; // Жестко заданное колич. лотов
datetime time;
//--------------------------------------------------------------- 2 --
int start()
{
int Total;
double
M_0,
M_1;
bool
Ans =false, // Ответ сервера после закрытия
Cls_B=false, // Критерий для закрытия Buy
Cls_S=false, // Критерий для закрытия Sell
Opn_B=false, // Критерий для открытия Buy
Opn_S=false; // Критерий для открытия Sell
//--------------------------------------------------------------- 3 --
// Учёт ордеров
for(int i=OrdersTotal()-1;i>=0;i--)
if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()>1)Total++;
if(Total!=0 || time==Time[1])return;
// Торговые критерии
M_0=iOsMA(NULL,0,13,34,8,0,0); // 0 бар
M_1=iOsMA(NULL,0,13,34,8,0,1); // 1 бар
if (M_1<0 && M_0>0)
Opn_B=true;
if (M_1>0 && M_0<0)
Opn_S=true;
//--------------------------------------------------------------- 7 --
if (Opn_B)
{OrderSend(Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Bid+TP*Point);time=Time[1];}
if (Opn_S)
{OrderSend(Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Ask-TP*Point);time=Time[1];}
}
No funciona, quizás tenga que cambiar algo aquí o ponerlo después del inicio.
He intentado traducir tu código en papel al ruso que entiendo, pero no funciona,
es demasiado complicado, especialmente cuando las condiciones de cada condición se suceden, y una condición de las ocho condiciones.
Por supuesto que no discuto que quien creó este código sea un milagro, pero para mí es una completa perversión (en el buen sentido)
No me da pereza añadir comentarios a cada operación y condición, excepto a la función estándar.