![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Come sintesi, ripeterò l'idea che ho espresso una volta: il compito della piattaforma, che è MT, è quello di proteggere l'utente (il programmatore) da possibili "rastrellamenti" il più possibile.
Mi oppongo fermamente e categoricamente. La piattaforma non ha questo compito. Reagisco sempre con molto cipiglio ai tentativi della sinistra di proteggermi dalle barre "extra", dalla cronologia delle spunte, dallo scrivere i file dove voglio, dai test contro le mie citazioni e altre preoccupazioni del genere.
Lo tollero solo perché spero che abbia delle ragioni commerciali, e non è affar mio dire a MQ come fare affari.
Anche se non ho nulla contro questo:
Sono fortemente e categoricamente contrario. La piattaforma non ha questo compito. Reagisco sempre con molto cipiglio ai tentativi della sinistra di proteggermi dalle barre "extra", dalla cronologia delle spunte, dallo scrivere i file dove voglio, dai test contro le mie citazioni e altre preoccupazioni del genere.
Non ho suggerito di limitare nulla, solo di ridurre le fonti di errore e lasciare la compatibilità comportamentale con MT4, almeno opzionalmente.
La piattaforma ha un tale compito, altrimenti bestemmiamo, per esempio, il raccoglitore di spazzatura in java e altre cose di routine, che è più facile (e GIUSTO) fare una volta dentro la piattaforma, che costringere ogni programmatore a fare a modo suo, con i bug.
Non stavo suggerendo di limitare nulla, solo di ridurre le fonti di errore e lasciare la compatibilità nel comportamento con MT4, almeno opzionalmente.
Altrimenti, bestemmiamo, per esempio, java rubbish collector e altre caratteristiche di routine, che sono più facili (e GIUSTE) da fare una volta all'interno della piattaforma, che far fare a ogni programmatore a modo suo, con i bug.
Non voglio entrare in un dibattito religioso su "giusto" e "sbagliato", ma vorrei sottolineare che nella ricerca della compatibilità è possibile arrivare fino alle prestazioni di MT4. Cosa che non mi piacerebbe fare.
Cioè si potrebbe inserire un'altra #proprietà per indicare se i buffer devono essere inizializzati automaticamente.
Renat:
La ricorsione è di solito facile da catturare - dipende direttamente dal volume delle variabili locali, e ci sono eccezionalmente pochi posti del genere in un programma.
Non lo so, ho determinato puramente intuitivamente (assunto) che era l'elaborazione del tick che andava in loop. E la "malizia" è arrivata dopo circa 10 minuti di scavi approfonditi nel codice e confrontando vecchie copie dell'Expert Advisor con una copia in cui sono state introdotte le modifiche.
Se il preprocessing complicherà significativamente il compilatore (gli argomenti di MetaDriver sembravano molto convincenti), mi piacerebbe avere informazioni più precise sul luogo in cui è sorto il problema.
Non lo so, ho determinato puramente intuitivamente (supposto) che era l'elaborazione dei tick che era in loop. E questa "malizia" è venuta dopo circa 10 minuti di scavo approfondito nel codice e di confronto tra le vecchie copie di Expert Advisor e la copia in cui sono state fatte le modifiche.
Uno scavo approfondito è molto illuminante per la mente. "Cosa faremmo se papà non bevesse? Ma in questo modo, consegniamo le bottiglie e usiamo i soldi per comprare il pane".
Compagni, ci sono piani per migliorare la funzione Bars()? Mi sembra che non sia del tutto adeguato. Può dare 0, nel qual caso non è chiaro se non ci sono davvero barre o un errore, GetLastError() non lo nota nemmeno, ci fa inventare trucchi inutili e rallentanti
E un'altra domanda, per esempio la seguente situazione:
Ho bisogno di 100 barre dalla serie temporale High sul grafico orario. Cosa sarà più efficiente - copiare 100 barre dall'Expert Advisor o prenderle dall'array passato all'indicatore? Cioè, la domanda è: se attacco l'indicatore al grafico, copierà le barre che non userò? (È possibile scoprire il tempo trascorso nell'esecuzione del programma usando strumenti MQL?