¿Cómo codificar? - página 53

 

Prueba esto...

Poner

double ma_cross;[/CODE] as a global variable.

In the start function :

[CODE]

double ma1=NormalizeDouble(first_ma,Digits);

double ma2=NormalizeDouble(second_ma,Digits);

if(ma1=ma2)

{

ma_cross=ma1;

}

int spread=MarketInfo(Symbol(), MODE_SPREAD);

SLbuy=ma1+spread-SL*Point;

SLsell=ma1+SL*Point;

Espero que esto ayude

 

Cerrar/Abrir operaciones en señal inversa

Tengo un pequeño problema:

En mi EA tengo una BuyCondition y Sell Condition y una orden de cierre para las señales invertidas. Para evitar abrir y cerrar operaciones dentro de la misma barra tengo el siguiente código:

if(OneEntryPerBar==true)

{

if(CheckEntryTime==iTime(NULL,PERIOD_H1,0)) return(0); else CheckEntryTime = iTime(NULL,PERIOD_H1,0);

}

Todo bien. Pero ahora si encuentra una condición de venta durante una operación de compra abierta, cierra la compra, lo cual está bien. Pero no abre la venta porque el código anterior lo impide.

¿Alguna idea de cómo hacer que cierre y abra dentro de 1 barra... pero sólo una vez por barra?

Espero hacerme entender.

Gracias

 

¿Cerrar y cancelar a una hora determinada?

¿Puede alguien ayudarme a configurar un EA que cierre todas las órdenes abiertas y cancele todas las órdenes pendientes a una hora determinada, es decir, a las 5:15 UTC+1?

¿Es posible también especificar no sólo la hora sino la fecha?

 
dxtrade:
Tengo un pequeño problema aquí:

En mi EA tengo una BuyCondition y una Sell Condition y una orden de cierre para las señales invertidas. Para evitar abrir y cerrar operaciones dentro de la misma barra tengo el siguiente código:

if(OneEntryPerBar==true)

{

if(CheckEntryTime==iTime(NULL,PERIOD_H1,0)) return(0); else CheckEntryTime = iTime(NULL,PERIOD_H1,0);

}

Todo bien. Pero ahora si encuentra una condición de venta durante una operación de compra abierta, cierra la compra, lo cual está bien. Pero no abre la venta ya que el código anterior lo impide.

¿Alguna idea de cómo hacer que cierre y abra dentro de 1 barra... pero sólo una vez por barra?

Espero hacerme entender.

Gracias

no se abre por el código que usas arriba.. hasta la siguiente hora..

puedes probar esto..

if (OrderOpenTime() >= iTime(NULL, PERIOD_H1, 0)) order++;

if (order < 1)

{

condiciones de la orden

}

espero que ayude.. no soy un experto.. pero este código no deja de hacerlo más de una vez..

 

Ayúdame Ea

No hablo inglés, quiero añadir Maxtrade y Risk ¿Me ayudan?

Gracias

Archivos adjuntos:
zero.mq4  10 kb
 
wasanmyza:
No hablo inglés, quiero añadir Maxtrade y Risk ¿Me ayudas? Gracias

Hola,

Tienes otros problemas con este EA. Usted está diciendo que le gustaría hacer una compra o venta cuando VAR1, VAR2 o VAR3 ha alcanzado o superado ciertos valores.

Primero debes definir qué es VAR1, 2 y 3? ¿Algún indicador con una configuración específica?

Gracias,

StrangeGuy

 

Tomar ganancias, cancelar todas las demás órdenes

¿Alguien sabe cómo codificar una vez que la orden abierta alcanza el objetivo de ganancias, el resto de las órdenes pendientes se eliminan? Es diferente al oco. He mirado en la sección de élite, pero no hay nada.

 

pregunta

No entiendo la diferencia de dos programas, pero ¿lo enseñaría?

int límite = Bars-IndicatorCounted();

int i ;

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

int barras_contadas=IndicadorContado();

//---- comprobar posibles errores

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

//---- se vuelve a contar la última barra contada

if(counted_bars>0) counted_bars--;

limit=Barras_contadas;

for(i = 0; i <= límite; i++)

 
nakata79087:
No entiendo la diferencia de los dos programas, pero ¿lo enseñaría?

int límite = Bars-IndicatorCounted();

int i ;

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

int barras_contadas=IndicadorContado();

//---- comprobar posibles errores

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

//---- se vuelve a contar la última barra contada

if(counted_bars>0) counted_bars--;

limit=Barras_contadas;

for(i = 0; i <= límite; i++)

La diferencia más importante es la dirección del bucle "for":

El primero escanea las barras siguiendo el tiempo natural, es decir, de la barra más antigua a la más nueva.

El segundo escanea las barras en la dirección opuesta: puede funcionar si el cálculo de una barra no implica el resultado de la barra anterior;

En general es mejor utilizar la misma dirección que el tiempo: siempre funciona y no hay posibilidades de equivocarse.

 

Gracias

¡Gracias por su amabilidad, Michel!

Yo estaba preocupado por un largo tiempo, ¿por qué empezar una firma diferente, aunque dos son ligeras diferencias.