Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 758

Comment voir l'échelle verticale du graphique? Pour modifier l'ellipse lorsque vous effectuez un zoom vertical.

c'est quelque chose qui ne fonctionne pas :

//+------------------------------------------------------------------+
//| Функция получает значение масштаба графика в пунктах на бар.     |
//+------------------------------------------------------------------+
double ChartPointsPerBarGet(const long chart_ID=0)
  {
//--- подготовим переменную для получения результата
   double result=EMPTY_VALUE;
//--- сбросим значение ошибки
   ResetLastError();
//--- получим значение свойства
   if(!ChartGetDouble(chart_ID,CHART_POINTS_PER_BAR,0,result))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
     }
//--- вернем значение свойства графика
   return(result);
  }
script :
Dossiers :
6maxvt1.mq4  3 kb
multiplicator:
Y a-t-il un objet circulaire ou seulement une ellipse ?
Par exemple, les codes 108, 161, 162, 163 tuta.
Alexey Viktorov:
Par exemple, code 108, 161, 162, 163 là.
Mais ils ne peuvent pas être agrandis.

Et la fixation se fait uniquement sur le bas de l'objet ou sur le haut.
multiplicator:
mais ils ne peuvent pas être agrandis.

et l'accrochage se fait uniquement sur le bas de l'objet ou sur le haut.

Etude CCanvas

Документация по MQL5: Стандартная библиотека / Пользовательская графика
Документация по MQL5: Стандартная библиотека / Пользовательская графика
  • www.mql5.com
Отдельно разработаны классы для создания графических объектов и примитивов, для отрисовки различных видов диаграмм и кривых. Реализованы различные возможности отображения объектов: изменение стиля и цвета линий, заливка, работа с сериями данных на графике и т.д.
Artyom Trishkin:

Etude CCanvas

ou des formules...

les objets peuvent être dessinés comme des segments de ligne
Voici la même chose à l'échelle

1

2

multiplicator:
mais vous ne pouvez pas les agrandir.

Et vous ne pouvez utiliser que le bas ou le haut de l'objet.

Qui dit que vous ne pouvez pas ?

S'il s'agit d'objets graphiques, vous pouvez augmenter la taille de la police, et s'il s'agit de tampons indicateurs, vous pouvez augmenter l'épaisseur.

C'est fait à la main et pas assez diligemment. Il est possible de le rendre plus précis grâce à un logiciel.


Artyom Trishkin:

Etude CCanvas

quelque chose ne fonctionne pas

#include <Canvas\Canvas.mqh>
CCanvas can;



void OnStart()
{

int x;
int y;

int count=1;        // сколько копируем


datetime Time[];
ArraySetAsSeries(Time,true);
CopyTime(_Symbol,_Period,0,count,Time);


double Close[];        
ArraySetAsSeries(Close,true);
CopyClose(_Symbol,_Period,0,count,Close);


ChartTimePriceToXY(0,0,Time[0],Close[0],x,y);
  
   
can.FillCircle(x,y,100,ColorToARGB(Red));
   
}

Bref, j'ai fait un index sur les ellipses.

Mais ces ellipses se superposent de façon si moche...

est-il possible d'éviter cet effet de chevauchement pour que tous ces objets se fondent en un seul ?



pour m1 :

Dossiers :

Je dois maintenant tracer 2 lignes rouges le long du bord supérieur des ellipses et le long du bord inférieur des ellipses (comme je l'ai montré dans l'image).



Quelqu'un sait-il comment faire ?

multiplicator:

Maintenant je dois dessiner 2 lignes rouges le long du bord supérieur des ellipses et le long du bord inférieur (comme je le vois dans l'image).



Quelqu'un sait-il comment cela peut être fait ?

A quoi sert-il, en termes de points intermédiaires entre les barres, purement esthétiques ?

Je créerais un tampon (pour le canal supérieur et inférieur) pour chaque barre où je placerais les extrema de tous les cercles sur la barre, la fenêtre de test, à en juger par la figure, serait de 10 barres maximum et ensuite je créerais cet indicateur, il est clair que les dernières barres peuvent surdessiner.