Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 868

 
J'ai pensé qu'il serait bon de les soulager et de ne redessiner que la fenêtre qui est actuellement active et visible. Les autres ne seront pas redessinées jusqu'à ce qu'un utilisateur y passe.
 
pycha:
J'ai pensé qu'il serait bien de les soulager et de faire en sorte qu'elles ne redessinent que la fenêtre qui est actuellement active et visible. Les autres ne redessineront pas jusqu'à ce qu'un utilisateur les utilise.

Je n'ai pas besoin d'API pour cela, tout n'est pas simple, mais très simple.

 
tara:

Vous n'avez pas besoin d'une API pour faire cela, ce n'est pas simple, c'est très simple.

alors s'il vous plaît, donnez une solution à un débutant
 
Pour le débutant-non débutant, je peux vous conseiller d'enregistrer dans le même GV le nom de la paire de devises au moment où vous démarrez le Conseiller Expert.
 
ils s'exécutent tous simultanément lorsque le client démarre. soit je vous ai encore raté, soit
enregistrer dans le même GV le nom de la paire de devises au moment du lancement du Conseiller Expert.
ne sera d'aucune utilité
 
pycha:
ils démarrent tous en même temps que le client. soit je vous ai encore mal compris, soit cela ne servira à rien.

Tu n'as pas l'air d'aimer les chats.

Tu ne sais juste pas comment les cuisiner.

L'EA déclenchera un redessin si et seulement si le symbole graphique actif est le même que son symbole de départ.

 
J'ai compris, la moitié du problème est résolu)))). Mais ici et là, l'Expert Advisor exécute des fonctions pour préparer le redécoupage, l'effacement des tableaux, l'entrée de nouvelles données dans les tableaux - ce qui peut et ne doit pas être fait. Maintenant, l'Expert Advisor fonctionne avec 20 outils et le CPU est constamment chargé de 5 à 10%. Je cherche tous les moyens de faciliter et d'optimiser ))))).
 
Pas pour moi.
 
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[])
  {
//--- check for bars count
   if(rates_total<InpMAPeriod-1 || InpMAPeriod<2)
      return(0);
//--- counting from 0 to rates_total
   ArraySetAsSeries(ExtLineBuffer,false);
 //  ArraySetAsSeries(ExtLineBufferFid,false);
   ArraySetAsSeries(close,false);
//--- first calculation or number of bars was changed
   if(prev_calculated==0)
   {
      ArrayInitialize(ExtLineBuffer,0);
      ArrayInitialize(ExtLineBufferFid,0);  
   }       
//--- calculation
  
    CalculateSimpleMA(rates_total,prev_calculated,close);
    
    ExtLineBufferFid[rates_total-3]=(ExtLineBuffer[rates_total-2]*InpMAPeriod+close[InpMAPeriod+1])/(InpMAPeriod+1);
  //sma99[i]=(sma100[i]*100-d[i-100])/99;
//(firstValue*InpMAPeriod+price[i+1])/InpMAPeriod;
///(firstValue*InpMAPeriod+price[InpMAPeriod+1])/(InpMAPeriod+1);
// Y[i]=Y[i+1]+(X[0]-X[N])/N    
    Print("  ",ExtLineBufferFid[rates_total-3]
         ,"  ",ExtLineBufferFid[rates_total-2]
         ,"  ",ExtLineBuffer[rates_total-2]
             );      
//--- return value of prev_calculated for next call
   return(rates_total);
  }

Je suis désolé, c'est dommage de ressasser la même chose cent fois.

Ça fait presque un mois que je fixe la porte comme un mouton. Je ne comprends rien.

La tâche consiste à calculer une moyenne mobile inférieure avec une moyenne mobile de 13,

c'est-à-dire de calculer une période de 12 sur la base de 13.

 
Top2n:

Je suis désolé, c'est dommage de ressasser la même chose cent fois.

Ça fait presque un mois que je fixe la porte comme un mouton. Je ne comprends rien.

La tâche consiste à calculer une moyenne mobile inférieure avec une moyenne mobile de 13,

c'est-à-dire de calculer une période de 12 sur la base de 13.

Quel est l'intérêt de ne pas calculer directement sur la même période que celle que vous voulez !
Raison: