Ayuda: crear alarma en Metatrader

¿Tiene dudas sobre el trading con divisas? No se preocupe, FXWizard tiene todas las respuestas.

Ayuda: crear alarma en Metatrader

Notapor RSA » 15 Abr 2010, 15:44

Buenas a todos necesito crearme una alarma que me avise de lo siguiente, yo soy incapaz de hacer nada con el Metaquote y he bajado algunas alarmas o avisos de cruce de medias y no he conseguido mi propósito.
Básicamente lo que quiero es:
En gráficos de 1 hora,
que me indique cuando una SMA(200)=SMA(10)
Muchas gracias a todos y buenos pips
RSA
 
Mensajes: 6
Registrado: 28 Oct 2009, 10:03
Karma: 0

Re: Ayuda: crear alarma en Metatrader

Notapor FXWizard » 15 Abr 2010, 16:38

Hola RSA, sube aquí el indicador o pega el código de alguno de esos indicadores para ver qué se nos ocurre :)

Saludos,
FXWizard
Avatar de Usuario
FXWizard
 
Mensajes: 8493
Registrado: 12 Feb 2008, 15:17
Karma: 35

Re: Ayuda: crear alarma en Metatrader

Notapor RSA » 15 Abr 2010, 17:34

hola FXWizard, me descarge de vuestra pagina el archivo
EMA-Crossover_Signal.mq4 pero no se que modificar para que se adapte a SMA 200 y SMA 10, además tengo otras dos SMA de 50 y 100, todas ellas en cierre pero no se que modificar para que me avise cuando cruzan la de 200 y la de 10. Además cuando intento meter este fichero en el gráfico no lo coge. Te pongo el código por si acaso

Código: Seleccionar todo
property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 SeaGreen
#property indicator_color2 Red

double CrossUp[];
double CrossDown[];
extern int FasterEMA = 4;
extern int SlowerEMA = 8;
extern bool SoundON=true;
double alertTag;
 double control=2147483647;
 
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0, DRAW_ARROW, EMPTY,3);
   SetIndexArrow(0, 233);
   SetIndexBuffer(0, CrossUp);
   SetIndexStyle(1, DRAW_ARROW, EMPTY,3);
   SetIndexArrow(1, 234);
   SetIndexBuffer(1, CrossDown);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
   int limit, i, counter;
   double fasterEMAnow, slowerEMAnow, fasterEMAprevious, slowerEMAprevious, fasterEMAafter, slowerEMAafter;
   double Range, AvgRange;
   int counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;

   limit=Bars-counted_bars;
   
   for(i = 0; i <= limit; i++) {
   
      counter=i;
      Range=0;
      AvgRange=0;
      for (counter=i ;counter<=i+9;counter++)
      {
         AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
      }
      Range=AvgRange/10;
       
      fasterEMAnow = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      fasterEMAprevious = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i+1);
      fasterEMAafter = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, i-1);

      slowerEMAnow = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      slowerEMAprevious = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i+1);
      slowerEMAafter = iMA(NULL, 0, SlowerEMA, 0, MODE_EMA, PRICE_CLOSE, i-1);
     
      if ((fasterEMAnow > slowerEMAnow) && (fasterEMAprevious < slowerEMAprevious) && (fasterEMAafter > slowerEMAafter)) {
         CrossUp[i] = Low[i] - Range*0.5;
      }
      else if ((fasterEMAnow < slowerEMAnow) && (fasterEMAprevious > slowerEMAprevious) && (fasterEMAafter < slowerEMAafter)) {
          CrossDown[i] = High[i] + Range*0.5;
      }
        if (SoundON==true && i==1 && CrossUp[i] > CrossDown[i] && alertTag!=Time[0]){
         Alert("EMA Cross Trend going Down on ",Symbol()," ",Period());
        alertTag = Time[0];
      }
        if (SoundON==true && i==1 && CrossUp[i] < CrossDown[i] && alertTag!=Time[0]){
       Alert("EMA Cross Trend going Up on ",Symbol()," ",Period());
        alertTag = Time[0];
        }
  }
   return(0);
}
RSA
 
Mensajes: 6
Registrado: 28 Oct 2009, 10:03
Karma: 0

Re: Ayuda: crear alarma en Metatrader

Notapor RSA » 15 Abr 2010, 20:17

Creo que he conseguido mi proposito manipulando el archivo, de todas formas gracias por atenderme.
Un saludo
RSA
RSA
 
Mensajes: 6
Registrado: 28 Oct 2009, 10:03
Karma: 0

Re: Ayuda: crear alarma en Metatrader

Notapor FXWizard » 16 Abr 2010, 10:16

OK RSA, si quieres de todas formas pega el código del nuevo indicador y te lo reviso por si veo algo raro.

Saludos,
FXWizard
Avatar de Usuario
FXWizard
 
Mensajes: 8493
Registrado: 12 Feb 2008, 15:17
Karma: 35

Re: Ayuda: crear alarma en Metatrader

Notapor RSA » 16 Abr 2010, 10:25

El código es el mismo salvo que en vez de seleccionar exponencial, selecciona simple. El error era fundamentalmente que lo estaba intentando cargar como expert y realmente tenía que ir como indicador, por eso no me funcionaba. Es lo que tiene no tener ni idea de metatrader.
Muchas gracias por tu atención
RSA
 
Mensajes: 6
Registrado: 28 Oct 2009, 10:03
Karma: 0

Re: Ayuda: crear alarma en Metatrader

Notapor DarthHunter » 20 Abr 2010, 18:19

Buen dia

RSA, si aun no logras lo que deseas, me cuentas que puedo ayudarte con el tema.
Darth Hunter
Avatar de Usuario
DarthHunter
 
Mensajes: 97
Registrado: 24 Abr 2009, 23:32
Karma: 0

Re: Ayuda: crear alarma en Metatrader

Notapor RSA » 21 Abr 2010, 00:55

Ya he conseguido mas o menos hacer lo que quería. Muchas gracias a todos por vuestra ayuda
RSA
 
Mensajes: 6
Registrado: 28 Oct 2009, 10:03
Karma: 0

Siguiente

Volver a Pregunte a FXWizard

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron