Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1517

 

Hallo zusammen. Leute, helft mir, 2 Indikatoren zu kombinieren. Ich sitze jetzt seit 3 Tagen und nichts funktioniert.

Der erste Indikator zeigt den Trend an, und der zweite gibt mir eine Warnung und zeigt mir den Einstiegspunkt mit einem Pfeil an. Ich muss dafür sorgen, dass der zweite Indikator nur Signale für den Trend ausgibt.

Ich versuche, sie dazu zu bringen, ein Indikator zu sein, oder mir zu sagen, was ich falsch gemacht habe.

Dateien:
 
jarikn:

Hallo zusammen. Leute, helft mir, 2 Indikatoren zu kombinieren. Ich sitze jetzt seit 3 Tagen und nichts funktioniert.

Der erste Indikator zeigt den Trend an, und der zweite gibt mir eine Warnung und zeigt mir den Einstiegspunkt mit einem Pfeil an. Ich muss dafür sorgen, dass der zweite Indikator nur Signale für den Trend ausgibt.

Hilf mir, sie zu einem Ganzen zu machen, oder sag mir, was ich falsch gemacht habe.

Fangen

Dateien:
 

Wovon in aller Welt reden Sie? Liest denn niemand die Dokumentation ?

Bars

Abfrage der Anzahl der Balken in einem bestimmten Intervall

int  Bars( 
   string           symbol_name,     // имя символа 
   ENUM_TIMEFRAMES  timeframe,       // период 
   datetime         start_time,      // с какой даты 
   datetime         stop_time        // по какую дату 
   );

Zurückgegebener Wert

Wenn die Parameter start_time und stop_time angegeben sind, gibt die Funktion die Anzahl der Balken in einem Datumsbereich zurück. Wenn diese Parameter nicht angegeben werden, gibt die Funktion die Gesamtanzahl der Balken zurück.

Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
Bars - Доступ к таймсериям и индикаторам - Справочник MQL4
 

Bitte sagen Sie mir, was ich falsch mache, oder wie ich es richtig mache.


void Lvls(datetime data, double OPEN, double avg)
  {

   double hi = OPEN + avg;

   double lo = OPEN - avg;
   
   Print("ХАЙ РАВЕН :", hi," ЛОУ РАВЕН :", lo, "ЦЕНА ОТКРЫТИЯ : ", OPEN);
   
   string up = "LVL_UP_" + TimeToString(data);
   string low = "LVL_LOW_" + TimeToString(data);

//Хай
   ObjectCreate(NULL,up,OBJ_TREND,0,data,hi,data,hi,clrBlue,STYLE_SOLID,2,true,true,false,true,false,1);

//Лоу
  ObjectCreate(NULL,low,OBJ_TREND,0,data,lo,data,lo,clrRed,STYLE_SOLID,2,true,true,false,true,false,1);
  }
  


Im Allgemeinen, erstens sind die Objekte auf dem Diagramm erstellt, aber nicht angezeigt, und zweitens, obwohl ich eine andere Farbe Linie, Linie Eigenschaften haben ihren richtigen Namen, aber ihre Farbe in beiden Fällen ist rot, in der dritten kann ich nicht verstehen, was Datum, um eine 2-Punkt-Bindung angeben, wenn ich will, dass die Linie wurde nach rechts fortgesetzt, war aber nicht ein Strahl?

 
MakarFX:

Die Funktion arbeitet korrekt.

Probieren Sie es so

und fügen Sie die Aktualisierung des Saldos in die Auftragsabschlussfunktion ein

Ich werde es tagsüber versuchen, danke

 
Alexey Viktorov:

Ich habe mich bereits in Ihren Wünschen und Ratschlägen für Sie verloren... Vielleicht ist mein Ratschlag also völlig off-topic, aber sorry...

Ich verstehe, dass Sie den Saldo zu Beginn des Tages festlegen und den Gewinn/Verlust im Laufe des Tages zählen müssen, um dann eine Entscheidung über die Fortsetzung des Handels zu treffen ...

Die Entscheidung lautet also wie folgt

Wenn der Expert Advisor im Laufe des Tages neu gestartet wird, sollten Sie die Berechnung der Gewinne/Verluste der heutigen Aufträge unter Berücksichtigung von Swaps und Provisionen in Betracht ziehen und den Saldo für den Tagesbeginn in OnInit() berechnen.

Ich glaube an Makars Fähigkeiten, er kann das alles schon im Code zeigen...

Ich werde es tagsüber ausprobieren, danke.

 
MakarFX:

Fangen

Das war's? Ich zerbreche mir seit drei Tagen den Kopf))))) äh, vielen Dank
 
MakarFX:

Fangen

Ich schaute auf die Geschichte, es ist immer noch nicht das gleiche. wenn der Trend zu kaufen, kann es ein Signal zu verkaufen und umgekehrt geben. können Sie mir sagen, welche Linie zu ändern? alles ist in Ordnung. vielen Dank.
 
jarikn:
Ich schaute auf die Geschichte, es ist immer noch nicht das gleiche. wenn der Trend zu kaufen, kann es ein Signal zu verkaufen und umgekehrt geben. können Sie mir sagen, welche Linie zu ändern? sonst ist alles super. danke sehr viel
Ich habe sie gerade zusammengeführt.
 
Алексей КоКоКо:

Bitte sagen Sie mir, was ich falsch mache) oder was ist der richtige Weg Im Allgemeinen ist das erste Objekt auf dem Diagramm erstellt, aber nicht erscheinen, in der zweiten, obwohl ich verschiedene Farblinien in den Eigenschaften haben ihre eigenen Namen, aber ihre Farbe in beiden Fällen ist rot, in der dritten kann ich nicht verstehen, was Datum zu einem 2-Punkt-Anker angeben, wenn ich die Linie nach rechts fortsetzen wollen, war aber nicht ein Strahl?

void Lvls(datetime data, double OPEN, double avg)
  {

   double hi = OPEN + avg;
   double lo = OPEN - avg;
   
   int shift = Period()*60*5;
   
   Print("ХАЙ РАВЕН :", hi," ЛОУ РАВЕН :", lo, "ЦЕНА ОТКРЫТИЯ : ", OPEN);
   
   string up = "LVL_UP_" + TimeToString(data);
   string low = "LVL_LOW_" + TimeToString(data);

//Хай
   ObjectCreate(NULL,up,OBJ_TREND,0,data,hi,data+shift,hi,clrBlue,STYLE_SOLID,2,true,true,false,true,false,1);

//Лоу
  ObjectCreate(NULL,low,OBJ_TREND,0,data,lo,data+shift,lo,clrRed,STYLE_SOLID,2,true,true,false,true,false,1);
  }