MetaTrader 5 Python User Group - Come usare Python in Metatrader - pagina 35

 
Sergey Chalyshev:

Non giudicare duramente, forse ci sono amanti del pitone là fuori che cercano di integrarlo in tutto e per tutto.

Python è una libreria C++, non è meglio fare MQL SB(libreria standard)?

MQ stava inizialmente andando in questa direzione, ma poi ha rinunciato sotto l'assalto di Ruto, RWods e Algibods )

Penso che l'intero problema sia che MQ ha paura di andare oltre la sandbox, come R, Py, Alglib non è più un nostro problema.

Hanno aggiunto un link ad altri "linguaggi di programmazione" e lasciano che gli altri Yap facciano quello che vogliono.

Mi ricorda uno struzzo).

Quali sostanze devono essere prese per rilevare l'integrazione con R?

 
Renat Fatkhullin:

Il problema è la ristrettezza della percezione dell'argomento tra le masse e una mancanza di comprensione delle tendenze nello sviluppo dell'algotrading:

  • Il machine learning è il prossimo passo tecnologico nell'algotrading
  • Python non è una libreria C++, ma una piattaforma di apprendimento automatico vincente
  • L'integrazione di Python nell'editor e nel terminale ti dà la possibilità di usare istantaneamente librerie decisionali fuori dal comune e completamente intollerabili
  • Le integrazioni sono la norma, abbiamo DLL native, .NET DLL, OpenCL, DirectX, SQLite oltre a un grande insieme di funzioni native e libreria standard
  • Metatrader 5 e MQL5 si stanno rapidamente evolvendo per supportare il machine learning: prima tramite Python, libreria di integrazione API del terminale e funzioni per lavorare con dati massicci, e poi verso i formati di modello standard WinML e aperti ONNX.

Lo struzzo è esattamente il tipo di persona

  • cercando di discutere la complessità di MQL5 e i vantaggi di MT4
  • Non sviluppandosi, risparmiando la loro energia
  • Cercare di fermare il progresso


Per capire meglio l'industria dell'algotrading:

  1. Pensare su larga scala con decine di milioni di consumatori piuttosto che percezioni o opportunità personali/private
  2. Valutare periodi di 5-10 anni e tendenze di sviluppo, le informazioni pubbliche sono sufficienti.
  3. i prodotti (robot, indicatori, ...) sono sviluppati principalmente da programmatori più o meno professionisti, che hanno bisogno di sempre maggiori possibilità, compresa la distribuzione
  4. gli utenti di massa usano l'output degli sviluppatori professionisti spesso senza capire la complessità delle tecnologie applicate
  5. c'è abbastanza strato di sviluppatori e consumatori non pubblici, ma super capienti sotto forma di hedge-funds
  6. O si abbraccia il progresso o si rimane fuori - il treno corre senza sosta.
Se si rimane nel quadro del "ci sono solo io e i miei interessi, perché dovrei pensare al generale e al futuro", si perde naturalmente la capacità di difendere la propria posizione su larga scala.

Trading "adulto", la gestione del rischio è prima di tutto un matstat. L'apprendimento automatico qui è essenzialmente solo un modo di risolvere i problemi matematici. Questi sono compiti un po' diversi da quelli che sorgono nello sviluppo dell'Internet delle cose e cose del genere.

 
Renat Fatkhullin:


  1. c'è uno strato sufficiente di sviluppatori e consumatori finanziari non pubblici, ma super-capaci, sotto forma di hedge fund

Da questo punto in poi, è diventato improvvisamente molto interessante, ;)

 
Aleksey Nikolayev:

Trading "adulto", la gestione del rischio è prima di tutto un matstat. L'apprendimento automatico è essenzialmente solo un modo di risolvere i problemi matematici. Questi sono compiti un po' diversi da quelli che sorgono nello sviluppo dell'"Internet delle cose" e altre cose simili.

C'era scritto da qualche parte "no al matstat!"?

Abbiamo già fatto un grande passo avanti implementando la libreria matematica di base di R sotto forma di sorgenti MQL5 (più di 400 funzioni):

Solo l'integrazione con Python vi darà accesso a quasi tutte le possibilità di analisi statistica.

