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

 
gince:
Dieser Wert stammt aus Moving Average.mq4
Sie müssen den Code selbst geändert haben, und jetzt verlassen Sie sich auf dieses Zeug)
 
Techno:
Es gab keine derartigen Zeichenfolgen )) Sie müssen den EA-Code vor einiger Zeit selbst geändert haben, und jetzt werden Sie von diesen Einträgen selbst geleitet )


Entschuldigung, vielleicht habe ich das falsch verstanden. Ich habe meinen Code auf Moving Average.mq4 aufgebaut und Änderungen daran vorgenommen.

Ich bin kein Russe und manchmal fällt es mir schwer zu beschreiben, was ich will.

 
gince:


Ich bin kein Russe und manchmal fällt es mir schwer zu beschreiben, was ich will.

Aber solange Sie nicht beschreiben, was Sie wollen, ist es schwierig, Ihnen zu helfen.
 
abolk:
Aber solange Sie nicht beschreiben, was Sie wollen, ist es schwer, Ihnen zu helfen.


Sie haben zwei Signale

double tr0=iCustom(NULL,0, "trd",0,0);//kann 0 oder 1 sein . Wenn 1, dann kaufen
double tr1=iCustom(NULL,0, "trd",1,0);//kann 0 oder 1 sein. Wenn 1 wir verkaufen

Ich werde über den Verkauf sprechen

Wenn tr1 nach dem nächsten Tick gleich 1 ist, beginnt die Prüfung zum Zeitpunkt t, um zu sehen, ob die Einheit seit t für die Zeitspanne tim hält. Die Prüfung erfolgt in Intervallen von Zeit-Delta. Als Beispiel nehmen wir t=........ //10.00 Uhr, tim = 600 sec, delta = 60 sec. Um 10.00 Uhr ist also tr1=1 (vorher war es 0). Aber wir werden es nicht verkaufen. Der Verkauf wird bestätigt, wenn das Signal 600 Sekunden erreicht, d.h. 10,10. Die Prüfung wird nicht ständig durchgeführt, sondern in Zeitintervallen von delta=60 Sekunden (10.00, 10.01, 10.02, ....... , 10.09, 10.10). Und wenn bei jeder Prüfung tr1=1, dann geben wir ein Verkaufssignal.

Es gibt auch einen Nachteil: Zwischen den einzelnen Prüfungen können Nullen auftreten, und das Signal kann falsch sein. Die Kontrollen können vereinfacht werden, aber der Computer ist sehr beschäftigt. In diesem Fall sollten Sie die goldene Mitte finden und sehen, was passiert. Das ist alles nur zum Experimentieren.


 
gince:


Es gibt zwei Signale

double tr0=iCustom(NULL,0, "trd",0,0);//kann 0 oder 1 sein . Wenn 1 wir kaufen
double tr1=iCustom(NULL,0, "trd",1,0);//kann 0 oder 1 sein. Wenn 1 wir verkaufen


Es ist nicht klar, ob zwei verschiedene (widersprüchliche) Signale gleichzeitig empfangen werden können.

 
abolk:

Es ist nicht klar, ob zwei verschiedene (widersprüchliche) Signale gleichzeitig empfangen werden können.


Nein, das ist es nicht. Sie werden aus verschiedenen Puffern genommen und nur einer von ihnen kann einen bekommen. Mögliche Kombinationen

tr0 0 1 0

tr1 0 0 1

1 und 1 ist eine unmögliche Kombination

 
void init()
{
  isSign=false;
}

void start() // запускается с каждым тиком
{
   if(!isSign) // если сигнала нет
   {
      sign0=???; // формула определения sign
      if(sign0==1) // если сигнал поступил
      {
         t0=TimeCurrent(); //фиксируем время
         isSign=true; // переключатель - сигнал поступил
      }
   }
   if(isSign) // если сигнал есть
   {
      t=TimeCurrent(); // новое время
      if(t<=t0+delta) // если временной промежуток не закончился
      {
         sign1=???; //формула определения нового сигнала
         if(sign1!=sign0) // если новый сигнал изменился (не продержался)
         {
            isSign=false; // переключатель - сигнала нет
         }
      }
      if(t>t0+delta) // если промежуток закончился
      {
         if(isSign) // если сигнал удержался
         {
            //действия по сигналу
         }
      }
   }
}

Kontrolle bei jedem Ticken, nicht in diskreten Abständen

Entschuldigung, wenn ich einen Fehler gemacht habe.

 
gince:


Nein, das kann sie nicht. Sie werden aus verschiedenen Puffern entnommen, und nur einer von ihnen kann 1 ergeben. Mögliche Kombinationen

tr0 0 1 0

tr1 0 0 1

1 und 1 ist eine unmögliche Kombination

Signal == 1.

aktivieren Sie den Überbrückungstimer.

wenn Signal == 1. den Überbrückungstimer nicht setzen.

wenn Signal == -1, dann wird der Kauf-Timer zurückgesetzt und der Kauf-Timer auf Kaufen gesetzt.

wenn das Signal == -1. den Verkaufstimer nicht berühren.

wenn das Signal 0 ist, werden beide Timer auf Null gesetzt.

Wenn der Timer 5 Minuten herunterzählt, sind wir startklar.

 
neama:


Das Signal sig_bye== 1. Bei 0 wird der Timer nicht gestartet
den Bojen-Timer einstellen.
Wenn das Signal ==1 ist, bleibt der Zeitgeber für die Bucht inaktiv.
Wenn das Signal sig_bai== 0. ist, wird der Zeitgeber für die Bucht zurückgesetzt.

Der Timer zählt 5 Minuten in Intervallen von, sagen wir, zweimal einer Minute herunter, wir arbeiten also in Bai.

Wenn das Signal sig_beam erlischt== 1. Wenn 0, wird der Timer nicht gestartet.
schalten Sie den Timer sel.
Wenn das Signal Sat_en_esel==1 ist, bleibt der Sleep-Timer inaktiv.
Wenn ein Sig_sel==0-Signal eintrifft, wird der Selbstauslöser zurückgesetzt.
Der Timer zählt 5 Minuten lang in Abständen von einer Minute herunter, z. B. zweimal pro Minute, und setzt sich dann zurück.



 
abolk:

Kontrolle bei jedem Ticken, nicht in diskreten Abständen

Entschuldigung, wenn ich einen Fehler gemacht habe.


Alle Zecken sind inakzeptabel.

Grund der Beschwerde: