[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 270

 

Hallo zusammen.

Ich brauche Hilfe - sagen Sie mir, wie man das in EA macht:

Einen Indikator über einen anderen legen?

Ich rufe den ersten Indikator auf, der Werte aus dem Diagramm übernimmt.

Wie kann man die zweite aufrufen, so dass sie Werte aus der ersten übernimmt?

Wenn möglich, mit einem Beispiel (wenden wir die muwings auf atp an).

Ich danke Ihnen im Voraus.

 

Könnt ihr mir bitte sagen, wo im Code der Fehler liegt? Der Expert Advisor kauft nur... Nach einem Stopp oder einer Übernahme wartet er, bis der Balken schließt und kauft erneut... Wenn ich in den ersten Zeilen "Kaufen" und "Verkaufen" vertausche, wird nur verkauft... Bitte sagen Sie mir, was es sein könnte...

if (PerkyBuf1!=0 && OrdCon(MG)==0) {OrderOp(OP_SELL,Lots);  
    }  
    if (PerkyBuf2!=0 && OrdCon(MG)==0) {OrderOp(OP_BUY,Lots);  
    }
 }

return(0);
}


int OrderOp(int ord,double lot)  
{
   int ticket1;
   string ccm="";
   double l;
   bool SLTP;
   
   
   if (ord==OP_BUY) {
      l=NormalizeDouble(MarketInfo(Symbol(), MODE_ASK), MarketInfo(Symbol(), MODE_DIGITS));
      ccm="pivot: BUY";
      ticket1=OrderSend(Symbol(),ord,lot,l,3,0,0,ccm,MG,0,White);
      if (ticket1!=0) {
            if (StopLoss!=0) {SL=NormalizeDouble(l-StopLoss*Point,Digits);}
            if (TakeProfit!=0) {TP=NormalizeDouble(l+TakeProfit*Point,Digits);}
            SLTP=OrderModify(ticket1,OrderOpenPrice(),SL,TP,0,Red);
            if (SLTP) {return(0);}
      } 
   }           
   
   if (ord==OP_SELL) {
      l=NormalizeDouble(MarketInfo(Symbol(), MODE_BID), MarketInfo(Symbol(), MODE_DIGITS));
      ccm="pivot: SELL";
      ticket1=OrderSend(Symbol(),ord,lot,l,3,0,0,ccm,MG,0,White);
      if (ticket1!=0) {
            if (StopLoss!=0) {SL=NormalizeDouble(l+StopLoss*Point,Digits);}
            if (TakeProfit!=0) {TP=NormalizeDouble(l-TakeProfit*Point,Digits);}
            SLTP=OrderModify(ticket1,OrderOpenPrice(),SL,TP,0,Red);
            if (SLTP) {return(0);}
 
Mihoi:

Hallo zusammen.

Ich brauche Hilfe - sagen Sie mir, wie man das in EA macht:

Einen Indikator über einen anderen legen?

Ich rufe den ersten Indikator auf, der Werte aus dem Diagramm übernimmt.

Wie kann man die zweite aufrufen, so dass sie Werte aus der ersten übernimmt?

Wenn möglich, mit einem Beispiel (wenden wir die muwings auf atp an).

Ich danke Ihnen im Voraus.

In den ATR-Indikator selbst geben Sie ein paar zusätzliche Zeilen ein.

Ein gutes Beispiel zur Lösung des Problems wäre der MACD-Indikator aus der Gruppe der benutzerdefinierten Indikatoren.

Öffnen Sie den Code des MACD-Indikators und sehen Sie sich an, wie er funktioniert.

Es ist sehr einfach. iMAOnArray().

 
ostrik:

Könnt ihr mir bitte sagen, wo im Code der Fehler liegt? Der Expert Advisor kauft nur... Nach einem Stopp oder einer Übernahme wartet er, bis der Balken schließt und kauft erneut... Wenn ich in den ersten Zeilen "Kaufen" und "Verkaufen" vertausche, wird nur verkauft... Bitte sagen Sie mir, was es sein könnte...


if (PerkyBuf1!=0 && OrdCon(MG)==0) {OrderOp(OP_SELL,Lots);  
    }  
    if (PerkyBuf2!=0 && OrdCon(MG)==0) {OrderOp(OP_BUY,Lots);  
    }
 } --- может, эта скобка лишняя???
 
Danke, ich werde es ausprobieren!
 
DhP:



Nein, die Halterung scheint in Ordnung zu sein...
 
ostrik:

Nein, die Klammern sind in Ordnung...

Ihr deutet damit an, dass ihr unvollständigen Code mit einer unvollständigen Funktion geliefert habt.

In der Tat gilt: Drucken oder Kommentieren.

 
sergeev:

Ihr deutet damit an, dass ihr unvollständigen Code mit einer unvollständigen Funktion geliefert habt.

Im Allgemeinen gilt: Drucken oder Kommentieren.


Die Sache ist die, ich lerne gerade dieses harte Zeug und nichts funktioniert überhaupt... Ich habe das Gefühl, dass meine Hände nicht an der richtigen Stelle wachsen ))

 

Hallo, wie kann man die Indikatorlinie um einen Balken nach vorne verschieben?

#property copyright "autoforex"
#property link "http://www.autoforex.ru"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
#property indicator_width1 2
#property indicator_style1 0

double Buffer1[];

int init()
{
SetIndexBuffer(0,Buffer1);
SetIndexStyle(0,DRAW_LINE);
return(0);
}
int start()
{
for(int i=0;i<Bars;i++)
{
Buffer1[i]=High[i];
}
return(0);
}

Ich habe eine Idee anstelle von Buffer1[i]=High[i]; put Buffer1[i-1]=High[i]; aber leider zieht es nicht vorwärts(

 
tmt0086:

Hallo, wie kann man die Indikatorlinie um einen Balken nach vorne verschieben?

#property copyright "autoforex"
#property link "http://www.autoforex.ru"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
#property indicator_width1 2
#property indicator_style1 0

double Buffer1[];

int init()
{
SetIndexBuffer(0,Buffer1);
SetIndexStyle(0,DRAW_LINE);
return(0);
}
int start()
{
for(int i=0;i<Bars;i++)
{
Buffer1[i]=High[i];
}
return(0);
}

Ich habe eine Idee anstelle von Buffer1[i]=High[i]; put Buffer1[i-1]=High[i]; aber leider zieht es nicht vorwärts(


es herausgefunden hat