MT5에 대한 소원 - 페이지 31

 

고려하십시오


지표, Expert Advisor 또는 스크립트에서 변경할 수 있는 기능을 MQL5에 추가하는 제안

창의 최대 막대 수...

프로그램에서 제어되는 제한을 만드는 것이 유용할 수 있습니다.



 
개발자. 제 지원 번호 18097 호를 주목해주세요.


추신

또한, 가능하면 테스트가 정상적으로 진행된다면 최적화 결과 와 최적화 그래프가 삭제되도록 해주시기 바랍니다.

아니면 언제든지 엿볼 수 있는 그런 교활한 움직임입니까?

 
Interesting :


추신

또한, 가능하면 테스트가 정상적으로 진행된다면 최적화 결과와 최적화 그래프가 삭제되도록 해주시기 바랍니다.

아니면 언제든지 엿볼 수 있는 그런 교활한 움직임입니까?

나는 그러한 제안에 반대합니다. 최적화 후 결과를 분석하기 위해서는 많은 패스를 일반적인 방식으로 개별적으로 확인해야 합니다(해당 패스를 클릭하여 달성). 일반 모드에서 첫 번째 테스트 후 최적화 결과 가 사라지면 결과로 작업할 소중한 기회를 잃게 됩니다.

 
Yedelkin :

나는 그러한 제안에 반대합니다. 최적화 후 결과를 분석하기 위해서는 많은 패스를 일반적인 방식으로 개별적으로 확인해야 합니다(해당 패스를 클릭하여 달성). 일반 모드에서 첫 번째 테스트 후 최적화 결과가 사라지면 결과로 작업할 소중한 기회를 잃게 됩니다.

글쎄, 나는 주장하지 않습니다. 라인이 말하는 것입니다 - > 아니면 언제든지 엿볼 수 있도록 그렇게 까다로운 움직임입니까?

 

1) 구현한 이벤트가 아닌 일반 이벤트를 추가해야 합니다.

가장 먼저 떠오른 것은

OnBar, OnBarClose, OnQuote, OnDomChanged...

OnPositionOpened,OnPositionClosed...

연결됨, 연결 해제됨..

신청 상황 등의 변경

2) 문서를 다음과 같이 사람 형태로 변환합니다. http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "대중에게 API 제공" -)

ps 개발자들은 초보자를 위한 소프트웨어를 만들거나 스스로

System.Data Namespace ()
System.Data Namespace ()
  • msdn.microsoft.com
The namespace provides access to classes that represent the ADO.NET architecture. ADO.NET lets you build components that efficiently manage data from multiple data sources. In a disconnected scenario such as the Internet, ADO.NET provides the tools to request, update, and reconcile data in multiple tier systems. The ADO.NET architecture is...
 
anubis :

1) 구현한 이벤트가 아닌 일반 이벤트를 추가해야 합니다.

가장 먼저 떠오른 것은

OnBar, OnBarClose, OnQuote, OnDomChanged...

OnPositionOpened,OnPositionClosed...

연결됨, 연결 해제됨..

신청 상황 등의 변경

2) 문서를 다음과 같이 사람 형태로 변환합니다. http://msdn.microsoft.com/en-us/library/system.data.aspx

3) "대중에게 API 제공" -)

ps 개발자들은 초보자를 위한 소프트웨어를 만들거나 스스로

CUSTOM 이벤트 와 같은 것이 있습니다. 원하는 수만큼 직접 구현할 수 있습니다.

예를 들어, 나는 오랫동안 타이머를 통해 OnConnected와 OnDisconnected를 잡아왔습니다. 원하는 경우 OnBar 및 OnBarClose 또는 기타 이벤트도 생성하십시오.

그런 다음 이 블록을 사용하여 OnChartEvent 에서 침착하게 잡으십시오(이 모든 것이 도움말에 있습니다. 왜 바퀴를 재발명합니까?)

   if (id> CHARTEVENT_CUSTOM )
   //User event is received / Получено пользовательское событие
  {
  }

추신

그리고 클래스 수준에서는 일반적으로 모든(거의 모든) 이벤트를 빌드하고 처리할 수 있습니다.

 
Interesting :

CUSTOM 이벤트 와 같은 것이 있습니다. 원하는 수만큼 직접 구현할 수 있습니다.

예를 들어, 나는 오랫동안 타이머를 통해 OnConnected와 OnDisconnected를 잡아왔습니다. 원하는 경우 OnBar 및 OnBarClose 또는 기타 이벤트도 생성하십시오.

그런 다음 이 블록을 사용하여 OnChartEvent 에서 침착하게 잡으십시오(이 모든 것이 도움말에 있습니다. 왜 바퀴를 재발명합니까?)

추신

그리고 클래스 수준에서는 일반적으로 모든(거의 모든) 이벤트를 빌드하고 처리할 수 있습니다.

어떻게 구현하는지 흥미롭습니다(OnConnected?)

 

dentraf :

어떻게 구현하는지 흥미롭습니다(OnConnected?)

예, 부탁합니다 :)

CMqlManagerConnect 클래스(모듈은 게시물에 첨부됨)를 사용하여 Expert Advisor에서 이러한 이벤트를 처리하는 예를 제공합니다.

1. 모듈을 \MQL5\Include\ 디렉토리(하위 디렉토리가 바람직함)에 복사합니다.

여기에 모든 것이 있습니다 - \MQL5\Include\Units\Objects

2. 이 파일에 대한 링크를 전문가에게 추가하십시오.

 /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//              Object classes, used in working the trade system              //
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
#include <\Units\Objects\UManagerConnect.mqh> //Class - CMqlManagerConnect

3. CMqlManagerConnect 유형의 변수를 생성합니다.

 /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//             Global variables, used in working the trade system             //
/// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// //
//****************************************************************************//
//               Objects created on the grounds of the classes                //
//****************************************************************************//
CMqlManagerConnect ManagerConnect; //Менеджер контролирующий состояние коннекта

4. 타이머에서 다음과 같이 씁니다.

 void OnTimer ()
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//
//****************************************************************************//
//                  Контроль состояния соединения с сервером                  // 
//****************************************************************************//
ManagerConnect.OnEventTimer();
//----------------------------------------------------------------------------//
}

5 OnChartEvent 에서 다음과 같이 작성합니다.

 void OnChartEvent ( const int id,         // идентификатор события  
                   const long & lparam,   // параметр события типа long
                   const double & dparam, // параметр события типа double
                   const string & sparam   // параметр события типа string
                  )
{
//----------------------------------------------------------------------------//
//Work variables / Служебные переменные
//----------------------------------------------------------------------------//

//****************************************************************************//
//                          Processing user events                            //
//****************************************************************************//
   if (id> CHARTEVENT_CUSTOM )
   //User event is received / Получено пользовательское событие
  {
   //Выводим текстовое сообщение о событии в комментарий
   Comment ( "User Event " ,sparam);

     if (id== CHARTEVENT_CUSTOM + 1 )
     //Соединеие с сервером востановлено
    {
     //тут обрабатываем все что нам нужно
    }

     if (id== CHARTEVENT_CUSTOM + 2 )
     //Соединеие с сервером потеряно
    {
     //тут обрабатываем все что нам нужно
    }

  }
//----------------------------------------------------------------------------//  
}

추신

물론 OnChartEvent에 이벤트를 전달할 수는 없지만 클래스에서 직접 처리합니다(기본 또는 상속자에서 직접). 그러나 이 접근 방식을 사용하더라도 나머지 차트에 무슨 일이 일어났는지 알려야 할 수도 있기 때문에 OnChartEvent에 대한 호출을 남겨두는 것이 좋습니다... :)

파일:
 
Interesting :

예, 부탁합니다 :)

CMqlManagerConnect 클래스(모듈은 게시물에 첨부됨)를 사용하여 Expert Advisor에서 이러한 이벤트를 처리하는 예를 제공합니다.

1. 모듈을 \MQL5\Include\ 디렉토리(하위 디렉토리가 바람직함)에 복사합니다.

여기에 모든 것이 있습니다 - \MQL5\Include\Units\Objects

2. 이 파일에 대한 링크를 전문가에게 추가하십시오.

3. CMqlManagerConnect 유형의 변수를 생성합니다.

4. 타이머에서 다음과 같이 씁니다.

5 OnChartEvent에서 다음과 같이 작성합니다.

추신

물론 OnChartEvent에 이벤트를 전달할 수는 없지만 클래스에서 직접 처리합니다(기본 또는 상속자에서 직접). 그러나 이 접근 방식을 사용하더라도 나머지 차트에 무슨 일이 일어났는지 알려야 할 수도 있기 때문에 OnChartEvent에 대한 호출을 남겨두는 것이 좋습니다... :)

CMqlManagerConnect 클래스, 직접 작성하셨나요? 서버에 대한 연결이 끊어졌을 때 서버를 반복하는 솔루션이 있습니까?
 
dentraf :
CMqlManagerConnect 클래스, 직접 작성하셨나요? 서버에 대한 연결이 끊어졌을 때 서버를 반복하는 솔루션이 있습니까?
물론 (예를 들어) 직접 작성했지만 나 자신이 이 문제를 다르게 해결합니다. 무차별 대입 솔루션은 없지만(적어도 현재로서는) 이 문제도 해결해야 합니다(사람들이 이미 개발자에게 이에 대해 문의했습니다) ...