[¡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 602

 
L-user:

¿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?

ObjectCreate(name, OBJ_VLINE, window, time,0,0,0);

donde nombre - nombre de la línea,

ventana - el número de la ventana en la que se debe dibujar la línea (tiene que establecerse manualmente en la configuración del indicador que dibujará la línea, porque mql no puede determinar programáticamente la segunda (0 - gráfico principal y 1 - primera subventana)

tiempo - tiempo, en el que se traza la línea

 
keekkenen:

debe ser el indicador, no el Asesor Experto...

La cuestión es que tras el inicio en el nº tick cuando se activa la condición por primera vez

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 la segunda variante

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

¿Y qué valor debería cambiar esta condición a if(PrevSignal <= 0)?
 
41ckm39fi:
¿Y qué valor para cambiar esta condición if(PrevSignal <= 0) ?

Todo lo relacionado con PrevSignal debe ser eliminado por completo, entonces usted tendrá cada nueva barra de comprobar las condiciones y dar una alerta,

si se cumplen una o ambas condiciones...

 
keekkenen:

Todo lo relacionado con PrevSignal debe ser eliminado por completo, entonces usted tendrá cada nueva barra de comprobar las condiciones y dar una alerta,

si se cumplen una o ambas condiciones...

Gracias, ahora intentaré hacerlo.
 
#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);
//----  
                if(MA_buffer1[SIGNAL_BAR] - 0.3 > 0 && 0.3 - MA_buffer1[SIGNAL_BAR+1] >= 0)  
//---- 
                                Alert( "sMA(", Symbol(), ", ", Period(), ")  -  BUY!!!" );
//----
                if(0.7 - MA_buffer1[SIGNAL_BAR] > 0 && MA_buffer1[SIGNAL_BAR+1] - 0.7 >= 0)
//----               
                                Alert("sMA(", Symbol(), ", ", Period(), ")  -  SELL!!!");
                        
   return(0);
  }
He eliminado todo lo relacionado con PrevSignal pero el mensaje no aparece.
 
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????

Me gustaría ver qué tipo de indicadores se utilizan para hacer una imagen tan coherente, si no le importa...
Por cierto, a mí me pasa lo mismo últimamente. Antes me mostraba todos los índices de todas formas, pero ahora no. En absoluto...
Simplemente he llamado a una plantilla con el nombre del EA y me lo muestra automáticamente al probarlo. Con todas mis indulgencias.
 
keekkenen:
busque la división por una variable, 100% encontrará el valor 0 en ella...
Genial... No tengo la división en ninguna parte, sólo la multiplicación. Lo he comprobado todo en primer lugar.
Encontré tal milagro - tenía configurada la variable MA150_1 que, como se puede adivinar fácilmente, lee los valores de iMA en la primera barra, así que tenía un nombre pero su valor no había sido asignado de ninguna manera - no sé por qué el copmiler no se quejó, pero resultó que la división por cero estaba allí. Por supuesto, el valor de la variable era cero ya que no la había asignado, pero no estaba dividiendo nada por ella, sólo estaba comparando por encima y por debajo...
En fin... Lo encontré... :)
 
artmedia70:
Me gustaría ver qué indicadores dan una imagen tan delgada, si no es tan mala...

¿Dónde has visto la foto perfecta?)) Mira los drawdowns después de las órdenes de apertura =) Si miras el drawdown después de abrir una orden, verás los drawdowns después de eso... Y el cierre es en take profit y no en condición... Esto no es bueno... =(

No lo revelaré todavía, lo terminaré todo a mi parecer... Si lo hago, lo enviaré a código base...

 

¿Hay algún umbral para que te paguen? O todos estos EAs son para los tontos que los compran, no sé si la he cagado o no(

 
Mnogo:

¿Hay algún umbral para que te paguen? O todos estos EAs son para los pringados que los compran, no sé si he metido la pata o no(


No sé si he metido la pata o no(!) Para las empresas de corretaje no hay diferencia entre que opere una persona o un robot. Si el cliente quiere retirar su dinero, la empresa de corretaje está obligada a hacerlo (si no hubo violaciones de las normas de esta empresa de corretaje en el proceso de negociación).
Razón de la queja: