Ayuda Programando metatrader
Ayuda Programando metatrader
Buenas,
Alguien me puede dar el codigo para poder insertar ordenes limitadas cada "x" pips??
lo he intentado y no tengo forma de que se pongan... solo consigo una pero no como yo quiero..
Amm y bueno esto ya seria perfecto, si alguien sabe de algun experto que mire cuales de las ordenes anteriores se han cerrado y las abra otra vez (pero solo las que se han cerrado...)
Muchas gracias por vuestra ayuda!!
Alguien me puede dar el codigo para poder insertar ordenes limitadas cada "x" pips??
lo he intentado y no tengo forma de que se pongan... solo consigo una pero no como yo quiero..
Amm y bueno esto ya seria perfecto, si alguien sabe de algun experto que mire cuales de las ordenes anteriores se han cerrado y las abra otra vez (pero solo las que se han cerrado...)
Muchas gracias por vuestra ayuda!!
Re: Ayuda Programando metatrader
Al final lo conseguí!!
Mira que era sencillisimo....
Asi se crean 5 ordenes limites...
ahora solo me falta un EA que cada vez que se cierre alguna de las ordenes BUYSTOP me cree otra vez esa misma orden...
Si me podeis ayudar se agredeceria
Mira que era sencillisimo....
Código: Seleccionar todo
double a;
int start()
{
for(int i=1;i<=5;i++)
{ OrderSend(Symbol(),OP_BUYSTOP,0.01,Ask + a+ 0.0020,3,0, Ask+ a +0.0030);
a = a + 0.0020;
}
}
ahora solo me falta un EA que cada vez que se cierre alguna de las ordenes BUYSTOP me cree otra vez esa misma orden...
Si me podeis ayudar se agredeceria
Re: Ayuda Programando metatrader
ya lo tengo solucionado!!
era tambien muy facil.... era con la funcion
alguien sabe donde puedo encontrar en Castellano (si puede ser) para que sirve cada función predefinida?? es que voy tan lento porque me tengo que entretener en buscar por Internet cada cosa que quiero hacer...
Gracias, aunque me estoy respondiendo yo solito!! xD
era tambien muy facil.... era con la funcion
Código: Seleccionar todo
OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY)
Gracias, aunque me estoy respondiendo yo solito!! xD
Re: Ayuda Programando metatrader
- Adjuntos
-
- mql4 manual.pdf
- (840.64 KiB) Descargado 268 veces
-
- Introduccion_a_MQL4.pdf
- (1.98 MiB) Descargado 224 veces
Re: Ayuda Programando metatrader
este es el segundo libro, un saludo.
- Adjuntos
-
- 021 - libro_2.rar
- (1.31 MiB) Descargado 260 veces
Re: Ayuda Programando metatrader
Muchas gracias, le echare un vistazo
Re: Ayuda Programando metatrader
Buenas,
otra vez me he quedado atrancado en un problemita... yo creo k es sencillo pero no me sale, si alguien me puede decir donde me equivoco...
voy a explicar un poco el codigo antes de pegarlo...
lo que quiero hacer es abrir las ordenes cerradas y ponerlas en pendiente... es decir recorrer la lista de historico y compararla con la lista trades, el que no este pues se crea... ahora mismo lo hago buscando en la lista la ultima orden cerrada y creandola pero claro si hay un movimiento muy fuerte de repente se cierran 3 operaciones y solo se abriria la ultima... x eso ahora estoy intentando hacer que revise toda la lista...
aqui va el codigo para recorrer las dos listas...
lo primero que no me cuadra es al seleccionar la orden con select ticket.... en la parte del experto no me aparece la orden... y no se por que ocurre...
las ordenes habria que cambiarlas dependiendo si estan encima o debajo del precio... xo es solo una prueba.
Perdonad por el tocho pero intento que el que me pueda ayudar le quede claro.
GRACIAS!!
otra vez me he quedado atrancado en un problemita... yo creo k es sencillo pero no me sale, si alguien me puede decir donde me equivoco...
voy a explicar un poco el codigo antes de pegarlo...
lo que quiero hacer es abrir las ordenes cerradas y ponerlas en pendiente... es decir recorrer la lista de historico y compararla con la lista trades, el que no este pues se crea... ahora mismo lo hago buscando en la lista la ultima orden cerrada y creandola pero claro si hay un movimiento muy fuerte de repente se cierran 3 operaciones y solo se abriria la ultima... x eso ahora estoy intentando hacer que revise toda la lista...
aqui va el codigo para recorrer las dos listas...
Código: Seleccionar todo
int n, m, precioapertura, precioapertura2, dni, crearorden, comentario, comentario2, dia;
bool encontrado = false;
//----------------------------------------------------------+
int start()
{
dia = TimeDayOfYear(TimeCurrent())-(TimeDayOfWeek(TimeCurrent())+1);
for(n=OrdersHistoryTotal(); n > 0; n--)
{
if ( OrderCloseTime() >= dia)
{
m = OrdersTotal();
while (( m > 0) && (!encontrado))
{
OrderSelect ( m, SELECT_BY_POS, MODE_TRADES);
precioapertura2 = OrderOpenPrice();
if ( OrderComment() == "compra")
{
comentario = 1;
}
else if (OrderComment() == "venta")
{
comentario = 2;
}
else
{
comentario = 0;
}
OrderSelect ( n, SELECT_BY_POS, MODE_HISTORY);
precioapertura = OrderOpenPrice();
dni = OrderTicket();
if ( OrderComment() == "compra[tp]")
{
comentario2 = 1;
}
else if (OrderComment() == "venta[tp]")
{
comentario2 = 2;
}
else
{
comentario2 = 0;
}
if ((precioapertura == precioapertura2) && (comentario == comentario2) && (comentario == 0))
{
crearorden = 1;
encontrado = true;
}
else
{
crearorden = 0;
}
m--;
}
if (crearorden == 0)
{
OrderSelect(dni,SELECT_BY_TICKET);
OrderSend(OrderSymbol(),OP_BUYLIMIT,0.01,OrderOpenPrice(),3,0,OrderTakeProfit(),"compra");
OrderSend(OrderSymbol(),OP_SELLLIMIT,0.01,OrderOpenPrice(),3,0,OrderTakeProfit(),"venta");
}
}
}
}
las ordenes habria que cambiarlas dependiendo si estan encima o debajo del precio... xo es solo una prueba.
Perdonad por el tocho pero intento que el que me pueda ayudar le quede claro.
GRACIAS!!
Re: Ayuda Programando metatrader
if( crearorden==0 )
{
OrderSelect(dni,SELECT_BY_TICKET);
// Aqui a hay que determinar si OrderOpenPrice() de la orden pendiente es mayor o menor que el Bid o el Ask actual.
// porque de ello de pende que la orden "compra" deba ser lanzada como BUYLIMIT o BUYSTOP igual para la "venta"
OrderSend(OrderSymbol(),OP_BUYLIMIT,0.01,,3,0,OrderTakeProfit(),"compra");
OrderSend(OrderSymbol(),OP_SELLLIMIT,0.01,OrderOpenPrice(),3,0,OrderTakeProfit(),"venta");
}
Un saludo.
{
OrderSelect(dni,SELECT_BY_TICKET);
// Aqui a hay que determinar si OrderOpenPrice() de la orden pendiente es mayor o menor que el Bid o el Ask actual.
// porque de ello de pende que la orden "compra" deba ser lanzada como BUYLIMIT o BUYSTOP igual para la "venta"
OrderSend(OrderSymbol(),OP_BUYLIMIT,0.01,,3,0,OrderTakeProfit(),"compra");
OrderSend(OrderSymbol(),OP_SELLLIMIT,0.01,OrderOpenPrice(),3,0,OrderTakeProfit(),"venta");
}
Un saludo.
Re: Ayuda Programando metatrader
elcctrro escribió:if( crearorden==0 )
{
OrderSelect(dni,SELECT_BY_TICKET);
// Aqui a hay que determinar si OrderOpenPrice() de la orden pendiente es mayor o menor que el Bid o el Ask actual.
// porque de ello de pende que la orden "compra" deba ser lanzada como BUYLIMIT o BUYSTOP igual para la "venta"
OrderSend(OrderSymbol(),OP_BUYLIMIT,0.01,,3,0,OrderTakeProfit(),"compra");
OrderSend(OrderSymbol(),OP_SELLLIMIT,0.01,OrderOpenPrice(),3,0,OrderTakeProfit(),"venta");
}
Un saludo.
Gracias por tu respuesta, eso lo se, por eso he puesto que es una prueba lo de lanzar las ordenes... lo que me ocurre esk el bucle no coge las ordenes cerradas... y no se xq, coge algunas y otras no...
Re: Ayuda Programando metatrader
Si estas probando con la Prueba de estrategia" es puede ser normal, ami con expertos que se que funcionan correctamente alguans veces me abre las ordenes y otras no, dicen que es porque simulan los fallos de la operativa normal... pruebalo corriendo en tiempo real sobre la demo.
Un saludo.
Un saludo.
Re: Ayuda Programando metatrader
Estoy utilizando el tiempo real con demo en el experto... creo k tiene k ser algun problema en el código, algo estoy haciendo mal pero no lo veoelcctrro escribió:Si estas probando con la Prueba de estrategia" es puede ser normal, ami con expertos que se que funcionan correctamente alguans veces me abre las ordenes y otras no, dicen que es porque simulan los fallos de la operativa normal... pruebalo corriendo en tiempo real sobre la demo.
Un saludo.

Re: Ayuda Programando metatrader
Si me pasas el expert por email te lo miro.
Un saludo
Un saludo
Re: Ayuda Programando metatrader
guau gracias por la información, muy útil.
Un saludo
Un saludo
Si te ha gustado este hilo del Foro, ¡compártelo en redes!