[ARCHIV]Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Ohne dich kann ich nirgendwo hingehen - 5. - Seite 40

 
Twilight:


Schlagen Sie vor, den Indikatorcode in den Expert Advisor zu schieben und ihn dort neu zu berechnen?

Was ist, wenn es 5 solcher Indikatoren gibt?

Gibt es eine Möglichkeit, sie anders neu zu berechnen?

Ich hänge alle Indikatoren über iCustom an den Expert Advisor an

Der Indikator und sein letzter Wert werden bei jedem neuen Balken aufgerufen, aber er wird im Fenster mit den gehandelten Symbolen nicht neu gezeichnet, bis Sie den Zeitrahmen ändern und zurückgehen.

Wenn Sie auf das Diagramm klicken und auf Aktualisieren drücken, wird es nicht neu gezeichnet, sondern aus irgendeinem Grund nur, wenn Sie den Zeitrahmen ändern.

Ich weiß nicht, was Sie sich vorstellen. Wenn Sie sich ein genaues Bild von dem Indikator machen wollen, sollten Sie sich in seinem Code umsehen. Insbesondere die variable Grenze. Er ist in diesem Indikator enthalten. Übrigens, nach den Kommentaren zu diesem Indikator zu urteilen, hat der Autor des Indikators das Rerizzing verboten, und Sie können es tun, wie Sie wollen, aber Sie werden nicht bekommen, was Sie wollen, denn das Wesen des Rerizzing ist das Auftreten des Signals vor ein paar Bars.

Viel Glück!

 
silatyt:

Ich bin mir Ihrer Fantasien nicht bewusst. Um ein schönes Bild von einem Indikator zu erhalten, müssen Sie in seinem Code herumwühlen. Insbesondere mit der Grenzwertvariablen. Er ist in diesem Indikator enthalten. Übrigens, nach den Kommentaren zu diesem Indikator zu urteilen, verbietet der Autor des Indikators das Rerifting. Sie können es tun, wie Sie wollen, aber Sie werden nicht bekommen, was Sie wollen, weil das Wesen des Rerifting ist das Auftreten des Signals vor ein paar Bars.

Viel Glück!

In Metatrader gibt es in jedem Tool-Fenster, wenn Sie mit der rechten Maustaste klicken, eine Schaltfläche Aktualisieren

Gibt es eine Möglichkeit, diese Funktion programmgesteuert aufzurufen?

RefreshRates scheint es nicht zu sein.

 

Können Sie mir sagen, wie ich den EA-Code in zwei oder drei Zeilen implementieren kann?

Wenn ein Signal eintrifft (z.B. Kreuzung zweier MAs)

1. der Expert Advisor erkennt die Zeit des Signals (in Stunden, Minuten) und speichert sie;

2. Zählt eine Minute herunter.

Als nächstes die Bereitschaft, etwas zu tun (z. B. eine Bestellung zu eröffnen)

 
Twilight:
Wenn Sie in Metatrader in einem beliebigen Tool-Fenster mit der rechten Maustaste klicken, gibt es eine Schaltfläche Aktualisieren

Gibt es eine Möglichkeit, diese Funktion programmgesteuert aufzurufen?

RefreshRates scheint es nicht zu sein.


Bibliothek. Sie benötigen 4.7.7 ServiceTickIndicators().

 //=====================================================================================================================================================================
 // 4.7. Функции для управления обновлением графика.
 //=====================================================================================================================================================================
 // 4.7.1. Функция запускает обновление всех графиков с указанным периодом. Если обновление уже запущено, то функция меняет период обновления графиков.
 //        Останавливается обновление функциями "ServiceStopRefreshChart()" или "ServiceStopRefreshAllCharts()" или закрытием графика.
 void ServiceRefreshAllCharts(int nPeriodMilliSec); // Период обновления графика в миллисекундах.
 //=====================================================================================================================================================================
 // 4.7.2. Функция запускает обновление всех графиков однократно. Вызов функции при работающих других режимах останавливает обновление всех графиков.
 void ServiceRefreshAllOnceCharts();
 //=====================================================================================================================================================================
 // 4.7.3. Функция запускает обновление указанного графика с указанным периодом. Если обновление уже запущено, то функция меняет только период обновления графика.
 //        Останавливается обновление функциями "ServiceStopRefreshChart()" или "ServiceStopRefreshAllCharts()" или закрытием графика.
 void ServiceRefreshChart(int hwndChart,        // Системный дескриптор обновляемого графика.
                          int nPeriodMilliSec); // Период обновления графика в миллисекундах.
 //=====================================================================================================================================================================
 // 4.7.4. Функция останавливает обновление указанного графика.
 void ServiceStopRefreshChart(int hwndChart); // Системный дескриптор графика, на котором останавливается обновление.
 //=====================================================================================================================================================================
 // 4.7.5. Функция корректно останавливает обновление всех графиков при bTerminate = FALSE, иначе функция завершает обновление аварийно.
 void ServiceStopRefreshAllCharts(int bTerminate); // Флаг аварийной остановки потоков обновления графиков.
                                                   // FALSE - потоки останавливаются корректно, TRUE - потоки останавливаются аварийно.
 //=====================================================================================================================================================================
 // 4.7.6. Функция эммулирует тик для эксперта на указанном графике.
 void ServiceTickExpert(int hwndChart); // Системный дескриптор окна графика, для эмуляции тика для эксперта.
 //=====================================================================================================================================================================
 // 4.7.7. Функция эммулирует тик для индикаторов на указанном графике.
 void ServiceTickIndicators(int hwndChart); // Системный дескриптор окна графика, для эмуляции тика для индикаторов.

Aber es ist besser, noch ein wenig zu warten. Eine neue Version wurde veröffentlicht. Vielleicht werden die Moderatoren sie heute veröffentlichen.

 
Zhunko:

Bibliothek. Sie benötigen 4.7.7 ServiceTickIndicators().

Aber es ist besser, noch ein wenig zu warten. Eine neue Version wurde veröffentlicht. Vielleicht werden die Moderatoren sie heute veröffentlichen.


Bezahlt?

 
Twilight:
In Metatrader gibt es in jedem Tool-Fenster, wenn Sie mit der rechten Maustaste klicken, eine Schaltfläche Aktualisieren

Gibt es eine Möglichkeit, diese Funktion programmgesteuert aufzurufen?

Bei RefreshRates scheint das nicht der Fall zu sein.


#import "user32.dll"
int PostMessageA (int hWnd, int  Msg, int wParam, int lParam);
#import

PostMessageA (WindowHandle (Symbol(), Period()), 0x0111, 33324, 0);

Aber es wird Ihnen nichts bringen. :)

 
Twilight:


Bezahlt?

Nein. Wo steht bezahlt?
 
silatyt:

Aber es wird Ihnen nichts nützen... :)

Sie müssen es visuell umgestalten.

Zyklus durch die letzten N Takte und wenn es ein Signal gab - signal=true.

Danach können Sie mit allen anderen Indikatoren, die nicht neu gezeichnet werden, machen, was Sie wollen.

PostMessageA (WindowHandle(Symbol(), Period()), 0x0111, 33324, 0);

Wo einfügen? Zu Beginn von Start?

Ich danke Ihnen.

 
Twilight:

Sie wird visuell neu gezeichnet.

Zyklus durch die letzten N Balken und wenn es ein Signal gab, dann signal=true

Und dann können Sie mit allen anderen Indikatoren, die nicht neu gezeichnet werden, machen, was Sie wollen.

PostMessageA (WindowHandle(Symbol(), Period()), 0x0111, 33324, 0);

Wo einfügen? Zu Beginn von Start?

Ich danke Ihnen.

Vor dem Aufruf des Indikators (Sie können dies auch am Anfang von start() tun).

P.S. Alle "fliehen" vor der Umgestaltung, und Sie stehen dahinter - unkonventionell... :))

 
silatyt:

Vor dem Aufruf des Indikators (kann auch am Anfang von start() stehen).

P.S. Jeder "rennt" vor der Umgestaltung davon, während Sie dahinter stehen... :))


Hier ist zum Beispiel eine Variante: Wir zeichnen auf m5 neu und prüfen, ob es ein Signal für die letzten 12 Balken gibt.

Und bei den neuen m15 m30 prüfen wir, ob es ein Signal auf m5 gab und ob der Preis noch relevant ist, d.h. die Voraussetzungen für einen Einstieg erfüllt.

Außerdem kann analysiert werden, wie oft sich das Signal in derselben Stunde geändert hat, verschwunden ist usw.

Und das Signal hat einen Namen und es ist möglich, das Diagramm visuell nach Namen zu analysieren =)

Im Allgemeinen ein ganzes nicht gepflügtes Feld für Experimente. Aber so weit, ein solches Ergebnis =)

Mit meiner Änderung

http://komplekt73.ru/forex/m5chastr.htm

Grund der Beschwerde: