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

 

Kollegen Hilfe !!! brauche dringend AMA Indikator der im MT5 Standard ist, aber nur für MT4 BITTE !!!

 
Hallo, könnten Sie mir bitte sagen, wie man das macht? Ich möchte einen ZigZag-Indikator zu meinem EA hinzufügen. Wie kann ich die Preise der Spitzenwerte 0, 1 und 2 vergleichen?
 
// в модуле extern int ExtDepth = 12; extern int ExtDeviation = 5; extern int ExtBackstep = 3; extern int ShiftBars = 2; // в функции double y3=0, y2=0, y1=0, zz; // экстремумы Зиг-Зага int x3, x2, x1, sh=ShiftBars;// номера баров // Берём три экстремума Зиг-Зага while (y3==0) { zz=iCustom(NULL, 0, "ZigZag", ExtDepth, ExtDeviation, ExtBackstep, 0, sh); if (zz!=0 && zz!=EMPTY_VALUE) { if (y1==0) { x1=sh; y1=zz; } else if (y2==0) { x2=sh; y2=zz; } else if (y3==0) { x3=sh; y3=zz; } } sh++; }
Dank an KimIV
 

wie ist das möglich?

auf dem Markt zu kaufen,

Ask:1.05310000, Bid:1.05280000, price:1.05310000, sl:1.05251000, tp:0.00000000

gibt den Fehler 130 aus.

sl wird vor der Übertragung normalisiert.

MODE_STOPLEVEL==0

 
beruk:
Dank an KimIV
Ich danke Ihnen.
 

Warum... Demokonto:

Morgens: Marktanalyse...Nachrichten für heute, Niveaus...Oanda und andere % öffnen Trades, keine Indikatoren...geben Trades ein...auf vielen Paaren, mit großen SL und TP, TP ist 2 mal größer als SL, gesetzt durch Unterstützungs- und Widerstandsniveaus, .... Ich lasse Monitor bis zum Abend.

Abends: ca. 55-60% der Trades, Eigenkapital ist im Gewinn... Ich schließe fast alle... Ich behalte einige von ihnen und verteile sie auf die einzelnen Stufen...

Warum... Echtes Konto:Ich mache den Morgen - danach gibt es keinen Abend wie auf demo..... Ich gehe für eine Stunde oder zwei... Sobald ich einen Gewinn sehe, schließe ich... dann mache ich eine brutale Durchschnittsberechnung.... ...dann warte ich auf den Abschluss der Durchschnittsreihe... obwohl der Gewinn in der Demo prozentual größer ist als die Einlage... auch ohne Durchschnittsbildung...

Ich verstehe, dass der psychologische Faktor verhindert, dass ich ... Gier ... Angst vor sogar 300 ppm zu verlieren ... Was muss ich tun? Vergessen Sie das echte Konto?

 
demlin:
Der Experte handelt mit mehreren Instrumenten zur gleichen Zeit
///// Есть некий массив торгуемых инстурментов
string symbolfotrade[] = {"EURUSD", .........}
///// Массив флагов
bool isTradedClosed[] = {false, .....}
bool isTradedOpen[]   = {false, .....}
//// Общая переменная
bool isAllTraded = false;
int  isTradedCount = 0;
start()
  {
   symbfotradeCount = ArraySize(symbolfotrade);
   вначале перебор закрытых ордеров. С конца в начало
   if (!isAllTraded)
     {
      
      Перебор массива торгуемых инструментов
        {
          if (isTradedClosed[i]) continue;


           Перебор закрытых ордеров  с конца в начало
             { 

              Если (символ равен symbolfotrade[i]) то {isTradedClosed[i] = true; isTradedCount++; break}
             {
        }
      Если isTradedCount==symbfotradeCount то  isAllTraded = true; ///// Чтобы не лазать по массивам
     }
   /// ОБнуляем
   ArrayInicialized(isTradedOpen, false);
   Потом перебор по открытым ордерам
     {
       Если (симвло равен symbolfotrade[i]) то isTradedOpen[i] = true;
     }   

   Все теперь если (isTradedOpen[i] = труе и isTradedClosed[i] = труе) то ордер открыт, при этом было закрытие по этому инструменту symbolfotrade[i] ранее.
  

   Только после остальные расчеты

   

  }
 
butthead:

... zu vergessen, dass die wirkliche Punktzahl...?


Das ist die Antwort.
 
Helfen Sie mir, den Code zu verstehen. Ich weiß nicht, wie ich den Zustand richtig beschreiben soll.

Hier ist ein Teil des Expert Advisors.


total=OrdersTotal();

if(total<1)

{

while (d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2) //Пока это условие выполняется открывать только селл при таком условии (iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0.7)&&(iRSI(NULL,0,rsi_period,PRICE_CLOSE,0)<0.7)) -какой оператор использовать и как его оформить?
{
OrderSend(Symbol(), OP_SELL, lots, NormalizeDouble(Bid, Digits), 3, /*Ask+10*Point*/0, /*Bid-10*Point*/0, "ADX sell", magic, 0, CLR_NONE);
}

while (d_pl_1>d_mn_1 && (d_pl_0-d_mn_0)>=2) // Пока это условие выполняется открывать только Бай при таком условии (iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)<0.3)&&(iRSI(NULL,0,rsi_period,PRICE_CLOSE,0)>0.3)) - какой оператор использовать и как его оформить?
{
OrderSend(Symbol(), OP_BUY, lots, NormalizeDouble(Ask, Digits), 3, /*Bid-10*Point*/0, /*Ask+10*Point*/0, "ADX buy", magic, 0, CLR_NONE);

}
}
}
}
Können Sie mir sagen, wie man es richtig macht?
 
extralifes:

Helfen Sie mir, den Code zu verstehen. Ich weiß nicht, wie ich den Zustand richtig beschreiben soll.

Hier ist ein Teil des EA.
Подскажите как это правильно оформить?

Beginnen Sie mit der Lektüre von https://book.mql4.com/ru/operators/if