[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 192

 

Guten Tag, meine Herren.

Ich brauche Ihren Rat zu dieser Frage:

Ich schreibe gerade einen EA und bin auf ein Problem gestoßen. Mein Expert Advisor soll jede Minute Berechnungen für eine bestimmte Anzahl von Minuten durchführen. Danach sollten alle Daten zurückgesetzt und die Berechnungen von Anfang an durchgeführt werden.

Und so geht es Zyklus für Zyklus weiter. Der Zeitzyklus reicht von 5 bis 60 Minuten. Bitte beraten Sie mich, wie ich dies im Code korrekt beschreiben kann.

Im Moment sieht die 5-Minuten-Schleife wie folgt aus:

if ((TimeMinute(TimeCurrent()))==time1)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time2)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time3)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time4)

Price20=koef_10;

if ((TimeMinute(TimeCurrent()))==time5)

Price20=koef_10;


Ich wäre für jede Hilfe dankbar.

 
Guten Tag! Was ist los?
вершина =Low[iHighest( NULL, int timeframe, MODE_HIGH, i, start ) 

'MODE_HIGH' - Variable erwartet C:\Program Files (x86)\FXstart - MetaTrader\experts\indicators\policyclics.mq4 (46, 52)

MODE_HIGH ist die Kennung aus der entsprechenden Tabelle è....

 
Warum brauchen Sie ein int vor dem Zeitrahmen?
 
Danke, es ist ein Lauf!!!
 
Ja, das ist richtig, DANKE!!!
 
extralifes:

Guten Tag, meine Herren.

Ich brauche Ihren Rat zu dieser Frage:

Ich schreibe gerade einen EA und bin auf ein Problem gestoßen. Mein Expert Advisor soll jede Minute Berechnungen für eine bestimmte Anzahl von Minuten durchführen. Danach sollten alle Daten zurückgesetzt und die Berechnungen von Anfang an durchgeführt werden.

Und so geht es Zyklus für Zyklus weiter. Der Zeitzyklus reicht von 5 bis 60 Minuten. Bitte beraten Sie mich, wie ich dies im Code korrekt beschreiben kann.

Im Moment sieht die 5-Minuten-Schleife wie folgt aus:

Ich wäre für jede Hilfe dankbar.


Ich schlage diese Lösung vor:

//+------------------------------------------------------------------+
//|                                             Circle X Minutes.mq4 |
//|                                             Copyright 2012, Roll |
//|                                https://www.mql5.com/ru/users/roll |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, Roll"
#property link      "https://www.mql5.com/ru/users/roll"
extern int minut=5;datetime t;int k;
//+------------------------------------------------------------------+
int init(){t=0;k=minut;return(0);}int deinit(){return(0);}
//+------------------------------------------------------------------+
int start(){if(k>60)k=0;if(k==0)return(0);F1();if(k>0){if(F()==true)k--;}return(0);}
void F1(){if(t==0&&TimeSeconds(TimeCurrent())>=0)
  {Alert("цикл из ", minut," минут - УСТАНОВКА: время сервера - ",TimeToStr(TimeCurrent(),
   TIME_SECONDS));t=TimeCurrent();}}
bool F(){if(t!=0&&t<TimeCurrent()&&TimeSeconds(TimeCurrent())>=0)
  {Alert("цикл из ", minut," минут - ПРОВЕРКА: время сервера - ",TimeToStr(TimeCurrent(),
   TIME_SECONDS));t=TimeCurrent()+59;return(true);}} 
 
Roll:


Ich schlage diese Lösung vor:

Es funktioniert nicht. Hier ist ein Bildschirmfoto:

Das Timing scheint durcheinander zu sein + nach dem Ende des ersten Zyklus hat noch kein neuer begonnen.

 

Ich kann nicht herausfinden, wie ich die Lebensdauer von der Musterbildung bis 0 bar berechnen kann.

Wenn das Muster existiert und es keinen festen Bezug zu Preis und Zeit gibt.

 

Guten Tag, meine Herren.

Ich brauche Ihren Rat auf diese Frage: Wie in den Code des Expert Advisor zu schreiben, so dass aus dem Gleichgewicht war es einen vorbestimmten Betrag zu nehmen, sagen unsere Balance = $ 80 jedes Mal, wenn das Gleichgewicht = $ 80 + $ 10 Expert Advisor von der größten minus nahm $ 5, die Verringerung der Menge und das Schließen dieser 10 $ und einen neuen Bericht bei $ 85 gestartet

 
extralifes:

Es funktioniert nicht. Hier ist ein Bildschirmfoto:

Das Timing scheint durcheinander zu sein + nach dem Ende des ersten Zyklus hat noch kein neuer begonnen.


Wie wäre es mit einer anderen Option?

//+------------------------------------------------------------------+
//|                                      Circle_X _Minutes_v.2.mq4 |
//|                                             Copyright 2012, Roll |
//|                                https://www.mql5.com/ru/users/roll |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, Roll"
#property link      "https://www.mql5.com/ru/users/roll"
extern int minut=5;datetime t;int k;
//+------------------------------------------------------------------+
int init(){t=0;k=minut;return(0);}int deinit(){return(0);}
//+------------------------------------------------------------------+
int start(){F1();if(k>60)return(0);if(k==0){t=0;k=minut;F1();}if(k>0){Sleep(59*950);k--;
if(k!=0)Alert("цикл из ", minut," минут - ПРОВЕРКА: время - ",TimeToStr(TimeLocal(),TIME_SECONDS));
  t=TimeLocal()+59;}return(0);}
void F1(){if(t==0&&TimeSeconds(TimeLocal())>=0)
  {Alert("цикл из ", minut," минут - УСТАНОВКА: время - ",TimeToStr(TimeLocal(),TIME_SECONDS));t=TimeLocal();}}
Grund der Beschwerde: