Diskussion zum Artikel "MQL5-Handelswerkzeuge (Teil 13): Entwicklung eines Canvas-basierten Kurs-Dashboards mit Chart- und Statistik-Panels"

 

Neuer Artikel MQL5-Handelswerkzeuge (Teil 13): Entwicklung eines Canvas-basierten Kurs-Dashboards mit Chart- und Statistik-Panels :

In diesem Artikel entwickeln wir in MQL5 ein Canvas-basiertes Kurs-Dashboard auf Basis der CCanvas-Klasse. Es erstellt interaktive Panels zur Visualisierung jüngster Kursverläufe und Kontostatistiken und unterstützt Hintergrundbilder, Nebeleffekte sowie Farbverlaufsfüllungen. Das System unterstützt das Verschieben und die Größenänderung per Mausereignisbehandlung sowie das Umschalten zwischen einem dunklen und einem hellen Design mit dynamischen Farbanpassungen sowie Bedienelemente zum Minimieren und Maximieren für eine effiziente Verwaltung des Charts.

Das canvasbasierte Kurs-Dashboard-Framework nutzt die Klasse CCanvas von MQL5, um nutzerdefinierte grafische Panels für die Anzeige von Echtzeit-Kurs- und Kontodaten zu erstellen und bietet eine kompakte, interaktive Alternative zu Standard-Chartindikatoren für Nutzer, die schnelle visuelle Übersichten benötigen, ohne das Hauptchart zu überladen. Es besteht aus einem Haupt-Grafikpanel, das die Schlusskurse der letzten Bar als Linie mit gefüllten Bereichen und Nebeleffekten für die Tiefe anzeigt, einem optionalen Statistikpanel, das Kontodetails wie Saldo/Equity und die OHLC-Werte der aktuellen Bar anzeigt, beide unterstützt von Hintergrundbildern mit Deckkraftüberblendung, Farbverlauf oder Volltonfüllungen und doppelten Rändern für die Ästhetik.

Zu den Verbesserungen gehören mausgesteuertes Ziehen für die Neupositionierung, Größenanpassung über Rahmen-Hover und Griffe mit Icons für Feedback, Schaltflächen zum Minimieren und Maximieren der Panels, Umschalten zwischen dunklen/hellen Modi für Farbanpassungen und Echtzeit-Updates für neue Bars, um die neuesten Kurse und Statistiken wiederzugeben.

Die Umsetzung basiert auf Mausereignissen, auf bikubischer Skalierung zur hochwertigen Bildanpassung, auf Alpha-Blending für Überlagerungen wie Nebel sowie ARGB-Farbverwaltung für Transparenzeffekte. Dadurch bleibt das Dashboard reaktionsschnell und flexibel anpassbar, ohne auf native MQL5-Objekte zurückzugreifen. Genau das war diesmal unser Ziel, da wir native Objekte bereits mehrfach verwendet haben; diesmal wechseln wir bewusst den Ansatz und nutzen die Canvas-Funktionen umfassend.

Geplant ist, zunächst die Canvas-Bibliothek einzubinden, Eingabeparameter für Position, Größe, Farben, Deckkraft und Modi zu definieren, anschließend eine Hintergrundbild-Ressource zu laden und zu skalieren sowie getrennte Canvas-Elemente für Header, Graph und Statistik mit entsprechenden Prüfungen zu erstellen. Anschließend sollen die Zeichenfunktionen für Header mit Icons/Tooltips/Rahmen implementiert werden, wie auch die Charts mit Kursplotting/Füllung/Zeitetiketten/Symbolen mit Größenänderung und Statistiken mit dem Design von Text/Gradienten/verdunkelten Rändern. Hinzugefügt werden Hilfsfunktionen für Farbinterpolation/Verdunkelung/Vermischung/ARGB-Extraktion und Handhabung von Chart-Ereignissen für Mouseover/Ziehen/Größenänderung/Schaltfunktionen mit Begrenzungen und Mindestgrößen, Aktualisierung bei neuen Tick-Daten. Kurz gesagt: Hier ist eine visuelle Darstellung unserer Ziele.

CANVAS DASHBOARD FRAMEWORK


Autor: Allan Munene Mutiiria