¿Cómo codificar? - página 294

 

OrderSend(Symbol..... consulta

int ticket=OrderSend(Symbol(),OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

mi pregunta es la siguiente

¿se puede cambiar la parte de symbol( ) para que diga eurusd para que cuando ejecute el script de compra solo compre eurusd...desde cualquier gráfico que lo ejecute?

algo así como

int ticket=OrderSend(eurusd,OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

gracias

 

...

Sí, puede.

Sólo hay que tener cuidado con la carcasa. La llamada debe ser así :

int ticket=OrderSend("EURUSD",OP_BUY,1.0,Ask,3,0,0,"expert comment",255,0,CLR_NONE);
al_shore:
int ticket=OrderSend(Symbol(),OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

mi pregunta es la siguiente:

¿se puede cambiar la parte de symbol() para que diga eurusd y así cuando ejecute el script de compra sólo compre eurusd... desde cualquier gráfico que lo ejecute?

algo así como

int ticket=OrderSend(eurusd,OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

gracias
 

EA no trabaja

Estimados amigos,

Soy nuevo en Forex, aunque no dio error al compilar, no lo hice funcionar, por favor alguien me ayude en lo que está mal con él?

Gracias de antemano

Archivos adjuntos:
test_ea.mq4  128 kb
 

...

No se puede simplemente copiar un código de un indicador a un EA y esperar que funcione (especialmente los indicadores de Nikolay Kostisin que no es conocido por el código simple)

Para empezar, mejor utilizar los indicadores a través de la llamada iCustom() y mantener la lógica de negociación en la EA, de esa manera usted va a obtener una mucho más fácil de escribir EA

kemal44:
Estimados amigos,

Soy nuevo en Forex, aunque no da error al compilar, no lo he hecho funcionar, por favor alguien que me ayude en lo que está mal?

gracias de antemano
 

Cómo codificar el EA de calidad de la volatilidad

¡Saludos a todos !

Soy nuevo en metatrader EA. ¿Cómo puedo codificar el indicador VQ en un EA para operar en el marco de tiempo M15, pero comprar vender base de disparo en Volatility Quality indictor seleccionado marco de tiempo?

Muchas gracias

Archivos adjuntos:
vq7.mq4  8 kb
 

También tendrá que cambiar Ask a MarketInfo("EURUSD", MODE_ASK).

De lo contrario, la operación no tendrá éxito. El Ask será para el símbolo del gráfico.

También tenga en cuenta que algunos brokers añaden otros caracteres antes o después del nombre del símbolo

como "EURUSDm".

Robert

al_shore:
int ticket=OrderSend(Symbol(),OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

mi pregunta es la siguiente

¿se puede cambiar la parte de symbol() para que diga eurusd y así cuando ejecute el script de compra solo compre eurusd...desde cualquier gráfico que lo ejecute?

algo así como

int ticket=OrderSend(eurusd,OP_BUY,1.0,Ask,3,0,0, "expert comment",255,0,CLR_NONE);

gracias
 

...

ymkoh

Compruebe este hilo : https://www.mql5.com/en/forum/general

Hay bastantes versiones de EA utilizando la calidad de la volatilidad allí

ymkoh:
¡Saludos a todos!

Soy nuevo en metatrader EA. El objetivo de este artículo es dar a conocer los resultados de las pruebas realizadas en el marco de la investigación de la calidad de la volatilidad.

Muchas gracias
 
mladen:
ymkoh

Consulte este hilo : https://www.mql5.com/en/forum/general

Hay bastantes versiones de EA utilizando la calidad de la volatilidad allí

¡Gracias por la información!

He probado la mayoría de ellos, pero ninguno puede trabajar.

ejemplos:- EA Trading TF H1 VQ entrada 240.

Sólo funciona en el comercio TF H1 VQ entrada 0 por defecto.

Se adjunta la captura de pantalla muestran ejemplo de comercio TF H1 buysell señal de disparo por VQ indicador H4 marco de tiempo. (No se adjunta el EA)

vq7.mq4

Archivos adjuntos:
 

este tipo de indicador sobre el Exponente de Hurst

Hola, ¿alguien puede ayudarme? Quiero este tipo de indicador sobre el Exponente de Hurst. el código está programado con éxito por el compilador, pero no hay imagen, ¿puede arreglarlo? Gracias.

Los valores del Exponente de Hurst oscilan entre 0 y 1.

* Un valor del Exponente de Hurst H cercano a 0,5 indica un paseo aleatorio (una serie temporal browniana). En un paseo aleatorio no hay correlación entre ningún elemento y un elemento futuro y hay un 50% de probabilidades de que los valores de retorno futuros suban o bajen. Las series de este tipo son difíciles de predecir.

* Existe un valor del Exponente de Hurst H entre 0 y 0,5 para las series temporales con "comportamiento antipersistente". Esto significa que un aumento tenderá a ser seguido por una disminución (o una disminución será seguida por un aumento). Este comportamiento se denomina a veces "reversión de la media", lo que significa que los valores futuros tenderán a volver a un valor medio a más largo plazo. La fuerza de esta reversión de la media aumenta a medida que H se acerca a 0.

* Un valor H del exponente de Hurst entre 0,5 y 1 indica un "comportamiento persistente", es decir, la serie temporal tiene tendencia. Si hay un aumento desde el paso de tiempo [t-1] hasta [t], probablemente habrá un aumento desde [t] hasta [t+1]. Lo mismo ocurre con las disminuciones, ya que una disminución tenderá a seguir a otra. Cuanto mayor sea el valor H, más fuerte será la tendencia. Las series de este tipo son más fáciles de predecir que las de las otras dos categorías.

El cálculo es el siguiente

Paso_A、X= MathLog(Close/Close)

{ el valor de H de una sola R/S

Paso1、E = (1/n)*[X(0)+X(1)+X(2)+...+X(n-1) ]

Paso2、A(0) = X(0) - E

A(1) = X(1) - E

A(2) = X(2) - E

...

A(n-1) = X(n-1) - E

Paso3、SUMA(0) = A(0)

SUMA(1) = A(0)+ A(1)

SUMA(2) = A(0)+A(1) + A(2)

...

SUM(n-1) = A(0)+A(1) + A(2) + ...+ A(n-1)

Paso4、R= Máximo(SUM,n) - Mínimo(SUM,n)

Paso5、H = log(R/S)/log(n/2) // Sea la desviación estándar del conjunto de { X(0),X(1), X(2), ... X(n-1)}

}

Paso_B、calcular H del conjunto de { X(i),X(i+1), X(i+2), ... X(i+n-1)}

Paso_C、calcular H_SMA, que sea suave ,si H_SMA=0.5 entonces la alerta

el código es el siguiente

//+------------------------------------------------------------------+

//| #HURST.mq4 ||

//| chenairbin.

//| Plataforma comercial MetaTrader 4 / MetaQuotes Software Corp.

//+------------------------------------------------------------------+

#property copyright "chenairbin".

#property link "http://www.metaquotes.net"

#property ventana_de_separación_del_indicador

#property indicador_mínimo 0

#property indicador_máximo 1

#property indicator_buffers 7

#property indicador_color7 Amarillo

extern int n=21,S_EMA=8;

extern double Natural=0,5;

double X[],E[],S[],A[],SUM[],H[],C[];

int init()

{

IndicatorBuffers(7);

SetIndexBuffer(0,X);

SetIndexBuffer(1,E);

SetIndexBuffer(2,S);

SetIndexBuffer(3,A);

SetIndexBuffer(4,SUM);

SetIndexBuffer(5,H);

SetIndexStyle(6,DRAW_LINE);

SetIndexBuffer(6,C);

return(0);

}

int inicio()

{

int i

int límite;

int barras_contadas=IndicadorContado();

if(counted_bars<0) return(-1);

if(barras_contadas>0) barras_contadas--;

limit=Barras_contadas;

for (i=límite-1;i>=0;i--)

{

X= MathLog(Close/Close);

}

for (i=limit-1;i>=0;i--)

{

E=iMAOnArray(X,0,n,0,MODE_EMA,i);

S=iStdDevOnArray(X,0,n,0,MODE_EMA,i);

}

for (i=limit-1;i>=0;i--)

{

A=X-E;

}

for (i=limit-1;i>=0;i--)

{

for (int j=0;j<n;j--)

{

for (i=limit-1;0<=i<=j;i--)

{

doble B=0,SUM[];

B=B+A;

SUM[j]=B;

}

}

H=MathLog((SUM[ArrayMaximum(SUM,n,0)]-SUM[ArrayMinimum(SUM,n,0)])/S)/MathLog(n/2);

}

for (i=limit-1;i>=0;i--)

{

C=iMAOnArray(H,0,S_EMA,0,MODE_EMA,i);

}

return(0);

}

//-----------------------------------------------------------

 

Esta parte :

for (i=limit-1;i>=0;i--)

{

for (int j=0;j<n;j--)

{

for (i=limit-1;0<=i<=j;i--) // you are alrady using "i" variable in in the outer loop

{

double B=0,SUM[]; // Sum is an un-initialized array and shoulde be created out of this loop.

B=B+A;

SUM[j]=B;

}

}

H=MathLog((SUM[ArrayMaximum(SUM,n,0)]-SUM[ArrayMinimum(SUM,n,0)])/S)/MathLog(n/2);

}

Comentado donde está el error. Sin la descripción no puedo decir lo que está tratando de lograr con ese código, por lo que no puedo alterarlo.

chenairbin:
Hola, ¿alguien puede ayudarme? quiero este tipo de indicador sobre el exponente de Hurst. el código está programado con éxito por el compilador, pero no hay imagen, ¿puede arreglarlo? ¡Gracias!

Los valores del Exponente de Hurst oscilan entre 0 y 1.

* Un valor del Exponente de Hurst H cercano a 0,5 indica un paseo aleatorio (una serie temporal browniana). En un paseo aleatorio no hay correlación entre ningún elemento y un elemento futuro y hay un 50% de probabilidades de que los valores de retorno futuros suban o bajen. Las series de este tipo son difíciles de predecir.

* Existe un valor del Exponente de Hurst H entre 0 y 0,5 para las series temporales con "comportamiento antipersistente". Esto significa que un aumento tenderá a ser seguido por una disminución (o una disminución será seguida por un aumento). Este comportamiento se denomina a veces "reversión de la media", lo que significa que los valores futuros tenderán a volver a un valor medio a más largo plazo. La fuerza de esta reversión de la media aumenta a medida que H se acerca a 0.

* Un valor H del exponente de Hurst entre 0,5 y 1 indica un "comportamiento persistente", es decir, la serie temporal tiene tendencia. Si hay un aumento desde el paso de tiempo [t-1] hasta [t], probablemente habrá un aumento desde [t] hasta [t+1]. Lo mismo ocurre con las disminuciones, ya que una disminución tenderá a seguir a otra. Cuanto mayor sea el valor H, más fuerte será la tendencia. Las series de este tipo son más fáciles de predecir que las de las otras dos categorías.

El cálculo es el siguiente

Paso_A、X= MathLog(Close/Close)

{ el valor de H a partir de una sola R/S

Paso1、E = (1/n)*[X(0)+X(1)+X(2)+...+X(n-1) ]

Paso2、A(0) = X(0) - E

A(1) = X(1) - E

A(2) = X(2) - E

...

A(n-1) = X(n-1) - E

Paso3、SUMA(0) = A(0)

SUMA(1) = A(0)+ A(1)

SUMA(2) = A(0)+A(1) + A(2)

...

SUM(n-1) = A(0)+A(1) + A(2) + ...+ A(n-1)

Paso4、R= Máximo(SUM,n) - Mínimo(SUM,n)

Paso5、H = log(R/S)/log(n/2) // Sea la desviación estándar del conjunto de { X(0),X(1), X(2), ... X(n-1)}

}

Paso_B、calcular H del conjunto de { X(i),X(i+1), X(i+2), ... X(i+n-1)}

Paso_C、calcular H_SMA, que sea suave ,si H_SMA=0.5 entonces la alerta

el código es el siguiente

//+------------------------------------------------------------------+

//| #HURST.mq4 ||

//| chenairbin.

//| Plataforma comercial MetaTrader 4 / MetaQuotes Software Corp.

//+------------------------------------------------------------------+

#property copyright "chenairbin".

#property link "http://www.metaquotes.net"

#property ventana_de_separación_del_indicador

#property indicador_mínimo 0

#property indicador_máximo 1

#property indicator_buffers 7

#property indicador_color7 Amarillo

extern int n=21,S_EMA=8;

extern double Natural=0,5;

double X[],E[],S[],A[],SUM[],H[],C[];

int init()

{

IndicatorBuffers(7);

SetIndexBuffer(0,X);

SetIndexBuffer(1,E);

SetIndexBuffer(2,S);

SetIndexBuffer(3,A);

SetIndexBuffer(4,SUM);

SetIndexBuffer(5,H);

SetIndexStyle(6,DRAW_LINE);

SetIndexBuffer(6,C);

return(0);

}

int inicio()

{

int i

int límite;

int barras_contadas=IndicadorContado();

if(counted_bars<0) return(-1);

if(barras_contadas>0) barras_contadas--;

limit=Barras_contadas;

for (i=límite-1;i>=0;i--)

{

X= MathLog(Close/Close);

}

for (i=limit-1;i>=0;i--)

{

E=iMAOnArray(X,0,n,0,MODE_EMA,i);

S=iStdDevOnArray(X,0,n,0,MODE_EMA,i);

}

for (i=limit-1;i>=0;i--)

{

A=X-E;

}

for (i=limit-1;i>=0;i--)

{

for (int j=0;j<n;j--)

{

for (i=limit-1;0<=i<=j;i--)

{

double B=0,SUM[];

B=B+A;

SUM[j]=B;

}

}

H=MathLog((SUM[ArrayMaximum(SUM,n,0)]-SUM[ArrayMinimum(SUM,n,0)])/S)/MathLog(n/2);

}

for (i=limit-1;i>=0;i--)

{

C=iMAOnArray(H,0,S_EMA,0,MODE_EMA,i);

}

return(0);

}

//-----------------------------------------------------------

Razón de la queja: