Discussion de l'article "Utilisation des ressources en MQL5" - page 2

[Supprimé]  
merci.
 

L'utilisation des ressources dans le testeur devrait fonctionner ? Cela ne fonctionne pas. Erreur 4802.

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1

#resource "\\Indicators\\Examples\\ADX.EX5"
#property tester_indicator "\\Indicators\\Examples\\ADX.EX5"
//+------------------------------------------------------------------+
//||
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   int handle=iCustom(Symbol(),Period(),"::Indicators\\Examples\\ADX.EX5");
   if(handle!=INVALID_HANDLE)
     {
      ChartIndicatorAdd(0,1,handle);
     }
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur personnalisée
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
  
  return(rates_total);}

	          
 
Karlson:

L'utilisation des ressources dans le testeur devrait fonctionner ? Cela ne fonctionne pas. Erreur 4802.

Que voulez-vous vraiment faire ?

Surcharger la fonction de calcul OnCalculate de cet indicateur dans un indicateur externe avec son propre moteur de calcul ? Ce n'est pas possible.

 
Oui, je voulais que mon indicateur reçoive des données de Zigzag et qu'il les inclue en tant que ressource.
 

Mais pour vérifier l'indicateur dans le testeur, il faut encore que le mécanisme de verrouillage lui-même soit présent.

if(MQL5InfoInteger(MQL5_TESTING)==true) // si testeur, extrait du dossier
     {
      f_h=iCustom(_Symbol,_Period,"Examples\\Zigzag",5,5,3);
     }
   else                                 // si sur le graphique, nous utilisons la fonction intégrée
     {
      f_h=iCustom(_Symbol,_Period,"::Indicators\\Examples\\Zigzag.EX5",5,5,3);
     }

Une autre option consiste à encastrer complètement la serrure de sécurité.

 

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading

Discussion autour de l'article "Utiliser les ressources dans MQL5".

Renat, 2013.01.16 22:21

Ceci a été ajouté dans la version 730 du 24 novembre 2012 :

  • MQL5 : Ajout de la prise en charge du stockage des indicateurs dans les ressources EX5. Les indicateurs dans les ressources ne pourront pas fonctionner avec leurs propres ressources.
Pourriez-vous m'indiquer comment créer un objet graphique de type OBJ_BITMAP_LABEL dans un indicateur chargé à partir de ressources et y superposer du texte provenant de TextOut?
Pouvons-nous faire une exception uniquement pour TextOut - la capacité de travailler avec ses propres ressources pour les programmes chargés à partir de ressources ?
 
fyords:
Pourriez-vous me dire comment il est possible de créer un objet graphique de type OBJ_BITMAP_LABEL dans l'indicateur chargé à partir de ressources et d'y superposer le texte de TextOut?
Peut-on faire une exception uniquement pour TextOut - la possibilité de travailler avec ses propres ressources dans des programmes chargés à partir de ressources ?
Et où se situe exactement le problème ? Qu'est-ce qui ne fonctionne pas exactement ?
 
Renat:
Où se situe exactement le problème ? Qu'est-ce qui ne fonctionne pas exactement ?

Il existe un indicateur, à partir duquel l'indicateur enfant est lancé, à partir de ressources.
TextOut est utilisé dans l'indicateur enfant, et le résultat est chargé dans OBJ_BITMAP_LABEL via ResourceCreate, mais il n'y a pas de possibilité d'utiliser des ressources dans la ressource.

Le résultat est que l'objet apparaît, la ressource est spécifiée dans les propriétés, mais le texte lui-même n'est pas édité.

 
fyords:

Il existe un indicateur, à partir duquel un enfant est lancé, à partir de ressources.
TextOut est utilisé dans l'enfant, et le résultat est chargé dans OBJ_BITMAP_LABEL via ResourceCreate, mais il n'y a pas de possibilité d'utiliser des ressources dans la ressource.

Le résultat est que l'objet apparaît, la ressource est spécifiée dans les propriétés, mais le texte lui-même n'est pas édité.

Oui, il est actuellement impossible de charger des ressources à partir d'un objet ressource.

En fait, la situation se présente comme suit : l'indicateur "tiré" d'une ressource tierce commence à vivre dans le module appelé et tous ses appels aux ressources vont dans le corps du module appelé, et non dans le corps natif. Nous réfléchissons actuellement à ce problème et il est fort probable que nous le résoudrons.

 
Renat:

... Nous sommes en train de réfléchir à ce problème et nous allons probablement le résoudre.

Merci, j'attends.