Si hay muchos personajes, entonces hay muchas "aperturas".
Gracias, amigo. ¿Cómo puedo hacer para que una transacción al día arrancar en el instrumento actual y no tener en cuenta otros instrumentos (EA se mantiene en varios instrumentos)
sibiriyak73: Gracias amigo. Cómo hacerla una operación al día para arrancar en el símbolo actual y no tener en cuenta otros instrumentos (EA se para en varios símbolos)
- buscar en el historial de órdenes por su número mágico y símbolo, si la hora de apertura (¿o cierre?) de la orden corresponde a la fecha actual, entonces salir de OnTick()
- controlar la "nueva barra" de la TF D1
la primera forma - más escritura, pero en el probador, MT4 funcionará muy rápido; la segunda forma - 3 líneas de código, pero en el probador "masticará" el disco duro y el tiempo de prueba será más largo
Ah, creo que lo entiendo, si tienes un EA parado en varios instrumentos, entonces sólo tienes que añadir una comprobación de que la orden pertenece al EA.
int OPEN=1;
int total=OrdersTotal();
for(int i=0; i<total; i++)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderCloseTime()==0 && OrderSymbol()==Symbol())
{
OPEN=0;
break;
}
}
if(OPEN==1)
{
int ticket1=OrderSend(Symbol(),OP_SELLSTOP,1.5,limit1,10,SL1,TP1,NULL,0,0,clrRed); //Здесь открываем
}
Todo escrito hace mucho tiempo ... hace mucho tiempo.
Este código comprueba lo que ya está en el mercado y lo que está en el historial en caso de que ya esté cerrado hoy.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает флаг торгов сегодня. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isTradeToDay(string sy="", int op=-1, int mn=-1) {
int i, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (TimeDay (OrderOpenTime())==Day()
&& TimeMonth(OrderOpenTime())==Month()
&& TimeYear (OrderOpenTime())==Year()) return(True);
}
}
}
}
}
}
k=OrdersTotal();
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) {
if (TimeDay (OrderOpenTime())==Day()
&& TimeMonth(OrderOpenTime())==Month()
&& TimeYear (OrderOpenTime())==Year()) return(True);
}
}
}
}
}
}
return(False);
}
Saludos. El problema es que si el EA ve una operación abierta en la cuenta, no abre más operaciones. Es como "tienes operaciones abiertas en tu cuenta por qué quieres que haga esto". Tengo que explicarle que no se debe abrir más de una operación en ESTA HERRAMIENTA(EUR USD por ejemplo) porque este EA está abierto en pocos símbolos. Creo que sería un error mostrar todo el código (es un código grande con variables declaradas, etc.).
¿Dónde está el error?
Si hay muchos personajes, entonces hay muchas "aperturas".
Si hay muchos personajes, entonces hay muchas "aperturas".
Gracias amigo. Cómo hacerla una operación al día para arrancar en el símbolo actual y no tener en cuenta otros instrumentos (EA se para en varios símbolos)
- buscar en el historial de órdenes por su número mágico y símbolo, si la hora de apertura (¿o cierre?) de la orden corresponde a la fecha actual, entonces salir de OnTick()
- controlar la "nueva barra" de la TF D1
la primera forma - más escritura, pero en el probador, MT4 funcionará muy rápido; la segunda forma - 3 líneas de código, pero en el probador "masticará" el disco duro y el tiempo de prueba será más largo
(EA se sitúa en varios instrumentos)
Ah, creo que lo entiendo, si tienes un EA parado en varios instrumentos, entonces sólo tienes que añadir una comprobación de que la orden pertenece al EA.
Ah, creo que lo entiendo, si tienes un EA en varios instrumentos, entonces sólo tienes que añadir una comprobación de que la orden pertenece al EA.
Este código abre un gran número de ofertas. La idea es correcta, pero cómo aplicarla correctamente.
Este código abre un gran número de operaciones. La idea es correcta, pero cómo aplicarla correctamente.
Necesitas esto
Función isTradeToDay().
Esta función devuelve el indicador de comercio de hoy
¿Qué se puede adivinar de un trozo de código aquí?
Poner un control, no más de una vez al día.
Chicos ayuda en el asesor necesita para abrir un comercio al día EN LA HERRAMIENTA.
Puedes probar esto
Puedes probar esto.
Todo escrito hace mucho tiempo ... hace mucho tiempo.
Este código comprueba lo que ya está en el mercado y lo que está en el historial en caso de que ya esté cerrado hoy.
¿Qué puedes adivinar de un trozo de código aquí?
Poner un control, no más de una vez al día.