Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1285

 
Vitaly Muzichenko:

L'ho fatto:

La differenza è insignificante e anche accettabile. Ma se l'utente decide di cambiare lo spessore o il colore, questi devono essere impostati nei parametri di input poiché hanno delle variabili, il tuo codice non li cambierà senza rimuovere la tendenza.

In generale, non c'è bisogno di discutere sui gusti dei marcatori.

 
Alexey Viktorov:

Decisione completamente sbagliata. La cancellazione di un oggetto grafico e l'aggiornamento di un grafico non si sostituiscono in alcun modo.

Nel mio esempio, prima controlliamo se c'è un oggetto, in particolare una tendenza con il nome tfyu, che è nome nel layout della tastiera russa)). Poi, se non esiste, si disegna la tendenza. Se il tentativo di disegno non ha successo, il messaggio viene visualizzato e la funzione esce con return false.

Tutto ciò che viene dopo, indipendentemente dal fatto che il trend sia già presente o sia stato appena disegnato, gli vengono assegnati i parametri specificati, i prezzi di tempo e coordinate, il tipo, lo spessore e qualsiasi altra cosa si possa aggiungere. Dopo di che il grafico viene aggiornato e la funzione restituisce true.

Per la velocità di esecuzione, sarà meno costoso controllare la presenza della tendenza che cancellarla e disegnarne una nuova.

Ma... la decisione finale spetta a te e se ti piace grattarti l'orecchio sinistro con il mignolo destro, non ho il diritto di fermarti.

Grazie mille. Seguirò il tuo consiglio e rifarò il codice.

 
Vitaly Muzichenko:

Lo sono:

Grazie mille. Rifarò il codice. L'ho già rifatto, è tutto ok.

 
string obj_symbol=ObjectGetString(ChartID(),obj_name,OBJPROP_SYMBOL);

Non funziona affatto? Restituisce un carattere oggetto per qualcuno? Ottengo sempre una stringa vuota.

O deve prima impostare questa proprietà...?

 
leonerd:

Non funziona affatto? Restituisce un carattere oggetto per qualcuno? Ottengo sempre una stringa vuota.

O è necessario impostare prima questa proprietà...?

È una proprietà specifica - per un oggetto "Chart" restituisce un simbolo. E per quale tipo di oggetto state cercando di ottenere un simbolo?

 
Vladimir Karputov:

Questa è una proprietà specifica - per un oggetto "Chart" restituisce un simbolo. E per quale tipo di oggetto state cercando di ottenere un simbolo?

Per un triangolo. Come fai a sapere il suo "simbolo"?

 
leonerd:

per un triangolo. Come fai a sapere il suo "simbolo"?

Cosa vuoi dire? Qual è il simbolo dell'oggetto triangolo?

 
Vladimir Karputov:

Cosa vuoi dire? Qual è il simbolo dell'oggetto Triangolo?

Come si fa a sapere su quale tabella dei simboli è stato creato l'oggetto Triangolo?

Per esempio, in OnChartEvent(). O nella lista degli oggetti, quando si passa attraverso la lista, come si fa a sapere su quale tabella dei simboli è disegnato l'oggetto?

 
leonerd:

Come faccio a sapere su quale grafico dei simboli è stato creato l'oggetto Triangolo?

Per esempio, in OnChartEvent(). O nella lista degli oggetti, quando si passa attraverso la lista, come trovare il grafico del simbolo su cui è disegnato l'oggetto.

OnChartEvent si attiva solo per il simbolo corrente - in questo caso non ha senso riconoscere il simbolo: è sempre posizionato.

Il secondo modo è quello di bypassare la lista di tutti i grafici - ObjectFind.

 
Vladimir Karputov:

OnChartEvent si attiva comunque solo per il simbolo corrente - in questo caso non ha senso riconoscere il simbolo: è sempre posizionato.

Il secondo modo è quello di bypassare la lista di tutti i grafici - ObjectFind.

OK, grazie