Errori, bug, domande - pagina 2020
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
La funzione OrderCalcMargin non tiene conto del prezzo di apertura nel calcolo del margine
È un bug o dovrebbe esserlo?
Certo che lo è. Scrivere sulla SD.
Questa linea funziona come dovrebbe, ma ho dovuto controllare perché devo indovinare l'ordine di esecuzione. Discussione su questo punto qui.
Un bug, ovviamente. Scrivere nella SD.
Questa linea funziona come dovrebbe, ma ho dovuto controllare perché devo indovinare l'ordine di esecuzione. Discussione su questo punto qui.
L'ordine di calcolo delle espressioni in Print() è da destra a sinistra. Più o meno... Finora... L'ho anche controllato prima :)
È difficile essere sicuri quando c'è unacontraddizione diretta nel riferimento MQL4/5:
MQL5 ReferenceFondamenti del linguaggioFunzioniPassaggio di parametri
Nota
Ricordate che i parametri vengono passati alla funzione al contrario, cioè, l 'ultimo parametro viene calcolato e passato per primo, poi il penultimo, e così via. Il parametro che è il primo dopo la parentesi di apertura viene calcolato e passato alla funzione per ultimo.
MQL5 ReferenceFondamenti del linguaggioOperazioni ed espressioniAltre operazioni
Chiamata di funzione con argomenti x1, x2,..., xn
Ogni argomento può essere una costante, una variabile o un'espressione di tipo corrispondente. Gli argomenti passati sono separati da virgole e devono essere racchiusi tra parentesi, la parentesi di apertura deve seguire il nome della funzione.
Il valore dell'espressione è il valore restituito dalla funzione. Se il tipo di valore di ritorno di una funzione è nullo, la chiamata di funzione non può essere posta a destra dell'operazione di assegnazione. Si noti che l'ordine delle espressioni x1,..., xn è garantito.
Finora mi sto concentrando sul passaggio di parametri in ordine inverso.
Una domanda su OrderCalcMargin è venuta fuori in un thread vicinohttps://www.mql5.com/ru/forum/216697/page3
Test: controlliamo 2 modi diversi di calcolare il deposito sostituendo diversi prezzi di apertura.
Ecco il LOG
La funzione OrderCalcMargin non considera il prezzo di apertura quando calcola il margine
Questo sembra essere legato al tasso di cambio della valuta quotata, che deve essere ricalcolato per il tempo e il prezzo di apertura.
Se la valuta quotata è USD (e anche la valuta del conto è USD), allora il margine calcolato cambierà in base al prezzo di apertura.
Log per GBPUSD
È un Bug o dovrebbe esserlo?
Probabilmente dovrebbe esserlo, perché AUDUSD e USDJPY in particolare sono coinvolti nel calcolo, e le loro quotazioni sono costanti al momento del calcolo.
Ora, questo pensiero mi fa venire voglia di controllare... Nel conto MetaQuotes-Demo nella panoramica del mercato GBPUSD è presente, ma non nel conto robo...
Questo deve essere il caso perché AUDUSD e USDJPY in particolare sono coinvolti nel calcolo e le loro quotazioni sono invariate al momento del calcolo.
Ora, questo pensiero mi fa venire voglia di controllare... GBPUSD è presente nel conto MetaQuotes-Demo, ma non nel conto Robo...
Volevo solo dirvi che c'è un bug.
Ho già riprodotto la tua situazione con Margin=0 nel calcolo di OrderCalcMargin.
Solo che non l'ho ancora pubblicato.
Nel conto MetaQuotes-Demo GBPUSD è presente in Market Watch, ma non nel conto Robo...
Molto probabilmente presente in Market Watch (da non confondere con la lista generale dei simboli), ma non mostrato.
Questo deve essere il caso perché AUDUSD e USDJPY in particolare sono coinvolti nel calcolo e le loro quotazioni sono invariate al momento del calcolo.
Ora, questo pensiero mi fa venire voglia di controllare... Nel conto MetaQuotes-Demo nella panoramica del mercato GBPUSD è presente ma non nel conto robo...
Ecco il test:
1. Selezionare le croci in MarketWatch, nascondere tutto con USD
2. Aggiungi il simbolo DSHBTC e apri il suo grafico.
3. Chiudere il terminale
4) Aprire il terminale
5. Iniziamo il test per DSHBTC
Ecco il LOG:
Tutti gli incroci mostrano margine=0 e non è stato selezionato nessun incrocio principale.
Ancora una volta, eseguite lo script su DSHBTC
LOG
Non ci sono componenti principali, ma USDJPY è l'unico.
Tutti i test sono stati fatti su MetaQuotes
Molto probabilmente presente nel Market Watch (da non confondere con la lista generale dei simboli), ma non mostrato.
Stiamo in qualche modo parlando della stessa cosa in modi diversi
Stiamo in qualche modo parlando della stessa cosa in modi diversi
Esattamente. Il Market Watch non lo mostra, ma è lì.
Risolvere il problema.
Fatto!
P.S. Ho dimenticato di rimuovere la riserva :)