Argomento interessante per molti: cosa c'è di nuovo in MetaTrader 4 e MQL4 - grandi cambiamenti in arrivo - pagina 8

 
stringo:
Cercato e ricercato. Non ne ho trovato uno...

Non l'ho messa in questo modo.

Il debugger non è stato ancora pensato, cioè non si sa se ci sarà, ma poiché non è stato pensato, significa che non ci sarà "ancora".

http://forum.mql4.com/ru/56881/page4#820225

Что будет нового в MetaTrader 4 и MQL4 - большие изменения на подходе - MQL4 форум
  • www.mql5.com
Что будет нового в MetaTrader 4 и MQL4 - большие изменения на подходе - MQL4 форум
 

Mentre stai cercando di capire i dettagli tecnici dell'aggiornamento, un dettaglio importante ti è sfuggito: MetaTrader 4 avrà Marketplace. Data la prevalenza del 4, si può stimare quanto può guadagnare uno sviluppatore di robot/indicatore nel mercato unito di 7 milioni di commercianti. I risultati del mercato MQL5 possono essere utilizzati come base per fare ipotesi e per avere un'idea migliore di quale tipo di software è più popolare tra i trader.

Non sei ancora registrato come sviluppatore?

 
Ho pensato che quando si fondono due lingue, le direttive di compilazione condizionale come #ifdef sono assolutamente necessarie - semplificherebbe l'unificazione del codice tra due piattaforme, e le API dipendenti dalla piattaforma sarebbero definite al momento della compilazione.
 

C-4:
Вот тут подумалось что при объединении двух языков абсолютно необходимы условные директивы компиляции типа #ifdef - это бы существенно упростило бы унификацию кодов между двумя платформами, и плотформозависимый API определялся на этапе компиляции. 

Sì, sarebbe bello.

Finora ho usato come alternativa storta una costruzione come

#define _DEBUG_OR_RELEASE_(DEBUG, RELEASE) DEBUG

Ma sarebbe molto più flessibile con #ifdef

 
Lenar:

Mentre stiamo capendo i dettagli tecnici dell'aggiornamento, abbiamo perso un dettaglio importante - MetaTrader 4 avrà il Marketplace. Data la prevalenza di 4, si può stimare quanto può guadagnare uno sviluppatore di robot/indicatore nel mercato unito di 7 milioni di commercianti. I risultati del mercato MQL5 possono essere utilizzati come base per fare ipotesi e per avere un'idea migliore di quale tipo di software è più popolare tra i trader.

Non sei ancora registrato come sviluppatore?

Allora stiamo venendo da te :)

Infatti, tutti l'hanno notato e si rallegrano in silenzio per non spaventarli :)

 
Laryx:

Non sono d'accordo con tutti gli argomenti di hrenfx, tuttavia, personalmente ho scelto MT5 solo per l'OOP e la libreria standard.

Vorrei davvero che quando si introduce l'OOP in MT4++, si mantenessero il maggior numero possibile di interfacce di classi della Standard Library (idealmente, tutte tranne le classi di trading CTrade, CPositionInfo, relative direttamente al netting).

A proposito, lo stesso vecchio foglio di calcolo di cui sta parlando ètutto sulla storia personalizzata - in MT5 è ancora possibile emulare - solo usando quelle caratteristiche.

Mi chiedo come sia possibile - emulare nel tester MT5 (cioè testare sulla propria storia)?

Dove lo dice?

 
serferrer:

Mi chiedo come questo possa essere emulato nel tester MT5 (cioè testando sulla vostra storia)?

Dove si dice questo?

Non c'è scritto da nessuna parte. Questa è la mia idea. Ho iniziato un argomento su questo forum, ma nessuno l'ha sostenuto, quindi ho capito che nessuno era interessato.

Se un Expert Advisor usa solo classi della Libreria Standard per lavorare, e non usa le funzioni di accesso diretto al server, allora il compito dell'emulazione è scrivere classi derivate dalle classi della Libreria Standard, che non si applicherebbero al server, e userebbero le loro proprie variabili interne.

Dopo di che, l'Expert Advisor non riceve le classi originali della Standard Library, ma le classi derivate, che invece di accedere al server passano all'Expert Advisor i risultati dei loro propri calcoli interni. L'Expert Advisor non si accorge dello scambio - non gli interessa con cosa lavorare - né sui dati reali né su quelli storici.

Per quanto mi riguarda, ho già scritto una classe-archivio di dati storici e classi, gli eredi delle serie temporali (come SOPrep, CHigh, ecc.), che possono restituire all'EA sia i dati reali dal server che i dati storici dallo stoccaggio. Più tardi, scriverò classi di trading come discendenti delle classi della Standard Library che possono essere un "wrapper" per i trade del server reale ed eseguire trade virtuali basati su dati storici. Anche in questo caso, l'Expert Advisor non sarà consapevole della sostituzione.

Tutto questo è possibile. Anche se, naturalmente, c'è molto lavoro da fare.

 
Laryx:

Non c'è scritto da nessuna parte. È stata una mia idea. Ho iniziato un thread sul forum, ma nessuno l'ha sostenuto, ho capito che nessuno è interessato a questo.

Se un Expert Advisor usa solo classi della Libreria Standard per lavorare, e non usa le funzioni di accesso diretto al server, allora il compito dell'emulazione è scrivere classi derivate dalle classi della Libreria Standard, che non si applicherebbero al server, e userebbero le loro proprie variabili interne.

Dopo di che, l'Expert Advisor non riceve le classi originali della Standard Library, ma le classi derivate, che invece di accedere al server passano all'Expert Advisor i risultati dei loro propri calcoli interni. L'Expert Advisor non si accorge dello scambio - non gli interessa con cosa lavorare - né sui dati reali né su quelli storici.

Per quanto mi riguarda, ho già scritto una classe-archivio di dati storici e classi, gli eredi delle serie temporali (tipo SOPrep, CHigh, ecc.), che possono restituire all'EA sia i dati reali dal server che i dati storici dallo stoccaggio. Più tardi, scriverò classi di trading come discendenti delle classi della Standard Library che possono essere un "wrapper" per i trade del server reale ed eseguire trade virtuali basati su dati storici. Anche in questo caso, l'Expert Advisor non sarà consapevole della sostituzione.

Tutto questo è possibile. Naturalmente, c'è molto lavoro.

Se scrivete un indicatore, che legge i dati da un file (storia personalizzata), sovrascrivete le funzioni standard di ricezione dei dati (sia le quotazioni che l'ambiente di mercato), usate una definizione dei contesti e sarete felici.

Non condivido la tua ammirazione per la Standard Library, è un enorme mostro con la pretesa di universalità, creato solo per gli esempi e per creare Expert Advisors nel wizard.

Anche se per quello per cui è stato scritto adempie abbastanza bene ai suoi doveri.

 
Urain:

Dovresti scrivere un indicatore che legge i dati da un file (storia personalizzata), sovrascrivere le funzioni standard di acquisizione dei dati (sia le quotazioni che l'ambiente di mercato), utilizzare la definizione dei contesti e sarai felice.

Questo è esattamente quello che faccio. Ho già scritto delle classi che possono passare a un EA la storia personalizzata (invece di quella reale del server), ma l'EA non deve usare direttamente le funzioni del terminale per la piena realizzazione della mia idea. Diciamo, lo stesso OrderSend(). Dovrebbe funzionare solo attraverso un "wrapper", il cui ruolo può essere meravigliosamente svolto dalla Libreria Standard. Scriviamo classi derivate, le diamo in pasto all'EA, e voilà - ora lavora sui dati storici. Se l'EA usa direttamente le funzioni del terminale, non sarà in grado di usare lo storico.

Non condivido la tua ammirazione per la Libreria Standard, un enorme mostro che pretende di essere universale ed è stato creato solo per gli esempi e per creare Expert Advisors nel wizard.

Ma soddisfa abbastanza bene il suo scopo.

Beh, forse è l'effetto del mio lungo lavoro con la libreria MFC di cui sono stato molto soddisfatto e con la quale trovo molti parallelismi. Sono sicuro che gli sviluppatori della Libreria Standard sono anche abbastanza familiari con MFC.

Il vantaggio principale della Libreria Standard è il buon supporto dell'ideologia OOP, che permette di passare all'Expert Advisor una storia personalizzata in modo che funzioni correttamente senza alcuna modifica.

Posso chiedere perché non ti piace la Standard Library (beh, oltre all'ovvio svantaggio - "pigro da imparare")?

 
Lenar:

Mentre stavamo studiando i dettagli tecnici dell'aggiornamento, abbiamo perso un dettaglio importante - il mercato apparirà in MetaTrader 4. Data la prevalenza di IV, possiamo stimare quanto può guadagnare uno sviluppatore di robot/indicatori nel mercato unito di 7 milioni di trader. I risultati del mercato MQL5 possono essere utilizzati come base per fare ipotesi e per avere un'idea migliore di quale tipo di software è più popolare tra i trader.

Ti sei già registrato come sviluppatore?

Ora che abbiamo toccato il mercato, mi piacerebbe sentire qualche opinione su un argomento...

Secondo la filosofia di MQL5, gli indicatori devono contare e gli EA devono fare trading.

Ma il Mercato vende soluzioni già pronte, come si dice, tutto in uno.

Forse il compilatore dovrebbe essere migliorato in modo che gli indicatori siano memorizzati in Expert Advisors come risorse?

Altrimenti, dobbiamo trasferire il codice dell'indicatore nell'Expert Advisor, dove non ha un ambiente adeguato. Di nuovo, lo schema "indicatore per indicatore" è tutta un'epopea per trasferire il codice all'Expert Advisor.