Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 387

 
alexey1979621:
Ich danke Ihnen. Ich weiß über den Indikatoraufruf Bescheid. Aber die einstellbaren Parameter des Indikators sollten aufgelistet werden, wenn wir sie im Test oder im Betrieb anwenden, und da dieser EA nicht im Tester getestet werden kann (da zwei Paare in den Handel involviert sind), können wir diese Parameter einfach nicht in der Geschichte auswählen.

Irgendetwas sagt mir, dass Sie nicht ganz verstehen, worüber wir sprechen. Dieser Indikator misst zwei verschiedene Währungspaare, die in den externen Einstellungen des Indikators festgelegt werden. Und wenn Sie diesen Indikator mit Standardparametern in verschiedenen Expert Advisors auf verschiedene Währungspaare anwenden, erhalten Sie falsche Werte von ihm. Und es spielt keine Rolle, ob Sie es testen oder fälschen - Sie müssen die Arbeit mit dem Indikator korrekt vorschreiben!
alexey1979621:
Eine weitere kleine Frage, die wir haben in zwei Instrumenten Trades öffnen entweder zu verkaufen oder zu kaufen, aber wenn wir eine zu öffnen, um für ein Instrument zu verkaufen und eine andere zu öffnen, um zu kaufen, dann wie?

Wie Sie die Bedingungen für die Eröffnung festlegen, so werden auch die Aufträge eröffnet. Wenn Sie nicht wissen, was der Indikator sagt, kann ich Ihnen nicht helfen.

alexey1979621:
Es waren 5 EAs im Einsatz (Zwillingsbrüder - für verschiedene Paare), natürlich mit unterschiedlichen Majics.

In Ihrer Version ist die Arbeit mit dem Magier nicht korrekt angegeben. Die Aufträge werden mit der angegebenen Magik eröffnet, aber die Prüfung der Aufträge auf dem Markt wird mit der Standard-Magik durchgeführt. Das sollte so sein:

NumberOfPositions (/*рабочий символ*/, -1, Magic);
 

alexey1979621, warum versuchst du nicht zuerst, einen EA für ein Paar ohne Fehler zu schreiben, und dann einen für mehrere Währungen?

 

Ich versuche, einen Tick für einen Experten zu organisieren - ohne Erfolg. Das Wochenende kam für mich überraschend. Wie organisiert man das richtig? Wir haben zum Beispiel den folgenden elementaren Expert Advisor:

int delay = 180;
datetime read_now;
int init(){
   read_now = TimeCurrent() + delay;
}
int start(){
   int how_many_remains = read_now - TimeCurrent();
   Comment(StringConcatenate(
      StringSubstr("-", (how_many_remains%60 >= 0), 0),
      StringSubstr("0", (MathAbs(how_many_remains/60) > 9), 0),
      MathAbs(how_many_remains/60),
      ":",
      StringSubstr("0", (MathAbs(how_many_remains%60) > 9), 0),
      MathAbs(how_many_remains%60)
   ));
   return(0);
}

- Wie kann man Ticks simulieren und einen Timer starten?

Ich verstehe, dass es Wochenende ist, aber auf dem Markt stimmen die Feiertage nicht mit denen in RF überein, und es gibt viel zu tun...

 
gyfto:

Ich versuche, einen Tick für einen Experten zu organisieren - ohne Erfolg. Das Wochenende kam für mich überraschend. Wie organisiert man das richtig? Wir haben zum Beispiel den folgenden elementaren Expert Advisor:

- Wie kann man Ticks simulieren und einen Timer starten?

Ich verstehe, dass es ein Wochenende ist, aber auf dem Markt stimmen die Feiertage nicht mit denen in RF überein, und man muss trotzdem arbeiten...


Warum sollte man für etwas leiden, das man nicht tun muss?

eine offizielle Veröffentlichung der neuen Builds wird um den 20. Januar herum erfolgen und.

Es ist ein Timer implementiert, mit welcher Frequenz Sie diesen benötigen und aufgerufen werden.

Es ist besser, seine Energie darauf zu verwenden, die 5 zu studieren, um nicht Tausende von dummen Fragen zu haben.

 
ALXIMIKS:


Es ist ein Timer implementiert


Dies dient als Hinweis bis zum nächsten Parsen der Daten. Um 03:00 Uhr wird das Parsing vom EA selbst durch ein Skript eines Drittanbieters gestartet, um 00:00 Uhr werden die Daten im Chart angezeigt, und alles wird wieder mit der konfigurierten Datenaktualisierungsrate in Sekunden gestartet. Wäre eine solche Countdown-Anzeige bei einem Fünfer einfacher zu realisieren?
 
Leider bin ich in dieser Angelegenheit nicht kompetent, aber ich habe https://forum.mql4.com/ru/59441 gespeichert, damit Sie es in Ruhe lesen können, vielleicht ist es ja nützlich für Sie.
 
#property indicator_separate_window
#property indicator_buffers 3
#property  indicator_color1 Gold
#property  indicator_color2 Gold
#property  indicator_color3 Gold
//+---------------------------------------------------------------------+
extern double _N_ = 1; 
extern double _M_ = -1; 
extern int History = 10000;
//+---------------------------------------------------------------------+
int p; 
//+---------------------------------------------------------------------+
double Buf_0[];
double Buf_1[];
double Buf_2[];
double RSI;
double ADX_Main; 
double ADX_dD;
double ADX_DD;
double price;
//+---------------------------------------------------------------------+  
bool R_adx;
bool R_time;
bool R_adx_time;
bool R_rsi_time;
bool R_rrsi_time;
//+---------------------------------------------------------------------+
int init()
{
//+---------------------------------------------------------------------+  
SetIndexBuffer(0,Buf_0);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1);
//+---------------------------------------------------------------------+  
SetIndexBuffer(1,Buf_1);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1);
//+---------------------------------------------------------------------+  
SetIndexBuffer(2,Buf_2);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1);
//+---------------------------------------------------------------------+  
return;
}
//+---------------------------------------------------------------------+
int start()
{
//+---------------------------------------------------------------------+  
for(
p=0;
p<History;
p++)
{
//+---------------------------------------------------------------------+  
price = Bid;
//+---------------------------------------------------------------------+  
ADX_Main    = iADX(Symbol(),0,25,0,0,p);
ADX_dD      = iADX(Symbol(),0,25,0,1,p);
ADX_DD      = iADX(Symbol(),0,25,0,2,p);
RSI         = iRSI(Symbol(),0,25,0,p);
//+---------------------------------------------------------------------+  
R_adx         = (ADX_DD - ADX_dD) * ADX_Main; 
R_time        = Seconds() * Minute() * Hour(); 
//+---------------------------------------------------------------------+  
R_adx_time    = _N_ * (R_time + R_adx); 
R_rsi_time    = _N_ * (R_time + RSI);
R_rrsi_time   = _M_ * (R_time + RSI);
//+---------------------------------------------------------------------+  
Buf_0[p] = R_adx_time;
Buf_1[p] = R_rsi_time;
Buf_2[p] = R_rrsi_time;
//+---------------------------------------------------------------------+  
return; 
}
}
//+---------------------------------------------------------------------+  
Hallo noch mal!
Ein frohes neues Jahr, allerseits!

Ein weiteres Gerücht um Hilfe.
Der Indikator "H" zeigt keine Linien an.

Ich kann nicht herausfinden, worum es hier geht.

Der Code für den Indikator "H" ist oben abgebildet.
 
ALXIMIKS:
Ich habe https://forum.mql4.com/ru/59441 gespeichert, damit Sie es in Ruhe lesen können, vielleicht finden Sie es nützlich.

Ich habe bereits das Parsing selbst implementiert, warum. Ich interessiere mich dafür, wie man Tick emulieren kann, damit dieser Timer funktioniert. Ich brauche Zeit für die Umschulung auf mql5, die ich verlieren werde, und Zeit ist Geld.
 
Link_x:
Hallo noch mal!
Ein frohes neues Jahr, allerseits!

Ein weiteres Gerücht um Hilfe.
Der Indikator "H" zeigt keine Linien an.

Ich kann nicht herausfinden, worum es hier geht.

Der Code für den Indikator "H" ist oben abgebildet.

Die Extremwerte kommen bei der Berechnung etwas heraus...
 
evillive:

Außergewöhnliche Werte kommen etwas als Ergebnis der Berechnung heraus...
Das Wichtigste ist, dass sie angezeigt werden. :)

R_adx_time    = _N_ * (R_time + R_adx) / 500; 
R_rsi_time    = _N_ * (R_time + RSI) / 50 0;
R_rrsi_time   = _M_ * (R_time + RSI) / 50 0;
Wenn Sie dies tun, verschwinden die Grenzwerte, aber das Problem bleibt bestehen.
Grund der Beschwerde: