[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 367
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Tre massimi per il periodo, non il più recente. O meglio, non necessariamente l'ultimo.
Guardate: avete un array con dei valori. Devi trovare tre massimi in questa matrice. Non devono essere l'ultimo o il primo nella matrice della serie temporale. Devi solo trovare i tre massimi.
1. Copiamo il vostro array in uno temporaneo (li cercheremo nell'array temporaneo):
int ArrayCopy( oggetto &dest [], oggetto source[], int start_dest=0, int start_source=0, int count=WHOLE_ARRAY)
Copia una matrice in un'altra. Gli array devono essere dello stesso tipo. Gli array di tipo double[], int[], datetime[], color[], e bool[], possono essere copiati come array dello stesso tipo.Restituisce il numero di elementi copiati.
2. cerca il valore massimo nell'array temporaneo:
int ArrayMaximum( double array[], int count=WHOLE_ARRAY, int start=0)
Cerca l'elemento con il valore massimo. La funzione restituisce la posizione dell'elemento massimo nella matrice.3. Salva l'indice trovato nell'array (ad esempio MassIndexMaxValue[])
4. azzerare il valore del massimo trovato nell'array del tempo - basta scrivere zero lì
5. Cerca di nuovo il prossimo valore massimo nell'array temporaneo (l'indice del primo che abbiamo trovato è già memorizzato in MassIndexMaxValue[] e il valore di questo massimo è azzerato)
Questo ciclo va avanti fino a quando non troviamo il numero richiesto di valori massimi nell'array temporaneo.
MassIndexMaxValue[] conterrà ora gli indici del numero richiesto di valori massimi nel vostro array.
Azzeriamo la dimensione dell'array temporaneo - non c'è motivo di intasare la memoria
È così che va...
ZS... Ho solo fatto un rapido schizzo sul posto... Potrei aver commesso un errore - ero sveglio mentre scrivevo e non ho controllato nulla, ma la funzione ha qualcosa come questo contenuto:
Quando si chiama:
FindMaxValue(Ваш_Массив_Значений, MassIndexMaxValue, 3);
... L'array int MassIndexMaxValue[] definito in precedenza deve contenere gli indici dei tre valori massimi trovati in your_Array_Value[];
Non riesco a capire come si calcola la percentuale di profitto per scambio e la percentuale di perdita per scambio. Puoi dirmelo?
http://www.assessor.ru/forum/index.php?t=822
Guardate: avete un array con dei valori. Devi trovare tre massimi in questa matrice. Non devono essere l'ultimo o il primo nella matrice della serie temporale. Devi solo trovare i tre massimi.
Artem, grazie mille!
Sono contento che la mia idea di azzerare il valore massimo dell'array fosse corretta, e hai descritto tutto in dettaglio, con la copia in un altro array, ora mi occuperò delle minuzie
E seguendo il consiglio di Vladimir inizierò con l'algoritmo del programma, elaborerò le vostre informazioni e sono sicuro che tutto funzionerà - buoni insegnanti.
UNRINGRAZIAMENTO SPECIALE PER L'ARTICOLO https://www.mql5.com/ru/articles/1357
Buon pomeriggio!
Potete dirmi come ottenere segnali da un indicatore personalizzato in un Expert Advisor?
Ho usato iCustom, ma i gufi continuano a non ricevere il segnale
Buon pomeriggio!
Potete dirmi come ottenere segnali da un indicatore personalizzato in un Expert Advisor?
Ho usato iCustom, ma i gufi continuano a non ricevere il segnale
Forse il codice dell'indicatore iCustom non si presta a questo... Troppe poche informazioni nella tua domanda per una risposta.
Buon pomeriggio!
Potete dirmi come ottenere segnali da un indicatore personalizzato in un Expert Advisor?
Ho usato iCustom, ma i gufi continuano a non ricevere il segnale
È lo stesso con altri indicatori? Se sì, usate erroneamente la funzione iCustom(). Se no, provate a controllare il codice dell'indicatore - può essere che il vostro indicatore non utilizzi alcun buffer dell'indicatore - funziona con la costruzione di oggetti grafici.
Ciao, c'è una funzione:
Ma non funziona per qualche motivo. Viene chiamato nell'EA proprio all'inizio dopo int start() come segue:
L'Expert Advisor viene caricato con successo nelle schede Log ed Experts, e non appare nient'altro. Anche se dovrebbe dire: "Non commerciamo nei fine settimana", perché il 26.11.2011 è sabato.
Dov'è l'errore e cosa sto facendo di sbagliato?
Forse il codice dell'indicatore iCustom non si presta a... Ci sono troppe poche informazioni nella sua domanda per rispondere.
Ciao, c'è una funzione:
Ma non funziona per qualche motivo. Viene chiamato nell'EA proprio all'inizio dopo int start() come segue:
L'Expert Advisor viene caricato con successo nelle schede Log ed Experts, e non appare nient'altro. Anche se dovrebbe dire: "Non commerciamo nei fine settimana", perché il 26.11.2011 è sabato.
Dov'è l'errore e cosa sto sbagliando?
Oggi è sabato - un giorno di riposo. Si avvia Expert Advisor, avviene l'inizializzazione, ma dato che è giorno di riposo e non ci sono tick, la funzione di avvio non viene avviata (cioè Trade() non viene chiamata). Per controllare se funziona correttamente, dovete inserire la chiamata di questa funzione nel blocco di inizializzazione, o testarla nel tester.
L'indicatore disegna linee di supporto e resistenza, cosa che fa durante la visualizzazione. L'indicatore stesso dà un segnale LT_1 == 1 o -1 quando viene attraversato.
Allora non preoccupatevi - spostate semplicemente il codice dell'indicatore nell'Expert Advisor come è per soddisfare i criteri di trading e questo è tutto - poi nel tabellone, secondo queste condizioni di trading trasferite dall'indicatore, aprite posizioni attraverso l'Expert Advisor e questo è tutto ...