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
Ecco una spiegazione semplificata -> https://www.mql5.com/en/forum/117210. Gli array sono sempre passati per riferimento in MQL4.
Sì, grazie. Ma come ho chiesto, questo implica che su altri linguaggi non lo sia? Se fosse l'unico modo per portarlo su usando MQ/MT4 o altri costrutti di linguaggio, allora presumo che non dovrebbero preoccuparsi di dichiararlo.
Credo che sto chiedendo i 'dettagli tecnici' come hai detto tu in quel post. Solo per curiosità, non per necessità.
Per quanto riguarda la sintassi, IL linguaggio MQL5 per la programmazione delle strategie di trading è molto simile al linguaggio di programmazione C++, tranne che per alcune caratteristiche:
In questo modo, posso insinuare che in C++ sarà vero il contrario... Grazie comunque, Gordon.
Mi dispiace, ma non è una risposta "tecnica" :) Potresti dire perché è meglio passare una variabile per riferimento invece di una variabile globale?
Molte ragioni che preferisco non ripetere, invece ti rimando a qui -> https://en.wikipedia.org/wiki/Global_variable e qui -> http://www.c2.com/cgi/wiki?GlobalVariablesAreBad (puoi cercare su Google per saperne di più... È un concetto ampiamente accettato e ci sono molte informazioni in rete).
[...] questo implica che su altre lingue non lo sia? [...]
Molte ragioni che preferisco non ripetere, invece ti rimando a qui -> https://en.wikipedia.org/wiki/Global_variable e qui -> https://www.mql5.com/go?link=http://www.c2.com/cgi/wiki?GlobalVariablesAreBad (puoi cercare su Google per saperne di più... È un concetto ampiamente accettato e ci sono molte informazioni in rete).
Molto interessante! Sfortunatamente, gli EA hanno bisogno di parametri, e a volte molti, quindi non possiamo evitarli e dobbiamo fare attenzione per tutte le ragioni menzionate in https://www.mql5.com/go?link=http://www.c2.com/cgi/wiki?GlobalVariablesAreBad
Sto usando le regole di denominazione per GlobalVariable: molto più facile da gestire ed evitare alcuni bug.
Grazie Gordon.
Molto interessante! Sfortunatamente, gli EA hanno bisogno di parametri, e a volte molto, quindi non possiamo evitarli [...]
Gli esterni sono effettivamente inevitabili. Anche se sono globali nell'ambito, non sono la stessa cosa delle variabili globali (da non confondere con le GV); in particolare - non è raccomandato cambiare il loro valore tramite il codice, quindi non dovrebbero essere usati per passare informazioni tra le funzioni comunque (vedi qui -> https://www.mql5.com/en/forum/123535).
Sto usando regole di denominazione per GlobalVariable: molto più facile da gestire ed evitare alcuni bug.
Sono curioso: ci sono linguaggi di programmazione che hanno funzioni che restituiscono più risultati?
forse potreste ingannare una funzione nel restituire due valori combinandoli in modo da poterli disaccoppiare di nuovo nella funzione chiamante
qualcosa del genere
a = 10;
b = 20;
a = a*1000
c = a+b // 10020
return(c);
poi nella funzione chiamante
b = c%1000 // 20
a = c-b/1000 // 10
forse potreste ingannare una funzione nel restituire due valori combinandoli in modo da poterli disaccoppiare di nuovo nella funzione chiamante
qualcosa del genere
[...]Perché no?
Perché no?