[¡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 38

 
evillive:

Pues bien, aquí está https://www.mql5.com/ru/forum/106619

El Programador de Tareas de Windows, le permite hacer cosas como enviar correo, ejecutar aplicaciones/scripts/botones, etc. en un horario o por señal.

Gracias, lo probaré. Espero que mi guión también sea útil para alguien. Ahora me gustaría poder crear un archivo virtual en la memoria en lugar de uno real y ejecutarlo, y entonces todo estaría en el EA... Aunque, esto es una extravagancia...
 
También existe el asesor EXP_Relogin.
 
Buenas tardes. ¿Puedes decirme cómo optimizar un EA para operar en una cuenta de céntimos?
 

¡Buenos días!

¿Pueden decirme cómo comprobar la apertura y el cierre de una orden de mercado?

Gracias.

 
¡Buenas tardes a todos!
La pregunta es la siguiente, la primera vez que se inicia el indicador se muestra
por el alfabra-cadabra (pic.1). Después de seguir desplazándose por el historial todo es normal (fig.2).

¿Puede decirme cuál es el problema? Abajo si necesitas el código.

#property indicator_separate_window
#property  indicator_buffers 3
#property  indicator_color1  Tomato
#property  indicator_color2  Red
#property  indicator_color3  Blue
#property indicator_level1 0
#property indicator_levelcolor Gray
#property indicator_levelstyle 2

extern int Period_MA = 5;
extern int MA_Line1 = 13;
extern int MA_Line2 = 34;
 
double Brs[],BrsMA1[],BrsMA2[],MathArr[],MathArr1;
int i=0,j=0;
double hvostUp,hvostDn,rast,S;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexBuffer(0,Brs);
   SetIndexStyle(0,DRAW_HISTOGRAM);
   SetIndexBuffer(1,BrsMA1);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(2,BrsMA2);
   SetIndexStyle(2,DRAW_LINE);
   SetIndexLabel(0,"Bars_");
   SetIndexLabel(1,"Bars_MA1");
   SetIndexLabel(2,"Bars_MA2");
     
   ArrayResize(MathArr,Period_MA);
   
 //---- name for DataWindow and indicator subwindow label
   IndicatorShortName("Bars_MA");

   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit(){return(0);}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+

int start() {  

int ncount=IndicatorCounted();
int limit=Bars-ncount-1;

for (int i=0; i<limit; i++)
{

if (High[i+2]>High[i+1] && Low[i+2]>Low[i+1])
{
hvostUp=(High[i+2]-High[i+1])/Point;
hvostDn=(Low[i+2]-Low[i+1])/Point;
rast=(High[i+2]-Low[i+1])/Point;
S=rast-hvostUp-hvostDn;
}

if (High[i+2]<High[i+1] && Low[i+2]<Low[i+1])
{
hvostUp=(MathAbs(High[i+2]-High[i+1]))/Point;
hvostDn=(MathAbs(Low[i+2]-Low[i+1]))/Point;
rast=(High[i+1]-Low[i+2])/Point;
S=rast-hvostUp-hvostDn;
}

if (High[i+2]>=High[i+1] && Low[i+2]<=Low[i+1])
{
S=(High[i+1]-Low[i+1])/Point;
rast=(High[i+2]-Low[i+2])/Point;
}

if (High[i+2]<=High[i+1] && Low[i+2]>=Low[i+1])
{
S=(High[i+2]-Low[i+2])/Point;
rast=(High[i+1]-Low[i+1])/Point;
}

if (High[i+2]<=Low[i+1] || Low[i+2]>=High[i+1])
{
S=0;
rast=1;
}

if(j>=Period_MA-1)j=0;
j++;
 MathArr[j]=(S/rast*100);
 
Brs[i]=iMAOnArray(MathArr,0,Period_MA,0,0,0);
BrsMA1[i]=iMAOnArray(Brs,0,MA_Line1,0,0,0);
BrsMA2[i]=iMAOnArray(Brs,0,MA_Line2,0,0,0);
}   
  return(0);
}

Figura 1

Figura 2

Archivos adjuntos:
bars_ma.mq4  4 kb
 
Leyendo varios foros de forex veo que ocurren cosas desagradables por parte de las empresas de corretaje cuando se opera en vivo. No he visto que pase nada malo con las cuentas demo. Tengo una idea: poner el EA en demo y conectarlo con mi cuenta real y luego conectarlo con mi cuenta demo (a través de ). Por supuesto, unos pocos pips de acuerdo se perderá, pero para las estrategias con más de 10 pips es lo suficientemente bueno, además de la posibilidad de que alguien más para firmar utilizando .
 
¡Que alguien me diga cómo reescribir el guión! Al colocar las órdenes, el script se guía por el precio actual de la Oferta, mientras que el precio de la Apertura es necesario.
 
Estaría bien automatizar este proceso, es decir, hacer este trabajo de antemano en lugar de esperar a que se dispare el beneficio. He mirado todos los scripts publicados, he encontrado uno similar, pero dicen que no funciona. Es por claridad. O hagamos una función que cuando un TP o SL se dispara, el script abre todas las órdenes recién cerradas, sólo en forma pendiente. Muchos comerciantes saben lo que van a hacer en una determinada situación y es muy conveniente hacerlo antes de que la situación se produzca.
 

¿Podría ayudarme, por favor? Cómo cerrar 5 órdenes pendientes con la misma magia.

Gracias de antemano.

 
artem86:

¿Pueden ayudarme, por favor? Cómo cerrar 5 órdenes pendientes con la misma magia.

Gracias de antemano.


Mira en los guiones debe haber uno similar.