Discussione sulla documentazione MQL4 - pagina 3

 
MQL è simile a C, nessuno lo mette in dubbio. Nessuno ha bisogno o ha mai chiesto un tutorial sulla sintassi MQL.

Nei linguaggi di programmazione, dove Framework-e e le sue funzioni, come Java e MQL, sono l'obiettivo principale della documentazione, perché in questo tipo di linguaggio non si può fare nulla senza di loro. Questo non è l'assemblaggio o il C, dove se non ti piace qualcosa o non capisci come funziona, sei il benvenuto a riscriverlo come vuoi. Nella documentazione Java, il 90% riguarda le funzioni Framework.

La situazione è molto simile in MQL, perché MQL è un linguaggio in cui le funzioni standard del framework giocano un ruolo importante, mentre la documentazione su queste funzioni è zoppa (e questo è esattamente ciò che ha detto newton, e con cui sono assolutamente d'accordo).

Gli esempi nella documentazione sono molto spesso inutili. Un buon esempio non è una linea - una chiamata di funzione con parametri. La documentazione e gli esempi devono spiegare molto precisamente quali sono i limiti accettabili dei parametri, dove e come si può e dove e come non chiamare la funzione, e cosa aspettarsi come risultato della chiamata.
Non c'è bisogno di alcun tutorial, basta passare attraverso la documentazione e se non assomiglia alla documentazione di OrderSend, ma assomiglia a questa, correggetela:

int AccountStopoutLevel()
Возвращает значение урвоня, по которому определяется состояние Stop Out.
Пример:
 
Print("StopOut level = ", AccountStopoutLevel());

Almeno il link di Stop Out, che spiega cosa si intende per Stop Out (lo stesso di Margin Call? Non è chiaro. ...) è necessario qui. Meglio ancora se l'esempio fornisce il valore specifico del conto del consumatore e cosa gli succede prima e dopo l'uso della funzione e perché. Nel caso di AccountStopOutLevel l'esempio potrebbe mostrare il conto del consumatore che è stato buttato fuori dal trade su questo livello e spiegare la connessione tra questo livello e ciò che AccountStopOutLevel riporta.

A dire il vero - ci sono anche funzioni, dove la documentazione è un piacere da leggere, si può immediatamente vedere che sono state pensate e scritte seriamente, non solo per ignorarle (OrderSend, per esempio). Ma ci sono meno funzioni di questo tipo rispetto a quelle con una buona documentazione. Con OrderSend è chiaro - tutti hanno bisogno di OrderSend, qui bisogna scrivere la documentazione o la gente non sarà in grado di fare trading. E su altre funzioni - "beh, non chiodano e beh, se necessario, le aggiungeremo più tardi". È necessario, signor MQS, è necessario. Per favore, aggiungeteli.
 
Dmitrich:

Ma qui ci sono molti commercianti, non programmatori! A un uomo piace giocare in borsa, l'eccitazione, i calcoli. Perché un trader dovrebbe diventare un programmatore imparando il C++, e poi studiando articoli e cheler? Per lui non è interessante, ed è difficile "rodare" la strategia senza un Expert Advisor. Cosa fare? Prendete la via più breve e cercate (chiedete, esigete, estorcete) un libro di testo. Cosa c'è di sbagliato in questo? Se non ci piacciono le torte della pasticceria più vicina, cerchiamo un'altra pasticceria, non sempre cercando di cucinare noi stessi. Ognuno dovrebbe fare le proprie cose e preferibilmente ciò che gli piace.

Per qualche ragione, voi mettete insieme la riluttanza dei commercianti a diventare programmatori e la necessità di un libro di testo.
Sono cose completamente diverse! Non sono un programmatore per educazione e nessuno mi ha chiesto di programmare se non all'istituto durante il processo di apprendimento. Tuttavia, ho semplicemente letto quello che ho 2 (DUE) anni fa in MQL e ho iniziato gradualmente a programmare. Ora ho 260Kb di EA scritto con le mie idee, che non ho mai visto da nessuna parte in Internet, e che sto costantemente modificando (cioè lo sto cercando).
Se un trader ha spalato con successo soldi nel mercato per 1-2 mesi pensando di essere un vero "trader", e pensando che è fortunato ad avere una strategia già pronta e funzionante - ha solo bisogno di un libro di testo intelligente e potrà dormire bene una volta a settimana avendo programmato un Expert Advisor con un libro di testo, allora questa è un'illusione che tutti hanno attraversato! Dovete trattarlo solo come un certo passo nello sviluppo dell'MTS. Posso assicurarvi che l'algoritmo che avete usato per avere successo sul mercato per 1-2 mesi non può assolutamente garantirvi nulla in futuro, non importa come e da chi questo EA sarà implementato - l'autore stesso o terzi per denaro.
 
Per qualche ragione avete messo insieme la riluttanza dei commercianti a diventare programmatori e la necessità di un libro di testo. <br/ translate="no"> Sono cose completamente diverse! Non sono un programmatore per educazione e nessuno mi ha chiesto di programmare se non all'istituto durante il processo di apprendimento. Tuttavia ho appena preso le mie letture di MQL 2 (DUE) anni fa e gradualmente ho iniziato a programmare. Ora ho un EA di 260Kb che ho scritto con le mie idee, che non ho mai visto da nessuna parte in Internet, e che modifico costantemente (cioè le cerco).
Se un trader ha spalato con successo soldi nel mercato per 1-2 mesi pensando di essere un vero "trader", e pensando che è fortunato ad avere una strategia già pronta e funzionante - ha solo bisogno di un libro di testo intelligente e potrà dormire bene una volta a settimana avendo programmato un Expert Advisor con un libro di testo, allora questa è un'illusione che tutti hanno attraversato! Dovete trattarlo solo come un certo passo nello sviluppo dell'MTS. Posso assicurarti che l'algoritmo che hai usato per avere successo sul mercato per 1-2 mesi non può assolutamente garantirti nulla in futuro, non importa come e da chi questo EA sia implementato - dall'autore o da altri per soldi.

Non sto parlando del successo della strategia, ma del naturale desiderio delle persone di imparare a scrivere Expert Advisors senza studiare libri di testo su C++ e molti articoli e manuali.
 
Dmitrich:

Non sto parlando del successo della strategia, ma del naturale desiderio di una persona di imparare a scrivere EAs senza studiare libri di testo su C++ e molti articoli e manuali.

In generale, nella mia comprensione un normale libro di testo di scrittura MQL deve essere qualcosa di simile a quello che è disponibile nelle librerie per qualsiasi linguaggio di programmazione. Questi libri spessi sono di mezzo migliaio di pagine ciascuno. Le peculiarità del MQL difficilmente possono essere descritte in un opuscolo di 50-100 pagine, quello che i "trader" sognano. Il solo elenco di esempi può facilmente raggiungere le 100 o più pagine a giudicare dagli articoli di questo sito. E avete anche bisogno di illustrazioni e spiegazioni dettagliate. Quindi è improbabile che un serio libro di testo MQL incoraggi fortemente i "trader" alla programmazione EA se l'esistenza di questo sito non li ha ispirati finora. Parlo della necessità dell'esistenza di un tutorial MQL, e intendo il lato formale della questione - se c'è un linguaggio di programmazione, allora ci deve essere un tutorial (anche se principalmente in forma elettronica) per coloro che desiderano imparare a programmare in esso.
A proposito, alcuni articoli locali sono quasi capitoli pronti di un libro di testo.
 
solandr:
Dmitrich:

Non sto parlando di una strategia di successo, ma di un desiderio naturale di imparare a scrivere Expert Advisors senza studiare libri di testo C++ e pile di articoli e manuali.

In generale, nella mia comprensione un normale libro di testo di scrittura MQL deve essere qualcosa di simile a quello che è disponibile nelle librerie per qualsiasi linguaggio di programmazione. Questi libri spessi sono di mezzo migliaio di pagine ciascuno. Le caratteristiche di MQL difficilmente possono essere descritte in un opuscolo di 50-100 pagine, quello che i "commercianti" stanno sognando. Il solo elenco di esempi può facilmente raggiungere le 100 o più pagine a giudicare dagli articoli di questo sito. E avete anche bisogno di illustrazioni e spiegazioni dettagliate. Quindi è improbabile che un serio libro di testo MQL incoraggi fortemente i "trader" alla programmazione EA se l'esistenza di questo sito non li ha ispirati finora. Parlo della necessità dell'esistenza di un tutorial MQL, e intendo il lato formale della questione - se c'è un linguaggio di programmazione, allora ci deve essere un tutorial (anche se principalmente in forma elettronica) per coloro che desiderano imparare a programmare in esso.
A proposito, alcuni articoli locali sono quasi tutti capitoli di un libro di testo pronti all'uso.
Sono d'accordo, ma sarebbe più facile per i commercianti e i programmatori principianti usare un libro di testo dove tutto è sistematizzato. Non è necessario studiare tutte le 500 pagine. Sarebbe sufficiente studiare la parte introduttiva, le basi della programmazione, e poi usarlo come un libro di riferimento, selezionando solo quegli operatori (o come si chiamano) che sono necessari per implementare e ottimizzare una particolare strategia. E gli esempi, di conseguenza, con le illustrazioni non saranno più tutti necessari. So che è impossibile scrivere un libro di testo completo, ma solo le sottigliezze possono essere chiarite qui negli articoli e sul forum.
 
Dmitrich:
È sufficiente imparare la parte introduttiva, le basi della programmazione, e poi usarla come riferimento, selezionando solo gli operatori (o come si chiamano) che sono necessari per implementare e ottimizzare una particolare strategia. E gli esempi, di conseguenza, con le illustrazioni, non sono più così necessari.
Proprio per risolvere questi problemi, Rosh ha scritto diversi articoli di base sul sito di Alpari che sono abbastanza utili per i principianti. Tuttavia, il design è cambiato - non riesco a trovare immediatamente questi articoli sul sito. Potete leggerli durante una settimana ed essere consapevoli delle tendenze di base della programmazione. E più avanti, a seconda dei compiti che deve svolgere lo scrittore esperto.
 

Perché raggruppare tutto in un unico mucchio?
Perché discutere l'ovvio - che un buon (e non un buon) manuale di MQL è un must?
Programmo in MQL da 2 anni ormai, non ho bisogno di libri. Ma questo significa che non sono affatto necessari?

In questo thread molti commenti corretti sono stati fatti altrove. Li ripeterò insieme ai miei, per riunire tutto in un unico luogo:

Ci deve essere un capitolo obbligatorio che descriva (come ha scritto alex_ant) il meccanismo di funzionamento del programma MQL. Questo è qualcosa che ogni trader che è nuovo alla programmazione può capire anche prima di imparare il linguaggio. Questa descrizione deve essere legata al processo di trading, e può anche spiegare la differenza tra indicatori, script e Expert Advisors, come si comportano in relazione alla coda di tick, al server di trading, tra loro, ecc.

Si dovrebbe prestare maggiore attenzione alla struttura del programma MQL, i suoi componenti principali - le funzioni init(), start() e deinit(). Queste funzioni sono la principale differenza tra MQL e altri linguaggi, e la documentazione dà loro poco spazio, solo poche righe.

Sarebbe molto bello esaminare tutti gli articoli del dizionario e non solo eliminare gli errori e i refusi, ma anche portare la terminologia a un denominatore comune. Molto spesso le descrizioni di parametri uguali o simili di funzioni e procedure sono fatte usando termini molto diversi e il loro significato non è spiegato. Di conseguenza, c'è una descrizione, ma il significato e l'uso di alcuni parametri devono essere studiati in un esperimento.

È molto importante (sono assolutamente d'accordo con 4x4ever ) dare esempi in linea retta! La stragrande maggioranza degli esempi negli articoli del dizionario non spiegano nulla e non insegnano nulla. Infatti, un esempio di una riga non è un esempio! In un normale libro di testo, l'esempio permette di capire sia il significato dei parametri, sia l'ordine in cui la procedura/funzione viene usata, e il risultato che produce. E per questo non è necessario scrivere il proprio programma. IMHO: la debolezza degli esempi MQL è uno degli svantaggi principali della documentazione.

Infine, ci dovrebbe essere qualche articolo che spieghi a un principiante come scrivere un indicatore/script/advisor passo dopo passo. Questa necessità non è legata all'algoritmo, ma alle caratteristiche dell'architettura del programma MQL. Questo articolo aiuterà un principiante a capire la struttura e il codice del template, e quindi a fare il primo passo più difficile. Successivamente, questo modello può essere utilizzato per creare tutti gli altri programmi di questo tipo. E non c'è nessun problema, perché Rosh di articoli simili sono stati scritti in abbondanza. Dovete solo selezionare gli appropriati e semplificarli significativamente.

Cari sviluppatori, i miglioramenti elencati per la documentazione sono molto meno impegnativi della creazione di un tutorial. Tuttavia, per gli utenti, queste cose sono quasi uguali. Esprimi spesso la tua insoddisfazione per il fatto che entrambi i forum hanno spesso persone che fanno le stesse domande. Le domande ripetitive possono essere ridotte drasticamente. Per farlo, basta considerare i pochi desideri espressi in questo thread almeno nella documentazione.

 
Yurixx:

Perché raggruppare tutto in un unico mucchio?
Perché discutere l'ovvio - che un adeguato (non buono) manuale di MQL è un must?

Questo può essere corretto, ma rimane una domanda: chi scrive e pubblica effettivamente libri di testo sulla programmazione nel mondo? Lo fanno gli sviluppatori o gli autori ed editori terzi? Gli sviluppatori fanno il programma e il linguaggio, scrivere e pubblicare un libro di testo è un altro affare.

E cosa le fa pensare che un libro di testo sia necessario? Se tu personalmente e gli altri tre in questo thread ne avete bisogno, non significa nulla. Se ci fosse una domanda effettiva, ci sarebbe già un'offerta - questo è il mercato.

Un libro di testo normale costa 50-100 dollari. Suggerisco a coloro che vogliono ottenere un libro di testo di qualità di contribuire con cinquanta dollari. E se questi cinquanta dollari saranno sufficienti, sarà possibile assumere un autore decente che per soldi normali lavorerà sul libro di testo come un lavoro principale, non tra un attacco e l'altro del pane quotidiano. Un editore normale sarà assunto, i revisori normali saranno pagati, e poi il libro sarà pubblicato in qualità normale.

E se non c'è abbastanza domanda, allora non c'è niente di cui parlare - vuote chiacchiere da forum - datemi tutto di più e gratis.
 
timbo писал (а):


Questo può essere corretto, ma rimane una domanda: chi scrive e pubblica effettivamente libri di testo di programmazione nel mondo? Lo fanno gli sviluppatori o sono autori ed editori terzi? Gli sviluppatori creano il software e il linguaggio, scrivere e pubblicare un libro di testo è un'attività diversa.

Bisogna lanciare un'idea agli editori, è un argomento molto specializzato e non ci sono ancora arrivati. Vero, se loro (gli editori) si mettono al lavoro, lo stravolgeranno e faranno così tanti errori che un manuale incorporato sembrerà la Bibbia in confronto :-)
 
Yurixx:


È obbligatorio avere dei capitoli che descrivono (come ha scritto alex_ant) il meccanismo di funzionamento dei programmi MQL. Questo è qualcosa che ogni trader che è nuovo alla programmazione può capire anche prima di imparare il linguaggio. E questa descrizione deve essere legata al processo di trading, e può anche spiegare la differenza tra indicatori, script e Expert Advisors, come si comportano in relazione alla coda di tick, al server di trading, tra di loro, ecc.

Si dovrebbe prestare maggiore attenzione alla struttura del programma MQL, i suoi componenti principali - le funzioni init(), start() e deinit(). Queste funzioni sono la differenza essenziale tra MQL e altri linguaggi...

Esattamente!

"- Avete notato, signori, com'è il tempo?
- Prevedibile.
- Previsto con precisione, Sir Oira-Oira, previsto con precisione!".
(Strugatsky, Il lunedì inizia di sabato)