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

 
Yulia:

Ho provato tutto, se metto il valore della barra 20 nel buffer verde allora il rosso viene disegnato ulteriormente, se assegno EMPTY_VALUE al buffer rosso 20, allora il rosso a 20 non viene disegnato. Per favore, mostratemi un esempio, ve ne sarei molto grato

I buffer devono essere riempiti da qualche condizione, per esempio dal numero di barre (dalla 20a alla 40a barra disegniamo in verde):
    while (i >= 0)    
    {    
                
         if (i <= 20 && i >= 40) Buf_0[i] = High[i];                      
         if (i >= 20 && i <= 40) Buf_1[i]= High[i];
         i--;                                
      
    }

P.S. E impara a inserire il codice nei tuoi post - attraverso il pulsante "SRC" (nel menu del campo di inserimento del testo). Qui su di esso più in dettaglio.

 
rigonich:

Le variabili o gli array di variabili sono utilizzati per questo scopo. In effetti, MySQL è anche un array di variabili e un insieme di regole che permettono di lavorare con questo array.

Può fare un esempio?
 
TarasBY:
I buffer dovrebbero essere riempiti da qualche condizione, per esempio dal numero di barre (dalla 20a alla 40a barra disegniamo in verde):

P.S. E impara come inserire il codice nei tuoi post - tramite il pulsante "SRC (nel menu del campo di inserimento del testo). Per saperne di più, leggete qui.

Sì, colpa mia, scusa.

Grazie per il codice. Ci darò un'occhiata.

 
Yulia:

Che razza di uomini siete, non potete aiutare una povera ragazza, tutto quello che chiedo è un'inezia.

Ecco un link al MA colorato, per esempio.https://www.mql5.com/ru/code/9145

Ho solo bisogno di un esempio, ma più semplice e chiaro con una linea colorata sui top o bottom delle barre, senza algoritmi di calcolo.

Per favore, rispondete alla mia richiesta. Grazie in anticipo.

Da solo o con noi, ma non puoi farlo senza un libro di testo! E la povera ragazza ha bisogno di uno sponsor! ;)
 

Posso farle un altro paio di domande?

Il mio indicatore ha due linee, che trascino con il mouse sullo schermo, come la funzione Alert nel terminale, ma più comodo. Ma impazzisce quando si passa a un grafico mensile. Naturalmente non è così importante, ma vorrei sapere il motivo.

// Юляшкин индикатор

#property indicator_chart_window
extern bool                     Активность            = 1;
extern int                      Уровень               = 500;
//--------------------------------------------------------------+
int start() {
    if (Активность == 0) {ObjectSet("Line_up",OBJPROP_COLOR,Gray); ObjectSet("Line_down",OBJPROP_COLOR,Gray); return(0);}
    if (Close[0] > ObjectGet ("Line_up",OBJPROP_PRICE1) || Close[0]< ObjectGet("Line_down",OBJPROP_PRICE1)) 
       PlaySound("alert.wav"); 
return(0);
}
//--------------------------------------------------------------+ 
int init() {
ObjectCreate("Line_up",OBJ_HLINE,0,0,Close[0]+Уровень*Point);
ObjectSet("Line_up",OBJPROP_STYLE,2); 
ObjectSet("Line_up",OBJPROP_COLOR,Yellow);
ObjectCreate("Line_down",OBJ_HLINE,0,0,Close[0]-Уровень*Point); 
ObjectSet("Line_down",OBJPROP_STYLE,2); 
ObjectSet("Line_down",OBJPROP_COLOR,Yellow);
return(0);
}  
//--------------------------------------------------------------+
int deinit() {
ObjectDelete("Line_up");
ObjectDelete("Line_down");   
return(0);
} 
//--------------------------------------------------------------+  
La seconda domanda. mql4 ha delle limitazioni nella creazione di oggetti usando la funzione ObjectCreate?
 
TarasBY:
Affinché la linea sia disegnata in diversi colori (è assemblata da "pezzi" separati di linee di diversi colori), è necessario attivare tanti buffer quanti sono i colori della linea da disegnare.

Nel tuo esempio, sulla ventesima barra i valori devono essere messi nel buffer che disegna la linea verde, e tutti gli altri buffer su quella barra devono avere un valore Empty che non viene disegnato sul grafico. Il valore predefinito è EMPTY_VALUE.


P.S. Il link colorato di MA che hai fornito è elementare e molto chiaro su quello che ti ho scritto sopra.


In generale, è elementare e comprensibile, ma è al di là della portata degli strumenti standard per la costruzione di indicatori, e una persona che sviluppa solo strumenti standard non è elementare e comprensibile. In realtà volevo dire che la funzione standard in una volta può disegnare solo un segmento dai dati di un buffer, e per disegnare il prossimo, si dovrebbe ricordare il precedente, e poi assemblarli insieme.... È tutto possibile, e in modi diversi, ma per qualcuno che fa questo tipo di domande non saranno tutte dirette.
 
Yulia:

Posso farle un altro paio di domande?

Il mio indicatore ha due linee, che trascino con il mouse sullo schermo, come la funzione Alert nel terminale, ma più comodo. Ma impazzisce quando si passa a un grafico mensile. Naturalmente non è così importante, ma vorrei sapere il motivo.

La seconda domanda. mql4 ha delle limitazioni nella creazione di oggetti usando la funzione ObjectCreate?

Cosa significa impazzire?
 
Vinin:

Cosa intendi con "sta uscendo dai binari"?
L'indicatore suona periodicamente PlaySound("alert.wav"), anche se non dovrebbe.
 
rigonich:

Ma è al di là della portata degli strumenti standard per la costruzione di indicatori, e per una persona che sta appena imparando gli strumenti standard è elementare e comprensibile.
Quando si commentano i miei post, spesso si... Non ne ho bisogno (non scrivo di cose che non ho "toccato" o capito), e mettendomi nei panni di coloro per i quali stai cercando di commentare, ci rinuncerei anch'io (da quel posto). Ci sono molte altre rivelazioni che vi aspettano sulla strada per padroneggiare MQL4.
 
Yulia:

Posso farle un altro paio di domande?

Il mio indicatore ha due linee, che trascino con il mouse sullo schermo, come la funzione Alert nel terminale, ma più comodo. Ma impazzisce quando si passa a un grafico mensile. Naturalmente non è così importante, ma vorrei sapere il motivo.

La seconda domanda. mql4 ha delle limitazioni nella creazione di oggetti utilizzando la funzione ObjectCreate?
Per prima cosa, scrivete il prezzo nelle condizioni in una forma più corretta: Close[0] (barra non chiusa) è uguale a Bid. Forse questo cambierà qualcosa nel comportamento del vostro indicatore.