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

 

¡Hola!

Estoy escribiendo unos TdR y no sé cómo hacer las condiciones cuando el precio cruza la línea,
No tengo ni idea de cómo hacerlo,
Me he decidido por este:


1. si la aperturaestá por debajo y el cierre por encima de la línea, cuenta como cruce de abajo a arriba
2. si se abre por encima y se cierra por debajo de la línea, se cuenta como cruzada desde arriba
3. laapertura y el cierre por encima de la línea y elmáximo por encima y el mínimo por debajo de la línea se consideran cruzados de arriba abajo
4. laapertura y el cierrepor debajo de la líneay elmáximo por encima y el mínimo por debajo de la línea se consideran cruzados de abajo a arriba


Gracias de antemano.



 
Digamma: Estoy escribiendo un ToR y no sé cómo hacer correctamente las condiciones cuando el precio cruza la línea

¿Quizás te baste con analizar dónde estaba la barra anterior, por debajo de la línea o por encima de la línea y dónde se analiza la barra?

es decir, if(High[2] < Y_line && Low[2] < Y_line) // la barra número 2 estaba por debajo de la línea

pero es mejor escribir tal condición if(High[2] < Y_line) - sabemos que High[2] es siempre mayor que Low[2]

SZZ: A partir de sus dibujos es difícil sugerir cómo se movió el precio, siempre parte de la apertura y formará un máximo y un mínimo, en qué secuencia sólo podemos averiguar utilizando el TF inferior, el análisis de cierre en esta situación no tiene sentido, porque cuanto más antiguo es el TF, mayor es el número de veces que el precio actualizó el máximo y el mínimo. ¿Recuerdas cómo el precio hace un nuevo bar en línea?

 
markich:
¿Puede borrar qué y dónde? Para que no borre algo que necesita


Veo que no te han ayudado... Intentémoslo:

0. Cierra el terminal si está abierto.

Busque el archivo del historial aquí: C:\N-Archivos de programa\N-MT4\historia... (en lugar de MT4 - el nombre de su corredor)

2. Aquí seguramente tendrá varias carpetas (historial de la cuenta demo y real), elija la carpeta de la cuenta y busque el archivo "GBPUSD15.hst".

3. Bórralo (o cópialo en otro lugar) e inicia el terminal.

Actualizar el historial (F5)

 
IgorM:

¿Quizás te baste con analizar dónde estaba la barra anterior, por debajo de la línea o por encima de la línea y dónde se analiza la barra?

es decir, if(High[2] < Y_line && Low[2] < Y_line) // la barra número 2 estaba por debajo de la línea

pero es mejor escribir tal condición if(High[2] < Y_line) - sabemos que High[2] es siempre mayor que Low[2]

SZZ: A partir de sus dibujos es difícil suponer cómo se movió el precio, siempre parte de la apertura y formará un máximo y un mínimo, en qué secuencia sólo podemos averiguar utilizando el TF inferior, el análisis de cierre en esta situación no tiene sentido, porque cuanto más antiguo sea el TF, mayor será el número de veces que el precio actualizó el máximo y el mínimo. ¿Recuerdas cómo se forma el precio de un nuevo bar en línea?

Gracias.

¿hay algo más, aparte de los bares, para analizar esta situación?

 
Digamma:

¡Hola!

Estoy escribiendo unos TdR y no sé cómo hacer las condiciones cuando el precio cruza la línea,
No tengo ni idea de cómo hacerlo,
Me he decidido por este:


1. si la aperturaestá por debajo y el cierre por encima de la línea, cuenta como cruce de abajo a arriba
2. la apertura por encima y el cierre por debajo de la línea se consideran cruzados de arriba abajo
3. laapertura y el cierre por encima de la línea y elmáximo por encima y el mínimo por debajo de la línea se consideran cruzados de arriba abajo
4. laapertura y el cierrepor debajo de la líneay elmáximo por encima y el mínimo por debajo de la línea se consideran cruzados de abajo a arriba


Gracias de antemano.



Se han olvidado dos opciones más
 

Señores profesionales. Pregunta.

Qué pasa con los datos del EA cuando se reconecta.

Es decir, hay una variable declarada al principio, digamos a=0, en el proceso de trabajo se le asignará el valor 4. y se reconectará al servidor.

 
Myth63:

Señores profesionales. Pregunta.

Qué ocurre con los datos del EA cuando se reconecta.

Es decir, hay una variable declarada al principio, digamos a=0, en el proceso de trabajo se le asignará el valor 4. y se reconectará al servidor.

Nada cambiará con la variable a y su valor, y si, por ejemplo, se ha asignado una orden, la asignación se cancelará.
 
TarasBY:
Nada cambiará con la variable a y su valor, y si, por ejemplo, se ha asignado una orden, la asignación se cancela.


es decir, los valores de las variables se guardan y el EA comienza a funcionar después de la función de inicio? y no desde el principio? hasta que el archivo de registro muestra que el EA está cargado?

 
Por favor, sugiera un script que muestre la estructura interna de la barra en la que se instala el marcador (icono o línea vertical), es decir, en el TF actual se coloca el marcador en la barra de interés, y debajo se dibuja la estructura interna de la barra con uno de los TF inferiores
 
Ayúdame a tratar con arrays pasados a la función iMAOnArray.
Por alguna razón, esta función sólo funciona con un array de buffers (en el ejemplo de VMA)
y no funcionará con los "normales" (SMA, por ejemplo).

A continuación se presenta un esquema de cómo lo hago en mis programas. ¿Qué pasa?

double MA1[],MA2[],VMA[],SMA[];

int init()
{

   SetIndexBuffer(0,MA1);
   SetIndexBuffer(1,MA2);
   SetIndexBuffer(2,VMA);
   SetIndexEmptyValue(0,0.0);
   SetIndexEmptyValue(1,0.0);
   SetIndexEmptyValue(2,0.0);  
   ArrayResize(SMA,1);  
   ArrayInitialize(SMA,0);

 return(0);
}

int start() 
{  
 
SMA[i]=...........;
VMA[i]=...........;

MA1[i]=iMAOnArray(SMA,0,8,0,0,0); //----этот вариант НЕ работает
MA2[i]=iMAOnArray(VMA,0,8,0,0,0); //----этот вариант всегда работает  
   
  return(0);
}