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
Lo sviluppo di MQL5 è in pieno svolgimento ed è una delle nostre caratteristiche chiave della nuova piattaforma di trading. Per il momento non partecipiamo volutamente alle discussioni per motivi di tranquillità. Ma tra un po' inizieremo a pubblicare informazioni sul nuovo linguaggio, le librerie e l'ambiente di programmazione.
Per favore, dateci il vostro feedback su MQL5.
Per favore, esprimete i vostri desideri per MQL5.
----
Per l'interazione con il terminale:
- quando compilate l'EA, riavviatelo solo sul grafico o non riavviate nulla!
- quando si compila un file che fa riferimento a un altro file, si compila anche questo;
- avviare/arrestare lo script/esperto/indicatore dal codice (dalla stessa finestra "immediatamente").
Per lingua:- elenco di simboli dal codice;
- TUTTI i parametri dei simboli dal codice (in modo da poter calcolare tutto ciò che il terminale calcola);
- eventi - commercio, interfaccia, eventi di errore;
- Funzione di commento - ampliare la funzionalità (non cancellare il testo precedente, selezionare il carattere e il colore, l'angolo di rilegatura, ...);
- Global Variables Terminal - capacità di nascondere all'utente, salvare su disco a comando o immediatamente dopo il cambiamento.
Bene, e mi associo a quasi tutti gli oratori precedenti, ho finito per ora.Senza conoscere le proprietà delle funzioni speciali di MQL5, è difficile dirlo in anticipo, ma MQL4 ha un problema simile.
Start() viene messo in loop. Funziona. Un utente si connette a un altro account. Le informazioni ambientali del nuovo conto diventano disponibili per l'Expert Advisor nella sessione corrente prima che start() venga forzatamente chiuso. L'Expert Advisor (in base alla sua analisi interna) segnala che gli ordini (che erano nel conto precedente) sono stati chiusi, gli swap, i livelli di stop, ecc. sono stati cambiati, ecc. con tutte le conseguenze che ne derivano.
Neanche l'Expert Advisor traccia esplicitamente l'informazione di un nuovo conto seguita da una decisione di deinit-init-start(). Non sono riuscito a cogliere lo schema, ma la deinizializzazione non avviene sempre. Per esempio, se il terminale è stato appena caricato e la connessione al conto A è stata stabilita, la transizione al conto B viene eseguita senza deinit-init-start. Dopo un minuto il passaggio da B ad A avviene con il previsto deinit-init-start e anche il successivo passaggio da A a B o tra qualsiasi altro account è normale. Sembra che il problema sia in qualche modo legato al fatto della prima connessione all'account. L'effetto è persistente.
In generale, il desiderio è: quando si passa a un altro account, prima si disattiva l'account corrente nell'ambiente attuale, e poi - come se si partisse da zero (collegarsi a un nuovo account ed eseguire nel terminale i valori del nuovo ambiente).
Se avete implementato un modello di oggetto, allora guardate quel modello di oggetto, i metodi disponibili, le proprietà, ecc.
Altrimenti, tutto ciò che è stato suggerito sopra fa parte di ciò che è disponibile nella maggior parte degli ambienti di sviluppo moderni, tutto quello che dovete fare è replicare, per esempio, Visual Studio di Microsoft. Per esempio, quando si passa da VB 6 a VB .NET, non è cambiato molto, le funzioni sono semplicemente diventate parte di una classe separata, per chi non trova subito le alternative, solo la scala degli approcci è aumentata. Solo le funzioni di basso livello sono state rimosse, grazie alle quali ho ampliato le mie conoscenze e anche cambiato il linguaggio di programmazione, naturalmente chi non conosceva funzioni come objptr non ne aveva bisogno :) Naturalmente, dopo che tutte le funzioni e le classi alternative sono state apprese, ma la facilità di accessibilità di tali piccole caratteristiche come il lavoro con i puntatori, non mi ha permesso di tornare al secolo scorso e aprire nuovi campi, senza ragionamenti logici nella nebbia del C++, mentre ho provato a scrivere in VB, ho studiato ASM e ho cercato di creare un linguaggio di programmazione, ma l'ulteriore apprendimento della programmazione di sistema, mi ha portato al fatto che il meglio di tutto ciò che è stato creato per la programmazione applicata è .NET, non ho mai capito la logica di Java e prima
P.S.: Questo è un esempio di ciò a cui tendere:)
La cosa più importante che ha provocato il serio sviluppo della tecnologia .NET è Reflection e l'opportunità di studiare il codice sorgente per capire come funziona fino al più piccolo dettaglio, nessuna descrizione ed esempi non darà più che la possibilità di vedere alla radice. Tutti i disassemblatori e molti altri strumenti che sono stati sviluppati per approcci di basso livello impallidiscono. Per esempio conosco molti dettagli e differenze tra .NET 1.0 e 1.1 e ancora di più tra .NET 2.0, non perché so che la nuova versione è buona o migliore, ma perché ho visto la differenza nel codice sorgente e nel codice macchina e vedo ancora tutte le nuove altezze che .NET raggiunge.
Supponiamo che anche io abbia studiato il terminale e il suo linguaggio e supponiamo che ci sarà qualcosa da confrontare in considerazione di ciò che abbiamo:) Non mi fido delle parole, mi fido dei miei occhi:)
1) trascinamento degli ordini come in un programma, ora non ricordo il nome, è bellissimo))
2) nel tester W1
3) Editor visivo di EA, in modo che qualsiasi principiante, non conoscendo affatto il linguaggio MQL, potesse implementare le proprie idee negli EA per verificarle sulla storia, perché le idee si sono rivelate essere illusioni, e senza un programmatore non c'è possibilità di rinunciare alle illusioni))
l'ultimo sembra fantastico lo capisco, ma se viene implementato, mt farà un salto di qualità, diventerà davvero massicciamente popolare e lascerà i concorrenti indietro per sempre))