서비스. 이미 작업 중이신가요? - 페이지 5

 
우리 모두는 이 새로운 기능의 정확한 목적을 설명하는 구체적인 예를 기다려야 할 것입니다.
 
Icham Aidibe :
우리 모두는 이 새로운 기능의 정확한 목적을 설명하는 구체적인 예를 기다려야 할 것입니다.

예, 서비스 작업이 표시될 때까지 기다려야 합니다.

서비스는 지속적으로 실행 되며 특수 작업 대기열을 통해 터미널과 통신합니다. 작업은 나중에 공개됩니다 .

서비스는 차트/타이머/가격 이벤트의 전문가 또는 핸들러가 아닙니다. 이벤트 모델은 지속적인 프로세스에 필요하지 않으며 그 본질은 중단되지 않고 계정/서버에 의존하지 않습니다.

우리는 사람들이 프랑켄슈타인을 만들지 않도록 의도적으로 기능적으로 전문가로부터 서비스를 분리합니다. 서비스에는 고유한 범위가 있습니다.


 
멀티스레딩을 사용하여 백그라운드에서 많은 계산, 장기 작업(사이트에서 뉴스 다운로드, 많은 양의 데이터가 포함된 파일 작업...), 일정 구현(트랜잭션에 대한 주간 보고서,.. .).
 
Nikolai Semko :
서비스의 그래픽 기능이 0이라는 것을 올바르게 이해했습니까?
아니면 이것은 일시적인 현상입니까?
모든 차트에 액세스할 수 있고 개체를 관리할 수 있지만 차트 알림이 없으며 앞으로도 없을 것입니다.

즉, 시각적인 것을 만들 수 있습니다.
 
Vladimir Karputov :

Oui, vous devez 참석자 que les tâches des services vous soient Presentées:


네 감사합니다 !

이미 서비스로 사용할 수 있는 무언가를 만들었습니다. forex 캘린더 - 하지만 이것이 이 새로운 기능을 실제로 사용하는 방법인지 확실하지 않습니다. 캘린더에 대한 정보를 수신하고 전체 터미널에 제공할 수 있다고 상상합니다(모두 차트, 모든 IA, 모든 지표를 이렇게 제공할 수 있습니다.) - 향후 개선 사항을 기다리겠습니다.

 
Renat Fatkhullin :
모든 차트에 액세스할 수 있고 개체를 관리할 수 있지만 차트 알림이 없으며 앞으로도 없을 것입니다.

즉, 시각적인 것을 만들 수 있습니다.

사용자 상호 작용이 없는 인터페이스?

 
Renat Fatkhullin :
모든 차트에 액세스할 수 있고 개체를 관리할 수 있지만 차트 알림이 없으며 앞으로도 없을 것입니다.

즉, 시각적인 것을 만들 수 있습니다.

고맙습니다! 아직 캔버스를 시작하는 방법을 알지 못했습니다.
차트를 볼 수 없습니다. ERR_CHART_WRONG_ID는 항상 오류를 제공합니다.

그리고 내가 이해한 것처럼 디버거와 프로파일링이 서비스에서 작동하지 않습니까? 아니면 일시적인가요?

 

새로운 설명이 최근에 나타났습니다( MetaTrader 5 플랫폼 빌드 1995의 베타 버전: 경제 캘린더, 서비스로서의 MQL5 프로그램 및 R 언어용 API )

터미널: 새로운 유형의 MQL5 프로그램인 서비스를 추가했습니다. 브로커의 거래 서버처럼 실시간으로 외부 시스템에서 가격을 전송하기 위해 터미널에 대한 자체 가격 데이터 소스를 생성할 수 있습니다.

Expert Advisors, 지표 및 스크립트와 달리 서비스는 특정 차트에 연결되지 않습니다. 백그라운드에서 실행되고 터미널을 시작할 때 자동으로 시작됩니다(강제로 중지되지 않은 경우).

서비스를 관리하기 위해 별도의 하위 섹션이 네비게이터에 추가되었습니다.





서비스 생성
서비스 템플릿을 생성하려면 MQL5 마법사 에서 해당 항목을 사용하십시오 . 서비스에는 스크립트와 유사한 하나의 진입점 OnStart 가 있습니다. 여기에서 네트워크 기능 을 사용하여 데이터를 수신하고 처리하는 무한 루프를 구성할 수 있습니다 .

서비스 시작
매개변수가 다른 동일한 Expert Advisor 또는 지표의 여러 복사본을 실행하려면 다른 차트에 오버레이하기만 하면 됩니다. 이렇게 하면 서로 독립적으로 작동하는 별도의 프로그램 인스턴스가 생성됩니다. 서비스는 차트에 연결되지 않으므로 해당 인스턴스를 생성하기 위한 별도의 메커니즘이 제공됩니다.

네비게이터에서 서비스를 선택하고 컨텍스트 메뉴에서 "서비스 추가"를 클릭하십시오. 거래를 활성화/비활성화하고 신호에 액세스하고 매개변수를 설정할 수 있는 표준 MQL5 프로그램 대화 상자가 열립니다.




서비스 인스턴스를 시작 및 중지하려면 해당 메뉴를 사용하십시오. 모든 인스턴스를 관리하려면 서비스 자체의 메뉴를 사용하십시오.

 
이 주제와 관련이 없는 댓글은 " 서비스 데스크를 통해 개발자와 소통하세요! "로 옮겨졌습니다.
 
즉, 특정 차트에 얽매이지 않은 스크립트로 , 터미널이 시작 되고 별도의 스레드에서 실행될 때 OnStart에 의해 한 번 호출됩니까?
사유: