[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 1101

 
raduga7:
Liebe MQL4-Experten

Auf Metastock verstehe ich If((Ref(H,-1) >Ref(H,0)) AND (Ref(H,-2) < Ref(H,-1) ), Ref( H,-1),PREV); aber ich bin neu in MQL4.

Ich habe noch nie Meta-Bestände gesehen, und die MT4/MT%-Syntax ist fast identisch mit C/C++.

das Tutorial/Handbuch enthält Beispiele für den if()-Operator: https: //book.mql4.com/ru/operators/if nichts scheint zu kompliziert.

Hier finden Sie auch einige Informationen über Funktionen und wie Sie sie selbst schreiben können: https: //book.mql4.com/ru/operators/function

 
Danil93:
Fehler 4109 - Handel nicht erlaubt. Wie kann man das beheben?


Der Server lässt den Handel nicht zu - es muss ein Feiertag sein, oder es gibt kein Kontrollkästchen in den Terminaleinstellungen, das den Handel erlaubt. Stellen Sie es so ein (Service - Einstellungen):

 
IgorM:

Ich habe noch nie Metastock gesehen, und die MT4/MT%-Syntax ist fast dieselbe wie die von C/C++.

Beispiele für den if()-Operator finden sich im Lehr-/Handbuch: https: //book.mql4.com/ru/operators/if

Es gibt auch Informationen über Funktionen und wie man sie selbst schreiben kann: https: //book.mql4.com/ru/operators/function


Ich habe früher viel mit Metastock gearbeitet. Leider ist MT4 einfacher und bequemer. Es stimmt, es gibt viel mehr Indikatoren in Metastock. Aber das Erlernen von MQl beseitigt dieses Problem. Zumal auch ohne die Sprache die Codobasis von MT nicht klein genug ist.
 
Danke für den Tipp, ich arbeite gerade zum ersten Mal mit MTK. Also habe ich eine solche Frage geschrieben. Aber ich habe es gegoogelt und gefunden, was ich gesucht habe.

Aber ich habe noch keine Lösung mit Lücken gefunden. Wenn also jemand nicht faul ist, schickt mir bitte den Code.


//+------------------------------------------------------------------+

Unterstützung und Widerstand //|
//| Copyright © 2004 Barry Stander |
//| http://myweb.absa.co.za/stander/4meta/ |
//+------------------------------------------------------------------+
#property copyright "Klicken Sie hier: Barry Stander"
#property link "http://myweb.absa.co.za/stander/4meta/"

#property indicator_chart_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 Rot
#Eigenschaft indicator_color2 Blau

//---- Puffer
double v1[];
double v2[];
double val1;
double val2;
int i;

int init()
{

IndikatorPuffer(2);

//---- Zeichnungseinstellungen
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexPuffer(0, v1);
SetIndexLabel(0, "Widerstand");


SetIndexStyle(1,DRAW_ARROW,STYLE_DOT,1,Blue);
SetIndexDrawBegin(1,i-1);
SetIndexPuffer(1,v2);
SetIndexLabel(1, "Unterstützung");

zurück(0);
}

int start()
{

i=Bars;
while(i>=0)
{

val1 = iFractals(NULL, 0, MODE_UPPER,i);
wenn (val1 > 0)
v1[i]=High[i]+(High[i]-Low[i]);
sonst
v1[i] = v1[i+1];

val2 = iFractals(NULL, 0, MODE_LOWER,i);
wenn (val2 > 0)
v2[i]=Low[i];
sonst
v2[i] = v2[i+1];

i--;
}
zurück(0);
}

//+------------------------------------------------------------------+

 
raduga7, Ich verstehe nicht, was "Indikator ruft Preis" bedeutet? Nun, der Indikator hat den Preis gefunden, den Sie brauchen. Was sollte sie als nächstes tun? Wird es einfach in den Puffer gelegt und irgendwo gespeichert, ohne dass es gerendert wird? Sie zur Verwendung in den Codes anderer Programme speichern?
 

Natürlich wird er eine Preislinie auf dem Diagramm zeichnen, wie in dem oben veröffentlichten Indikator beschrieben


//---- Zeicheneinstellungen
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexBuffer(0, v1);
SetIndexLabel(0, "Resistance")

===================================================

Eine weitere Frage.
Ist es möglich, mehrere Diagramme 2 oder 3 mit unterschiedlichen Zeitrahmen in einem Fenster anzuzeigen? Gibt es vorgefertigte Lösungen oder Beispiele?

 
raduga7:


Eine andere Frage.
Ist es möglich, mehrere 2 oder 3 Charts mit unterschiedlichen Zeitrahmen in einem Fenster anzuzeigen? Gibt es vorgefertigte Lösungen oder Beispiele?

Zeitintervalle? Zeitrahmen?

Es gibt einige Unannehmlichkeiten in MT-Indikatoren - als Koordinaten X und Y verwenden die Indikatoren Preis und Zeit, die Zeit wiederum ist auch in Balken und die spezifische Zeitangabe als Datetime-Typ unterteilt, wenn der Indikator zeichnet mit Indikator-Puffer, wird es definitiv von Balken zeichnen, und wenn der Indikator verwendet grafische Objekte, dann die angegebene Zeit

wenn Ihre Frage sich auf die Anzahl der Zeilen - Indikatorpuffer bezieht, dann hat MT4 ein Maximum von 8 Zeilen für einen Indikator, aber niemand verbietet die Verwendung von mehreren Indikatoren

 

Hallo, darf ich eine Frage stellen, ob ein Indikator die Werte eines zeitlich festgelegten Balkens durch externe Variablen übernehmen kann?

Zum Beispiel, wenn Sie das Datum in externen Variablen eingeben - 6. Januar 2011 um 04h 25m, wie es in einem Indikator getan werden kann, ich danke Ihnen im Voraus.
 
Eliza:

Hallo, kann ich eine Frage stellen, kann der Indikator Bar Werte durch die Zeit über externe Variablen gesetzt nehmen?

Zum Beispiel, wenn Sie das Datum in externen Variablen eingeben - 2011, Januar 6, 04h 25 min, wie können Sie dies in einem Indikator tun, danke im Voraus.


iBarShift

iTime

können Sie sie wie folgt kombinieren:

iBarShift(NULL,PERIOD_D1,Time[1 00])

und externe Variablen sind eine Möglichkeit, Daten zwischen verschiedenen EAs/Indikatoren auszutauschen, ich verstehe nicht, warum externe Variablen etwas damit zu tun haben

 
raduga7:

Natürlich wird er eine Preislinie auf dem Diagramm zeichnen, wie in dem oben veröffentlichten Indikator beschrieben.


//---- Zeichnungseinstellungen
SetIndexArrow(0, 119);
SetIndexArrow(1, 119);

SetIndexStyle(0,DRAW_ARROW,STYLE_DOT,1,Red);
SetIndexDrawBegin(0,i-1);
SetIndexPuffer(0, v1);
SetIndexLabel(0, "Widerstand");

===================================================

Eine weitere Frage.
Ist es möglich, mehrere Diagramme 2 oder 3 mit unterschiedlichen Zeitrahmen in einem Fenster anzuzeigen? Gibt es vorgefertigte Lösungen oder Beispiele?




Sie sagten nicht, dass Sie ein Rendering wollten - Sie sagten, Sie hätten so etwas bei Google gefunden. Nun, DRAW_ARROW ist keine Linie - es ist ein Pfeil (es kann auch einfach ein Zeichen aus der Tabelle der erlaubten Zeichen verwendet werden). Der Computer ist ein Dummkopf, der nur "Es gibt ein Signal - kein Signal" versteht - er braucht präzise Anweisungen. Hier müssen Sie also genau wissen, was Sie neben den gefundenen Preisen benötigen.