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

 
GarKain:
Wenn Sie lernen wollen, dann ist es ein einfacher Weg, entweder das Projekt aufzugeben oder einen Programmierer zu beauftragen.


Versuchen Sie, den Code von jemand anderem zu korrigieren? Wenn ja, muss man sie aufschlüsseln, um jeden Buchstaben zu verstehen. Andernfalls wird es für Sie noch schwieriger werden. Besser noch: Schreiben Sie Ihren eigenen Code. So wissen Sie, was was ist, wo ein Fehler auftreten könnte, wie Sie ihn erkennen und wie Sie ihn beheben können.

Wenn Sie solche Probleme mit Ihrem eigenen Code haben, dann habe ich das Richtige getan - laden Sie den Kurs von Roche herunter (Link oben) und beginnen Sie mit der Erstellung von Skripten. Schneller wird es nicht gehen. Und Ihre Arbeit für Sie zu tun, wird niemand. Wenn man keine Lust hat, etwas zu lernen - dann ist das ein einfacher Weg, entweder die Idee aufzugeben oder einen Programmierer einzustellen.

 
In Metatrader gibt es 6 Arten von Zeitskalen. Gibt es eine Funktion, die die Skalennummer zurückgibt?
 
silhouette:
In Metatrader gibt es 6 Arten von Zeitskalen. Gibt es eine Funktion, die die Skalennummer zurückgibt?

Zeitraum() - siehe hier und hier
 

Hallo! Der Indikator zeichnet Pfeile, wenn sich die Kurven kreuzen, ich habe dieses Signal durch iCustom an den EA übertragen. Aber Positionen öffnen sich entweder nach oben oder nach unten.

Abhängig von der Prüfung des Signals: war zunächst sowohl bei Kauf als auch bei Verkauf db/ub == 0, eröffnet nur Long-Trades, nach dem Signal wurde db!=1 und ub!=0 eröffnet nur Short-Positionen

Wenn ich db!=0 und ub!=!0 einstelle, werden die Geschäfte überhaupt nicht geöffnet. Ehrlich gesagt, ich weiß nicht, was zu tun ist, graben die Anzeige, die Expert Advisor, aber die Gründe für "Malaise" Ich kann nicht finden.

Bitte um Rat!

// ----- буферы индикатора

double   ArrowDownBuffer[];
double   ArrowUpBuffer[];

//------ получение сигнала в советнике


double db=iCustom(NULL,0,"GetSignal",0,SignalBar);// Стрелка вниз
double ub=iCustom(NULL,0,"GetSignal",1,SignalBar);// Cтрелка вверх
 
 
 bool BuySignal=false;
 bool SellSignal=false;
 
//-----------------------------------------------------------------------------------+
//Проверка на сигнал
if(db!=1)
 {
  SellSignal=true;
 }
if(ub!=1)
 {
  BuySignal=true;
 }
   
 
drknn:

Zeitraum() - siehe hier und hier

Nein, ich meine die Lupe (+, -) - Skala auf einer horizontalen Skala.
 
silhouette:

Nein, ich meine die Lupe (+, -) - Skala auf einer horizontalen Skala.

Nein, nicht in MQL4
 
skyjet:

Hallo! Der Indikator zeichnet Pfeile, wenn sich die Kurven kreuzen, ich habe dieses Signal durch iCustom an den EA übertragen. Aber Positionen öffnen sich entweder nach oben oder nach unten.

Abhängig von der Prüfung des Signals: war zunächst sowohl bei Kauf als auch bei Verkauf db/ub == 0, eröffnet nur Long-Trades, nach dem Signal wurde db!=1 und ub!=0 eröffnet nur Short-Positionen

Wenn ich db!=0 und ub!=!0 einstelle, werden die Geschäfte überhaupt nicht geöffnet. Ehrlich gesagt, ich weiß nicht, was zu tun ist, graben die Anzeige, die Expert Advisor, aber die Gründe für "Malaise" Ich kann nicht finden.

Bitte beraten Sie mich, bitte!


Eine merkwürdige Kontrolle

//Проверка на сигнал
if(db!=1)
 {
  SellSignal=true;
 }
if(ub!=1)
 {
  BuySignal=true;
 }

if(db!=1)? dann ist dies ein kurzes Signal. Und wenn db in diesem Fall Null enthält? Schließlich wird die Ungleichheit wahr und es wird auch ein Signal sein?

Wie können Sie Ratschläge geben, wenn niemand weiß, was Sie in Ihrem Code haben? Und der Teil, den Sie zitiert haben, ist nur die Initialisierung von Variablen mit Indikatorwerten. Sehen Sie, der Pfeil nach oben ist gezeichnet. In der Idee sollte der Indikatorpuffer "Pfeil nach oben" den Preis des Pfeils enthalten, aber der andere (der Puffer "Pfeil nach unten") sollte bei dieser Kerze leer sein (in der Idee). Aber was deine Realität ist, weiß nur Gott...

 
drknn:


Eine merkwürdige Kontrolle

if(db!=1)? dann ist es ein kurzes Signal. Und wenn die Datenbank Null enthält? Schließlich wird die Ungleichheit wahr und es wird auch ein Signal sein?

Wie können Sie Ratschläge geben, wenn niemand weiß, was Sie in Ihrem Code haben? Und der Teil, den Sie zitiert haben, ist nur die Initialisierung von Variablen mit Indikatorwerten. Sehen Sie, der Pfeil nach oben ist gezeichnet. In der Idee sollte der Indikatorpuffer "Pfeil nach oben" den Preis des Pfeils enthalten, aber der andere (der Puffer "Pfeil nach unten") sollte bei dieser Kerze leer sein (in der Idee). Aber was Ihre Realität ist - das weiß nur Gott...

Ja, der Indikator hat 2 Pfeilkurspuffer, von denen ich versuche, ein Signal zu erhalten. Aber vergeblich, denn egal, welche Kombination ich versuche, entweder öffnen sich nur Long-Positionen oder

oder nur offene Short-Positionen oder gar nichts. Der Indikator hat nur 2 externe Variablen, die Pfeilpreispuffer sind.

Ich verstehe nicht, wie es möglich ist, Geschäfte in einer Richtung zu eröffnen, aber nicht in zwei.

if( bs==1 && bs!=EMPTY_VALUE )
 {
  BuySignal=true;
 }
if( ss==1 && ss!=EMPTY_VALUE )
 {
  SellSignal=true;
 }
 
double db=iCustom(NULL,0,"GetSignal",0,SignalBar);// Стрелка вниз
double ub=iCustom(NULL,0,"GetSignal",1,SignalBar);// Cтрелка вверх

if( ub!=0 && bs!=EMPTY_VALUE ) //стрелка вверх не равна нулю или пустому значению (то есть,она существует)
 {
  BuySignal=true;
 }
if( db!=0 && ss!=EMPTY_VALUE )//стрелка вниз не равна нулю или пустому значению (то есть,она существует)
 {
  SellSignal=true;
 }
Haben Sie das schon ausprobiert?
 
granit77:
Haben Sie es auf diese Weise versucht?

Ja, dies ist eine der Möglichkeiten, wenn keine Geschäfte eröffnet werden. Ich habe eine Frage, ob die Reihenfolge, in der die Pfeilpreise in die Pfeilpuffer eingegeben werden, iCustom beeinflusst. Ich meine, wenn der Indikator zuerst

zuerst eine Abwärtsbewegung und dann eine Aufwärtsbewegung feststellt?