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

 
kolyango :

링크 확인하겠습니다...

기준.mqh

플러그인의 내용을 쓰기만 하면 아무것도 열리지 않거나 다운로드되지 않습니다!


그래서 그들은 이전 페이지에서 "예고편을 마우스 오른쪽 버튼으로 클릭한 다음 메뉴에서" 링크를 "???"로 저장하려고 했습니다.

나는 - 시도했다, 그것은 나를 정기적으로 흔든다.

 
Roman. :


그래서 그들은 이전 페이지에서 "예고편을 마우스 오른쪽 버튼으로 클릭한 다음 메뉴에서" 링크를 "???"로 저장하려고 했습니다.

나는 - 시도했다, 그것은 나를 정기적으로 흔든다.



다운로드했습니다. 왜 .mq4가 아니라 .mqh입니까?
 

인디케이터의 추가 창에서 배경색을 변경하는 방법을 알려주십시오. 프로필에서 추가 창의 배경색을 설정할 수 있습니까?

 //+------------------------------------------------------------------+
//|                                                  Custom MACD.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property  copyright "Copyright © 2004, MetaQuotes Software Corp."
#property  link       "http://www.metaquotes.net/"
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 2
#property  indicator_color1  Silver
#property  indicator_color2  Red
#property  indicator_width1   2
//---- indicator parameters
extern int FastEMA= 12 ;
extern int SlowEMA= 26 ;
extern int SignalSMA= 9 ;
//---- indicator buffers
double      MacdBuffer[];
double      SignalBuffer[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- drawing settings
   SetIndexStyle ( 0 , DRAW_HISTOGRAM );
   SetIndexStyle ( 1 , DRAW_LINE );
   SetIndexDrawBegin ( 1 ,SignalSMA);
   IndicatorDigits ( Digits + 1 );
//---- indicator buffers mapping
   SetIndexBuffer ( 0 ,MacdBuffer);
   SetIndexBuffer ( 1 ,SignalBuffer);
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName ( "MACD(" +FastEMA+ "," +SlowEMA+ "," +SignalSMA+ ")" );
   SetIndexLabel ( 0 , "MACD" );
   SetIndexLabel ( 1 , "Signal" );
//---- initialization done
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence                           |
//+------------------------------------------------------------------+
int start()
  {
   int limit;
   int counted_bars= IndicatorCounted ();
//---- last counted bar will be recounted
   if (counted_bars> 0 ) counted_bars--;
   limit= Bars -counted_bars;
//---- macd counted in the 1-st buffer
   for ( int i= 0 ; i<limit; i++)
      MacdBuffer[i]= iMA ( NULL , 0 ,FastEMA, 0 , MODE_EMA , PRICE_CLOSE ,i)- iMA ( NULL , 0 ,SlowEMA, 0 , MODE_EMA , PRICE_CLOSE ,i);
//---- signal line counted in the 2-nd buffer
   for (i= 0 ; i<limit; i++)
      SignalBuffer[i]= iMAOnArray (MacdBuffer, Bars ,SignalSMA, 0 , MODE_SMA ,i);
//---- done
   return ( 0 );
  }
//+------------------------------------------------------------------+
 
kolyango :

다운로드했습니다. 왜 .mq4가 아니라 .mqh입니까?


예를 들어 포함된 파일이기 때문에

#include < stdlib.mqh >
#include < stderror.mqh >
//#include < dynamic_channel.mqh >              // динамический канал
#include < TrailingByFractals.mqh >           // trailing
튜토리얼 을 읽으십시오 - 이것은 #include 지시문입니다.
 

안녕하세요!

(예를 들어) 서브 윈도우에서 0에서 4까지의 세로 막대기(히스토그램)를 그리는 방법(그래픽 개체)을 알려주세요.

사실 표시기 하위 창에는 브레이크 아웃 신호(매도, 매수)가 양쪽에 표시되는 0 라인이 있습니다.

버퍼를 사용하여 이 작업을 수행하는 방법을 알고 있지만 여유 버퍼가 없습니다. 끝입니다.

고맙습니다.

 
LOA :

안녕하세요!

(예를 들어) 서브 윈도우에서 0부터 4까지의 세로 막대기(히스토그램)를 그리는 방법(그래픽 개체)을 알려주세요.


개체만들기
 
sergeev :
개체만들기

ObjectCreate 함수를 사용하는 것이 분명합니다.
그러나 어려움은 0선을 기준으로 신호 4 또는 -4의 방향에 따라 그래픽 개체에 값을 할당하는 방법입니다.
 
artmedia70 :

모든 것이 간단합니다. 플래그를 세마포어로 사용합니다. 세 개의 코드 블록이 있으며 각각은 이전 블록이 이미 실행된 경우에만 실행됩니다.

처음에는 모든 플래그가 ==거짓입니다.

첫 번째 조건이 충족되자마자 첫 번째 플래그를 true로 설정합니다. 이제 두 번째 코드 블록이 실행됩니다. 조건이 충족되자마자 두 번째 플래그를 true로 설정합니다.
이제 세 번째 코드 블록이 실행됩니다. 조건이 충족되자마자 세 번째 플래그를 true로 설정합니다. 글쎄, 등등.



플래그의 동작 설명 및 사용 예와 함께 플래그에 대해 자세히 읽을 수 있는 링크를 제공하시겠습니까?
 
LOA :

ObjectCreate 함수를 사용하는 것이 분명합니다.
그러나 어려움은 0선을 기준으로 신호 4 또는 -4의 방향에 따라 그래픽 개체에 값을 할당하는 방법입니다.

버퍼가 끝났습니다

 #property indicator_separate_window
#property indicator_minimum - 8
#property indicator_maximum 8
void start()  {
   ObjectsDeleteAll ( 1 );
   for ( int i= 0 ;i< WindowBarsPerChart ();i++){
         if (Open[i]> iMA ( 0 , 0 , 5 , 1 , 1 , 4 ,i))
             double xz= 4 ;
         else xz=- 4 ;
         ObjectCreate (i+ " f" , OBJ_TREND , 1 , iTime ( 0 , 0 ,i), 0 , iTime ( 0 , 0 ,i),xz);
         ObjectSet (i+ " f" , OBJPROP_RAY, 0 );
   }
   WindowRedraw ();
}
 
costy_ :

버퍼가 끝났습니다

잘못된 프로그래밍을 가르치는 이유는 무엇입니까?

 ObjectsDeleteAll ( 1 );

이 표시기의 창 핸들이 == 1인지 어떻게 알 수 있습니까?

사유: