Fragen von einem "Dummy" - Seite 96

 
tol64:

Ich erinnerte mich an meine Frage an Renate. Kann jemand klären, was damit gemeint war?

Wenn ich IndicatorRelease() verwende, dann mache ich einen großen und konzeptionellen Fehler.

Und warum?

Denn der Kommentar wurde von Renat in Bezug auf die spezifische Situation der Verwendung von IndicatorRelease() gegeben , nämlich: Carlson erstellte und löschte bei jedem Tick Indikatorgriffe.

Siehe die Diskussion hier: https://www.mql5.com/ru/forum/1111/81949#comment_81949

 
Yedelkin:

Denn der Kommentar wurde von Renat in Bezug auf die spezifische Situation der Verwendung der Funktion IndicatorRelease() gegeben , nämlich: Carlson erstellte und löschte bei jedem Tick Indikatorgriffe.

Sehen Sie sich die Diskussion hier an: https://www.mql5.com/ru/forum/1111/81949#comment_81949

Oh, ich verstehe, wenn Sie das meinen. Ich erstelle nur einmal, ganz am Anfang, Indikatorgriffe.
 
Damals ging es darum, dass sich die Durchschnittszeit während des Betriebs an den Markt anpasst. Nach bestimmten Kriterien wurde die Durchschnittszeit geändert. Der alte Griff wurde gestrichen, ein neuer wurde geschaffen.
 
Karlson:
Damals ging es darum, die Durchschnittszeit während des Betriebs an den Markt anzupassen. Nach bestimmten Kriterien wurde die Durchschnittszeit geändert. Der alte Griff wurde gestrichen, ein neuer wurde geschaffen.
Für welche Lösung haben Sie sich entschieden?
 
Karlson:
Damals ging es um die Anpassung des Mittelungszeitraums an den Markt während der Maßnahme. Nach bestimmten Kriterien wurde der Zeitraum für den Durchschnitt geändert. Der alte Griff wurde entfernt. Die neue wurde erstellt.

Aufgrund der Besonderheiten bei der Erstellung unseres eigenen Indikatorflusses ist diese Lösung inakzeptabel. Dieses Problem wurde bereits in den ersten Tagen der Sprache (während der Betatests) diskutiert.

In diesem Fall wäre es sinnvoll, die Berechnung des Indikators in den Expert Advisor zu verlagern und nur die neuesten Daten zu berechnen, nicht die gesamte Reihe der historischen Daten. Natürlich gibt es hier eine Komplikation, denn eine solche Lösung erlaubt es nicht, ex5-Indikatoren zu verwenden, ohne den Code zu kennen, und erfordert das Verständnis des Berechnungsalgorithmus (um ihn zu übertragen und an neue Anforderungen anzupassen).

Bei der zweiten Option sollte der Mittelungszeitraum selbst im Indikator berechnet werden, und dann sollte der Griff geändert werden.

 
tol64:
Und für welche Lösung haben Sie sich entschieden?

In Wirklichkeit macht es in meinem Fall keinen Sinn, mehr als einmal im Monat zu optimieren. Es lohnt sich, etwas zu entwickeln... Für mich ist es nicht wichtig. Zuerst habe ich nur Griffe erstellt, aber ich wurde aufgefordert, sie zu entfernen. Ich habe angefangen, sie zu entfernen. Renat hat es kommentiert :) Im Allgemeinen steht geschrieben, dass ungenutzte Handles im Laufe der Zeit gelöscht werden, wahrscheinlich ist es unkritisch, einmal im Monat ein neues anzulegen, aber egal:

1.die Selbstanpassung an die Genetik installieren, wie in Richs Artikel

https://www.mql5.com/ru/articles/334

Aber ich habe hier nicht genug Wissen und sehe keinen besonderen Zweck.

2) Berechnungen sollten direkt in der Expert Advisor ohne Griffe durchgeführt werden, sollte ich die SMA danken.

3. verwenden Sie AMA oder Vidya, das wurde in den neuen Versionen gemacht.

Aber das sind alles meine privaten Lösungen, sie lösen das Problem nicht.

Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт
Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт
  • 2011.10.27
  • Roman Zamozhnyy
  • www.mql5.com
Чуть более года назад joo дал нам в своей статье "Генетические алгоритмы - это просто!" инструмент для реализации Генетического алгоритма на MQL5. Воспользуемся же этим инструментом и напишем эксперт, который при наступлении каких-то граничных условий произведет Генетическую оптимизацию своих же параметров...
 
Karlson:

Aber das sind alles meine privaten Lösungen. Ich denke, Urain hat die Frage beantwortet.

Ja, ich danke Ihnen für die Antworten.
 

Nachmittags.

Wie verwendet man die TimeSeries.mqh-Bibliothek, insbesondere die CiOpen-Klasse ....

Zum Beispiel: Chart - H1, Instrument - "EURUSD"... Eröffnungskurs vom aktuellen - H1 und höhere Zeitrahmen - H4 und D1 Takt #5 .....

Nun ein lauter Gedanke...

- Bibliotheksdatei anhängen

#include <Indicators\TimeSeries.mqh>

- Deklarieren Sie ein Array:

double Open[];

- eine Instanz der Klasse erstellen:

CiOpen  iOpen;

(oder vielleicht ist es auf diese Weise "richtiger"...?):

CiOpen  * iOpen;

- eine Instanz der Zeitreihe erstellen:

iOpen.Create("EURUSD", PERIOD_H4);

.... und dann ist es nicht klar.... GetData-Methode gibt entweder -1 oder >= 0 - (aber ich brauche den offenen Preis Wert von bar 5)

iOpen.GetData(5, 1, Open);

Frage 1: Wo sind die (mit so viel Aufwand) offenen Preisdaten zu suchen (an welcher Stelle des Arrays Open[] )...????

Frage 2: Für einen D1-Zeitraum muss ich ein weiteres Array deklarieren und meine eigene Klasseninstanz erstellen (oder kann ich mit nur einem auskommen)... ????


Mit freundlichen Grüßen, erkov.....



Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 

Hallo.

Können Sie mir bitte sagen, wie ich eine vertikale Linie in einem Diagramm an einem bestimmten Punkt setzen kann?

Ich danke Ihnen.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
Alfff:

Hallo.

Können Sie mir bitte sagen, wie ich eine vertikale Linie in einem Diagramm an einem bestimmten Punkt setzen kann?

Ich danke Ihnen.

Sehen Sie sich die Funktion ObjectCreate() an.