[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 601

 

¿Cómo puedo utilizar la caja de objetos y el conjunto de objetos para dibujar una línea horizontal en una ventana estocástica, por ejemplo?

 

¿Cómo puedo utilizar la caja de objetos y el conjunto de objetos para dibujar una línea horizontal en una ventana estocástica, por ejemplo?

 

Quiero utilizar los volúmenes de Ramus en MT4, parecen tener volúmenes más realistas.

 

Por favor, aconséjeme cómo resolver el problema.

Estoy probando un EA por ticks, el EA utiliza no sólo los índices estándar, sino también los personalizados de iCustom.

Una vez superada la prueba (sin visualización), pulso el botón Abrir gráfico y aparece la siguiente pantalla:

¿DÓNDE ESTÁN LOS INDICADORES utilizados por la EA? Recuerdo que antes se mostraban, pero ahora no... Cómo hacer que aparezcan no añadiéndolos manualmente, sino automáticamente, al visualizar un gráfico después de probar????

 
Buenas tardes a todos. Por favor, indíqueme cómo se puede conectar un sonido al indicador. Aunque en programación sigo siendo un tonto, tal vez alguien añada sonido a un indicador a su antojo. Se lo agradecería.
Archivos adjuntos:
 
¿De dónde viene la división por cero? Un minuto está funcionando en el probador, luego hr-r-r-r... y no funciona... y no abre ninguna posición. Miro en el registro y hay una división de cero y no tose... Y en cuanto ejecuto el probador (está en pausa), ni siquiera llega a los criterios de apertura... ... inmediatamente dividimos algo por cero y ya no funciona... Una cosa sería si cambiara algo en el código... Pero como es... es un milagro...
¿Alguien ha experimentado un milagro así?
 
#property  indicator_level1 0.3
#property  indicator_level2 0.7
//---- 
extern int        period_MA            = 5,
                  period_DeMarker      = 14;
//---- 
double            DeMarker_buffer0[],
                  MA_buffer1[],
                  Signal_Buffer2[];
                  
#define SIGNAL_BAR 1
//+------------------------------------------------------------------+
//|   
//+------------------------------------------------------------------+
int start()
  {
  int    i,limit=ArraySize(DeMarker_buffer0);
         ArraySetAsSeries(DeMarker_buffer0,false);
  int    counted_bars=IndicatorCounted();
//----
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
//----
  for(i=limit; i>=0; i--)
  DeMarker_buffer0[i]=iDeMarker(NULL,0,14,1);
//---- 
  for(i=limit; i>=0; i--)
  MA_buffer1[i]=iMAOnArray(DeMarker_buffer0,limit,5,0,MODE_LWMA,i);
//---- 
          static int PrevSignal = 0, PrevTime = 0;
//---- 
          if(SIGNAL_BAR > 0 && Time[0] <= PrevTime) 
              return(0);
//---- 
          PrevTime = Time[0]; 
//---- 
          if(PrevSignal <= 0)
            {
//---- 
                if(MA_buffer1[SIGNAL_BAR] - 0.3 > 0 && 0.3 - MA_buffer1[SIGNAL_BAR+1] >= 0)
                   {
//---- 
                           PrevSignal = 1;
//---- 
                                Alert( "MA(", Symbol(), ", ", Period(), ")  -  BUY!!!" );
                       }
            }
//----
          if(PrevSignal >= 0)
            {
                     if(0.7 - MA_buffer1[SIGNAL_BAR] > 0 && MA_buffer1[SIGNAL_BAR+1] - 0.7 >= 0)
                       {
                                PrevSignal = -1;
                                Alert("MA(", Symbol(), ", ", Period(), ")  -  SELL!!!");
                       }
            }
//----  
   return(0);
  }
                   
He escrito un EA de este tipo, pero no muestra ningún mensaje por alguna razón. ¿Puede decirme qué le pasa?
 
41ckm39fi:
He escrito un EA de este tipo pero no muestra ningún mensaje. Por favor, indique cuál es el error.

Esto podría ser el indicador, no el Asesor Experto...

La cosa es que después de ejecutarlo en un nth tick cuando la primera vez que se activa la condición

if(MA_buffer1[SIGNAL_BAR] - 0,3 > 0 && 0,3 - MA_buffer1[SIGNAL_BAR+1] >= 0)

ejecutará PrevSignal = 1;

y más, por la condición if(PrevSignal <= 0)

no habrá alertas... Lo mismo ocurre con las alertas del segundo tick...

Si no se activa ninguna alerta, significa que no se dan las condiciones para ello...

 
artmedia70:
¿De dónde viene la división por cero? Un minuto está funcionando en el probador, luego hr-r-r-r... y no funciona... y no abre ninguna posición. Miro en el registro y hay una división de cero y no tose... Y en cuanto ejecuto el probador (está en pausa), ni siquiera llega a los criterios de apertura... ...inmediatamente dividimos algo por cero y ya no funciona... Una cosa sería si cambiara algo en el código... Pero como es... es un milagro...
¿Alguien ha experimentado un milagro así?
Busca la división por una variable, 100% encontrarás el valor 0 en ella...
 
Noterday:

Por favor, aconséjeme cómo resolver el problema.

Estoy probando un EA por ticks, el EA utiliza no sólo los índices estándar, sino también los personalizados de iCustom.

Una vez superada la prueba (sin visualización), pulso el botón Abrir gráfico y aparece la siguiente pantalla:

¿DÓNDE ESTÁN LOS INDICADORES utilizados por la EA? Recuerdo que antes se mostraban, pero ahora no... Cómo hacer que aparezcan, no añadiéndolos manualmente, sino automáticamente, al ver un gráfico después de probar????

parece que los indicadores llamados a través de iCustom() no deberían mostrarse. todos los indicadores i (iMa() etc.) se muestran, pero hay una función para ocultar dichos indicadores HideTestIndicators()