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

 
Vinin:


Puis-je demander ce qui est si effrayant ?


Le produit des minutes par les secondes multiplié par les heures.
Le mouvement des prix n'est pas chaotique, mais "codé".
Pour décrypter ce mouvement, il est nécessaire de synthétiser le mouvement des prix avec un motif - une ligne mobile. J'ai choisi le continuum temporel.
La synthèse du mouvement des prix avec le mouvement du temps doit être effectuée à l'aide d'une formule spéciale que je ne vous révélerai pas.
L'indicateur ci-dessus est basé sur une formule réduite.
La formule complète (que j'ai calculée pour satisfaire mon intérêt) est 37 fois plus compliquée que la formule réduite.

L'indicateur de la formule complète a été construit aujourd'hui à 12h00, heure de Moscou.
Le spectacle que j'avais imaginé s'est révélé à mes yeux.
J'ai vu un modèle - des lignes mobiles dont le mouvement ultérieur peut être calculé, et parce que leur mouvement est directement lié au mouvement des prix, le mouvement des prix sera prévisible.
 

Il existe une autre option délicate.

#include <WinUser32.mqh>

int delay = 180;
datetime read_now;
int hWnd = 0;

void init()
 {
  read_now = TimeLocal() + delay;
  hWnd = WindowHandle(Symbol(), Period());
  for (ini i = 0; i < 300; i++) PostMessageA(hWnd, RegisterWindowMessageA("MetaTrader4_Internal_Message"), 2, 1);
 }
void start()
 {
  while(!IsStopped())
   {
    int how_many_remains = read_now - TimeLocal();
    Comment(StringConcatenate(StringSubstr("-", (how_many_remains%60 >= 0), 0),
                              StringSubstr("0", (MathAbs(how_many_remains/60) > 9), 0),
                              MathAbs(how_many_remains/60), ":",
                              StringSubstr("0", (MathAbs(how_many_remains%60) > 9), 0),
                              MathAbs(how_many_remains%60)));
    Sleep(1000);
   }
 }
Pendant que cette pile de messages est traitée, l'init se termine et passe à l'attente d'un tick au départ.
 
Zhunko:

Établissez un calendrier avec votre expert. L'expert travaillera.

Et votre code fonctionne également, c'est à dire que start() ne doit pas être lancé avec init() + while(!IsStopped()), il suffit de changer TimeCurrent() en TimeLocal() dans l'EA de test et de mettre while(!IsStopped()){} dans votre script dans void start() (bien sûr, démarrer à partir d'un autre graphique, Symbol() - Period() défini pour le graphique avec EA). Merci, maintenant j'ai compris.
 
gyfto:
Et votre code fonctionne également, c'est à dire que start() ne doit pas être lancé avec init() + while(!IsStopped()), il suffit de changer TimeCurrent() en TimeLocal() dans l'EA de test et de mettre while(!IsStopped()){} dans void start() dans votre script (bien sûr, démarrer à partir d'un autre graphique, Symbol() - Period() définir le graphique avec l'EA). Merci, maintenant j'ai compris.

Ça marche et ça marche. À cause de la mauvaise fonction temporelle, vous ne pouvez pas voir que ça fonctionne.

Je n'ai pas regardé dans votre code. Qui sait ce que vous vouliez leur dire... ?

 
Zhunko:

Tellement indécent.


Je sais.)

Zhunko:
void init()
 {
  ServiceRefreshChart(hWnd, 100);
 }
void start()
 {
  ServiceStopRefreshChart(hWnd);
  while(!IsStopped())
   {
    ...
    Sleep(1000);
   }
 }

Je l'ai...

Zhunko:

Il y a une autre option délicate.


Danger de mort clinique du CPU sur le VPS.

 
gyfto:

Danger de mort clinique du CPU sur le VPS.

Est-ce votre expérience personnelle ?

Juste un grand nombre de messages asynchrones à la fenêtre. Cela ne devrait pas provoquer une panne du système et une augmentation de la charge du processeur.

Le système envoie des centaines de milliers de ces messages à toutes les fenêtres.

 
Zhunko:

Je n'ai pas regardé dans votre code. Qui sait ce que vous vouliez leur dire... ?

Il n'y a rien là, c'est juste un shell pratique pour exécuter les scripts WSH pour l'analyse.
Zhunko:

Est-ce votre expérience personnelle ?


C'est vrai, par expérience de vie. Si la charge du processeur est de 100%, vous ne pouvez même pas accéder au VPS, vous devez contacter le support technique et demander de redémarrer le VPS. Et la charge CPU est atteinte par mes scripts WSH très facilement, je dois surveiller chaque bit de mémoire supplémentaire... C'est bien si je suis sur le VPS, mais si je ne suis pas là, le redémarrage du VM est une urgence programmée pour TC. J'ai l'habitude...
 
Ok.
J'ai compris la fonction trigonométrique :
MathCos

Mais je ne comprends pas comment faire une onde sinusoïdale en utilisant cette fonction.


y = 2cos(x*x)


Ce problème me met vraiment les nerfs à vif.

 
Link_x:

Mais je ne comprends pas comment faire une onde sinusoïdale en utilisant cette fonction.

y = 2cos(x*x)

Ce problème a mis à rude épreuve mon système nerveux.


L'angle en radians doit être substitué. Si vous convertissez les degrés en radians (180 degrés = pi radians), vous devez le faire :

1 radian=180/PI (PI =3.14.... prendre la valeur exacte au 20ème chiffre et la noter dans #definе)

 
Link_x:

Le produit des minutes par les secondes multiplié par les heures.
Le mouvement des prix n'est pas chaotique, mais "codé".
Afin de décrypter ce mouvement, il faut effectuer une synthèse du mouvement des prix avec une ligne de déplacement du motif. J'ai choisi le continuum temporel.
La synthèse du mouvement des prix avec le mouvement du temps doit être effectuée à l'aide d'une formule spéciale que je ne vous révélerai pas.
L'indicateur ci-dessus est basé sur une formule réduite.
La formule complète (que j'ai calculée pour satisfaire mon intérêt) est 37 fois plus compliquée que la formule réduite.

L'indicateur de la formule complète a été construit aujourd'hui à 12h00, heure de Moscou.
Le spectacle que j'avais imaginé s'est révélé à mes yeux.
J'ai vu un modèle - des lignes mobiles dont le mouvement ultérieur peut être calculé, et parce que leur mouvement est directement lié au mouvement des prix, le mouvement des prix sera prévisible.


Mais vous n'avez pas ce travail, vous avez un travail très différent là-bas.
Raison: