Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 457

 
ein wenig falsch in der Beschreibung auf den ersten ... es sollte zeichnen, wenn es in 1/3 schließt
 
Leute, ist das Update schon draußen?
 
Ich habe eine Frage zu Indikatoren mit Stochastik auf den Ebenen 20 und 80. Oder MACD mit Niveau 0.
so die Frage ist, wie man den Wert des Indikators zu nehmen, wenn es unter 20 oder über 80, die Hauptlinie und die Signallinie ist.oder hinter diesen Ebenen gekreuzt.Indikator-Werte, ich glaube, ich habe, aber dann, was mit ihnen zu tun nicht wissen.

Stoh=iStochastic(Symbol(),PERIOD_H1,Kperiod,Dperiod,Verlangsamung,MODE_SMA,0,MODE_MAIN,0);
StohSignal=iStochastic(Symbol(),PERIOD_H1,Kperiod,Dperiod,Verlangsamung,MODE_SMA,0,MODE_SIGNAL,0)

Macd=iMACD(Symbol(),PERIOD_H4,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_MAIN,0);
MacdSignal=iMACD(Symbol(),PERIOD_H4,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_SIGNAL,0);
 
denis77515:
Meine Herren Programmierer, erklären pliz stochastischen Indikatoren haben Ebenen 20, 80. Oder MACD mit Niveau 0.
Ich glaube, ich habe den Indikatorwert erhalten, aber ich weiß nicht, was ich damit tun soll.

Stoh=iStochastic(Symbol(),PERIOD_H1,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_MAIN,0);
StohSignal=iStochastic(Symbol(),PERIOD_H1,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_SIGNAL,0);

Macd=iMACD(Symbol(),PERIOD_H4,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_MAIN,0);
MacdSignal=iMACD(Symbol(),PERIOD_H4,fast_ema_period,slow_ema_period,signal_period,PRICE_CLOSE,MODE_SIGNAL,0);


Studienführer

obwohl es wahrscheinlich zu spät ist, aktualisieren wir heute.

Beispiel aus dem Lernprogramm

//--------------------------------------------------------------------
// grafobjects.mq4
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
int start()                            // Спец. функция start
  {
//--------------------------------------------------------------- 1 --
   int Sit;
   double MACD_M_0,MACD_M_1,           // Главная линия, 0 и 1 бар
   MACD_S_0,MACD_S_1;                  // Сигнальная линия, 0 и 1 бар
   string Text[4];                     // Объявление строков. массива
   color  Color[4];                    // Объявление массива цветов

   Text[0]= "Открытие Buy";            // Текст для различных ситуаций
   Text[1]= "Открытие Sell";
   Text[2]= "Удерживаем Buy";
   Text[3]= "Удерживаем Sell";

   Color[0]= DeepSkyBlue;              // Цвет объекта ..
   Color[1]= LightPink;                // .. для различных ситуаций
   Color[2]= Yellow;
   Color[3]= Yellow;
//--------------------------------------------------------------- 2 --
   ObjectCreate("Label_Obj_MACD", OBJ_LABEL, 0, 0, 0);// Создание объ.
   ObjectSet("Label_Obj_MACD", OBJPROP_CORNER, 1);    // Привязка угол
   ObjectSet("Label_Obj_MACD", OBJPROP_XDISTANCE, 10);// Координата Х
   ObjectSet("Label_Obj_MACD", OBJPROP_YDISTANCE, 15);// Координата Y
//--------------------------------------------------------------- 3 --
   MACD_M_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);  // 0 бар
   MACD_S_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);// 0 бар
   MACD_M_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);  // 1 бар
   MACD_S_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
//--------------------------------------------------------------- 4 --
   // Анализ ситуации 
   if(MACD_M_1<MACD_S_1 && MACD_M_0>=MACD_S_0)// Персеч. снизу вверх
      Sit=0;
   if(MACD_M_1>MACD_S_1 && MACD_M_0<=MACD_S_0)// Персеч. сверху вниз
      Sit=1;
   if(MACD_M_1>MACD_S_1 && MACD_M_0>MACD_S_0) // Главная выше сигн.
      Sit=2;
   if(MACD_M_1<MACD_S_1 && MACD_M_0<MACD_S_0) // Главная ниже сигн.
      Sit=3;
//--------------------------------------------------------------- 5 --
   // Изменение свойств объекта
   ObjectSetText("Label_Obj_MACD",Text[Sit],10,"Arial",Color[Sit]);
//--------------------------------------------------------------- 6 --
   return;                             // Выход из start()
  }
//--------------------------------------------------------------- 7 --
int deinit()                           // Спец. функция deinit
   {
   ObjectDelete("Label_Obj_MACD");     // Удаление объекта
   return;                             // Выход из deinit()
   }
//--------------------------------------------------------------- 8 --
 
double close_price(int nomer_bara)
{
if(nomer_bara<1)
{
Alert("нельзя анализировать текущий бар");
}
else
{
if(iClose(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)<iHigh(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)/3)//возвращает 1/3 если цена текущего бара закрылась ниже 1/3 его спреда 
{
return(1/3);
}
if(iClose(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)>iHigh(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)/3&&(iClose(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)<iHigh(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)*2)/3)//возвращает 2/3 если цена текущего бара закрылась ниже 2/3 и выше 1/3 его спреда 
{
return(2/3);
}

if((iClose(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)>(iHigh(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara))*2)/3&&iClose(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara)<iHigh(Symbol(),NULL,nomer_bara)-iLow(Symbol(),NULL,nomer_bara))//возвращает 1 если цена текущего бара закрылась выше 2/3 его спреда
{
return(1);
}
}

}

 if(close_price(1)==1/3)// в случае если цена закрылась внизу то нарисовать линию на этом баре
   {
 SetVLine(Red, "", Time[1], STYLE_SOLID, 2);
   }
и так вся проблема заключается в том что линия рисуется на каждом баре не пойму какого черта... помогите пожалуйста
die Linie sollte an dem Balken gezogen werden, an dem der Kurs unten geschlossen hat, d.h. 1/3 Balken
 

Hallo! Ich werde Windows neu installieren, aber wenn ich den EAs-Ordner auf die Festplatte verschiebe, sind die kürzlich geschriebenen EAs weg! Haben Sie einen Rat, was zu tun ist?

*Ich kann den Code nicht in einem Dokument speichern und dann neu erstellen, weil es sehr viele davon gibt und ich keine Daten wegen eines möglichen menschlichen Faktors verlieren möchte :)

 
Guten Tag! Bitte helfen Sie mir!!! Der Programmierer, der den Expert Advisor geschrieben hat, ist verschwunden... Ich musste ihn selbst fertigstellen... Ich musste es selbst umschreiben, und ich muss noch eine Funktion implementieren. Mein Expert Advisor arbeitet mit Durchbrüchen von Unterstützungs- und Widerstandsniveaus + Fibo-Niveaus als zweites Signal bzw. in Fibo. Als Ergebnis erhalte ich ein Signal, aber es hat nicht funktioniert, weil es Einschränkungen gab oder nicht genug Punkte, um den minimalen Take Profit festzulegen. Bitte um Hilfe, Ratschläge oder einen Link zu advisor.... Ich suche nach einer Beschränkung für den Einstieg in den Handel. Um zu kaufen, muss der Preis das Niveau nur von unten nach oben durchbrechen, und um zu verkaufen, von oben nach unten. Vielen Dank im Voraus!!!!!
 

Leute, bitte helft mir, es gibt eine Funktion, die das Lot des letzten offenen Auftrags (der noch nicht geschlossen ist) zurückgibt. Können Sie ihn so ändern, dass er das Los des vorletzten offenen Auftrags (der auch noch nicht geschlossen ist) zurückgibt? Tun Sie es einfach, ohne Arrays zu verwenden...

double FindLastLots (int otype)
{
  double oldopenprice,oldlots;
  int oldticket;
  
  ticket = 0;
  
  for (int i = OrdersTotal()-1; i>=0; i--)
  {
    if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES)) 
    {
      if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType() == otype)
      {
         oldticket = OrderTicket();
         if (oldticket>ticket)
         {
            oldlots = OrderLots();
            ticket = oldticket; 
         } 
      }  
    }
  }
  return (oldlots);
}
 
Trader7777:

Leute, bitte helft mir, es gibt eine Funktion, die das Lot des letzten offenen Auftrags (der noch nicht geschlossen ist) zurückgibt. Können Sie ihn so ändern, dass er das Los des vorletzten offenen Auftrags (der auch noch nicht geschlossen ist) zurückgibt? Tun Sie es einfach, ohne Arrays zu verwenden...

Sie haben hier auch keine Arrays. Der Code ist nicht sehr zuverlässig. Sie suchen nach dem letzten Auftrag in der Liste der offenen Aufträge. IMHO ist die Bindung daran nicht sehr zuverlässig. Die zuverlässigste Methode, den letzten offenen Auftrag zu finden, ist die Öffnungszeit (sie ist die niedrigste von allen)
 
Gibt es einen Trick, um die Trendlinie mit einem Hotkey aufzurufen?
Grund der Beschwerde: