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

 
paladin80 :
집단지성의 조언을 구합니다. 그래서 고문을 데모에 넣고 코드를 약간 수정했습니다. (1) MT4에서 교체하려면 작업을 일시 중지하고(MT4를 닫지 않고) .../experts/ 폴더에서 새 폴더(같은 이름으로)로 교체한 다음 상단 패널에서 다시 교체할 수 있습니다. MT4의 고문이 거래를 허용합니까? (2) 아니면 MT4를 닫고 평소처럼 어드바이저를 .../experts/로 이동하고 차트로 끌어야 합니까?

Expert Advisor가 차트에서 시작되면 해당 로컬 재컴파일만 차트에서 자동으로 언로드되고 다시 로드됩니다. 그리고 기본 설정으로

그렇지 않으면 EA가 메모리에 남아 있으며 ex4 파일을 삭제해도 차트에서 제거되지 않습니다.

 

하루 중 비버 시간.

전처리기에 한 번 일정하게 설정하는 대신 indicator_minimumindicator_maximum 속성을 원할 때마다 변경할 수 있습니까? 나는 부두에서 가치 있는 것을 찾지 못했습니다.

 
Solree :

하루 중 비버 시간.

전처리기에 한 번 일정하게 설정하는 대신 indicator_minimumindicator_maximum 속성을 원할 때마다 변경할 수 있습니까? 나는 부두에서 가치 있는 것을 찾지 못했습니다.

표시기 설정 에서 "일반"을 탭하십시오. MQL을 사용하여 프로그래밍 방식으로 - 방법이 없습니다.
 
alsu :
표시기 설정에서 "일반" 탭. MQL을 사용하여 프로그래밍 방식으로 - 방법이 없습니다.
죄송합니다... 답변 감사합니다.
 
alsu :
표시기 설정에서 "일반" 탭. MQL을 사용하여 프로그래밍 방식으로 - 방법이 없습니다.
할 수 있다. 비뚤어진. 추가 버퍼를 통해. 사실, 최소값을 작업자보다 작게 설정하는 것은 불가능합니다.
 
Zhunko :
할 수 있다. 비뚤어진. 추가 버퍼를 통해. 사실, 최소값을 작업자보다 작게 설정하는 것은 불가능합니다.
그리고 미리 정해진 것보다 높은 최대값도 나오지 않습니다))
 
alsu :
그리고 미리 정해진 것보다 높은 최대값도 나오지 않습니다))

준코 :
할 수 있다. 비뚤어진. 추가 버퍼를 통해. 사실, 최소값을 작업자보다 작게 설정하는 것은 불가능합니다.

왜요? 모든 것이 내부에 있고 프로그래밍 방식으로(프로거) 제어되는 경우 원하는 대로 변경하고 제어합니다.

Hosh는 EMPTY에서 값을 잘라내거나 그 반대의 경우 버퍼를 더 넓게 푸시합니다.

 
sergeev :

왜요? 모든 것이 내부에 있고 프로그래밍 방식으로(프로거) 제어되는 경우 원하는 대로 변경하고 제어합니다.

Hosh는 EMPTY에서 값을 잘라내거나 그 반대의 경우 버퍼를 더 넓게 푸시합니다.

버퍼에 대해 응답했습니다.

수직 스캐닝을 담당하는 버퍼가 하나 있습니다. 그래픽 개체로 선을 그립니다. 따라서 모든 것이 양방향으로 확장되어야 합니다.

 
이에 대해 조금 더 자세히 말씀해 주시겠습니까? 어렵지 않다면 이것으로 코드 조각 :)
 
좋은 저녁, 또 다른 질문이 있습니다. 다음은 코드의 일부입니다.
 #property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
#property indicator_width1 1
#property indicator_width2 1

extern string Symbol1.Name = "EURUSD" ;     // Название инструмента 1
extern bool    Symbol1.Reverse = false;     // Является ли инструмент 1 реверсивным (с обратной корреляцией) 
                                           // по отношению к остальным инструментам
extern string Symbol2.Name = "EURUSD" ;     // Название инструмента 2
extern bool    Symbol2.Reverse = false;     // Является ли инструмент 2 реверсивным (с обратной корреляцией) 

extern int MA.Slow = 80 ;                   // Период медленной МА

// Буферы для отображения данных
double Buf1[];     // Первый инструмент
double Buf2[];     // Второй инструмент

// Параметры графических объектов        
string Label.Name = "label" ;  
int wndNum;                                 // Номер подокна индикатора
string wndName;                             // Наименование окна
string oSymb1,oSymb2;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init() { 
   // Задаем имена графическим объектам
  oSymb1=Symbol1.Name;
  oSymb2=Symbol2.Name;

   // Формируем свойства графиков индикатора
   IndicatorBuffers ( 2 );
  
   SetIndexStyle ( 0 , DRAW_LINE );
   SetIndexBuffer ( 0 ,Buf1);
   SetIndexLabel ( 0 ,Symbol1.Name);

   SetIndexStyle ( 1 , DRAW_LINE );
   SetIndexBuffer ( 1 ,Buf2);
   SetIndexLabel ( 1 ,Symbol2.Name);

   return ( 0 );
}

//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()  {
   // Удаляем все графические объекты
  DeleteObject(oSymb1);
  DeleteObject(oSymb2); 
   return ( 0 );  
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start() {
   // Подсчет количества баров для построения индикатора
   int limit; int counted_bars= IndicatorCounted ();
   if (counted_bars< 0 ) return (- 1 );
   if (counted_bars> 0 ) counted_bars--; 
  limit= Bars -counted_bars;
  
   // Определяем параметры окна индикатора
  wndNum= WindowFind ( WindowExpertName ());
  wndName= WindowExpertName ()+wndNum; 
   //------------------------------------------------------------------ 
   // Отрисовка ценовых линий: рисуем и синхронизируем по наличию баров
   for ( int i= 0 ; i<limit; i++) { 
    Buf1[i]= iMA (Symbol1.Name, 0 ,MA.Slow, 0 , MODE_SMA , PRICE_CLOSE ,i); }
    
   for (i= 0 ; i<limit; i++) {
    Buf2[i]= iMAOnArray (Buf1, 0 ,MA.Slow, 0 , MODE_SMA ,i); }
Buf1이 표시기 창에 전혀 나타나지 않게 하려면 어떻게 해야 합니까?