초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 1175

 
Peter Vorobyev :

MQ 소스를 변경하고 메서드를 공개로 가져옵니다. 이것이 우리의 메서드가 아님이 분명합니다. :)

 #define private public

원하지 않는 경우 CAppDialog 패널의 모든 요소가 그래픽 개체로 구성되므로 개체 이름만 알면 되고 CAppDialog 클래스의 인스턴스를 생성한 후 CAppDialog를 다시 그리는 메서드를 작성합니다. 필요한 색상의 테두리

 
Igor Makanu :

원하지 않는 경우 CAppDialog 패널의 모든 요소가 그래픽 개체로 구성되므로 개체 이름만 알면 되고 CAppDialog 클래스의 인스턴스를 생성한 후 CAppDialog를 다시 그리는 메서드를 작성합니다. 필요한 색상의 테두리

이것을 통해. 클래스에서 필요한 컨트롤을 검색하여 코드를 전송할 수 있습니다. 효과가있다.

그리고 여기에서 대상의 이름을 아는 방법에 대해 주소를 알지 못합니다.

 
Peter Vorobyev :

이것을 통해. 클래스에서 필요한 컨트롤을 검색하여 코드를 전송할 수 있습니다. 효과가있다.

그리고 여기에서 대상의 이름을 아는 방법에 대해 주소를 알지 못합니다.

https://www.mql5.com/ru/docs/objects/objectsetinteger

하지만 내 생각에는 작업이 모든 개인 메서드와 필드를 공용 메서드로 매크로 대체를 재정의하는 것이 더 쉽습니다.

 
Igor Makanu :

https://www.mql5.com/ru/docs/objects/objectsetinteger

하지만 내 생각에는 작업이 모든 비공개 메서드와 필드를 공개 메서드로 대체하는 매크로를 사용하여 재정의하는 것이 더 쉽습니다.

ObjectSetInteger - 작동 :), 나는 그것에 대해 완전히 잊어 버렸습니다.
에 대한 예를 들어줄 수 있습니까?   # 프라이빗 정의 public - 메서드를 재정의하는 방법을 이해하지 못했습니다. 이것은 당신의 수업에서 해야 합니까?

 
Peter Vorobyev :

ObjectSetInteger - 작동 :), 나는 그것에 대해 완전히 잊어 버렸습니다.
에 대한 예를 들어줄 수 있습니까?   # 프라이빗 정의 public - 메서드를 재정의하는 방법을 이해하지 못했습니다. 이것은 당신의 수업에서 해야 합니까?

 #define private public
#include <Controls\Dialog.mqh>
// тут весь Ваш класс который наследуете от CAppDialog
#undef private
undef로 실험하면 매크로 대체 후 취소하고 자신의 클래스에서 CAppDialog의 모든 공개 메서드를 닫을 수 있으므로 나중에 코드를 작성하는 것이 편리할 것입니다.
 
Igor Makanu :

이고르, 네 효과가 있습니다. 고맙습니다.

 

홈 네트워크에서 로컬 에이전트의 연결과 함께 MT5 에서 Expert Advisor의 유전자 최적화를 실행하고 있습니다.

EA는 텍스트 파일에서 일부 초기 데이터를 가져옵니다.

플래그가 있는 파일을 엽니다. FILE_READ|FILE_SHARE_READ|FILE_ANSI|FILE_CSV|FILE_COMMON

로컬 에이전트가 파일을 찾으려면 로컬 컴퓨터 터미널의 Common 폴더에 복사해야 했습니다.

모든 로컬 시스템에서 필요한 파일을 수동으로 복제할 때마다 유일한 방법입니까?

터미널 자체가 테스트 입력 매개변수와 함께 이 파일을 보낼 수 없습니까?

 
현재 막대에서 피보나치 팬 수준의 가격을 프로그래밍 방식으로 찾는 방법은 무엇입니까?
 
Сергей Таболин :
현재 막대에서 피보나치 팬 수준의 가격을 프로그래밍 방식으로 찾는 방법은 무엇입니까?
 bool    ObjectGetDouble (
   long                             chart_id,           // идентификатор графика
   string                           name,               // имя объекта
   ENUM_OBJECT_PROPERTY_DOUBLE      OBJPROP_LEVELVALUE ,           // идентификатор свойства
   int                              prop_modifier ,     // модификатор свойства
   double &                         double_var         // сюда примем значение свойства
   );
Документация по MQL5: Графические объекты / ObjectGetDouble
Документация по MQL5: Графические объекты / ObjectGetDouble
  • www.mql5.com
2. Возвращает true или false в зависимости от успешности выполнения функции.  В случае успеха значение свойства помещается в приемную переменную, передаваемую по ссылке последним параметром. [in]  Модификатор указанного свойства. Для первого варианта по умолчанию значение модификатора равно 0. Большинство свойств не требуют модификатора...
 
Alexey Viktorov :
 void OnTick ()
{
//---
   Print ( TimeToString ( TimeLocal ()));
   Print ( ObjectGetDouble ( 0 , "TrL" , OBJPROP_PRICE ));
}

추세선 의 첫 번째 점의 가격을 반환합니다. (((

 2020.01 . 18 11 : 46 : 37.233 2019.11 . 29 00 : 00 : 00    2019.11 . 29 00 : 00
2020.01 . 18 11 : 46 : 37.233 2019.11 . 29 00 : 00 : 00    1.00245
2020.01 . 18 11 : 46 : 39.533 2019.11 . 29 08 : 00 : 00    2019.11 . 29 08 : 00
2020.01 . 18 11 : 46 : 39.533 2019.11 . 29 08 : 00 : 00    1.00245
2020.01 . 18 11 : 46 : 41.834 2019.11 . 29 16 : 00 : 00    2019.11 . 29 16 : 00
2020.01 . 18 11 : 46 : 41.834 2019.11 . 29 16 : 00 : 00    1.00245
2020.01 . 18 11 : 46 : 44.135 2019.12 . 02 00 : 00 : 00    2019.12 . 02 00 : 00
2020.01 . 18 11 : 46 : 44.135 2019.12 . 02 00 : 00 : 00    1.00245
사유: