Discussione sull’articolo "Uso delle Risorse in MQL5"

 

Il nuovo articolo Uso delle Risorse in MQL5 è stato pubblicato:

I programmi MQL5 non solo automatizzano i calcoli di routine, ma possono anche creare un ambiente grafico completo. Le funzioni per la creazione di controlli realmente interattivi sono ora virtualmente altrettanto ricche, come quelle nei classici linguaggi di programmazione. Se vuoi scrivere un programma autonomo completo in MQL5, utilizzare le risorse al loro interno. I programmi con risorse sono più facili da mantenere e distribuire.

Il compito del programma è disegnare su uno sfondo blu (substrato), due pulsanti grafici che cambiano il loro aspetto con un click del mouse. Quando clicchi sul substrato, cambia il suo colore da blu a beige e viceversa. Ad ogni modifica, viene riprodotto un suono, l'evento del click del mouse viene gestito nella funzione OnChartEvent(). Nella figura viene mostrato un grafico subito dopo l'inizio di Adviser Animals_EA.mq5.



Autore: MetaQuotes

 

Ora è ancora più facile includere risorse nei programmi MQL5; a questo scopo, in MetaEditor 5 è stato aggiunto uno speciale comando standard "Inserisci risorsa" :



Вставка ресурсов

Per facilitare l'uso dei file di risorse nelle applicazioni sviluppate, nel menu " Service " è disponibile il comando "Inserire le risorse Insert Resources". Questo comando consente di inserire nel file corrente la dichiarazione dei file di risorse selezionati da una cartella specificata, utilizzando la direttiva #resource.

Dopo aver eseguito questo comando, viene visualizzata una finestra di dialogo standard del sistema operativo in cui è necessario selezionare uno o più file di risorse da dichiarare nel file.

  • I file di risorse possono essere collocati solo all'interno della cartella /MQL5 del terminale client. I file al di fuori di questa cartella non possono essere utilizzati.
  • Solo i file *.wav e *.bmp possono essere utilizzati come file di risorse.

In seguito, le direttive corrispondenti della forma seguente verranno aggiunte all'inizio del file corrente:

#risorsa "\Images\example.bmp"
o
#risorsa "resources\example.bmp"

Il percorso dei file di risorse può essere specificato in due modi:

  • Relativo al file corrente (senza il simbolo "\" all'inizio del percorso)
    Questo metodo viene utilizzato se i file delle risorse si trovano nella stessa cartella del file corrente o in una delle sue sottocartelle.
  • Rispetto alla directory /MQL5 del terminale client (con il simbolo "\" all'inizio del percorso)
    Questo metodo viene utilizzato in tutti gli altri casi.
 

Ora inserire risorse nei programmi MQL5 è diventato ancora più facile. A tale scopo, MetaEditor 5 dispone del comando speciale Inserisci risorse.


Resources Inserting

Per facilitare l'uso dei file di risorse nelle applicazioni sviluppate, nel menu " Strumenti" è stato implementato il comando "Inserisci risorse Inserisci risorse". Questo comando consente di dichiarare i file di risorse di una cartella selezionata nel file corrente utilizzando la direttiva #resource.

Una volta eseguito questo comando, appare la finestra di dialogo standard del sistema operativo. In essa è necessario selezionare uno o più file di risorse da dichiarare nel file.

  • I file di risorse possono trovarsi solo all'interno della directory /MQL5 del terminale client. I file al di fuori di tale directory non possono essere utilizzati.
  • Solo i file *.wav e *.bmp possono essere utilizzati come file di risorse.

Una volta eseguite le azioni di cui sopra, le direttive corrispondenti verranno aggiunte all'inizio del file. Ad esempio:

#risorsa "\Images\example.bmp"
o
#risorsa "resources\example.bmp"

Il percorso dei file di risorse può essere specificato in due modi:

  • Relativamente al file corrente (senza il simbolo "\" all'inizio del percorso)
    Questo modo viene utilizzato nel caso in cui i file delle risorse si trovino nella stessa directory del file corrente o in una delle sue sottocartelle.
  • Relativamente alla directory /MQL5 del terminale client (il simbolo "\" è specificato all'inizio del percorso)
    Questo modo è utilizzato in tutti gli altri casi.
[Eliminato]  

MetaTrader 5 Client Terminal build 730
MQL5: Added support for storing indicators in EX5 resources. 

#resource "Examples\Fractals.ex5"

Qualcuno potrebbe fornire un esempio di utilizzo dell'indicatore.

 
Quando sarà possibile inserire come risorsa i file degli indicatori richiamati nel file principale tramite iCustom()? C'è così tanta spazzatura nelle cartelle del terminale che non è nemmeno chiaro a cosa appartenga. Non è sicuro. Vorrei imparare a raccogliere un progetto in un unico file ex5.
 
MoneyJinn:
Quando sarà possibile inserire come risorsa i file degli indicatori richiamati nel file principale tramite iCustom()? C'è così tanta spazzatura nelle cartelle del terminale che non è nemmeno chiaro a cosa appartenga. Non è sicuro. Vorrei imparare a raccogliere un progetto in un unico file ex5.

Questo è stato aggiunto nella versione 730 del 24 novembre 2012:

  • MQL5: Aggiunto il supporto per la memorizzazione degli indicatori nelle risorse EX5. Gli indicatori nelle risorse non potranno lavorare con le proprie risorse.


Ecco un semplice esempio. Compilare prima l'indicatore standard CHO nel percorso specificato, poi questo Expert Advisor e quindi rilasciarlo sul grafico.

#resource "\\Indicators\\Examples\\CHO.EX5"
//+------------------------------------------------------------------+
//| Funzione di inizializzazione dell'esperto|
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   int handle=iCustom(Symbol(),Period(),"::Indicators\\Examples\\CHO.EX5");
   if(handle!=INVALID_HANDLE)
     {
      Print("Indicator created!");
      IndicatorRelease(handle);
     }
//---
   return(0);
  }
void OnDeinit(const int reason)
  {
  }
void OnTick()
  {
  }

Prestare attenzione alla scelta corretta dei percorsi, al modificatore di area :: e all'uso corretto delle barre.

Abbiamo reso possibile il raggruppamento degli indicatori in risorse, in modo che possiate realizzare prodotti completi e autosufficienti.

 
Renat:

Questo è stato aggiunto nella build 730 del 24 novembre 2012:

  • MQL5: Aggiunto il supporto per la memorizzazione degli indicatori nelle risorse EX5. Gli indicatori nelle risorse non saranno in grado di lavorare con le proprie risorse.

...

Come ho fatto a perdere questo momento? Sto aspettando questa funzione, ma è presente da molto tempo. Grazie. ))
 
Renat:

Grazie. È proprio quello che mi serve.

 
è possibile includere le risorse nei prodotti ex4 (mt4) o questa cosa delle risorse è esclusivamente una caratteristica di ex5 (mt5)?
 
FinGeR:

Qualcuno potrebbe fornire un esempio di utilizzo dell'indicatore.

Esempio: https://www.mql5.com/ru/forum/3409#comment_408123

#resource "\\Indicators\\Examples\\CHO.EX5"
//+------------------------------------------------------------------+
//| Funzione di inizializzazione dell'esperto|
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   int handle=iCustom(Symbol(),Period(),"::Indicators\\Examples\\CHO.EX5");
   if(handle!=INVALID_HANDLE)
     {
      Print("Indicator created!");
      IndicatorRelease(handle);
     }
//---
   return(0);
  }
void OnDeinit(const int reason)
  {
  }
void OnTick()
  {
  }
Обсуждение статьи "Использование ресурсов в MQL5"
  • www.mql5.com
Программы на MQL5 позволяют не только автоматизировать рутинные вычисления, но и создавать полноценную графическую оболочку.
 
4evermaat:
è possibile includere le risorse nei prodotti ex4 (mt4) o questa cosa delle risorse è esclusivamente una caratteristica di ex5 (mt5)?
Solo per MQL5.