Diskussion zum Artikel "Fertige Vorlagen für die Verwendung von Indikatoren in Expert Advisors (Teil 1): Oszillatoren"
//--- Festlegen und ggf. Anpassen des Berechnungszeitraums period=int(InpPeriod<1 ? 14 : InpPeriod);
Ich verstehe, dass die Eingabe eine Konstante ist. Ich kann mir die Aufgabe einfach nicht vorstellen.
Nun, nur als Verteidigung gegen einen Dummkopf, der ein Minus einstellt, aber dann wäre es besser, eine Warnung zu haben, dass die Person einen Fehler gemacht hat.
Warum von uint zu int und warum überhaupt eine solche Konstruktion?
Ich verstehe, dass die Eingabe eine Konstante ist. Ich kann mir die Aufgabe einfach nicht vorstellen.
Nun, nur als Verteidigung gegen einen Dummkopf, der ein Minus einstellt, aber dann wäre es besser, eine Warnung zu haben, dass die Person einen Fehler gemacht hat.
InpPeriod ist eine Eingabevariable. Es gibt keine Möglichkeit, dort ein Minus einzugeben. Sie können dort eine Null eingeben. Solche Überprüfungen (auf weniger als eins) sind eine Angewohnheit, Zahlen mit Null nicht direkt zu vergleichen - wenn es in einer anderen ähnlichen Konstruktion plötzlich eine Eingabevariable vom Typ Double gibt, kann ich so den direkten Vergleich von zwei Double-Zahlen vermeiden. Ja, das ist "idiotensicher". In erster Linie von mir selbst - um weniger Fehler zu machen, wenn ich Code an andere Stellen portiere.
InpPeriod - Eingangsvariable input. Es gibt keine Möglichkeit, dort ein Minus einzugeben. Sie können dort eine Null eingeben. Solche Überprüfungen (auf weniger als eins) sind eine Angewohnheit, Zahlen mit Null nicht direkt zu vergleichen - wenn es in einer anderen ähnlichen Konstruktion plötzlich eine Eingabevariable vom Typ Double gibt, kann ich damit den direkten Vergleich zweier Double-Zahlen vermeiden. Ja, das ist "idiotensicher". In erster Linie von mir selbst - um weniger Fehler zu machen, wenn ich Code an andere Stellen portiere.
Nun, ja, es ist uint)))))) Sie können nicht ein Minus auf sie setzen))))
Und Null ist möglich. Aber in diesem Fall wird der Indikator auf den Standardwert gesetzt.
Aber Ihre Frage zielte auf etwas anderes ab - Sie wissen bereits über Null Bescheid.
Aber ich will nicht raten
Auch Null ist möglich. Aber in diesem Fall wird der Indikator auf den Standardwert gesetzt.
Aber der Punkt Ihrer Frage war etwas anderes - Sie wissen bereits über Null.
Aber ich werde nicht raten
Das ist richtig. Es gibt keinen Grund zu raten. Es war nur eine Frage an Valery. Ein Minus kann man nicht schreiben, aber eine Null?
Null ist also aktuell)))) Als narrensicheres Design ist fein))))))
Und man kann eine Maske auf die Tastatur legen, so dass nur die Ziffern gedrückt werden, und die anderen Tasten nicht gedrückt werden)))))) Für Soldaten in den 90er Jahren tat)))))) Und wenn man andere Tasten drückt, erscheint eine Warnung in großen Buchstaben))
Hallo! Ich glaube nicht, dass ich die Textausgabe in Zellen mit verschiedenen Ankerpunkten gemacht habe.
Aber wenn wir davon ausgehen, dass column_width die Breite der Zelle ist, column_height ihre Höhe,
und text_w und text_h die entsprechenden Abmessungen des Textes sind, der in die Zelle ausgegeben werden soll,
dann sollten die Koordinaten der linken oberen Ecke des Textes mit diesen Formeln berechnet werden:
| Anker | text_x | text_y |
|---|---|---|
| LEFT_UPPER | 0 | 0 |
| LINKS | 0 | (spalten_höhe - text_h)/2 |
| LINKS_UNTEN | 0 | spalten_höhe - text_h |
| NIEDRIG | (Spaltenbreite - text_w)/2 | spalten_hohe - text_h |
| RECHTS_UNTEN | spalten_breite - text_w | spalten_höhe - text_h |
| RECHTS | spalten_breite - text_w | (spalten_höhe - text_h)/2 |
| RIGHT_UPPER | spalten_breite - text_w | 0 |
| UPPER | (spalten_breite - text_w)/2 | 0 |
| MITTE | (spalte_breite - text_w)/2 | (spalten_höhe - text_h)/2 |
Hier Textverankerung - standardmäßig - anfängliche Textkoordinaten in der oberen linken Ecke, und den Text in Abhängigkeit von der Ankerpunkt (Anker in der Tabellenüberschrift) anzuzeigen, müssen Sie die Textkoordinaten nach den oben genannten Formeln zu berechnen.
Hallo! Ich glaube nicht, dass ich die Textausgabe in Zellen mit unterschiedlichen Ankerpunkten durchgeführt habe.
Aber wenn wir davon ausgehen, dass column_width die Breite der Zelle ist, column_height ihre Höhe,
und text_w und text_h die entsprechenden Größen des Textes sind, der in der Zelle ausgegeben werden soll,
dann sollten die Koordinaten der linken oberen Ecke des Textes mit diesen Formeln berechnet werden:
| Anker | text_x | text_y |
|---|---|---|
| LEFT_UPPER | 0 | 0 |
| LINKS | 0 | (spalten_höhe - text_h)/2 |
| LINKS_UNTEN | 0 | spalten_höhe - text_h |
| NIEDRIG | (Spaltenbreite - text_w)/2 | spalten_hohe - text_h |
| RECHTS_UNTEN | spalten_breite - text_w | spalten_höhe - text_h |
| RECHTS | spalten_breite - text_w | (spalten_höhe - text_h)/2 |
| RIGHT_UPPER | spalten_breite - text_w | 0 |
| UPPER | (spalten_breite - text_w)/2 | 0 |
| MITTE | (spalte_breite - text_w)/2 | (spalten_höhe - text_h)/2 |
Hier Textverankerung - standardmäßig - Anfangskoordinaten des Textes in der oberen linken Ecke, und um Text je nach Ankerpunkt (Anker in der Tabellenüberschrift) anzuzeigen, müssen Sie die Textkoordinaten nach den angegebenen Formeln berechnen.
Das ist ungefähr das, was ich dachte, aber ich dachte, es gäbe eine einfachere Lösung.
Vielen Dank!
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.

Neuer Artikel Fertige Vorlagen für die Verwendung von Indikatoren in Expert Advisors (Teil 1): Oszillatoren :
Der Artikel berücksichtigt Standardindikatoren aus der Kategorie der Oszillatoren. Wir werden gebrauchsfertige Vorlagen für ihre Verwendung in EAs erstellen — Deklaration und Einstellung von Parametern, Initialisierung und Deinitialisierung von Indikatoren sowie das Abrufen von Daten und Signalen aus den Indikatorpuffern in den EAs.
Die Verwendung von Indikatoren in eine EA und das Abrufen von Daten aus dem Indikatorpuffer in dem EA ist eine recht einfache Aufgabe, auch wenn sie ein ständiges Durchsuchen von Referenzmaterialien erfordert. Wir müssen uns alle Parameter merken, die an die Funktion zur Erstellung des Indikators übergeben werden, einige von ihnen als EA-Eingaben formalisieren, Gültigkeitsprüfungen einführen usw. Um Daten zu erhalten, müssen wir Funktionen schreiben, die die erforderlichen Daten aus der gewünschten Leiste zurückgeben. All dies erfordert Zeit für den Zugriff auf die Hilfe, die Eingabe der erforderlichen Variablen in den EA, das Schreiben von Funktionen für den Empfang und die Überwachung von Daten zur Bestimmung von Signalen usw.
Der Zweck dieses Artikels ist es, Vorlagen für das Einbinden von Indikatoren in den EAs zu erstellen. Schauen wir uns die Indikatoren der Kategorie Oszillatoren, ihre Eingangsvariablen, die Erstellung eines Indikator-Handles und die Beschaffung der erforderlichen Daten an.
Autor: Artyom Trishkin