und werden Sie Mitglied unserer Fangruppe
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Bewerten Sie es im Terminal MetaTrader 5
Vertical histograms constructor - Bibliothek für den MetaTrader 5
- Ansichten:
- 949
- Rating:
- Veröffentlicht:
- 2017.02.07 14:54
- Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance
Das Histogramm stellt ein Kolonnen-Diagramm der Frequenzen dar. Nach einer der Achsen verschieben die Werte der Variable, und nach dem anderem — die Treffens-Frequenz (das Entstehen, das Erscheinen u.ä.) dieser Werte. Die Höhe jeder Kolonne zeigt die Frequenz (die Anzahl) der Werte, die dem entsprechenden Intervall zugehörig sind, gleich der Breite der Kolonne. Meistens werden solche Diagramme horizontal dargestellt, d.h., die Werte der Variable sind auf der horizontalen Achse, und der Frequenz — auf der vertikalen.
In der vorliegenden Bibliothek werden wir auf die vertikalen Histogramme der Variationsreihen betrachten: die Preiswerte der untersuchten Charakteristiken werden sich auf der vertikalen Achse in aufsteigender Reihenfolge befinden, und der Frequenz — auf der horizontalen Achse. Die ins Terminal kommenden Preisdaten werden verteilt und werden auf der laufenden Bar gruppiert und es können verhältnismäßig seiner Achse links dargestellt, rechts oder gleichzeitig von beiden Seiten.
in Abb. 1. Das vertikale Histogramm der Verteilung der Preise Bid und Ask
Der Konstrukteur der senkrechten Histogramme wurde auf der Klasse CHistogram aufgebaut. Die Realisierung dessen aller Methoden ist auf der Nutzung des sogenannten "graphischen" Gedächtnisses basiert.
Die Methode: der Konstrukteur der Klasse CHistogram.
Das initialisiert das Exemplar der Klasse.
string name, // die einzigartige Präfix des Namens
int hsize, // Maßstab des Diagramms
int width, // Die Dicke der Kolonnen-Linien des Histogramms
color active, // Die Farbe der aktiven Linien
color passive, // Die Farbe der passiven Linien
bool Left_Right=true, // left=false or right=true
bool relative_frequency=false, // Das relative oder absolute Histogramm
int sub_win=0 // Der Index des Aufbau-Fensters des Histogramms
);
Parameter:
name
[in] die einzigartige Präfix des Namens für die allen Kolonnen des Histogramms.
hsize
[in] Der Maßstab der Darstellung des Histogramms
width
[in] Die Dicke der Kolonnen-Linien des Histogramms.
active
[in] Die Farbe der Kolonnen des Histogramms, die auf der laufenden Bar erneuert wurden.
passive
[in] Die Farbe der Kolonnen des Histogramms, die auf der laufenden Bar nicht erneuert wurden.
Left_Right=true
[in] Die Richtung der Darstellung des Histogramms. false — das Histogramm ist links von der laufenden Bar, true — rechts.
relative_frequency=false
[in] Die Methode der Berücksichtigung der Werte der Frequenzen. false — die absoluten Werte der Frequenzen, true — die relativen Werte der Frequenzen.
sub_win=0
[in] Der Index des Aufbau-Fensters des Histogramms. 0 — das Hauptfenster des Charts.
Rückgabewert:
Es gibt keinen Rückgabewert. Falls es erfolgreich wird, wird ein Exemplar der Klasse mit den gegebenen Parametern erstellt.
Die Methode: die Darstellung des Histogramms DrawHistogram.
Es stellt die Kolonnen des Histogramms dar: erstellt neue, editiert die vorhandenen, speichert die Werte der Frequenzen im graphischen Gedächtnis; stellt das Histogramm auf der laufenden Bar dar.
double price, // Die Werte die Varianten
datetime time // Die Zeit der laufenden Bar
);
Parameter:
price
[in] die Werte die Varianten der untersuchten Charakteristik des Marktes.
time
[in] Die Zeit der laufenden Bar. Auf dieser Bar wird die Achse des Histogramms sein.
Rückgabewert:
Es gibt keinen Rückgabewert. Falls es erfolgreich wird, wird eine neue oder korrigierte Kolonne des Histogramms erstellt. Wenn eine neue Bar entsteht, wird das Histogramm so geschoben, damit die Achse sich auf der laufenden Bar befindet.
Die Methode: die Berechnung der Charakteristiken des Histogramms HistogramCharacteristics.
Es gibt die berechneten Charakteristiken der Variationsreihe in die Variabel als sVseries zurück.
Parameter:
Es gibt keine Eingangsparameter.
Rückgabewert:
Falls es erfolgreich wird, gibt er den Wert der Variable des Typs sVseries zurück.
Die Struktur für das Erhalten der laufenden Werte der Charakteristiken des Histogramms (sVseries).
Die Struktur für die Speicherung der letzten Werte der Charakteristiken der statistischen Verteilung. Es ist für das Erhalten der am meisten geforderten Informationen über die Variationsreihe vorgesehen.
{
long N; // Die Gesamtzahl der Beobachtungen
double Na; // Der Mittelwert der Frequenzen
double Vmax; // Der Maximalwert der Varianten
double Vmin; // Der Minimalwert der Varianten
double A; // Die Amplitude der Reihe
double Mean; // Der abgewogene arithmetische Mittelwert
double D; // Dispersion
double SD; // Standardabweichung
};
Die Methode: die Visualisierung des Mittelwertes DrawMean.
Es stellt den abgewogen arithmetischen Mittelwert der Variationsreihe auf dem Chart dar.
double coord, // Der abgewogene arithmetische Mittelwert
datetime time, // Die Zeit der laufenden Bar
bool marker=false,// Soll der Marker dargestellt werden oder nicht
bool save=false // Soll der Wert in der History gespeichert werden oder nicht
);
Parameter:
coord
[in] Der abgewogene arithmetische Mittelwert.
time
[in] Die Zeit der laufenden Bar. Auf dieser Bar wird der abgewogene arithmetische Mittelwert sein.
marker=false
[in] Soll der Marker am Chart dargestellt werden oder nicht. false — der Marker ist nicht dargestellt, true — der Marker ist am Chart dargestellt.
save=false
[in] Die Speicherung des abgewogenen arithmetischen Mittelwertes in der History. false — der Marker wird nicht dargestellt, true — der Marker wird am Chart dargestellt
Rückgabewert:
Falls es erfolgreich wird, wird die horizontale Linie dargestellt, die dem Wert des abgewogenen arithmetischen Mittelwert entspricht.
Die Methode: die Visualisierung der Standardabweichung DrawSD.
Es stellt den Wert der Standardabweichung in Form vom Rechteck dar, dessen Breite mit der mittleren Frequenz übereinstimmt, und die Höhe ist der Standardabweichung gleich ist, die nach oben und nach unten von dem abgewogenen arithmetischen Mittelwert verschoben ist.
sVseries &coord, // die Variable des Typs sVseries
datetime time, // Die Zeit der laufenden Bar
double deviation=1.0, // Die Abweichung
color clr=clrYellow // die Farbe der Abweichung
);
Parameter:
coord
[in] Der Wert der Variable des Typs sVseries.
time
[in] Die Zeit der laufenden Bar.
deviation=1.0
[in] Der Koeffizient, auf dem der Wert der Standardabweichung vergrößert sein wird.
clr=clrYellow
[in] die Farbe des Rechteckes, welches die Standardabweichung visualisiert.
Rückgabewert:
Falls es erfolgreich wird, wird das Rechteck am Chart dargestellt, welches die Standartabweichung vom abgewogenen arithmetischen Mittelwert charakterisiert.
Im Video wurden die Möglichkeiten der Klasse demonstriert. Der Code des Test-Beispiels ist im Anhang.
Der beigefügte Code zeigt, wie jene oder andere Methode der Klasse (Funktion) aufgerufen werden kann.
Tipps:
- Es ist am besten, die Klasse auf den jüngeren Timeframes zu verwenden.
Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/16365
Der Experte Exp_AFL_WinnerV2 mit der Verwendung des Indikators AFL_WinnerV2.
AFL_WinnerV2_HTFDer Indikator AFL_WinnerV2 mit der Veränderungsmöglichkeit des Timeframes des Indikators in den Eingangsparametern.
Der Indikator, der das Breakout-System mit der Verwendung des Kanals umsetzt, der auf dem verarbeitenden Algorithmus JSatl_Digit High und Low der Preisreihe gebaut wurde.
Exp_JSatl_Digit_SystemDas Handelssystem, welches aufgrund der Signale des Indikators JSatl_Digit_System gebaut wurde.