[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 371

 
ILL :
그것은 중요하지 않습니다((((
죄송합니다. 혼동했습니다. 거기에 1을 입력하면 정확할 것입니다. 어떤 의미에서 차트의 마감/종가 가격은 함수의 가격과 일치합니다.
 
khorosh :
죄송합니다. 혼동했습니다. 거기에 1을 입력하면 정확할 것입니다. 어떤 의미에서 차트의 마감/종가 가격은 함수의 가격과 일치합니다.

만세! 벌었다!!!!

매우 감사합니다!

 

확인 해봐!

 //+------------------------------------------------------------------+
//| скорость.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 :

확인 해봐!

우와!
 
감사해요!!!!!
 
Zhunko :

드디어! 여기에서 읽어보십시오. Expert Advisor 및 스크립트 시작 시에만 예상 작동으로 작동합니다. 다른 모든 곳에서는 엄격하게 억제됩니다.

코드가 MQL4 언어의 표준을 충족하지 않습니다. 또한 시스템 호출 중 init 및 deinit 기능의 대기 시간이 2.5초로 제한된다고 어딘가에 기록되어 있습니다. 그런 다음 함수가 강제로 종료됩니다.

모든 것이 작동합니다. 다음은 미니 실시간 시스템의 코드입니다. start() 함수 외부. 물론 init()에 넣는 것은 절대적으로 중요하지 않습니다.

다음은 작업 터미널에서 테스트한 코드입니다. 주문이 열리고 모든 경고가 메시지 창에 기록됩니다. Sleep() 함수는 동일합니다.

훌륭하게 작동하며 최대 30초 동안 테스트되었습니다. 대기 - 절전(30000). 이러한 기대는 완전히 쓸모가 없지만 50ms이면 충분합니다.

 //--- 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 );}
//--------------------------------------------
 

배열 질문입니다.

3개의 1차원 배열이 있습니다:

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;

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

이 문제를 해결할 수 있도록 도와주세요.
[Deleted]  
그런 문제가 있습니다. 어제 MT 4에 등록하고 자신을 익히고 데모를 실험하기 시작했습니다. 아침에 MT4 공부를 계속하기로 했으나 5월 6일 23시 57분 시점에서 차트가 멈춰서 컴퓨터를 재부팅도 프로그램 재설치도 안되는데 어떻게 해야 하나요?
 

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

2....어떻게 할까요?


1. 세계가 무너지고 시장이 상승했습니다 - 요일을 보세요 ... :-))) 모든 일반 사람들 을 위한 주말 ... :-) ))

2. 휴식 ... :-)))

[Deleted]  
Roman. :


1. 세상이 무너지고 시장이 일어섰습니다 - 요일을 보세요... :-))) 모든 일반 사람들 을 위한 주말... :-) ))

2. 휴식 ... :-)))

감사합니다 :-) 캠페인을 어닐링했습니다.