RBCI + TTF = Profit ? - page 2

 
Mendikero:
Pas question - je l'utilise tel quel.

Eh bien, obtenir une chasse d'eau à la fin.
 
jelizavettka:

Eh bien, vous finirez par être drainé à la fin.
Jetez un coup d'œil au tableau (je l'ai mis dans le premier message). Ces indicateurs sont assez spécifiques, ils ne nécessitent pas beaucoup d'ajustements, vous pouvez les laisser tels quels. J'ai supprimé les lignes inutiles des deux indicateurs, ne laissant que les lignes nécessaires.
 
Mendikero:
Jetez un coup d'œil au graphique (inclus dans le premier message). Ces indicateurs sont assez spécifiques, ils ne nécessitent pas beaucoup de personnalisation, vous pouvez les laisser tels quels. J'ai supprimé les lignes inutiles des deux indicateurs, ne laissant que les lignes nécessaires.

Je vais maintenant les télécharger et les tester. Quel salaud, ce RBCI ! Il consomme les ressources du CPU de manière déraisonnable. Nous devons optimiser le code.
 
jelizavettka:

Je vais les télécharger maintenant et les tester. Ce RBCI est une abomination ! Il consomme les ressources du CPU de manière déraisonnable. Nous devons optimiser le code.
Oui, c'est ce que c'est. Mon terminal met quelques minutes à se charger avec elle. Mais il n'y a rien à optimiser ici - le code fait six kilo-octets, alors que les calculs eux-mêmes ne font que quelques dizaines de lignes.
 

Quelques dizaines de lignes peuvent être si désordonnées que le terminal ne se charge pas du tout.

Oui, je ne peux pas appeler ce code optimal. La ligne comportant une erreur est mise en évidence (remarquée par Rosh).

//+------------------------------------------------------------------+ 
//| RBCI.mq4                                                         |
//|                                                                  |
//+------------------------------------------------------------------+ 
#property copyright "Copyright 2002, Finware.ru Ltd."
#property link "http://www.finware.ru/"
//----
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Blue
//---- buffers 
double RBCIBuffer[];
//+------------------------------------------------------------------+ 
//| Custom indicator initialization function                         | 
//+------------------------------------------------------------------+ 
int init()
  {
   string short_name;
//---- indicator line 
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,RBCIBuffer);
   SetIndexDrawBegin(0,55);
//---- 
   return(0);
  }
//+------------------------------------------------------------------+ 
//| RBCI                                                             | 
//+------------------------------------------------------------------+ 
int start()
  {
   int i,counted_bars=IndicatorCounted();
//---- 
   if(Bars<=55) return(0);
//---- initial zero 
   if(counted_bars<55)
      for(i=1;i<=0;i++) RBCIBuffer[Bars-i]=0.0;
//---- 
   i=Bars-55-1;
   if(counted_bars>=55) i=Bars-counted_bars-1;
   while(i>=0)
     {
      RBCIBuffer[i]=
      -(
      -35.5241819400*Close[i+0]
      -29.3339896500*Close[i+1]
      -18.4277449600*Close[i+2]
      -5.3418475670*Close[i+3]
      +7.0231636950*Close[i+4]
      +16.1762815600*Close[i+5]
      +20.6566210400*Close[i+6]
      +20.3266115800*Close[i+7]
      +16.2702390600*Close[i+8]
      +10.3524012700*Close[i+9]
      +4.5964239920*Close[i+10]
      +0.5817527531*Close[i+11]
      -0.9559211961*Close[i+12]
      -0.2191111431*Close[i+13]
      +1.8617342810*Close[i+14]
      +4.0433304300*Close[i+15]
      +5.2342243280*Close[i+16]
      +4.8510862920*Close[i+17]
      +2.9604408870*Close[i+18]
      +0.1815496232*Close[i+19]
      -2.5919387010*Close[i+20]
      -4.5358834460*Close[i+21]
      -5.1808556950*Close[i+22]
      -4.5422535300*Close[i+23]
      -3.0671459820*Close[i+24]
      -1.4310126580*Close[i+25]
      -0.2740437883*Close[i+26]
      +0.0260722294*Close[i+27]
      -0.5359717954*Close[i+28]
      -1.6274916400*Close[i+29]
      -2.7322958560*Close[i+30]
      -3.3589596820*Close[i+31]
      -3.2216514550*Close[i+32]
      -2.3326257940*Close[i+33]
      -0.9760510577*Close[i+34]
      +0.4132650195*Close[i+35]
      +1.4202166770*Close[i+36]
      +1.7969987350*Close[i+37]
      +1.5412722800*Close[i+38]
      +0.8771442423*Close[i+39]
      +0.1561848839*Close[i+40]
      -0.2797065802*Close[i+41]
      -0.2245901578*Close[i+42]
      +0.3278853523*Close[i+43]
      +1.1887841480*Close[i+44]
      +2.0577410750*Close[i+45]
      +2.6270409820*Close[i+46]
      +2.6973742340*Close[i+47]
      +2.2289941280*Close[i+48]
      +1.3536792430*Close[i+49]
      +0.3089253193*Close[i+50]
      -0.6386689841*Close[i+51]
      -1.2766707670*Close[i+52]
      -1.5136918450*Close[i+53]
      -1.3775160780*Close[i+54]
      -1.6156173970*Close[i+55]);
      i--;
     }
   return(0);
  }
//+------------------------------------------------------------------+
 
Mendikero:
Je ne sais pas pourquoi r772ra a choisi le graphique en minutes pour l'illustrer - j'ai donné un exemple sur le graphique en quatre heures.

L'indicateur se redessine sur tous les graphiques, essayez de le tester en mode visualisation, et après la passe mettez le même indicateur sur le graphique, voyez ce qui se passe.
 
Mathemat:

En quelques dizaines de lignes, vous pouvez créer un tel désordre que le terminal ne démarrera pas du tout.

Oui, je ne peux pas appeler ce code optimal. La ligne comportant une erreur est mise en évidence (Rosh l'a remarquée).

C'est une ligne étrange en général. C'est bien ça ?

if(counted_bars<55)
      for(i=0;i<=1;i++) RBCIBuffer[Bars-i]=0.0;

Mais ce correctif ne le rend pas plus rapide à charger.

 

les lignes de croisement des différents indicateurs ne sont pas fixes, auto-défaillantes

zoom avant pour agrandir

un peu plus petit et tout est différent

mon terminal ne charge pas un peu, mais ces indicateurs sont inutiles)

 
r772ra:

L'indicateur se redessine sur tous les graphiques, essayez de le tester en mode visualisation, et après le passage, appliquez le même indicateur sur le graphique, voyez ce qui se passe.
Il redessine sur la barre de zéro, mais vous ne devez pas vous concentrer dessus. Le signal n'est que la barre fermée (je les ai utilisées pour marquer les points d'entrée sur le graphique, sinon elles auraient été décalées vers le passé d'une bougie et les signaux auraient été encore plus précoces).
 
r772ra: L'indicateur se redessine sur tous les graphiques, essayez de tester en mode visualisation, et après le passage du même indicateur sur le graphique, voyez ce qui se passe.

Je ne pense pas que ça devrait - à part zéro...

Mendikero : Il me faut quelques minutes pour charger le terminal avec.

jelizavettka : Quelle abomination que ce RBCI ! Il consomme les ressources du CPU de manière déraisonnable.

Je suis surpris. Je me suis déjà préparé à la charge minute - mais j'ai tout calculé instantanément (sur l'historique des graphiques jusqu'en juillet 2006). Vous avez tous les deux besoin de changer vos pierres...
Raison: