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

 
Auch hier ist die Frage unklar. Vom Diagramm zerstören oder nicht in EA zählen? Unterbrechung durch Bedingung oder ? Von wo und womit trennen Sie die Verbindung?
Auf eine konkrete Frage gibt es schnell eine konkrete Antwort.
 
zhuki >>:
Опять вопрос непонятный. Уничтожить с графика или не считать в эксперте? Отключить по условию или ?. Отключить откуда и чем?
На конкретный вопрос будет конкретный ответ и быстро.

Sobald die schwebenden Aufträge erteilt wurden, muss der Indikator deaktiviert werden. Zählen nicht im Expert Advisor.

 
Sie meinen, sie zählen nicht in der Expertenliste So?
Machen Sie ein Leuchtfeuer. Sobald die Aufträge erteilt wurden, sollten Sie sich nicht mehr auf das Kennzeichen beziehen.
 
Wie könnte ich nicht? Der Indikator sendet ständig Daten an eine externe Datei, der Expert Advisor liest diese Daten, platziert dann Aufträge und liest die Daten erneut, das sollte er nicht.
 
vlandex >>:
А как не обращаться? Данные индикатор выкидывает в внешний файл постоянно, эксперт считывает эти данные, потом выставляет ордера и опять считывает данные, а не должен.

verwenden.

OrdersTotal( )
 
Lesen Sie mehr...
 
Jetzt wissen Sie, was zu tun ist.
Verwenden Sie eine globale Variable. Wenn eine solche vorhanden ist, zählt oder schreibt der Indikator nicht. Und vice versa.
 
vlandex >>:
Подробнее...

Lesen Sie Ihren Indikator, wenn die Bedingung erfüllt ist

if(OrdersTotal()==0){Ihren Indikator lesen}

 
aber bitte beachten Sie, dass
int OrdersTotal( )
Gibt die Gesamtzahl der offenen und schwebenden Aufträge zurück.
 

Guten Abend allerseits...

Ich habe versucht, den OsMA-Indikator zuändern , um Linien mit der Sift-Zahl des Bar-Durchschnitts zu erhalten (Summe aller positiven und negativen Werte des Indikators für Sift bar dividiert durch Sift)

Aber aus irgendeinem Grund wollendie Messwerte der Zeilen nichtvom Sift-Wert abhängen...

//+------------------------------------------------------------------+
//|                                                         OsMA.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property  copyright "Copyright © 2004, MetaQuotes Software Corp."
#property  link      "http://www.metaquotes.net/"
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 3
#property  indicator_color1  Silver
#property  indicator_color2  Red
#property  indicator_color3  ForestGreen
//---- indicator parameters
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
extern int Sift=20;
extern int Sift1=100;
//---- indicator buffers
double     ind_buffer1[];
double     ind_buffer2[];
double     ind_buffer3[];
double     ind_buffer4[];
double     ind_buffer5[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- 2 additional buffers are used for counting.
   IndicatorBuffers(3);
//---- drawing settings
   SetIndexStyle(0,DRAW_HISTOGRAM,STYLE_SOLID,3);
   SetIndexDrawBegin(0,SignalSMA);
   IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)+2);
//---- 3 indicator buffers mapping
   if(!SetIndexBuffer(0,ind_buffer1) &&
      !SetIndexBuffer(1,ind_buffer2) &&
      !SetIndexBuffer(2,ind_buffer3))
      Print("cannot set indicator buffers!");
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("OsMA("+FastEMA+","+SlowEMA+","+SignalSMA+")");
//---- initialization done
   return(0);
  }
//+------------------------------------------------------------------+
//| Moving Average of Oscillator                                     |
//+------------------------------------------------------------------+
int start()
  {
   int limit;
   int counted_bars=IndicatorCounted();
//---- check for possible errors
   if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
//---- macd counted in the 1-st additional buffer
   for(int i=0; i<limit; i++)
      ind_buffer2[i]=iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);
//---- signal line counted in the 2-nd additional buffer
   for(i=0; i<limit; i++)
      ind_buffer3[i]=iMAOnArray(ind_buffer2,Bars,SignalSMA,0,MODE_SMA,i);
//---- main loop
   for(i=0; i<limit; i++)
      ind_buffer1[i]=ind_buffer2[i]-ind_buffer3[i];
//---- done
   for(i=0; i<limit; i++)
      ind_buffer4[i]=(ind_buffer2[i]+ind_buffer3[i])/Sift;
//---------      
   for(i=0; i<limit; i++)
      ind_buffer5[i]=(ind_buffer2[i]+ind_buffer3[i])/Sift1;
//---------      
   return(0);
  }
//+------------------------------------------------------------------+