Sistemi Esperti: MQL5 Programming for Traders – Source Codes from the Book. Parte 7 - pagina 2
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
In generale, per un libro di testo sarebbe meglio scrivere tra parentesi:
Tutti gli operatori della forma @=, dove per cane si intende il simbolo di qualsiasi operazione, vengono sempre eseguiti sull'operando di destra, completamente contato prima dell'esecuzione dell'operazione. Questo aspetto è trattato nella Parte 2, sotto Operazioni di modifica.
Il file di calcolo dei margini è descritto nella sesta parte, dove si presuppone che le parti precedenti siano state padroneggiate. La complessità aumenta verso la fine del libro - non lo metto in dubbio, quindi ho cercato di fare riferimento ai grandi concetti e ai principi delle sezioni precedenti nelle sezioni successive, dove questi sono stati utilizzati come elementi costitutivi (per rinfrescare la memoria), ma non per cose così piccole.
...La complessità aumenta verso la fine del libro - non c'è nulla da eccepire, quindi per i grandi concetti e i principi delle sezioni precedenti ho cercato di fare riferimento alle sezioni successive in cui sono stati usati come elementi costitutivi (per rinfrescare la memoria), ma non per cose così piccole.
Stanislav, il mio livello di programmazione è più modesto del tuo. Cerco di scrivere il codice in modo che sia più facile controllarlo nel Debugger. Ecco perché non uso spesso l'operatore ternario. E se lo uso, lo uso con le parentesi... Ci sono persone molto abili che scrivono diversi operatori ternari inclusi l'uno nell'altro. Questo è qualcosa di simile allo stile di programmazione macro del mio collega fxsaber. Probabilmente ogni approccio ha diritto alla vita. Ed è già una questione di gusti...
Grande rispetto e stima per il tutorial! Alcune cose interessanti sono descritte in modo più dettagliato rispetto alla Documentazione.
È comunque poco utile, perché alla fine conta il margine in modo errato se il volume è più di tre.
Calcolo del margine per dieci contratti.
Allego lo script per la verifica. Ora l'ho eseguito sull'intera panoramica del mercato - coincide con la funzione standard indipendentemente dal volume.
E il compilatore è incazzato:
Probabilmente è cambiato qualcosa nel compilatore. Al momento della pubblicazione del libro, tutti i sorgenti venivano compilati senza avvertimenti o errori, tranne nei casi in cui vi erano irregolarità intenzionali a scopo dimostrativo.
Cerco di scrivere il codice in modo che sia più facile controllarlo nel Debugger. Ecco perché non uso spesso l'operatore ternario. E se lo uso, lo uso con le parentesi....
Sono d'accordo. Anch'io mi attengo a questa regola, tranne che per i casi semplici - ma qui ognuno ha la sua barriera di semplicità. La leggibilità del codice viene trattata individualmente, di solito si cerca una "media aurea" tra l'approccio "tutto in una riga" e "ogni token su una riga separata". Con le parentesi - in modo simile. Le aziende produttrici di software di solito hanno una serie di regole sul layout del codice sorgente - in questo caso non ce n'era nessuna.
Si prega di allegare lo script per la verifica. Ora l'ho eseguito sull'intera panoramica del mercato - coincide con la funzione standard indipendentemente dal volume.
Oh, cavolo. Non posso credere di non aver visto questo messaggio. Oh, cavolo.
In realtà, per me non è cambiato nulla.
Server Metaquot, versione terminale 4420.
Il codice è questo
Il risultato è questo.
Qualcuno sta sbagliando a contare.
Forse mi sono sbarazzato del namespace MPM in modo errato: non so cosa sia e perché sia necessario, ma non mi ha permesso di compilare l'EA.
In realtà, ho solo rimosso la riga del namespace MPM, le parentesi graffe dopo di essa e ho rinominato OrderCalcMargin, aggiungendo il trattino basso.
In generale, il file è stato compilato in questa forma. È possibile che sia questo l'errore?
Il codice è il seguente
Il risultato è questo
Qualcuno sta sbagliando a contare.
Qui si trova la notizia per l'inizio del 2024 (cioè dopo la stesura del libro) sulla build 4150 - https://www.metatrader5.com/en/releasenotes/terminal/2342.
Nelle impostazioni del server e nell'interfaccia delle specifiche dei simboli hanno aggiunto la dipendenza del margine dal volume.
Non ho trovato come accedere a queste proprietà da MQL5.
In un particolare broker/strumento questa impostazione del margine fluttuante potrebbe non essere attivata, quindi non ho notato alcuna differenza quando ho controllato non su MQ demo.
Aggiunta della dipendenza dal margine di volume alle impostazioni del server e all'interfaccia delle specifiche dei simboli.
Non ho trovato come accedere a queste proprietà da MQL5.
@Renat Fatkhullin
C'è qualche progetto per aggiungere la possibilità di ottenere queste proprietà da MQL5?
Forum sul trading, sui sistemi di trading automatizzati e sul test delle strategie di trading
Expert Advisors: MQL5 Programming for Traders - codici sorgente dal libro. Parte 7
Stanislav Korotky, 2024.11.23 20:26
Ho trovato nelle news dell'inizio del 2024 (cioè dopo la stesura del libro) la build 4150 - https://www.metatrader5.com/en/releasenotes/terminal/2342.
Nelle impostazioni del server e nell'interfaccia di specificazione dei simboli hanno aggiunto la dipendenza del margine dal volume.
Non ho trovato come accedere a queste proprietà da MQL5.
In un particolare broker/strumento questa impostazione del margine fluttuante potrebbe non essere attivata, per cui non ho notato alcuna differenza quando ho controllato non su MQ demo.