[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 602

 
L-user:

Come posso usare object crate e object set per disegnare una linea orizzontale in una finestra stocastica, per esempio?

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

dove nome - nome della linea,

window - il numero della finestra in cui la linea deve essere disegnata (deve essere impostato manualmente nelle impostazioni dell'indicatore che disegnerà la linea, perché mql non può determinare programmaticamente la seconda (0 - grafico principale e 1 - prima sottofinestra)

tempo - tempo in cui la linea è disegnata

 
keekkenen:

deve essere l'indicatore, non l'Expert Advisor...

Il punto è che dopo l'inizio dell'ennesimo tick, quando la condizione si attiva per la prima volta

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

eseguirà PrevSignal = 1;

e più, dalla condizione if(PrevSignal <= 0)

non ci saranno avvisi. Lo stesso vale per la seconda variante

Se non scatta nessun allarme, significa che non ci sono le condizioni per farlo...

E a quale valore dovrebbe essere cambiata questa condizione if(PrevSignal <= 0) ?
 
41ckm39fi:
E quale valore per cambiare questa condizione if(PrevSignal <= 0) ?

Tutto ciò che riguarda PrevSignal dovrebbe essere rimosso del tutto, allora avrete ogni nuova barra che controlla le condizioni e dà un allarme,

se una o entrambe le condizioni sono soddisfatte...

 
keekkenen:

Tutto ciò che riguarda PrevSignal dovrebbe essere rimosso del tutto, allora avrete ogni nuova barra che controlla le condizioni e dà un allarme,

se una o entrambe le condizioni sono soddisfatte...

Grazie, ora cercherò di farlo.
 
#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);
  }
Ho rimosso tutto ciò che riguarda PrevSignal ma il messaggio non appare.
 
Noterday:

Per favore consigliate come risolvere il problema!

Sto testando un EA da ticks, l'EA usa non solo gli indici standard, ma anche quelli personalizzati iCustom.

Dopo che il test è passato (senza visualizzazione), premo il pulsante Open Chart e appare la seguente schermata:

DOVE SONO GLI INDICATORI utilizzati dall'EA? Ricordo che prima erano mostrati, ma ora non lo sono... Come farli apparire non aggiungendoli manualmente, ma automaticamente, quando si visualizza un grafico dopo il test????

Mi piacerebbe vedere che tipo di induttori danno un'immagine così coerente, se non è troppo male...
A proposito, ho lo stesso problema ultimamente. Prima mi mostrava comunque tutti gli indici, ma ora no. Niente affatto...
Ho semplicemente chiamato un modello con il nome dell'EA e me lo mostra automaticamente durante i test. Con tutte le mie indulgenze.
 
keekkenen:
cercate la divisione per una variabile, al 100% ci troverete il valore 0...
Grande... Non c'è la divisione da nessuna parte, solo la moltiplicazione. Ho controllato tutto, prima di tutto.
Ho trovato un tale miracolo - avevo impostato la variabile MA150_1 che, come si può facilmente intuire, legge i valori di iMA sulla prima barra, quindi avevo un nome ma il suo valore non era stato assegnato in alcun modo - non so perché il copmiler non si sia lamentato, ma è risultato che la divisione per zero era lì. Naturalmente, il valore della variabile era zero perché non l'avevo assegnata, ma non stavo dividendo nulla per essa, stavo solo confrontando over-under...
Comunque... L'ho trovato... :)
 
artmedia70:
Mi piacerebbe vedere quali indicatori danno un'immagine così esile, se non è troppo male...

Dove hai visto la foto perfetta?))) Guardate i drawdown dopo l'apertura degli ordini =) Se guardate il drawdown dopo l'apertura di un ordine, vedrete i drawdown dopo quello ... E la chiusura è su take profit e non su condizione ... Questo non è buono ... =(

Non lo rivelerò ancora, lo finirò tutto nella mia mente... Se lo faccio, lo manderò a code base...

 

C'è una soglia per essere pagati? O tutti questi EA sono per i fessi che li comprano, non so se ho sbagliato o no(

 
Mnogo:

C'è una soglia per essere pagati? O tutti questi EA sono per i fessi che li comprano, non so se ho sbagliato o no(


Non so se ho fatto una cazzata o no(!) Non c'è differenza per le società di brokeraggio se una persona o un robot fa trading. Se il cliente vuole ritirare i suoi soldi, la società di intermediazione è obbligata a farlo (se non ci sono state violazioni delle regole di questa società di intermediazione nel processo di trading).
Motivazione: