È ora di convertire le librerie in MQL5 - pagina 2

 

No, non tutto il trading si basa sul NS. Così, non otterremo una piattaforma di trading universale, ma... Soluzioni di trading. Certo, è un pacchetto abbastanza decente, ma è troppo specializzato.

Avete bisogno di bibbie matematiche generali - algebra lineare, analisi, difari (tutti i tipi, non solo quelli ordinari), metodi di ottimizzazione (non solo GA, è una goccia nel mare), termostato/matstat - e molto altro.

Non sto scrivendo questo articolo perché so esattamente di cosa avete bisogno. E sto scrivendo questo perché non ci sono solo commercianti di reti neurali tra i commercianti, e lo skewing verso solo NS è fondamentalmente inaccettabile.

 
Renat:
Il focus principale è sulle librerie native in MQL5 senza il bisogno di DLL.

Stiamo lavorando molto duramente sulle prestazioni del compilatore e lo porteremo più vicino alle prestazioni del compilatore C++. Questo significa che ci sarà una seria riduzione della necessità delle DLL.

Inoltre, è probabile che la prossima build dell'editor avrà un supporto nativo per la compilazione di codice C/C++ DLL. Così, sarà possibile compilare semplici DLL direttamente dal meta-editor. Se hai Visual Studio 2005/2008/2010 in locale, verrà usato un compilatore locale, altrimenti verrà usato il nostro servizio di compilazione online.

Questo vi permetterà di condividere i dll di origine e di compilarli facilmente per conto vostro. Il che darà più controllo sulla sicurezza.
Renat, si scopre che hai scritto un parser che traduce il codice mql5 in c++ sostituendo le chiamate e così via.
E poi viene compilato come il solito codice C/C++ in codice dll, criptato e si ottiene ex5?

Quindi, questo è solo per l'autosviluppo:)
Sono interessato alla strategia di base della creazione di MQL5.

A proposito, la compilazione può essere fatta attraverso l'uso di qualche gcc, per esempio.

 
Compilazione in dll, nessuna conversione in mql5.
 

Mi sembra che se la necessità si presenta, allora le librerie che sono state in atto per anni e sono state sviluppate da open-source e simili dovrebbero essere utilizzate così come esistono. Non devono essere riscritte.

Gli sviluppatori modificano le loro librerie, le estendono, catturano i bug. Cioè, mantengono il loro bambino e ne hanno qualche responsabilità. Nel caso in cui queste librerie saranno riscritte su mql5, chi sarà responsabile del tracciamento delle nuove build e di altre manutenzioni? Molto probabilmente è un lavoro completamente inutile.

Per esempio, se avete bisogno di OpenOffice, non lo riscriverete su mql5, ma semplicemente inizierete ad usarlo immediatamente, anche se i sorgenti sono disponibili. In questo caso si risparmierà tempo e non si faranno errori durante la traduzione.

Penso che si dovrebbe iniziare a sviluppare una DLL solo se si tratta di uno sviluppo originale. Non vale la pena fare il porting delle librerie di altre persone.

Sarebbe probabilmente più logico fornire un riferimento garantito da mql a librerie già esistenti(dll). In questo caso, gli sviluppatori di mql possono facilmente fare un livello che fornisce la chiamata di funzioni e il trasferimento di parametri a fortran, gcc,visualc dll, usando il pragma appropriato quando dichiarano la libreria.

Ma questa è solo la mia opinione soggettiva.

Документация по MQL5: Основы языка / Функции / Передача параметров
Документация по MQL5: Основы языка / Функции / Передача параметров
  • www.mql5.com
Основы языка / Функции / Передача параметров - Документация по MQL5
 
Renat: Compilazione in dll, nessuna conversione in mql5.

spiegare di nuovo cosa sta succedendo :)

Sembra che già ora qualsiasi utente possa aggiungere .dll a mql5 da solo, ma cosa succederà ora? Ci sarà un pacchetto .dll standard per mql5 dagli sviluppatori che potrebbe essere usato, per esempio, al campionato 2012?

 
È strano sentire parlare di "accesso garantito alla DLL", quando ha funzionato perfettamente in MQL4 e MQL5 per 7 anni.

Le librerie native, sotto forma di codice sorgente in MQL5, sono necessarie per chi scrive programmi in vendita. Per il successo della vendita, è di fondamentale importanza sbarazzarsi delle DLL per garantire la piena sicurezza del codice.

Basta porsi la domanda "come vendere il tuo ex5 a 100.000 commercianti", e diventa chiaro che le DLL sono fuori questione.
 
Per quanto riguarda la compilazione del codice c++, vi consiglio di rileggere il mio post originale. Descrive chiaramente cosa funzionerà e come funzionerà.
 
IgorM:

spiegare di nuovo cosa sta succedendo :)

La carne sta diventando più corposa. La libreria per MT4 è enorme e non è limitata a mql4.com.

In confronto MT5 perde molto adesso. Non solo, se si scrive qualcosa di originale e utile, è probabile che contribuisca molto alla migrazione degli utenti.

Sembra che anche ora qualsiasi utente possa aggiungere una .dll a mql5.

Si può, ma non è necessariamente facile.

Capisco che l'intenzione è quella di prendere le libs richieste, portarle dove possibile, avvolgere il resto e fornirle in una forma che sia pronta per un uso normale.

 

Renat, per favore, spiega "sulle dita" per coloro che sono particolarmente sprovveduti come me.

Se ho un progetto C++ DLL per Visual Studio, posso usare la tua idea per compilarlo nel meta editor in ex5?

Posso collegarlo ulteriormente al mio progetto MQL5 come libreria?

 
avoitenko:

Renat, per favore spiega sulle tue dita.

Se ho un progetto DLL per Visual Studio, posso usare la tua idea per compilarlo in ex5 in MetaEditor?

E poi può essere allegato al mio progetto MQL5 come libreria?


Non sapete leggere?

È scritto chiaramente, quanto potrebbe essere più chiaro?

Inoltre, la prossima build dell'editor conterrà probabilmente il supporto nativo per la compilazione di codice C/C++ DLL. Cioè, potete compilare semplici DLL direttamente dal meta-editor. Se hai Visual Studio 2005/2008/2010 in locale, verrà usato un compilatore locale, altrimenti verrà usato il nostro servizio di compilazione online.

Dove dice di compilare la dll in ex5?

la DLL sarà compilata