L'agonia della scelta

 
Ciao Cari utenti del forum, vorrei chiedere il vostro consiglio come le persone che conoscono il mio problema dall'interno. Vorrei sviluppare robot di trading per MT4, ho un sacco di idee e tempo. Ho letto i forum e ho notato che posso iniziare a scrivere semplici Expert Advisors dopo un mese di studio di MQL4. Ho scaricato video tutorial e raccolto articoli sulla programmazione, ma una caratteristica specifica è apparsa. Il MQL4 aggiornato è diventato più simile al MQL5 e non è così facile da imparare (dato che non ci sono video tutorial con le nuove caratteristiche del linguaggio, e non ci sono così tanti articoli). Non voglio studiare MQL5 perché MT5 non è popolare tra i broker, o meglio non è affatto popolare. A questo proposito, c'è una domanda irrisolvibile: cosa devo fare?
È possibile scrivere EAs usando le vecchie funzionalità di MQL4 ora, e imparare tutte le innovazioni più tardi (perché c'è materiale più che sufficiente per il suo studio) o è necessario imparare il MQL4 aggiornato? Ho zero conoscenze di programmazione. Per favore consigliatemi come farlo meglio?
 
the_sphinx:
Ciao Cari utenti del forum, vorrei chiedere il vostro consiglio come le persone che conoscono il mio problema dall'interno. Vorrei sviluppare robot di trading per MT4, ho un sacco di idee e tempo. Ho letto i forum e ho notato che posso iniziare a scrivere semplici Expert Advisors dopo un mese di studio di MQL4. Ho scaricato video tutorial e raccolto articoli sulla programmazione, ma una caratteristica specifica è apparsa. Il MQL4 aggiornato è diventato più simile al MQL5 e non è così facile da imparare (dato che non ci sono video tutorial con le nuove caratteristiche del linguaggio, e non ci sono così tanti articoli). Non voglio studiare MQL5 perché MT5 non è popolare tra i broker, o meglio non è affatto popolare. A questo proposito, c'è una domanda irrisolvibile: cosa devo fare?
È possibile scrivere EAs usando le vecchie funzionalità di MQL4 ora, e imparare tutte le innovazioni più tardi (perché c'è materiale più che sufficiente per il suo studio) o è necessario imparare il MQL4 aggiornato? Sono uno zero assoluto nella programmazione. Per favore consigliatemi come farlo meglio?
Non ho idea di cosa farci.
 
Vinin:
Scrivere alla vecchia maniera e imparare la nuova maniera
Ho paura che non funzionerà sempre - molte cose che funzionavano prima non funzionano ora. Circa il 50% dei vecchi EA semplicemente si rifiuta di funzionare. In assenza di informazioni sensate sugli aggiornamenti, portare il vecchio codice ad un nuovo aspetto non è un compito facile, e per un principiante, è quasi impossibile!

Anche in questo caso, tutto dipende da ciò che si intende fare esattamente. Puoi iniziare a imparare le basi alla vecchia maniera. Se vuoi qualcosa di specifico, dovrai sudare un po'!
 

Cos'è tutta questa assurdità del 50%, qualche problema e nessuna informazione sugli aggiornamenti?

 
Puoi dirmi come farlo meglio?

Usate MQL4 o MQL5 - non c'è essenzialmente nessuna differenza.

Non ci sono nemmeno complicazioni, sono state appositamente inventate come miti e replicate da coloro che vogliono rovinare la reputazione delle nostre piattaforme di trading. Beh, almeno in qualche modo, ma almeno in qualche modo.

Il linguaggio è molto semplice e OOP è opzionale e non è in alcun modo una complessità nei linguaggi di programmazione. In effetti, non ci sono linguaggi di programmazione generale al giorno d'oggi che non contengano OOP.

Guardate le centinaia di articoli e le migliaia di programmi in codice sorgente su questo sito. Sono solo accuratamente messi insieme per un apprendimento rapido. Potete facilmente usare i programmi esistenti come strutture per i vostri. Molti hanno iniziato così.

 

Per informazioni, che potrebbero aiutare a fare una scelta:

  • Lo sviluppo di MT4 si è fermato, la piattaforma ha 10 anni, è obsoleta, anche se sta reggendo bene grazie all'aggiornamento cosmetico che abbiamo fatto un anno fa
  • In MT4 aggiorneremo un po' l'integrazione con i servizi MQL5, ma non ci saranno nuove funzioni
  • Il linguaggio MQL4 è congelato, così come il suo compilatore
  • MQL5 si sta sviluppando sia in termini di funzionalità che di compilatore. Rilasceremo presto una nuova versione del compilatore ottimizzatore, che genera un codice 2-4 volte più veloce. Questo codice funzionerà solo con le versioni a 64 bit del terminale, se SSE4.2 è disponibile.
  • MT5 è già diventata la piattaforma HFT, e permette di fare fino a 300-500 transazioni di trading al secondo da un terminale in condizioni normali. Nei nostri test raggiungiamo fino a 1 800 scambi al secondo da un terminale con una latenza di rete minima in modalità asincrona. Soprattutto il nostro servizio di hosting di terminali virtuali aiuta in questo. Su MT4 non accadrà - ha una vecchia architettura e non ci sono operazioni asincrone.
  • MT5 è una piattaforma multi-mercato e permette il trading sui mercati azionari. Per esempio, si può facilmente commerciare su MOEX.
  • Tecnologicamente, MT5 è un vantaggio rispetto a MT4.
 

Grazie mille per la risposta rapida. Sono d'accordo che MT5 è meglio, ma pochissimi broker lo offrono e quelli che lo offrono sono limitati a 30 coppie di valute + oro e argento (correggimi se sbaglio). MT4 è meglio in questo senso: più valute e CFD su tutti i tipi di azioni, futures e indici. Ho la sensazione che MT5 non sia molto buono alla Borsa di Mosca, solo 6 futures più o meno liquidi e questo è tutto (penso che non ci sia ancora il supporto per le azioni, potrei sbagliarmi).

Posso usare un vecchio corso e video MQL4 (senza OOP), è possibile studiare MQL4 ed è molto diverso dalle altre versioni?

La funzionalità del vecchio MQL4 è limitata dalla nuova build di MT4?

Sarebbe difficile migrare dalla vecchia versione di MQL4 alla nuova?

Forse c'è qualche alternativa che non ho considerato?

Mi scuso in anticipo per le possibili domande stupide, sono solo all'inizio.

 

Perché preoccuparsi di queste domande?

Hai bisogno di imparare a creare EAs? Allora impara. Non importa se è su MT4 o MT5. Una volta imparato uno, si passa facilmente all'altro, se qualche limitazione lo impedisce.

Cosa sono le "vecchie" e le "nuove" costruzioni? C'è una build attuale. È lì che dovreste scrivere. Se si verifica un errore durante la compilazione, usate la ricerca per trovare di cosa si tratta e correggetelo. Andate avanti.

"Non temere, non temere", "Temere i lupi - non camminare nei boschi", ecc.

 
Renat:

Cos'è tutta questa assurdità del 50%, qualche problema e nessuna informazione sugli aggiornamenti?

Questa non è una sciocchezza, ma una dichiarazione di fatto. Alcuni degli indicatori e consulenti disponibili hanno smesso di funzionare. Ne ho corretto alcuni e sono troppo pigro per scavare in altri.
 
mmmoguschiy:
Questa non è una sciocchezza, ma una dichiarazione di fatto. Ho corretto alcuni degli indicatori e degli EA, che ho in mio possesso, ma non altri. Ne ho corretto alcuni, ma sono troppo pigro per farci qualcosa.

Per lo meno non è vero. Se sei un programmatore e scrivi del codice, di solito viene ricompilato almeno una volta al mese. C'è sempre lo sviluppo di programmi, l'aggiunta di caratteristiche o la lucidatura.

Niente accade "all'improvviso" - c'è un'altra situazione - sei stato addormentato per un anno o due e poi "improvvisamente". Dovete guardare i vostri programmi e non avrete problemi.

 
barabashkakvn:

Per lo meno non è vero. Se sei un programmatore e scrivi del codice, di solito viene ricompilato almeno una volta al mese. C'è sempre lo sviluppo di programmi, l'aggiunta di caratteristiche o la lucidatura.

Niente accade "all'improvviso" - c'è un'altra situazione - sei stato addormentato per un anno o due e poi "improvvisamente". Dovete tenere d'occhio i vostri programmi e non avrete problemi.

Andiamo!!! :) Avevo un programma che funzionava bene e veniva messo a punto. E poi, bang, sono uscite 600 costruzioni. E non fa differenza - se l'avevo o non l'avevo segato prima - i metadati sono cambiati e in quel preciso momento, sia i programmi segati che quelli non segati che usavano i dati modificati hanno smesso di funzionare tutti insieme! E non importava se era mio o di qualcun altro.