Veuillez donner plus de liberté pour gérer les fenêtres du graphique

 

Pour l'instant, il n'est pas possible de gérer les fenêtres graphiques à l'aide des outils MQL5, sans utiliser l'interface WinAPI :

  • vous ne pouvez pas modifier la taille de la fenêtre du graphique de manière programmatique.
  • vous ne pouvez pas rendre une fenêtre graphique active
  • Vous ne pouvez pas placer les fenêtres des cartes en cascade, en mosaïque, horizontalement, etc.

Peut-on s'attendre à l'avenir à l'introduction de propriétés et de méthodes permettant de travailler avec la taille des fenêtres des graphiques ?

Par exemple, la commutation de tabulation, mais mise en œuvre à l'aide de WinAPI :

En réalisant le "besoin" de gestion des fenêtres, des solutions ont commencé à apparaître :

  1. Appliquer des modèles à OBJ_CHART
  2. Définition de la barre d'état (OHLC) dans OBJ_CHART
 
Une seule question : pourquoi ?
 
TheXpert:
Une question se pose : pourquoi ?

Par exemple, en commutant les fenêtres graphiques pour montrer la situation actuelle de l'instrument dans le trading semi-automatique - le Conseiller Expert rendra actif le graphique sur lequel il y a un signal pour entrer sur le marché. Un humain reste pour analyser et confirmer ou rejeter l'opération.

Mais l'accès à la taille des fenêtres de graphiques permettra de placer plusieurs (par exemple deux) graphiques l'un à côté de l'autre :

Deux graphiques côte à côte

Deux graphiques côte à côte

Cette combinaison de graphiques permettra d'implémenter des utilitaires et des analyseurs avec une interface plus pratique. Dans l'image ci-dessus, la fenêtre de droite du graphique ne chevauche pas la fenêtre de gauche et vous pouvez afficher des informations supplémentaires ou une autre période de temps dans la fenêtre de gauche.

 

Voici un exemple de la façon dont deux fenêtres peuvent être positionnées :

 

Il existe un objet OBJ_CHART pour cela.

Le graphique principal doit être un conteneur et il ne doit pas être modifié par programme.

Sinon, il en viendra à transférer la fenêtre MT sur un autre moniteur).

 
komposter:

Il existe un objet OBJ_CHART pour cela.

Le graphique principal doit être un conteneur et il ne doit pas être modifié par programme.

Sinon, il en viendra à transférer la fenêtre MT sur un autre moniteur ).

Ce serait bien. J'en ai marre de me serrer sur un écran quand l'autre est libre.
 
komposter:

Il existe un objet OBJ_CHART pour cela.

Le graphique principal doit être un conteneur et il ne doit pas être modifié par programme.

Sinon, il en viendra à transférer la fenêtre МТ sur un autre moniteur).

L'objet OBJ_CHART peut parfaitement être placé dans une sous-fenêtre supplémentaire - mais cette sous-fenêtre ne peut pas être placée verticalement.
Jusqu'à présent, la sous-fenêtre ne peut pas être positionnée verticalement, nous devons utiliser l'interface WinAPI pour le positionnement des fenêtres.
Et si la sous-fenêtre pouvait être placée verticalement, l'utilisation de la zone principale du graphique serait beaucoup plus efficace.
 
Il s'avère que le changement d'onglet peut être implémenté avecCHART_BRING_TO_TOP. Mais la commutation est inégale, avec des retards. J'ai le sentiment que c'est lié à l'arrivée des tiques. Je joins le script de changement de graphique.
Dossiers :
 
barabashkakvn:
Il s'avère que le changement d'onglet peut être implémenté avecCHART_BRING_TO_TOP. Mais la commutation est inégale, avec des retards. J'ai le sentiment que c'est lié à l'arrivée des tiques.

Pour résoudre le problème de latence, utilisez ChartRedraw() ;

bool ChartBringToTop(const long chart_ID=0)
  {
//--- сбросим значение ошибки
   ResetLastError();
//--- покажем график поверх всех других
   if(!ChartSetInteger(chart_ID,CHART_BRING_TO_TOP,0,true))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
      return(false);
     }
   ChartRedraw(chart_ID);
//--- успешное выполнение
   return(true);
  }
 
komposter:

Sinon, il en viendra à transférer la fenêtre MT sur un autre moniteur).

Il est grand temps, ils ne font pas d'instruments sur une voiture dans une fenêtre à feuilleter à la volée, et six graphiques sur un moniteur, c'est trop.

Il a été remarqué depuis longtemps qu'il existe une corrélation directe entre le succès d'un trader et la taille des fenêtres d'instruments.

https://www.mql5.com/ru/forum/9156

CORRELATION[corre lation] est une quantité décrivant la dépendance mutuelle de deux variables aléatoires, X et Y, qu'elle soit déterminée par une relation causale ou simplement par une coïncidence aléatoire (faux C.).

slovari.yandex.ru

Je ne crois pas aux coïncidences aléatoires

 
Kos:

Pour résoudre le problème de latence, utilisez ChartRedraw() ;

Merci. Cela fonctionne maintenant.