Serait-il possible enfin de régler ce problème que tout le monde parle !!!!

 

Bonjour

J'ai pu constater sur ce forum et également sur Internet qu'il y a un énorme problème de notification et j'ai l'impression que personne arrive à le régler.

Beaucoup de Trader créer un expert d'alerte pour faire du trading semi automatique. Mais quand l'expert se met en route les notifications arrivent par milliers.

Est-ce que quelqu'un pour une fois arriverai à régler ce problème que tout le monde parle, recevoir qu'une seule notification ???

Merci à vous, impatient de vous lire. 

 

Bref, je mais un exemple de bout de code tout simple qui nous fait venir des notifications à tout-va.

Si un programmeur arrive à régler ce petit problème, ce serait très sympa. 


Merci par avance 

void OnTick()
{     
   string Message_ACHAT = "SIGNAL D'ACHAT";
   int Notification_ACHAT = Signal_ACHAT(_Symbol, _Period);

   if(Notification_ACHAT)
      { if(!SendNotification(Message_ACHAT))
         { Print(Message_ACHAT); } }
[Supprimé]  
D2X #:

Bref, je mais un exemple de bout de code tout simple qui nous fait venir des notifications à tout-va.

Si un programmeur arrive à régler ce petit problème, ce serait très sympa. 

Merci par avance 

La fonction OnTick() est appelée à chaque tick, ce qui a pour conséquence que vos notifications sont également envoyées à chaque tick.

Ajoutez plutôt une logique à votre programme afin qu'il n'envoie la notification que lorsqu'il détecte un changement d'état, c'est-à-dire lorsque le signal change.

Votre situation est un problème de programmation, et non un problème lié à la plateforme ou à l'application. Il n'y a pas de « problème majeur lié aux notifications ».

(Une traduction automatique a été utilisée sur le texte original en anglais)

The OnTick() function is called on every tick, so the consequence is that your notifications are sent out also on every tick.

Instead, add logic to your programme so that it only sends the notification when it detects a change in the state—when the signal changes.

Your situation is a programming issue, not a platform or application issue. There is no "huge notifications problem".
 
Fernando Carreiro #:

La fonction OnTick() est appelée à chaque tick, ce qui a pour conséquence que vos notifications sont également envoyées à chaque tick.

Ajoutez plutôt une logique à votre programme afin qu'il n'envoie la notification que lorsqu'il détecte un changement d'état, c'est-à-dire lorsque le signal change.

Votre situation est un problème de programmation, et non un problème lié à la plateforme ou à l'application. Il n'y a pas de « problème majeur lié aux notifications ».

(Une traduction automatique a été utilisée sur le texte original en anglais)

The OnTick() function is called on every tick, so the consequence is that your notifications are sent out also on every tick.

Instead, add logic to your programme so that it only sends the notification when it detects a change in the state—when the signal changes.

Your situation is a programming issue, not a platform or application issue. There is no "huge notifications problem".

Serait-il possible en me montrant sur l'exemple?

merci

[Supprimé]  
D2xJrdn #Serait-il possible en me montrant sur l'exemple?
void OnTick() {
   static int CurrentSignal  = WRONG_VALUE;
          int PreviousSignal = CurrentSignal;
              CurrentSignal  = Signal_ACHAT( _Symbol, _Period );
   
   if( CurrentSignal != PreviousSignal ) {
      // Process signal data
      // Send Notification
   };
};
[Supprimé]  

L'exemple donné dans l'article précédent est une approche similaire pour détecter une nouvelle barre sur le graphique...

Base de code

Détecter le début d'une nouvelle barre ou bougie

Fernando Carreiro , 2022.04.24 00:38

Détection du début d'une nouvelle barre ou bougie dans le gestionnaire d'événements OnTick() d'un Expert Advisor.

The example in the previous post is a similar approach to detecting a new bar on the chart ...

Code Base

Detecting the start of a new bar or candle

Fernando Carreiro, 2022.04.24 00:38

Detecting the start of a new bar or candle, in the OnTick() event handler of an expert advisor.
 
Fernando Carreiro #:

L'exemple donné dans l'article précédent est une approche similaire pour détecter une nouvelle barre sur le graphique...

The example in the previous post is a similar approach to detecting a new bar on the chart ...

Désolé ça marche pas, il n'y aurait pas plus simple et enlever OnTick et mettre autre chose ?

 

On sait peut-être pas compris.

Je vais donner un exemple: deux moyennes mobiles qui se croisent et c'est à ce moment-là ça que j'aimerais recevoirune notification avec n'importe quelle TIMEFRIME. J'aimerais recevoir une notification à l'ouverture de la bougie après la croisement (juste une).

merci.  

[Supprimé]  
D2xJrdn #Désolé ça marche pas, il n'y aurait pas plus simple et enlever OnTick et mettre autre chose ?

Se contenter de dire que « ça ne marche pas » ne sert à rien. Montrez votre code si vous voulez de l'aide pour le corriger, car il fonctionne lorsqu'il est programmé correctement.

Just stating it "does not work" is useless. Show your code if you want help correcting it, because it does work when programmed correctly.

 
Donc dans mon exemple de code, on va dire que mon signal d'achat c'est les croisements des moyennes mobile. 
[Supprimé]  
D2xJrdn #Je vais donner un exemple: deux moyennes mobiles qui se croisent et c'est à ce moment-là ça que j'aimerais recevoirune notification avec n'importe quelle TIMEFRIME. J'aimerais recevoir une notification à l'ouverture de la bougie après la croisement (juste une).

La même logique d'état s'applique alors :

  1. Vérifiez uniquement la présence d'un signal au début d'une barre (utilisez donc la méthode de détection de barre que j'ai fournie).
  2. Vérifiez qu'il y a eu un changement d'état du signal par rapport à la détection précédente, et n'émettez une notification qu'à ce moment-là (exemple de code également fourni).

Vous avez déclaré précédemment que vous étiez un programmeur professionnel. Si tel est le cas, vous devriez donc être familier avec le concept de « machine à états ». C'est exactement ce dont il s'agit ici !

Then the same state-logic applies:

  1. Only check for a signal at the start of a bar (so use the bar detection method I provided).
  2. Check that there has been a change in state of the signal compared to the previous detection, and only issue a notification then (also provided example code).
You stated before that you were a professional programmer. So, if it is the case, then you should be familiar with the concept of "state machine". This is such a case!