Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
der Berater verwendet
Wert vom 0. Balken genommen wird, werden die Werte der Indikatorpuffer dafür bei jedem Tick bis zum Ende der Kerze geändert.Das ist richtig, ich habe experimentiert, aber im Wesentlichen löst es das Hauptproblem nicht: Wie kann man einen EA dazu bringen, den Indikatorpuffer nicht nur für den angeforderten Balken, sondern auch für mehrere Balken rückwärts neu zu berechnen?
Eine Lösung könnte gefunden worden sein! Einer von ihnen...
Hierfür müssen Sie jedoch eine spezielle Version des Indikators erstellen.
Meine Herren,
Ich schreibe einen Indikator: ...
int handle;
double indicatorBuffer[];
...
int OnInit()
{
... handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice);
...
}
int OnCalculate (const int rates_total, // Größe des Arrays price[]
const int prev_calculated, // verarbeitete Balken beim vorherigen Aufruf
const int begin, // wo signifikante Daten beginnen
const double& price[]) // Array für Berechnung
{
... etwas tun
Die Frage ist - wie kann man handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice) wissen lassen, was AppPrice ist?
oder wie kann man Apply to: aus der Registerkarte Parameter extrahieren, um es im Code zu verwenden?
Vielen Dank im Voraus...
Meine Herren,
Die Frage ist, wie man handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice) wissen lässt, was AppPrice ist?
oder wie extrahiert man Anwenden auf: aus der Registerkarte Parameter zur Verwendung im Code?
Ich danke Ihnen im Voraus...
Siehe OnCalculate():
Die Auswahl einer notwendigen Zeitreihe oder eines Indikators als Preis[]-Array erfolgt durch den Benutzer beim Start des Indikators in der Registerkarte "Parameter". Zu diesem Zweck muss man in der Dropdown-Liste des Feldes "Anwenden auf" das gewünschte Element angeben.
Um Werte eines benutzerdefinierten Indikators von anderen mql5-Programmen zu erhalten, wird die Funktion iCustom() verwendet, die das Indikator-Handle für nachfolgende Operationen zurückgibt. Sie können auch das entsprechende Preis[]-Array oder den Handle eines anderen Indikators angeben . Dieser Parameter sollte als letzter in der Liste der Eingabevariablen des benutzerdefinierten Indikators übergeben werden.
Siehe OnCalculate():
Rosh, danke, aber meine Frage ist genau das. Was sollte ich in der Erklärung angeben?
handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice)
als AppPreis?
Ich lese die verfügbare Hilfe sehr sorgfältig. Vielleicht hat die Hitze ihren Tribut gefordert, aber ...
Rosh, danke, aber meine Frage ist genau das. Was sollte ich in der Erklärung angeben?
handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice)
als AppPreis?
Ich habe die verfügbare Hilfe sehr sorgfältig gelesen. Vielleicht hat die Hitze ihren Tribut gefordert, aber ...
Rosh, danke, aber meine Frage ist genau das. Was sollte ich in der Erklärung angeben?
handleMA = iMA(_Symbol, _Periode, periodMA, shiftMA, MODE_SMA, AppPrice)
als AppPreis?
Ich habe die verfügbare Hilfe sehr sorgfältig gelesen. Vielleicht hat die Hitze ihren Tribut gefordert, aber ...
Wärme. Sie sollten ENUM_APPLIED_PRICE als AppPrice angeben)
Swan, ich danke Ihnen für Ihre Aufmerksamkeit. Aber wenn Sie die
input ENUM_APPLIED_PRICE AppPrice=PRICE_CLOSE; und die erste Form
int OnCalculate (const int rates_total, // Größe des Arrays price[]
const int prev_calculated, // verarbeitete Balken beim vorherigen Aufruf
const int begin, //wo signifikante Daten beginnen
const double& Preis[]) // Array für die Berechnung
Beim Kompilieren erhalten wir eine Warnmeldung: Es sind zwei OnCalculate-Funktionen definiert. Es wird die Funktion Preisdaten verwendet NameIndicator.mq5 (pg)
und das Array price[] ist in keiner Weise mit AppPrice verknüpft, es sei denn, es ist dasselbe wie Apply to: in der dritten Registerkarte "Parameter".
Die Frage ist in der Tat, ob die eingebauten Single-Buffer-Indikatoren wie iMA() und die erste intCalculate()-Form verwendet werden können, wenn price[]-Array irgendwie
in den Berechnungen verwendet.
Geben Sie den Indikator-Handle an, wenn Sie mit den Daten eines anderen Indikators rechnen wollen. Oder Art der Preise, auf deren Grundlage der Indikator berechnet wird.
Wir (eher ich) haben ein Missverständnis.
Die Frage ist in der Tat, ob wir eingebaute Single-Buffer-Indikatoren wie iMA() und die erste Form von int OnCalculate() verwenden können, wenn das Array price[] irgendwie
in den Berechnungen verwendet wird.
Wir (eher ich) haben ein Missverständnis.
Die Frage ist nämlich, ob man integrierte Ein-Puffer-Indikatoren vom Typ iMA() und die erste Form int OnCalculate() verwenden kann, wenn das Array price[] irgendwie
in den Berechnungen verwendet.
IhrAppPrice-Parameter hat nichts mit OnCalculate() zu tun.
Sie können ihm entweder den Wert einer der Preiskonstanten (Option 1) oder das Handle eines anderen Indikators (Option 2) geben. Und dann können Sie:
1. Variante.
2. Variante.