Quelle est la valeur d'un pixel ?

 
Quelle est la valeur d'un pixel sur l'axe Y du graphique actuel ?

J'ai besoin de cette valeur pour pouvoir calculer la valeur de 600 pixels.

En effet, je veux un niveau de prise de bénéfices de 600 pixels, et non pas 600 points ou 600 pips.

Je veux un niveau de take profit uniforme sur tous les graphiques, quelles que soient leurs valeurs en points ou en pips.

Il est temps de trader en termes de pixels. Merci d'avance à tous.
 
macpee:
Quelle est la valeur d'un pixel sur l'axe Y du graphique actuel ? Merci d'avance.

La valeur ? Un pixel n'a pas de "valeur".

Que voulez-vous dire ?

 
macpee:
Quelle est la valeur d'un pixel sur l'axe Y du graphique actuel ? Merci d'avance.
Je pense que ce n'est même pas dans le Forex
C'est dans photoshop ;)

Peut-être que vous envoyez vers un autre site web
 
Alain Verleyen:

La valeur ? Un pixel n'a pas de "valeur".

Que voulez-vous dire ?

Si un pixel n'a pas de valeur, comment est-il alors possible de tracer une ligne en utilisant les axes x et y (bien sûr ces variables prennent des valeurs en pixels) ou de créer des boutons etc. qui utilisent les coordonnées ?
 
double max_price  = ChartGetDouble(0,CHART_PRICE_MAX),
       min_price  = ChartGetDouble(0,CHART_PRICE_MIN);
long chart_height = ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);
printf("1 pixel = %f",(max_price-min_price)/chart_height);
 
honest_knave:
double max_price  = ChartGetDouble(0,CHART_PRICE_MAX),
       min_price  = ChartGetDouble(0,CHART_PRICE_MIN);
long chart_height = ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS);
printf("1 pixel = %f",(max_price-min_price)/chart_height);
Merci beaucoup. Je pense que c'est une meilleure réponse que je dois essayer d'utiliser.
 
macpee:
Si un pixel n'a pas de valeur, comment est-il alors possible de tracer une ligne en utilisant les axes x et y (bien sûr, ces variables prennent des valeurs en pixels) ou de créer des boutons etc. qui utilisent les coordonnées ?

Veuillez consulter : https://www.mql5.com/en/docs/chart_operations/chartxytotimeprice

Documentation on MQL5: Chart Operations / ChartXYToTimePrice
Documentation on MQL5: Chart Operations / ChartXYToTimePrice
  • www.mql5.com
Chart Operations / ChartXYToTimePrice - Reference on algorithmic/automated trading language for MetaTrader 5
 
macpee:
Si un pixel n'a pas de valeur, comment est-il alors possible de tracer une ligne en utilisant les axes x et y (bien sûr, ces variables prennent des valeurs en pixels) ou de créer des boutons etc. qui utilisent les coordonnées ?

Il est probablement utile de mentionner qu'il existe 2 façons différentes de dessiner des objets.

  • En utilisant le temps / le prix... comme OBJ_TREND et OBJ_TEXT
    • Ces objets se déplaceront le long de l'écran lorsque vous ferez défiler le graphique vers la gauche, la droite, le haut ou le bas.
  • Utilisation de pixels X/Y... tels que OBJ_BUTTON et OBJ_LABEL
    • Ces objets ne se déplaceront pas à l'écran, même si le graphique défile.

Il est parfois nécessaire de les mélanger, par exemple si vous souhaitez dessiner un objet par rapport au temps sur l'axe X et par rapport aux pixels sur l'axe Y. Dans ce cas, il est préférable d'utiliser des pixels.

Dans ces circonstances, vous voudrez utiliser ChartXYToTimePrice() ou ChartTimePriceToXY() comme Marco l'a suggéré.

 
Wow ! Je pense que celui-ci devrait être très utile. Merci beaucoup. Je vais la combiner avec la fonction inverse suivante :

bool  ChartTimePriceToXY(
   long           chart_id,     // Chart ID
   int            sub_window,   // The number of the subwindow
   datetime       time,         // Time on the chart
   double         price,        // Price on the chart
   int&           x,            // The X coordinate for the time on the chart
   int&           y             // The Y coordinates for the price on the chart
   );
 
Essayer de calculer TP, SL etc. en utilisant des pixels ne serait probablement pas fiable. Un zoom avant ou arrière affecterait les calculs. Qu'en est-il d'un écran haute définition avec plus que le DPI standard ?

Il pourrait y avoir une très grande barre à l'extrême gauche de l'écran, lorsque cette barre sort de la zone visible, toutes les valeurs calculées changeraient à nouveau car le graphique s'ajuste à la plage totale.

Qu'en est-il lorsque vous avez le terminal et/ou les fenêtres du testeur de stratégie ouvertes ?

Il n'y aurait rien d'uniforme du tout en utilisant les pixels.
 
macpee:
Wow ! Je pense que celui-ci devrait être très utile. Merci beaucoup. Je vais la combiner avec la fonction inverse suivante :

bool  ChartTimePriceToXY(
   long           chart_id,     // Chart ID
   int            sub_window,   // The number of the subwindow
   datetime       time,         // Time on the chart
   double         price,        // Price on the chart
   int&           x,            // The X coordinate for the time on the chart
   int&           y             // The Y coordinates for the price on the chart
   );
Selon cette logique, quel est le prix à la coordonnée du pixel 0,0 ? Et pourquoi n'est-il pas égal à 0 ? Et pourquoi change-t-il lorsque vous faites défiler les données dans le terminal ? Et pourquoi change-t-il lorsque vous changez l'échelle du graphique affiché ou que vous modifiez le zoom du graphique ? Et pourquoi change-t-elle sur les mêmes pixels lorsqu'une nouvelle barre est formée ? Et pourquoi est-il différent sur les mêmes coordonnées de pixel sur votre terminal et sur mon terminal ? Utilisez les prix là où ils sont disponibles, à moins que vous ne prévoyiez de négocier des pixels.