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

 
ILL:
Alle eben((((
Entschuldigung, ich bin durcheinander gekommen - Sie sollten dort eine 1 eintragen, dann ist es richtig. Ich meine, dass der Schlusskurs auf dem Diagramm mit dem Kurs in der Funktion übereinstimmen wird.
 
khorosh:
Entschuldigung, ich bin durcheinander gekommen - Sie müssen dort eine 1 eintragen, dann ist es richtig. Ich meine, dass der Schlusskurs auf dem Diagramm mit dem Kurs in der Funktion übereinstimmen wird.

HOORAY! Es funktioniert!!!!

Herzlichen Dank!

 

Probieren Sie es aus!

//+------------------------------------------------------------------+
//| скорость.mq4 |
//| Copyright © 2011, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern double razniza=20;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
double HIGH;double LOW;
int start()
{ HIGH=iHigh( NULL, PERIOD_M1, 0) ;
LOW=iLow( NULL, PERIOD_M1, 0);if (HIGH-LOW>razniza*Point || LOW-HIGH<0-razniza*Point)
Alert("Движение!!!",Symbol() );



// PERIOD_M1;PRICE_HIGH;PRICE_LOW;double High[];iHigh( NULL, PERIOD_M1, 0) ; iLow( string symbol, int timeframe, int shift) ;

//----

//----
return(0);
}
//+------------------------------------------------------------------+
 
Dimka-novitsek:

Probieren Sie es aus!

Wow!
 
Dankeschön!!!!!
 
Zhunko:

Na endlich! Lesen Sie hier darüber. Nur im Expert Advisor und in den Skript-Startfunktionen mit Warten. An allen anderen Orten ist sie streng verboten.

Ihr Code entspricht nicht den Standards von MQL4. Außerdem wurde irgendwo geschrieben, dass die Wartezeit in den Funktionen ininit und deinit während eines Systemaufrufs auf 2,5 Sekunden begrenzt ist. Dann wird die Funktion zwangsweise abgebrochen.

Alles funktioniert. Hier ist der Code für das Echtzeit-Mini-System. Außerhalb der Funktion start(). Obwohl es natürlich absolut nicht prinzipiell ist, es in init() einzubauen.

Im Folgenden wird der Code auf dem Arbeitsterminal überprüft; der Auftrag wird geöffnet und alle Meldungen werden in das Nachrichtenfenster geschrieben. Funktion Sleep() auch

Die Funktion Sleep() funktioniert auch gut, ich habe sie mit 30 Sekunden Wartezeit getestet - Sleep(30000). Obwohl eine solche Wartezeit absolut unnötig ist, sind 50 ms ausreichend.

//--- input parameters
  extern int       int10 = 10; // вызов процедуры каждые 10 сек.
  extern int       int30 = 30; // вызов процедуры каждые 30 сек.
  extern int       int60 = 60; // вызов процедуры каждые 60 сек.                

  int  orders; // кол-во открытых ордеров

int init()
  {
   bool end = 1; // для завершения работы установить в false
   
   bool f_int10 = 1; // флаг разрешающий прерывание int10
   bool f_int30 = 1; // флаг разрешающий прерывание int30
   bool f_int60 = 1; // флаг разрешающий прерывание int60
   
   
   int  St_Time_10; // стартовое время отсчета 10 сек;
   int  St_Time_30; // стартовое время отсчета 30 сек;
   int  St_Time_60; // стартовое время отсчета 60 сек;
   
   St_Time_10 = TimeLocal();
   St_Time_30 = TimeLocal();
   St_Time_60 = TimeLocal();
   
   

//-----------------------------основной цикл программы--------------------------------
   while(end)
     {
       Sleep (50);
       if ((TimeLocal()==(St_Time_10 + int10))&&f_int10) {St_Time_10 = TimeLocal(); Call_int10();}
       if ((TimeLocal()==(St_Time_30 + int30))&&f_int30) {St_Time_30 = TimeLocal(); Call_int30();}
       if ((TimeLocal()==(St_Time_60 + int60))&&f_int60) {St_Time_60 = TimeLocal(); Call_int60();}
       RefreshRates();
      }  
   return(0);
  }
//-----------------------------конец основного цикла----------------------------------
//--------------------процедура вызываемая по прерыванию int10------------------------
  void Call_int10()
        {
          Alert ("Прерывание = 10 сек. Котировка >>>>", Close[0]);
        }
//------------------------------------------------------------------------------------
//--------------------процедура вызываемая по прерыванию int30------------------------
  void Call_int30()
        {
        Alert ("Прерывание === 30 сек.  В резерве.");
        }
//------------------------------------------------------------------------------------
//--------------------процедура вызываемая по прерыванию int60------------------------
  void Call_int60()
 {
        Alert ("Прерывание ===== 60 сек");
        if (orders!=0) return;
        if (OrdersTotal( ) == 0) {
            OrderSelect(1, SELECT_BY_POS, MODE_TRADES);
            int ticket = OrderSend(Symbol(), OP_BUY, 0.01, Ask, 3, 0, 0, "from init()",123,Blue);
                              if (ticket<0)
                                       {
                                         Alert("OrderOpen BUY failed, with error #",GetLastError()); return;
                                       }      
        Alert (" Открытие ордера BUY из init() прошло успешно");                 
        orders++;              
                                  }
 }
//------------------------------------------------------------------------------------
//---------------------------эти функции не используются------------------------------
int start()  {return(0);}
//--------------------------------------------
int deinit() {return(0);}
//--------------------------------------------
 

Frage zu Arrays.

Es gibt drei eindimensionale Arrays:

1. закрытие бара

Close[i]={Close_1,Close_2,...,Close_i};

2. открытие бара

Open[i]={Open_1,Open_2,...,Open_i};

3. его индекс

Index[i]={1, 2, ..., i};

Задача: необходимо организовать двумерный массив mas[i,2], отвечающий условиям

mas[i,0]= |Close_i-Open_i|;

mas[i,1]=i;

Как это правильно сделать?

Bitte helfen Sie mir bei dieser Frage.
 
Ich habe folgendes Problem, ich habe mich gestern auf MT4 registriert, ich habe angefangen, mich einzuarbeiten und auf Demo zu experimentieren. Ich beschloss, weiter zu studieren MT4 am Morgen, aber das Diagramm gestoppt zum Zeitpunkt der 6. Mai 23:57, ich habe nicht versucht, den Computer neu zu starten oder das Programm neu installieren, was zu tun ist?
 

Arthibald:
1. У меня такая проблема, вчера зарегистрировался на МТ 4, начал ознакамливатся и эксперементировать на демо. С утра решил продолжить изучать МТ4, но графики остановились на отметке времени 6 мая 23:57, ни помогает ни перезагрузка компа, не переутановка программы,...

2.... was ist zu tun?


1. Die Welt ist zusammengebrochen, der Markt ist im Aufwind - schauen Sie auf den Wochentag... :-)) ALLE NORMALEN MENSCHEN HABEN AM WOCHENENDE FREI... :-)))

2. ausruhen... :-)))

 
Roman.:


1. Die Welt ist zusammengebrochen, der Markt ist im Aufwind - schauen Sie auf den Wochentag...:-)) ALLE NORMALEN MENSCHEN HABEN AM WOCHENENDE FREI... :-)))

2. ausruhen...:-)))

Danke :-) Ich schätze, ich bin aus dem Schneider, aber so ist es nun mal :-).
Grund der Beschwerde: