[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 421
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
... continua...
Alla fine della sottosezione StringSubstr Function tra parentesi c'è la seguente frase: "separatamente dobbiamo notare che nel primo ciclo for (la mia nota: deve essere deinit() poiché non c'è altro modo di cancellare gli oggetti) non possiamo cancellare gli oggetti poiché dopo ogni cancellazione il numero di oggetti e la loro numerazione cambierà e alcuni nomi di oggetti saranno saltati". Ma nell'EA citato non c'è affatto un secondo ciclo for . Inoltre, la variabile Quant_Del definita nella funzione deinit() prima del ciclo for è inizializzata con zero, mentre la variabile i non è stata definita da nessuna parte prima del ciclo for.
si scopre che l'esperto di cui sopra ha banalmente omesso diverse linee di programma.
Quindi la prima domanda è la seguente: si trattava davvero di una banale omissione di alcune righe o è un programma così complicato che un novizio non può afferrarne il significato senza un aiuto esterno?
Inoltre... Nello stesso capitolo della stessa sezione, c'è un link allo stesso Expert Advisor (nel file allegato) prima del testo citato che, se cliccato, apre lo stesso Expert Advisor in MetaElitor. Ma il testo di questo Expert Advisor è diverso: la funzione deinit()qui appare così
Poi, se "combinare" la frase "Separatamente, si noti che non è possibile eliminare gli oggetti nel primo ciclo for, perché in questo caso il numero totale di oggetti e la loro numerazione cambierà dopo ogni cancellazione, e alcuni nomi di oggetti saranno saltati come risultato" AND testo funzione deinit() dell'ultima variante, ho la 2a domanda:
Domanda. Perché non posso cancellare gli oggetti nel primo ciclo for mettendo la funzione ObjectDelete(Obj_Name) all'interno della dichiarazione if...? Qualcosa come:
Perché dopo ogni cancellazione "... Il numero totale di oggetti cambierà"...? Perché in questo caso, la variabile Quant_Objects, che determina il numero totale di oggetti, ottiene il suo valore uguale a ObjectsTotal(), AVANTI il ciclo for?
P.S. Grazie in anticipo per la risposta, per non sporcare il forum.
Buon pomeriggio, ho fatto un blocco per calcolare le magiche posizioni aperte di acquisto, ma il problema è che se il blocco lavora su diverse coppie di valute, allora il blocco produce risultati solo per una coppia di valute (l'ultima posizione aperta). Come posso correggere il codice (senza cambiare la magia) in modo che il blocco dia risultati per ogni coppia di valute?
... continua...
Alla fine della sottosezione StringSubstr Function tra parentesi c'è la seguente frase: "separatamente dobbiamo notare che nel primo ciclo for (la mia nota: deve essere deinit() poiché non c'è altro modo di cancellare gli oggetti) non possiamo cancellare gli oggetti poiché dopo ogni cancellazione il numero totale di oggetti e la loro numerazione cambierà e alcuni nomi di oggetti saranno saltati". Ma nell'EA citato non c'è affatto un secondo ciclo for . Inoltre, la variabile Quant_Del definita nella funzione deinit() prima del ciclo for è inizializzata con zero, mentre la variabile i non è stata definita da nessuna parte prima del ciclo for.
si scopre che il codice di cui sopra omette solo banalmente diverse linee di programma.
Quindi la prima domanda è la seguente: si trattava davvero di una banale omissione di alcune righe o è un programma così complicato che un novizio non può afferrarne il significato senza un aiuto esterno?
Inoltre... Nello stesso capitolo della stessa sezione, c'è un link allo stesso Expert Advisor (nel file allegato) prima del testo citato che, se cliccato, apre lo stesso Expert Advisor in MetaElitor. Ma il testo di questo Expert Advisor è diverso: la funzione deinit() si presenta così
Poi, se "combinare" la frase "Separatamente, si noti che non è possibile eliminare gli oggetti nel primo ciclo for, perché in questo caso il numero totale di oggetti e la loro numerazione cambierà dopo ogni cancellazione, e alcuni nomi di oggetti saranno saltati come risultato" ANDtesto funzione deinit() dell'ultima variante, ho la 2a domanda:
Domanda. Perché non posso eliminare gli oggetti nel primo ciclo for mettendo la funzione ObjectDelete(Obj_Name) all'interno della dichiarazione if?
Perché dopo ogni cancellazione "... Il numero totale di oggetti cambierà"...? Perché in questo caso, la variabile Quant_Objects, che determina il numero totale di oggetti, ottiene il suo valore uguale a ObjectsTotal(), AVANTI il ciclo for?
P.S. Grazie in anticipo per la risposta, per non sporcare il forum.
Espandere il ciclo all'indietro e cancellare il più possibile
Ho capito bene? Dovreste pensare alla funzione deinit (e al ciclo in particolare) come segue:
Questi dati sono necessari per calcolare la differenza tra ordini di acquisto e di vendita.
supponiamo che siano stati aperti un ordine di acquisto con il volume di 0,09 lotti e due ordini di vendita con il volume totale di 0,11 lotti, la differenza tra loro sarà 0,09-0,11=-0,02, o se possibile la differenza tra i loro valori.
Allora la funzione OrderLots.
Buon pomeriggio, ho fatto un blocco per calcolare le magiche posizioni aperte di acquisto, ma il problema è che se il blocco lavora su diverse coppie di valute, allora il blocco produce risultati solo per una coppia di valute (l'ultima posizione aperta). Come posso correggere il codice (senza cambiare la magia) in modo che il blocco calcoli per tutte le coppie di valute?
Cambiare:
A:
Come posso sostituire lo stop loss in pip nell'EA, con uno stop loss sopra l'ultima candela?
Reshetov:спасибо
извиняюсь за то что не в SRC
come inserirlo qui