Unisciti alla nostra fan page
- Visualizzazioni:
- 350
- Valutazioni:
- Pubblicato:
- 2021.11.08 16:41
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
La libreria contiene le seguenti funzioni:
- TradeServerReturnCodeDescription - restituisce la descrizione di codici di ritorno del server di trading;
- ErrorDescription - restituisce la descrizione di runtime errors.
//+------------------------------------------------------------------+ //| ErrorDescription.mqh | //| Copyright 2010, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2010, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" //+------------------------------------------------------------------+ //| returns trade server return code description | //+------------------------------------------------------------------+ string TradeServerReturnCodeDescription(int return_code) //+------------------------------------------------------------------+ //| returns runtime error code description | //+------------------------------------------------------------------+ string ErrorDescription(int err_code)
Esempio:
(Non dimenticare di copiare il file ErrorDescription.mq5 nella directory \MetaTrader 5\MQL5\Include)
//+------------------------------------------------------------------+ //| ErrorDescrTest.mq5 | //| Copyright 2010, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2010, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #include <ErrorDescription.mqh> //+------------------------------------------------------------------+ //| Example of use of the ErrorDescription.mqh library | //+------------------------------------------------------------------+ void OnStart() { Print("----- Description of trade server return codes -----"); for(int i=10004;i<=10034;i++) { Print("Trade server return code:",i,TradeServerReturnCodeDescription(i)); } Print("-------- Description of runtime error codes ---------"); for(int i=4001;i<=4014;i++) { Print("Runtime error code:",i,ErrorDescription(i)); } } //+------------------------------------------------------------------+
In alcuni casi è necessario lavorare con errori definiti dall'utente. Nel MQL5 c'è una funzione SetUserError, che imposta la variabile predefinita _LastError nel valore di ERR_USER_ERROR_FIRST + user_error.
I codici di errore definiti dall'utente partono dal codice ERR_USER_ERROR_FIRST. In questi casi potete usare la funzione ErrorDescriptionExt per restituire la descrizione degli errori, compresi gli errori definiti dall'utente:
//+------------------------------------------------------------------+ //| UserErrorDescr.mq5 | //| Copyright 2010, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2010, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #include <ErrorDescription.mqh> //+------------------------------------------------------------------+ //| returns runtime error code description, | //| with user defined errors | //+------------------------------------------------------------------+ string ErrorDescriptionExt(int err_code,string&user_errors[]) { if(err_code>=0 && err_code<ERR_USER_ERROR_FIRST) return(ErrorDescription(err_code)); //--- user defined runtime errors err_code-=ERR_USER_ERROR_FIRST; if(err_code<=ArraySize(user_errors)) return(user_errors[err_code]); //--- return("Unknown error"); }; // an array with description of the user defined runtime errors string MyErrors[]= { "User error №1", "User error №2", "User error №3" }; //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- for(int i=0;i<=2;i++) { SetUserError(i); Print("User defined error code:",i,ErrorDescriptionExt(GetLastError(),MyErrors)); } } //+------------------------------------------------------------------+
Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/79

È un oscillatore delle condizioni di mercato ipercomprato/ipervenduto. Può essere utilizzato anche come indicatore Momentum. Il triplo livellamento viene utilizzato per rimuovere le componenti cicliche nei movimenti di prezzo con il periodo inferiore a quello di TRIX.

Questo oscillatore misura il rapporto tra la somma degli incrementi positivi e la somma degli incrementi negativi per un certo periodo.

MT5 Indicator for Position Size Calculation

La libreria MovingAverages contiene funzioni per il calcolo di diversi tipi di medie mobili.