포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 902

 
AlexeyVik :

PC--> MA는 PC-1> MA와 동일하다는 것을 이해했습니다.


그렇습니다! 이 번들에서 작동하지 않는 이유는 다음과 같습니다.

아래 사진처럼 보이지만


 if (PC-->MA && Ask == MA)
OrderSend ( "EURUSD" ,OP_BUY, 1 ,Ask, 3 ,Ask- 30 * Point , Ask+ 30 * Point );
 
inuboh :

그렇습니다! 다음과 같이 작동하지 않는 이유는 다음과 같습니다.

아래 사진처럼 보이지만


실수 비교에 대해 읽기
 
inuboh :

그렇습니다! 다음과 같이 작동하지 않는 이유는 다음과 같습니다.

아래 사진처럼 보이지만


거기에 맞는 것은 없습니다. 이전 틱에서 가격이 MA보다 높고 이 틱에서 가격이 이미 MA보다 낮은 경우가 자주 발생하지만 확실히 평등하지 않거나 너무 드물게 발생하여 아무도 본 적이 없습니다. 특히 테스트 틱에서. 그리고 차트에서 볼 수 없습니다. 음, 두 배의 가격에서 전체 단위를 뺀 다음 여기 " RS--> MA "와 같이 MA와 비교하는 것은 전혀 작동하지 않습니다. 그러한 비교는 결코 진실을 반환하지 않습니다.

 

모두에게 좋은 하루. 말하다...

지표를 쓰고 있습니다. 별도 창의 상단 표시기에서와 같이 녹색 화살표를 따라 가격과 같이 오른쪽에 새 데이터(틱 값)를 그려야 합니다.

교과서에서 표시기를 편집하고 있습니다. 왼쪽에 새 데이터(새 눈금 값)가 그려져 있습니다. 빨간색 화살표를 따라...

그들의 그림을 바꾸는 것을 돕습니다. 별도의 터미널 창의 상단 표시기에 가격과 같은 오른쪽에 있습니다. 덕분에.

 //--------------------------------------------------------------------
// separatewindow.mq4 
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
#property indicator_separate_window // Отображение в отдельном окне
#property indicator_buffers 1        // Количество буферов
#property indicator_color1 Blue     // Цвет первой линии
#property indicator_color2 Red       // Цвет второй линии
 
extern int History  = 100 ;           // Колич.баров в расчётной истории
//extern int Aver_Bars=5;             // Количество баров для расчёта
 
double Buf_0[];                     // Объявление индикаторного массива
int Count= 0 ;                         // Глобальная перемен.
//--------------------------------------------------------------------
int init()                           // Специальная функция init()
  {
   SetIndexBuffer ( 0 ,Buf_0);         // Назначение массива буферу
   SetIndexStyle ( 0 , DRAW_LINE , STYLE_SOLID , 2 ); // Стиль линии
   //--- установим индексацию для буфера как в таймсерии
   ArraySetAsSeries (Buf_0, true );

   return ( 0 );                           // Выход из спец. ф-ии init()
  }
//--------------------------------------------------------------------
int start()                         // Специальная функция start()
  {
   int i,                           // Индекс бара
   n,                               // Формальный параметр
   Counted_bars;                     // Количество просчитанных баров 
   double
   Sum_H,                           // Сумма значений High за период
   Sum_L;                           // Сумма значений Low  за период
//--------------------------------------------------------------------
 /*  Counted_bars=IndicatorCounted(); // Количество просчитанных баров 
   i=Bars-Counted_bars-1;           // Индекс первого непосчитанного
   if (i>History-1)                 // Если много баров то ..
      i=History-1;                  // ..рассчитывать заданное колич.
 while(i>=0)                      // Цикл по непосчитанным барам
     {
        Sum_H=0;                      // Обнуление в начале цикла
      Sum_L=0;                      // Обнуление в начале цикла
      for(n=i;n<=i+Aver_Bars-1;n++) // Цикл суммирования значений 
        {
         Sum_H=Sum_H + High[n];     // Накопление суммы макс.значений
         Sum_L=Sum_L + Low[n];      // Накопление суммы мин. значений
        }
      Buf_0[i]=(Sum_H-Sum_L)/Aver_Bars;// Знач. 0 буфера на i-ом баре
     
     
      i--;                          // Расчёт индекса следующего бара
      */
       double Price = NormalizeDouble (MarketInfo( _Symbol ,MODE_BID), Digits ); 
      Buf_0[Count] = Price;
                          
   Count++;                                     // Счётчик тиков
   Comment ( "Новый тик " ,Count, "   Цена = " ,Price); // Сообщение
     
    
//--------------------------------------------------------------------
   return ( 0 );                           // Выход из спец. ф-ии start()
  }
 
안녕하세요! 나 여기 처음이야. 누군가에게 알려주거나 MT4의 전체 기능을 사용하는 방법을 배울 수 있는 링크를 제공하세요.
 

안녕하세요!

문제:

티켓 = OrderSend(ㅋ,ㅋ,ㅋ,.......)

교과서, 문서, 기사 및 포럼을 검토한 후 I SAW - 티켓 변수 - 일부 는 OnTick() 함수 내부에 넣었습니다.

- 다른 사람들은 외부에 둡니다. before(외부로 만들기, did 및 stat-th)

- 일부는 그냥 선언합니다( int 티켓; )

- 다른 사람들은 0을 할당합니다(그냥 선언하는 것과 같습니다).

- 세 번째 할당 -1

중요한 경우(개별 사례 제외) 오류가 발생할 수 있습니다. 그렇다면 어떻게 옳은가요? ? ?

고맙습니다!

 
evillive :

거기에 맞는 것은 없습니다. 이전 틱에서 가격이 MA보다 높고 이 틱에서 가격이 이미 MA보다 낮은 경우가 종종 발생하지만 확실히 평등하게 발생하지는 않거나 너무 드물게 발생하여 아무도 본 적이 없습니다. 특히 테스트 틱에서. 그리고 차트에서 볼 수 없습니다. 음, 두 배의 가격에서 전체 단위를 뺀 다음 여기 " RS--> MA "와 같이 MA와 비교하는 것은 전혀 작동하지 않습니다. 그러한 비교는 결코 진실을 반환하지 않습니다.

이해했습니다, 감사합니다! 미래를 말하지 마세요. 예를 들어, 매도 가격이 이 선에 도달하면 매수 주문이 열리도록 규정하는 방법이 있습니다. ))
 
pavlo555 :
안녕하세요! 나 여기 처음이야. 누군가에게 알려주거나 MT4의 전체 기능을 사용하는 방법을 배울 수 있는 링크를 제공하세요.

 
inuboh :
이해했습니다, 감사합니다! 미래를 말하지 마세요. 예를 들어, 매도 가격이 이 선에 도달하면 매수 주문이 열리도록 규정하는 방법이 있습니다. ))
코드의 마지막 눈금의 Ask를 기억하고 MA와 비교한 다음 Ask(1)이 MA보다 작고 Ask(0)이 MA보다 크거나 같으면 새로운 Ask와 MA를 비교해야 합니다. 즉, 아래에서 터치하면 구입할 수 있습니다. 그러나 다음 기간에는 가격이 "마음을 바꾸"고 더 낮아질 수 있습니다. 이것은 정상적인 시장입니다.