Non appena avremo completato Python, abiliteremo la compilazione completa C/C++ nell'editor per creare DLL, EXE e moduli speciali EX5 da C++. Questo permetterà alle librerie C++ esistenti di essere ricompilate in forma compatibile con EX5 con una rielaborazione minima, e aprirà l'accesso a molte librerie open-source.

Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее
Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее
  • www.mql5.com
Рассмотрим функции для работы с основными статистическими распределениями, реализованными в языке R. Это распределения Коши, Вейбулла, нормальное, логнормальное, логистическое, экспоненциальное, равномерное, гамма-распределение, центральное и нецентральные распределения Бета, хи-квадрат, F-распределения Фишера, t-распределения Стьюдента, а...
 
Renat Fatkhullin :

C'era scritto da qualche parte "no al matstat!"?

Abbiamo già fatto un grande passo avanti implementando la libreria matematica di base di R sotto forma di codice sorgente MQL5 (oltre 400 funzioni):

Solo l'integrazione con Python dà accesso a quasi tutte le capacità di analisi statistica.

Non appena avremo finito Python, integreremo la compilazione C/C++ nell'editor per creare DLL, EXE e moduli speciali EX5 da C++. Questo permetterà alle librerie C++ esistenti di essere ricompilate in forma compatibile con EX5 con una rielaborazione minima e aprirà l'accesso a molte librerie opsource.

Molto interessante. Ci sono piani per incorporare (come risorsa) la libreria ex5 in un EA o un indicatore per pubblicarlo sul mercato?

 
Alain Verleyen:

Molto interessante. Ci sono piani per incorporare (come risorsa) la libreria ex5 in un EA o un indicatore per pubblicarlo sul mercato?

No.

Solo noi potremo distribuire i moduli pubblicamente per ragioni di sicurezza.

Molto probabilmente ci sarà una sezione di moduli ufficiali in kodobase, caricati automaticamente secondo le istruzioni:

#module "public_name_in_codebase"
Stiamo anche percorrendo la strada dei gestori automatici di batch. Il motore del codebase sarà riformato.
 
Renat Fatkhullin :

No.

Solo noi potremo distribuire i moduli pubblicamente per ragioni di sicurezza.

Molto probabilmente ci sarà una sezione di moduli ufficiali nel kodobase, caricati automaticamente secondo le istruzioni:

Ho capito. Grazie.
 
Renat Fatkhullin:

C'era scritto da qualche parte "no al matstat!"?

Abbiamo già fatto un grande passo avanti implementando la libreria matematica di base di R sotto forma di codice sorgente MQL5 (oltre 400 funzioni):

Solo l'integrazione con Python dà accesso a quasi tutte le possibilità di analisi statistica.

Non appena avremo completato Python, incorporeremo la compilazione C/C++ nell'editor per creare DLL, EXE e moduli speciali EX5 da C++. Questo permetterà alle librerie C++ esistenti di essere ricompilate in forma compatibile con EX5 con una rielaborazione minima e aprirà l'accesso a molte librerie opsource.

Uno studio molto superficiale della biblioteca statistica locale porta alla scoperta di gravi errori. La mancanza di risposta alle segnalazioni di questi errori assomiglia molto a "matstat - no!".

È improbabile che Python abbia la varietà di pacchetti e la comunità di professionisti dell'analisi che ha R.

 
Aleksey Nikolayev:

Un esame molto superficiale della biblioteca statistica locale porta alla scoperta di gravi errori. La mancanza di risposta alle segnalazioni di questi errori assomiglia molto a "matstat - no!

Tu stesso hai passato gli argomenti sbagliati e hai ottenuto i messaggi di errore ERR_ARGUMENTS_INVALID (2).
 
Aleksey Nikolayev:

1) Qualsiasi CDF - funzione di distribuzione delle probabilità (quelle discrete non fanno eccezione!) deve essere DEFINITIVAMENTE definita per tutti i numeri reali. Qui sotto c'è un analogo del codice su R con il suo risultato che mostra come dovrebbe essere considerato nella realtà. A proposito, avete alcune funzioni CDF discrete che contano correttamente e altre no.

2) Per il valore 1 si ottiene un errore di divisione per zero.

Abbiamo un'implementazione di questa funzione per i numeri interi:

//--- m,k,n,x must be integer

Fate la vostra funzione se ne avete bisogno. Tutto è disponibile in codice sorgente, a differenza di R.