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

 
Nail_Saby писал(а) >>

Ich habe einen Teil des Codes mit for aus der vorgefertigten Funktion http://fxnow. ru/blog.php?user=Yuriy&blogentry_id=66...

Und was ist mit return()? Damit es funktioniert?

Man muss mit der Logik beginnen. Was Sie bekommen möchten und wie.

 

Bitte erklären Sie mir, warum es unmöglich ist, den Wert eines MA mit dem eines anderen gleichzusetzen und einen Handel zu eröffnen, wenn sie gleich sind. Es funktioniert nur mit <= oder >=, aber sonst nicht.

 
Stanislav.exe >>:

Подскажите почему нельзя приравнять значение одной МА к другой и в случае их равенства открывать сделку. У меня работает только со знаками <= или >=, а никак иначе.

es wird nicht empfohlen, doppelte Variablen zu vergleichen

 
sanyooooook писал(а) >>

Es wird nicht empfohlen, Variablen vom Typ double zu vergleichen

Wie schreibe ich es also richtig, wenn ich einen Crossover brauche und nicht mehr oder weniger?

Und eine weitere Sache, ist es möglich, die Anzahl der Trades für die Zeit gleich zu zählen: von der ersten MA Kreuzung zu ihrer Rückkreuzung?

Wenn ja, wie...

 
Stanislav.exe >>:

Так как правильно написать если мне нужно именно пересечение, а не больше или меньше?

И ещё один момент можно ли считать количество сделок за время равное: от первого пересечения МА до их повторного пересечения?

Если да то как...

   ma=iMA(NULL,0, MovingPeriod,0,MODE_EMA,PRICE_CLOSE,5);
   ma1=iMA(NULL,0, MovingPeriod1, MovingShift,MODE_EMA,PRICE_CLOSE,5);
   ma2=iMA(NULL,0, MovingPeriod,0,MODE_EMA,PRICE_CLOSE,1);
   ma3=iMA(NULL,0, MovingPeriod1, MovingShift,MODE_EMA,PRICE_CLOSE,1);
//---- sell conditions
   if ( ma1< ma && ma2< ma3) 
     {
      res=OrderSend(Symbol(),OP_SELL, Lots,NormalizeDouble(Bid,Digits),5,0,0,"", MAGICMA,0,Red);
      f=0;
      return;
     }
//---- buy conditions
   if ( ma1> ma && ma2> ma3)
     {
      res=OrderSend(Symbol(),OP_BUY, Lots,NormalizeDouble(Ask,Digits),5,0,0,"", MAGICMA,0,Blue);
      f=0;
      return;
eine Version des Codes
 
sanyooooook писал(а) >>
eine der Code-Varianten

Danke, sanyooooook, wenn ich darf, was bedeutet die letzte Ziffer in

ma=iMA(....... ...PRICE_CLOSE,.... diese 5);

Und was die Anzahl der Angebote betrifft, ist es möglich, die Anzahl der Angebote während der MA auf 1, 2 oder 3 zu beschränken?

 
Stanislav.exe >>:

Спасибо sanyooooook, если можно, что означает последняя цифра в

ma=iMA(....... ..PRICE_CLOSE,.... вот эта пятёрочка 5);

И ещё на счёт количества сделок, можно прописать, чтоб их было например только 1 или 2..3 за время перечения МА

Markieren Sie im MetaEditor den Text, an dem Sie interessiert sind, in diesem Fall iMA, und drücken Sie F1. Die Informationen über die markierte Zeile erscheinen am unteren Rand des Fensters

 
sanyooooook писал(а) >>

Markieren Sie im Meta-Editor den Text, der Sie interessiert, in diesem Fall iMA, und drücken Sie F1. Die Informationen über die markierte Zeile erscheinen am unteren Rand des Fensters.

Schicht - Shift - Index des aus dem Indikatorpuffer erhaltenen Wertes (Verschiebung relativ zum aktuellen Takt um die angegebene Anzahl von Perioden zurück).

Wie ist es auf Russisch zu verstehen, mein Freund, ich habe es gelesen, aber ich kann es nicht verstehen...

 
Stanislav.exe >>:
shift - Индекс получаемого значения из индикаторного буфера (сдвиг относительно текущего бара на указанное количество периодов назад).

Как это по русски понять дружище, я это уже читал всё равно допереть не могу...

Vereinfacht ausgedrückt ist dies die Nummer des Balkens, aus dem das Indikatorsignal entnommen wird. Der aktuelle Balken ist Null, dann geht die Zählung weit in die Vergangenheit zurück.

 

Es ist einfacher und schneller, die Kreuzung auf eine andere Weise zu überprüfen

   ma11=iMA(NULL,0, MovingPeriod,0,MODE_EMA,PRICE_CLOSE,1);
   ma12=iMA(NULL,0, MovingPeriod,0,MODE_EMA,PRICE_CLOSE,2);
   ma21=iMA(NULL,0, MovingPeriod1,0,MODE_EMA,PRICE_CLOSE,1);
   ma22=iMA(NULL,0, MovingPeriod1,0,MODE_EMA,PRICE_CLOSE,2);
   if (( ma11- ma12)*( ma21- ma22)<0) {
       //пересечение есть
       if ( ma11> ma21)  // Пересечение вверх
       if ( ma11<ma21)  // Пересечение вниз
   }
Die Geschwindigkeit ist höher. Komplexe logische Ausdrücke brauchen länger als einfache. Multiplikation ist schneller als logisch