[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. No puedo ir a ningún sitio sin ti - 4. - página 372
Ver la ayuda para los parámetros y códigos de error de OrderSend
3 - parámetros erróneos.
Te faltó una y en lugar de fecha de caducidad, escribiste color flecha_color
Lo siento por las preguntas estúpidas, este es mi primer EA que estoy tratando de escribir por mí mismo, todos mis problemas comenzaron cuando añadí la función de rastro, es por eso que me dirigí a usted para la ayuda en la solución de mis errores
La esencia de la estrategia: Entrada por señal estocástica (5,14,3) salida también por estocástica, pero con otro periodo (5,3,3). No entiendo cómo hacer una salida por estocástico y no por señal inversa. Tengo un problema y no tengo ni idea de cómo se puede solucionar, voy a intentar explicarlo. Así, en el código que he publicado, hay 2 funciones
//+------------------------------------------------------------------+//| подготовить массив тикетов для закрытия |//+------------------------------------------------------------------+void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9])
{
int size=ArrayRange(arrayTickets,0);
//----if (size==0) return;
int i,type,ticket,closeSize;
for (i=0;i<size;i++)
{
type=arrayTickets[i][1];
// если тип ордера не рыночный, то пропускаемif (type>OP_SELL) continue;
if (Revers) // перевернем тип рыночного ордера
{
if (type==OP_BUY) type=OP_SELL; else type=OP_BUY;
}
// тут решаем для каждого открытого ордера его судьбу// оставить в рынке или добавить в массив на закрытиеif (type==OP_BUY)
{
//// код разрешающий оставить покупку// как примерif (signal==OP_BUY) continue;
}
if (type==OP_SELL)
{
//// код разрешающий оставить продажу// как примерif (signal==OP_SELL) continue;
}
closeSize=ArrayRange(ticketsClose,0);
ArrayResize(ticketsClose,closeSize+1);
ArrayResize(lots,closeSize+1);
ticketsClose[closeSize][0] = arrayTickets[i][0]; // # тикета
ticketsClose[closeSize][1] = arrayTickets[i][1]; // тип ордера// здесь укажем сколько лотов нужно закрыть
lots[closeSize] = arrayTickets[i][2]; // закрываемый объем// можно закрывать частично, тогда нужно переписать строку сверху
}
//----return;
}
//+------------------------------------------------------------------+//| Закрывает ордера с указанными тикетами |//+------------------------------------------------------------------+void CloseMarketOrders(int ticketsArray[][2], double lotsArray[])
{
//----int i,size=ArrayRange(ticketsArray,0);
if (size==0) return;
int ticket,type;
double lots;
bool res;
int total=OrdersTotal();
for (i=0;i<size;i++)
{
ticket = ticketsArray[i][0];
type = ticketsArray[i][1];
lots = lotsArray[i];
RefreshRates(); // на всякий случай обновим сведения о рыночном окружении// блок закрытия покупокif (type==OP_BUY)
{
res = OrderClose(ticket,lots,Bid,Slippage,Orange);
if (!res)
{
Print("Не удалось закрыть ордер в покупку #",ticket,"! Ошибка №",GetLastError());
// дальнейшая обработка ошибки, написать самостоятельно
}
}
// блок закрытия продажif (type==OP_SELL)
{
res = OrderClose(ticket,lots,Ask,Slippage,Orange);
if (!res)
{
Print("Не удалось закрыть ордер в продажу #",ticket,"! Ошибка №",GetLastError());
// дальнейшая обработка ошибки, написать самостоятельно
}
}
}
//----return;
}
En el void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9]) tenemos que poner una condición que decida si debemos dejar o cerrar la orden. He intentado poner condiciones pero nada funciona.... ¿Puede alguien mirar y mostrar si hay un error en estas funciones o me confundí....
Hola. Después de ejecutar el Asesor Experto en el probador, necesito obtener información sobre el volumen total de operaciones realizadas en lotes (por ejemplo, en los registros). El Asesor Experto tiene el bloque MM habilitado, las operaciones se ejecutan en % de los fondos libres, por lo que la simple multiplicación por el número de operaciones no funciona. ¿Existe una función estándar que proporcione esta información (como OrderLots, pero con el importe total)? Si no existe tal función, ¿puede alguien sugerir un código sencillo para realizar esta tarea? Gracias.
¿cómo abrir los puertos para mt4 en el módem ADSL a través de WIFI? Voy a Internet en 6 DTs. modelo tp-link W8901G leer que se puede abrir los puertos para torents puede alguien cara?
¿cómo abrir los puertos para mt4 en el módem ADSL a través de WIFI? Voy a Internet en 6 DTs. modelo tp-link W8901G leer que se puede abrir los puertos para torents puede alguien cara?
Ahora al probar no abre ni una sola operación en el registro escribe Open_BuyS_SellS EURUSD,Daily: OrderSend error 131
El error 131 es un volumen incorrecto. Pruebe con el lote 1 por ejemplo, puede que no se le permita abrir con el lote 0,01.
El error 131 es un volumen incorrecto. Pruebe con el lote 1 por ejemplo, puede que no se le permita abrir con el lote 0,01.
Por la tarde. Ahora escribe Open_BuyS_SellS EURUSD,H4: OrderSend error 3
Buen día. Ahora dice Open_BuyS_SellS EURUSD,H4: OrderSend error 3
Ver la ayuda para los parámetros y códigos de error de OrderSend
3 - parámetros erróneos.
Te faltó una y en lugar de fecha de caducidad, escribiste color flecha_color
Ver la ayuda para los parámetros y códigos de error de OrderSend
3 - parámetros erróneos.
Te faltó una y en lugar de fecha de caducidad, escribiste color flecha_color
Tengo un problema y no tengo ni idea de cómo se puede solucionar, voy a intentar explicarlo.
Así, en el código que he publicado, hay 2 funciones
En el void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9]) tenemos que poner una condición que decida si debemos dejar o cerrar la orden.
He intentado poner condiciones pero nada funciona....
¿Puede alguien mirar y mostrar si hay un error en estas funciones o me confundí....
¿cómo abrir los puertos para mt4 en el módem ADSL a través de WIFI? Voy a Internet en 6 DTs. modelo tp-link W8901G leer que se puede abrir los puertos para torents puede alguien cara?
¿cómo abrir los puertos para mt4 en el módem ADSL a través de WIFI? Voy a Internet en 6 DTs. modelo tp-link W8901G leer que se puede abrir los puertos para torents puede alguien cara?
Ver http://megatorrents.org/forum/viewtopic.php?t=262709