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
IMHO, il trading via Python è una mossa di PR di MQL5.
Chi vi impedisce di calcolare i dati degli indicatori? O di passare i dati degli indicatori personalizzati a python da mql?
Chi vi impedisce di calcolare i dati degli indicatori? O passare i dati degli indicatori personalizzati a python da mql
Puoi fare un esempio, almeno in pseudocodice. Creiamo uno script in python. Voglio ricevere i dati di Bollinger (Ishimoku, ecc.) per un certo periodo di tempo. Come si fa?
Scambiare con un pitone è buono...
...
Python memorizza quotazioni e indicatori su SQLite. Comunicazione MQL-python via socket, file o database (socket è meglio).
Hai ragione, naturalmente. Ma voglio aiutare le persone che non hanno familiarità con i database, le prese di qualche tipo ad entrare nel trading algoritmico...
Quindi rendiamolo semplice - attraverso i file. Chiaramente, e abbastanza per lavorare.
Propongo di fare tre file:
Classes.py - per metterci dentro tutti i tipi di classi, non necessariamente tutte, solo quelle che ne hanno bisogno, in modo che non ci sia un inutile ingombro di codice nel file principale;
Functions.py - per memorizzare lì tutti i tipi di funzioni, non necessariamente tutte, solo quelle che hanno bisogno di non ingombrare il codice nel file principale;
TradeLogic.py - file principale.
Metterò le classi di timing, bar e trade nel file Classes.py (una classe trade vuota):
Non ci sono ancora spiegazioni, le spiegazioni saranno fornite man mano che andremo avanti.
Puoi farmi un esempio, almeno in pseudocodice? Creare uno script in python. Voglio ottenere i dati di Bolinger (Ishimoku, ecc.) per un dato tempo. Come si fa?
Cioè, dare un esempio di come salvare i dati di qualsiasi indicatore in un file csv o SQLite e poi leggerli in python? Non sarà divertente?
Nel file TradeLogic.py suggerisco di scrivere questo per iniziare:
Qui ci sono alcune importazioni di ciò che sarà necessario in seguito, e il programma vero e proprio inizia con la linea N=1000. L'indirizzo "work_catalog" è la directory dove ho intenzione di salvare i file con i prezzi e, se necessario, altri. L'indirizzo è così strano, perché io uso Metatrader in macchina virtuale e per questa dimostrazione Python - anche lì, strumenti - l'elenco degli strumenti su cui abbiamo intenzione di commercio.
cioè dare un esempio di salvataggio dei dati di qualsiasi indicatore in un file csv o SQLite e poi leggerli in python? Non sarà divertente?
No, non sarà divertente. Ci sono molte persone che possono iniziare rapidamente il trading algoritmico con Python, ma attualmente non hanno alcuna familiarità con Python, e hanno la sensazione di non aver bisogno di MQL, non sono pronti a spendere tempo per imparare uno strumento che ha un'applicazione estremamente limitata. Non parlate nemmeno di sintassi simile al C, ci sono troppe persone che non conoscono affatto il C/C++.
Lo scopo di questo ramo è quello di dare istruzioni specifiche alle persone che non sanno da dove dovrebbero iniziare con il trading algoritmico. Un calcio d'inizio. Senza complicazioni inutili.
La libreria metatrader5 sarà utilizzata per gestire il terminale Metatrader5.
Biblioteca qui:https://pypi.org/project/MetaTrader5
Documentazione qui: https: //www.mql5.com/ru/docs/integration/python_metatrader5
Utilizzando le funzioni descritte nella libreria, implementate le funzioni per iniziare una connessione al terminale e per terminare una connessione al terminale. Abbiamo intenzione di farlo in un ciclo infinito ogni 5 minuti.
Scrivete anche la funzione dt_stamp_from_M5_view che creerà un conteggio di data-ora(oggetto di classe date_time) dalla stringa di tipo '202112101635' (la chiamo M5_view).
Mettiamo questo codice nel file TradeLogic.py:
Questo codice è già funzionale. Cioè, si avvia, determina il multiplo uguale più vicino di 5 minuti, + 10 secondi (per assicurare che le barre del server si chiudano, vogliamo salvare le quotazioni), dorme fino a questo momento, si sveglia, si connette al terminale, negozia (nel senso che non fa nulla), termina la connessione al terminale, dorme per 5 minuti - e il ciclo si ripete.
Funzionamento del programma: