MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1893

 

말해 주세요.

mql4에는 시작 가격의 MA를 기반으로 하는 표시기가 있어 현재 막대에서 다시 그리는 것을 방지할 수 있습니다. int start()를 통해 제대로 작동했습니다. 모든 것이 명확하게 보여

mql5에서는 동일한 표시기가 int start를 통해 작동하지 않고 int OnCalculate를 통해 작동합니다. 그리고 계속해서 다시 계산하고 다시 그리며 이미지는 1초 동안 사라지고 이미 다른 값이 있을 수 있습니다. 두 MA 사이의 거리가 설정되어 있어도 두 MA가 교차하는 경계 상황이 도움이 되지 않기 때문입니다. 그리고 시가에도 도움이 되지 않는다는 사실에 MA 버퍼에서 0번째가 아니라 1번째 을 가져갈 생각이 있었지만 소용이 없었고 실행 전에 실행을 비활성화 시키는 아이디어가 있었습니다. 새로운 바가 와도 아무 소용이 없었습니다(아무것도 표시되지 않았습니다. 이 상황을 극복하는 방법은?

차트를 오른쪽에서 왼쪽으로 스크롤하면 표시등이 계속 깜박이며 재계산이 계속됩니다.

 
Sergey Dymov 값 을 가져갈 생각이 있었지만 소용이 없었고 실행 전에 실행을 비활성화 시키는 아이디어가 있었습니다. 새로운 바가 와도 아무 소용이 없었습니다(아무것도 표시되지 않았습니다. 이 상황을 극복하는 방법은?

차트를 오른쪽에서 왼쪽으로 스크롤하면 표시등이 계속 깜박이며 재계산이 계속됩니다.

여기에서 질문 하세요. 확실히 도움이 될 것입니다.

 
Sergey Dymov 값 을 가져갈 생각이 있었지만 소용이 없었고 실행 전에 실행을 비활성화 시키는 아이디어가 있었습니다. 새로운 바가 와도 아무 소용이 없었습니다(아무것도 표시되지 않았습니다. 이 상황을 극복하는 방법은?

차트를 오른쪽에서 왼쪽으로 스크롤하면 표시등이 계속 깜박이며 재계산이 계속됩니다.

코드를 게시
 

차트에 뭔가 있다

나는 그들이 실수하지 않는다면 어떤 색으로든 만든다는 것을 만났습니다.

어떻게?

 
Vitaly Muzichenko # :

차트에 뭔가 있다

나는 그들이 실수하지 않는다면 어떤 색으로든 만든다는 것을 만났습니다.

어떻게?

F8 및


그러나 이것은 또한 그리드의 색상이므로 선택을 취소하십시오.


 
Artyom Trishkin # :

F8 및

그러나 이것은 또한 그리드의 색상이므로 선택을 취소하십시오.

이해했습니다 감사합니다!

그리드가 필요한데, 나누어져 있지 않아 아쉽습니다.

추신 그리고 오른쪽 가장자리에서 15개 막대를 프로그래밍 방식으로 이동하는 방법은 무엇입니까?
 
Vitaly Muzichenko # :

이해했습니다 감사합니다!

그리드가 필요한데, 나누어져 있지 않아 아쉽습니다.

추신 그리고 오른쪽 가장자리에서 15개 막대를 프로그래밍 방식으로 이동하는 방법은 무엇입니까?

어쩌면 그렇게?

 //+------------------------------------------------------------------+
//| Функция включает/выключает режим отображения ценового графика с  |
//| отступом от правого края.                                        |
//+------------------------------------------------------------------+
bool ChartShiftSet( const bool value, const long chart_ID= 0 )
  {
//--- сбросим значение ошибки
   ResetLastError ();
//--- установим значение свойства
   if (! ChartSetInteger (chart_ID, CHART_SHIFT , 0 ,value))
     {
       //--- выведем сообщение об ошибке в журнал "Эксперты"
       Print ( __FUNCTION__ + ", Error Code = " , GetLastError ());
       return ( false );
     }
//--- успешное выполнение
   return ( true );
  }
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
  • www.mql5.com
Примеры работы с графиком - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Viktorov # :

어쩌면 그렇게?

예, 하지만 버튼을 누르면

마커를 손으로 끌면 오른쪽 가장자리에 도달하기 전에 마커가 꽤 많이 멈춥니다. 이것은 터미널의 근본적으로 잘못된 제한입니다!

버튼을 누르면 극단 막대가 거의 오른쪽 가장자리에 붙어 차트의 정보 내용이 손실됩니다.

각각의 새 막대 모양으로 이 작업을 수행하지 않으면서 프로그래밍 방식으로 최대 15-20개 막대를 조여야 합니다. 한 번 누릅니다.

추신 왜 그런 제한과 많은 빈 공간이 있습니까?


 
Vitaly Muzichenko # :

예, 하지만 버튼을 누릅니다.

마커를 손으로 끌면 오른쪽 가장자리에 도달하기 전에 마커가 꽤 많이 멈춥니다. 이것은 터미널의 근본적으로 잘못된 제한입니다!

버튼을 누르면 극단 막대가 거의 오른쪽 가장자리에 붙어 차트의 정보 내용이 손실됩니다.

각각의 새 막대 모양으로 이 작업을 수행하지 않으면서 프로그래밍 방식으로 최대 15-20개 막대를 조여야 합니다. 한 번 누릅니다.

백분율로

 //+------------------------------------------------------------------+ 
//| Функция устанавливает размер отступа нулевого бара от правого    | 
//| края графика в процентах (от 10% до 50%). Для включения режима   | 
//| отступа, нужно установить значение свойства CHART_SHIFT равным   | 
//| true.                                                            | 
//+------------------------------------------------------------------+ 
bool ChartShiftSizeSet( const double value, const long chart_ID= 0 ) 
  { 
//--- сбросим значение ошибки 
   ResetLastError (); 
//--- установим значение свойства 
   if (! ChartSetDouble (chart_ID, CHART_SHIFT_SIZE ,value)) 
     { 
       //--- выведем сообщение об ошибке в журнал "Эксперты" 
       Print ( __FUNCTION__ + ", Error Code = " , GetLastError ()); 
       return ( false ); 
     } 
//--- успешное выполнение 
   return ( true ); 
  }
 
Alekseu Fedotov # :

백분율로

작동하지만 최소값은 손으로 설정할 수있는 들여 쓰기이며 그 이상은 아닙니다.

시각적으로 - 최소 약 10%. 5%가 작동하지 않는 이유