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
4 cicli non è una figata? A 600 caratteri nella panoramica del mercato ogni minuto il terminale morirà ....
Di cosa stai parlando? Il timer fa un ciclo di 1 volta al minuto. Questo non è niente di niente.
E l'utente accede alla funzione New_bar() quando vuole.
Per quanto riguarda il commento sul codice: E se avessimo bisogno di definire l'apertura del solo periodo corrente e di un solo carattere alla volta nel programma? L'intero costrutto girerà tutti i cicli? Sarebbe irrazionale.
Ho completamente frainteso il codice.
I nuovi eventi della barra dei simboli sono catturati in un ciclo una volta al minuto. Automaticamente. Se il numero attuale di barre non è uguale al numero di barre registrate nell'array, impostiamo il flag di un nuovo evento barra nell'array Events_new_bar[][].
Alexey Viktorov:
ps; E perché avviare un timer di millisecondi? Non è sufficiente un secondo timer?
Si può anche impostare un secondo timer. Poi scrivere "Timer_frequenza = 1000".
L'ho inserito, l'ho testato e non funziona.
Dà sempre un falsoNon sono 4 cicli? A 600 caratteri nella panoramica del mercato ogni minuto il terminale morirà ....
Mi chiedo se qualcuno ne ha davvero così tanti?
Ne ho 16 - e mi sto già chiedendo se il carico è troppo ?
È vero, ho un orizzonte temporale minimo di M15... Ma ancora, mi chiedo quando il carico sul terminale comincia ad essere critico?
Cosa vuoi dire? Il timer si attiva una volta al minuto. Questo non è niente di niente.
E New_bar() viene chiamata ogni volta che l'utente vuole.
La funzione "nuova barra" è di solito eseguita su ogni tick... Questa chiamata su ogni tick è fatta per risparmiare risorse. Rendetevi conto che la vostra funzione "risparmia" risorse, le consuma.
... Ma ancora, mi chiedo quando il carico sul terminale comincia ad essere critico?
Quando il processore si mette in ginocchio e non riesce ad alzarsi.
Con rispetto.
Ho completamente frainteso il codice.
I nuovi eventi della barra dei simboli sono catturati in un ciclo una volta al minuto. Automaticamente. Se il numero attuale di barre non è uguale a quello registrato nell'array, impostiamo il flag dell'evento nuova barra nell'array Events_new_bar[][].
Discutiamo un altro esempio di utilizzo di OOP.
Forum sul trading, sistemi di trading automatico e test di strategia
Mt4 Fine del supporto.
Alexey Viktorov, 2017.09.11 13:08
Credo di aver trovato un esempio primitivo dell'usabilità dell'OOP. Ecco una funzione per riempire un array con un valore specificato. Ci sono otto varietà a seconda del tipo di matrice.
Immaginate di dover scrivere una funzione che ha bisogno di passare un insieme di parametri, poi un altro, poi un terzo... Usando l'approccio algoritmico si ottengono N nomi di funzioni diverse. Sembrerebbe che non ci sia niente di sbagliato, potete scrivere 8 funzioni come ArrayInitializeInt()ArrayInitializeDouble() e così via. Ma è bello non pensare al tipo di array, basta usare una funzione in ogni caso, e quanto sia sicuro confondere quale array ci metti...
Installato, testato, non funziona
Emette sempre false.1. Esegui l'EA su M1.
2. Bisogna aspettare che il bar attuale sia completamente finito. Alla prima barra, l'evento non è fisso. L'ho fatto apposta. Poi dovete aspettare il tempo che l'intervallo di tempo che state inviando alla funzione suggerisce.
L'ho provato per un minuto e ha funzionato.
La funzione "nuova barra" è normalmente eseguita su ogni tick... Questa chiamata su ogni tick è fatta per risparmiare risorse. Rendetevi conto che la vostra funzione "risparmia" risorse, le consuma.