[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 313

 
trader_john:

¿Puede decirme qué puede estar causando este fallo?

Funciona, funciona, todo va bien, y de repente, de repente :-(

Y, no sólo se dibujan puntos donde no deberían estar, sino que la ventana de datos también muestra datos incorrectos (pertinentes a la ubicación de los puntos)

(El indicador muestra los extremos, lo escribí yo mismo)

Tras el "rebobinado" de un marco temporal todo se normaliza

Tal vez sepas dónde "cavar". O tal vez ya hay un tema en el foro.

Gracias de antemano.


Escriba un indicador adecuado y los problemas desaparecerán
 
Vinin:

Escriba un indicador adecuado y los problemas desaparecerán


¿Qué quiere decir con normalidad? Si lo supiera, no estaría haciendo preguntas aquí.

Por cierto, el indicador Fractals que descargué en MQL "hace lo mismo".

https://www.mql5.com/ru/code/7982

¿Así que tampoco está escrito correctamente?

 
trader_john:

¿Puede decirme qué puede estar causando este fallo?

Funciona, funciona, todo va bien, y de repente, de repente :-(

Y, no sólo se dibujan puntos donde no deberían estar, sino que la ventana de datos también muestra datos incorrectos (pertinentes a la ubicación de los puntos)

(El indicador muestra los extremos, lo escribí yo mismo)

Tras el "rebobinado" de un marco temporal todo se normaliza

Tal vez usted pueda aconsejarle por dónde "cavar". O tal vez ya hay un tema en el foro.

Gracias de antemano.

Escribí uno similar, me pasó lo mismo que a ti. Me he dado cuenta de que si el indicador se calcula más de un tick, no hay duplicación. Es posible que tenga que añadir una condición más pesada o dormir. Pero no soy programador, sólo una observación.
 
Operr:
Yo estaba escribiendo uno similar, me pasó lo mismo que a ti. Me he dado cuenta de que si el indicador se calcula con más de un tick, no hay duplicación. Añadir una condición más pesada o dormir. Pero no soy programador, sólo una observación.


No lo he entendido bien. ¿Quizás "calcula en más de 1 bar"?

Fractales recordados (MQL4) / Lo he rehecho para empezar a contar desde el compás 3. Es decir, 2 compases deben terminar después de él,

En el indicador original, solía dibujar un "punto"... creo que era en la barra #2...(es decir, también se consideraba la barra cero)

Pero si este punto se rompía antes de 2 barras, se quedaba ahí...

y resultó que no había dos barras más abajo a la derecha, mientras se dibujaba el fractal superior.

Construido en fractales quita por cierto...

Bien... Lo pensaré.

 
Operr:
Añadir una condición más pesada o dormir.
Para información - El sueño no funciona en los indicadores.
 

¿Cómo hago para que el MA cuente uno por alto y otro por bajo?


// Criterios de negociación
MA_1_t=iMA(NULL,0,Period_MA_1,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_1
MA_2_t=iMA(NULL,0,Period_MA_2,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_2
MA_3_t=iMA(NULL,0,Period_MA_3,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_3

if (MA_2_t > MA_3_t + Rastvor*Point) // Si la diferencia entre
{ // .MA_2_t + Rastvor*Point { .MA 2 y 3 grandes
Opn_B=true; // Abrir criterio de compra
Cls_S=true; // Cerrar criterio de venta } (MA_2_t + Rastvor*Point) if (MA_2_t > MA_3PICAL) Vender
}
if (MA_1_t < MA_3_t - Rastvor*Point) // Si la diferencia entre
{ // ..MA 1 y 3 es grande
Opn_S=true; // Criterio abierto Vender
Cls_B=true; // Criterio cerrado Comprar Cls_B=true; // Criterio cerrado Vender } } Vender sólo // MA 1 y 3 es grande. Comprar

}



Quiero que MA_1 se ponga en Alto y MA2 en Bajo

MA_2 se pone en Low

MA_3 debe estar configurado como Close

Y cómo hacer que todos los movimientos sean iguales a la SMA

 
NROST:

¿Cómo hago para que el MA cuente uno por alto y otro por bajo?


// Criterios de negociación
MA_1_t=iMA(NULL,0,Period_MA_1,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_1
MA_2_t=iMA(NULL,0,Period_MA_2,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_2
MA_3_t=iMA(NULL,0,Period_MA_3,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_3

if (MA_2_t > MA_3_t + Rastvor*Point) // si la diferencia entre
{ // ...MA_2 y 3 es grande
Opn_B=true; // Abrir criterio de compra
Cls_S=true; // Criterio de cierre Vender
}
if (MA_1_t < MA_3_t - Rastvor*Point) // Si la diferencia entre
{ // ...MA_1 y 3 es grande
Opn_S=true; //abrir el criterio de venta
Cls_B=true; //Criterio de clic Comprar

}



Quiero que MA_1 se ponga en Alto y MA2 en Bajo

MA_2 se pone en Low

MA_3 debe estar configurado como Close

Y cómo hacer que todas las zonas sean SMA



Todas las respuestas están ahí
 
Vinin:

Todas las respuestas están ahí.
gracias
 

Amigos, se necesita su ayuda.

Hay condiciones de negociación, definidas como: Comprar si la línea %D de los estocásticos cruza 30, la barra anterior debe ser inferior a 29 (por lo que la barra cruza de abajo hacia arriba). En el probador establecí un marco de tiempo corto en un marco de tiempo por hora para contar el número de señales manualmente y compararlo con las lecturas del EA. Debería obtener 6 señales, pero el EA sólo muestra un muro de texto con señales de compra, y lo ideal sería que sólo hubiera 6.


Aquí está el código del Asesor Experto, ¿puede alguien decirme qué estoy haciendo mal?


// Значения торговли
extern double TP = 100;
extern double Lots = 0.1;
extern double SL = 50;
// Значения стохастика
extern int Dperiod = 24;
extern int Kperiod = 3;
extern int Slowing = 6;
extern int St_buy = 30;
extern int St_sell = 70;
int signal;
int ticket;



int Stoch(int st_bars = 0, int st_type = 0){  // 1 параметр - бары, 2 параметр - тип линии.

   int st_result;
   
   if (st_type == 0 || st_type == 1 && st_bars >= 0){
      st_result = iStochastic(NULL,0,Dperiod,Kperiod,Slowing,MODE_SMA,0,st_type,st_bars);
      if (st_result > -1) return(st_result);
   }
   else return(-1);
   
   return(0);
}

int Criterion() // 10 - open buy, 11 - close buy, 20 - open sell, 21 - close sell.
{
   int St_M, St_S;
   St_M = Stoch();
   St_S = Stoch(0,1);
  
   if (St_M >= St_buy && Stoch(1,0) < (St_buy-1)) return(10);
   
   return(0);
}

int start()
{
   if (Criterion() == 10 && AccountFreeMargin() > Lots*5000){
      
    ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Bid - SL * Point, Ask + TP * Point, "My order #", 16384, 0, Green);
   }
   return(0);
}
 
trader_john:

¿Puede decirme qué puede estar causando este fallo?

Funciona, funciona, todo va bien, y de repente, de repente :-(

Y, no sólo se dibujan puntos donde no deberían estar, sino que la ventana de datos también muestra datos incorrectos (pertinentes a la ubicación de los puntos)

(El indicador muestra los extremos, lo escribí yo mismo)

Tras el "rebobinado" de un marco temporal todo se normaliza

Tal vez sepas dónde "cavar". O tal vez ya hay un tema en el foro.

Gracias de antemano.


Todo lo anterior ya ha sido robado - es como la versión 5 de MasterForex... También existe la versión 4, pero aún no la encuentro, si la necesitas la encontraré.