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

 

Hallo!

Ich bitte um die Hilfe von Fachleuten.

Bitte beraten Sie mich, wie man die Funktion des Neuzeichnens der Linien nach dem Erscheinen einer neuen Kerze implementieren kann. und für verschiedene Zeitrahmen.

Die Idee des Indikators ist sehr einfach - er betrachtet das Hoch und das Tief der vorherigen Kerze und addiert 50 Punkte zum Hoch und 50 Punkte zum Tief.

Ich danke Ihnen.

Dateien:
help.mq4  1 kb
 
Zhunko:
Die Bibliothek. Die Bibliothek bietet alles, was man dafür braucht. Abschnitte 4.3 und 4.6.


Vadim: Anekdote.

Der Zootechniker besamt die Kühe mit einer Spritze und geht wieder. Eine schöne Frau wartet am Ausgang und bittet um einen Kuss.

 
neon51r:

Hallo!

Ich bitte um die Hilfe von Fachleuten.

Bitte beraten Sie mich, wie man die Funktion des Neuzeichnens der Linien nach dem Erscheinen einer neuen Kerze implementieren kann. und für verschiedene Zeitrahmen.

Die Idee des Indikators ist sehr einfach - er betrachtet das Hoch und das Tief der vorherigen Kerze und addiert 50 Punkte zum Hoch und 50 Punkte zum Tief.

Ich danke Ihnen.



Das ist aus einem Lehrbuch.

//--------------------------------------------------------------------
// userindicator.mq4 
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
#property indicator_chart_window    // Индик. рисуется в основном окне
#property indicator_buffers 2       // Количество буферов
#property indicator_color1 Blue     // Цвет первой линии
#property indicator_color2 Red      // Цвет второй линии
 
double Buf_0[],Buf_1[];             // Объявление массивов (под буферы индикатора)
//--------------------------------------------------------------------
int init()                          // Специальная функция init()
  {
   SetIndexBuffer(0,Buf_0);         // Назначение массива буферу
   SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Стиль линии
   SetIndexBuffer(1,Buf_1);         // Назначение массива буферу
   SetIndexStyle (1,DRAW_LINE,STYLE_DOT,1);// Стиль линии
   return;                          // Выход из спец. ф-ии init()
  }
//--------------------------------------------------------------------
int start()                         // Специальная функция start()
  {
   int i,                           // Индекс бара
       Counted_bars;                // Количество просчитанных баров 
//--------------------------------------------------------------------
   Counted_bars=IndicatorCounted(); // Количество просчитанных баров 
   i=Bars-Counted_bars-1;           // Индекс первого непосчитанного
   while(i>=0)                      // Цикл по непосчитанным барам
     {
      Buf_0[i]=High[i]+50*Point;             // Значение 0 буфера на i-ом баре
      Buf_1[i]=Low[i]-50*Point;              // Значение 1 буфера на i-ом баре
      i--;                          // Расчёт индекса следующего бара
     }
//--------------------------------------------------------------------
   return;                          // Выход из спец. ф-ии start()
  }
//---------------------------------------------------------------------
 

Hilfe bei der Syntax

int k=OrdersTotal();

//+---Aufträge setzen, wenn keine Aufträge vorhanden sind
if (k==0) {OrderSend(Symbol(),OP_BUYSTOP,v,PriceBs+Tp*Point,0,Sl,PriceBs+2*Tp*Point,NULL,mn,0,Red)

OrderSend(Symbol(),OP_SELLSTOP,v,PriceSs-Tp*Point,0,Sl,PriceSs-2*Tp*Point,NULL,mn,0,Gold) ; }


Werden beide Bestellungen aufgegeben oder nur eine?

Ich brauche Eulen, um zwei ausstehende Aufträge zu platzieren, wenn es keine Aufträge gibt

 
sdm:

...

Werden beide Optionsscheine ausgestellt oder nur einer?



Es werden 0, 1 oder 2 Aufträge erteilt.
 
neon51r:

Hallo!

Ich bitte um die Hilfe von Fachleuten.

Bitte beraten Sie mich, wie man die Funktion des Neuzeichnens der Linien nach dem Erscheinen einer neuen Kerze implementieren kann. und für verschiedene Zeitrahmen.

Die Idee des Indikators ist sehr einfach - er betrachtet das Hoch und das Tief der vorherigen Kerze und addiert 50 Punkte zum Hoch und 50 Punkte zum Tief.

Ich danke Ihnen.


Sobald die neue Kerze eintrifft, wird sie neu gezeichnet.

 
Integer:

Es werden 0, 1 oder 2 Aufträge sein.

es müssen beide Aufträge eingegeben werden, wenn es keine Aufträge gibt

Laut der Anleitung sieht es so aus, als würde es die erste Bestellung aufgeben und die zweite nur, wenn es Aufträge gibt, aber wie soll ich es dazu bringen, dass es beide Bestellungen aufgibt, wenn die Bedingung erfüllt ist, und keine, wenn die Bedingung nicht erfüllt ist?

 
sdm:

Ich brauche es, um beide Aufträge zu platzieren, wenn es keine Aufträge gibt.

oder ich habe die Bedingung nicht richtig eingestellt? ich verstehe nicht, wie es funktioniert, wenn in der Anleitung sieht es so aus, als ob es die erste Bestellung und die zweite nur, wenn es Aufträge, aber wie sollte ich machen es platzieren beide, wenn die Bedingung erfüllt ist und keine, wenn die Bedingung nicht erfüllt ist


Mit der Bedingung, dass beide Anträge gestellt werden, ist alles in Ordnung, aber niemand kann garantieren, dass sie auch ausgeführt werden.
 

int x=0, a=0, b=0

wenn (x==0) {

}

Was muss ich in Klammern schreiben, damit a den Wert 1 und b den Wert 1 annimmt?

 
sdm:

int x=0, a=0, b=0

wenn (x==0) {

}

Was muss ich in Klammern schreiben, damit a den Wert 1 und b den Wert 1 annimmt?


Am einfachsten ist es, {a=1; b=1} zu schreiben, aber man kann auch eine schöne mehrseitige Formel erfinden, um sie zu berechnen, wenn man das wirklich will.