[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 226

 
Pavel447 писал(а) >>

Bonjour, j'ai une question : Que faudrait-il ajouter au code indicateur NonLagAma (il donne des signaux d'achat et de vente en changeant la couleur de la ligne), que serait la sortie d'un signal sonore ou d'un graphique (par exemple dans une fenêtre séparée) avec un signal correspondant de l'indicateur. Je veux, disons, être lié à un cadre temporel spécifique, mais qui alerterait plusieurs paires de devises.....

Si quelqu'un peut m'aider ou me suggérer quelque chose, je lui en serai très reconnaissant !

Je ne sais pas vraiment comment faire... :)

Cela devrait aider :)

Dossiers :
 
mgribachev писал(а) >>

Cela devrait aider :)

S'agit-il déjà d'une version modifiée ?

Les valeurs Mode d'alerte et Mode d'avertissement dans les paramètres d'entrée sont des zéros. Dois-je changer cette valeur ?

Dans cette version, le signal est-il sain ?

Et en général, merci pour la réponse rapide au premier message :)

 
alsu >> :

les deux derniers à l'heure d'ouverture ou de fermeture ?

Les deux dernières heures de clôture (transactions maintenues - profit ou perte pris)

 
S'il vous plaît, aidez-nous avec le code ! L'écart-type des données du tableau n'est pas calculé. Le problème exige que chaque K-maximum(minimum) corresponde à son propre écart-type calculé sur le même intervalle où les valeurs absolues sont recherchées. Merci !
int start()
  {
   int i, k, counted_bars=IndicatorCounted();
//----   
   double num_array[5000], MAXR8, MINR8, StdDev8;
//---- 
   i=Bars- Period1+1;
   if( counted_bars> Period1-1) 
   i=Bars- counted_bars-1;
//----       
   while( i>=0)
        {
//----
        k= i+ Period1-1; 
        while( k>= i) 
             {
             num_array[ k]=Close[ k]/Close[ i+1];
             
             MAXR8= num_array[ArrayMaximum( num_array,8, k)];
             MINR8= num_array[ArrayMinimum( num_array,8, k)];
             
             // стандарстное отклонение не работает
             StdDev8=iStdDevOnArray( num_array,0,8,0,MODE_SMA, k);
             
             k--;
             }  
//----
       Buffer[ i]=;
       i--;
       }
//----
   return(0);
  }
 
001 писал(а) >>

Les gars, expliquez ce que signifie cette situation.

Code :

if(High[0] > enve_start && enve_start > Low[0]) -> tentative d'attraper le prix traversant la ligne des enveloppes.

Entrée du journal : High[0] = 1.0726 enve_start = 1.0751 Low[0] = 1.0726.

C'est-à-dire que le haut et le bas de la bougie sont identiques. Il en va de même pour tous les chandeliers.

High[0] & Low[0] seront les mêmes dans la plupart des cas, puisque la bougie est à zéro.

 

Comment puis-je sélectionner les 2 dernières transactions déjà clôturées (dans la liste de l'historique du compte) ?

Il doit y avoir quelque chose comme ça

OrderSelect(Parametr,SELECT_BY_POS,MODE_HISTORY)==true
comment écrire le bon paramètre à sélectionner ?
 

xrust писал(а) >>

High[0] et Low[0] seront les mêmes dans la plupart des cas que le compte zéro de la première bougie.

Merci pour la réponse. Est-il correct d'écrire

si ((High[0] > enve_stop > Low[1]) ou est-il préférable d'écrire les deux d'abord ?

 
skifodessa >> :

Bonjour à tous, comment puis-je prescrire les valeurs de deux niveaux (je vois l'image). - Haut de la dernière barre verte en AO (si rouge actuel) et Bas de la dernière barre rouge avant le vert. Merci.

Vous devez déterminer à quelle barre la couleur change, trouver le temps grâce à iTime(à partir de la barre trouvée) et, connaissant le temps, définir la marque.

 
001 >> :

Merci de votre réponse. Est-il correct de l'écrire comme ceci

si ((High[0] > enve_stop > Low[1]) ou les deux premières solutions seraient-elles meilleures ?

Je le ferais comme ça :

if ( Close[2]>= enve_stop && Close[1]< enve_stop )  {//пересечение сверху вниз  
 
Mr-Franklyn >> :
S'il vous plaît, aidez-nous avec le code ! L'écart-type sur les données assistées dans un tableau n'est pas calculé. Le problème exige que chaque K-maximum(minimum) corresponde à son propre écart-type calculé sur le même intervalle où les valeurs absolues sont recherchées. Merci !

le code est assez grossier.

Voir : i=Bars-Period1+1 à la première itération de la boucle, nous obtenons k=i+Period1-1=Bars-Period1+1+Period1-1=Bars et ensuite Close[k], ce qui signifie que nous sommes déjà sortis du tableau.

Correct : i=Bars-Period1-1

Ensuite, pourquoi, à chaque itération de i, remplissons-nous à nouveau le tableau avec les valeurs de la période 1 (avec un décalage de seulement 1 - i--) ?

Pourquoi, à chaque itération de k, nous considérons l'écart type sur l'ensemble du tableau - il est long de 5000, et il y a des zéros ! (le numéro 500, si je comprends bien, est choisi comme étant "évidemment" plus grand que les barres) ?

La méthode correcte consiste à remplir d'abord le tableau, puis (dans une nouvelle boucle) à effectuer les calculs.

A chaque itération de k, StdDev8 est calculé - une question : pourquoi ? Nous perdrons cette valeur à chaque changement de k, et, si je comprends bien, nous voulons l'utiliser seulement après la fin de la boucle.


Conseil : dessinez un organigramme d'algorithme, parcourez-le en notant tout ce qui se passe, y compris les boucles. Assurez-vous que l'algorithme fait exactement ce que vous voulez qu'il fasse. Ce n'est qu'ensuite qu'il faut le traduire en langage de programmation. Il ne faut pas être timide - tout le monde commence par là, et beaucoup de ceux qui apprécient l'utilité de la méthode ne s'arrêtent pas :)))