답변
숲,
는 지금까지 내가 메타 트레이더 작업 지난 이년 동안 경험 같은 외부 DLL에서 MQL 함수를 호출하는 실제 방법이 없습니다. 그러나 밀접하게 당신이 달성하고자하는 것과 유사 일부 사용자 지정 내장 된 API가있다 :
는 이러한 API는 MQL 기능을 사용할 수 있도록 다소 않습니다는 아웃 - 오브 - 박스
원칙
FX 도메인에서 수 백 만년이 지난 후에 다른 프로세스와 부드럽고 우아한 MT4 터미널 공동 작업을 조율하는 또 다른 방법이 있습니다. o 언덕 위로 물을 밀어 넣거나 키트에 USD500 이상을 지불하면 다음 번에 충격을 받으면 바로 작동을 멈 춥니 다. 빌드 524-> 빌드 562-> 빌드 586-> 빌드 600-> 빌드 609-> 빌드 624->. .. 다시
이동
예, MT4 아키텍처는 노출하지 않는 존재하지 않는 장난감은 DLL 등을 통해 외부 낮은 수준의 통화를 처리하는 결정적 (undeterministic) 의무에 의해 자기가 "방해"될 수 있도록 자신의 인터페이스입니다 .
그럼에도 불구하고 그것을 해결하는 방법, MT4 기능은 원격 노출되고있는 스마트 메시징 라이브러리, 저점을 운영, 건축을 반대하고 가볍고 얇은 클라이언트로 MT4 터미널 역할을 할 수 있습니다 호출 (RPC).
예
Python
노드 수치 처리 MT4 데이터를 수집 할 수있다이 방법
마찬가지로 PHP
노드 수도 병렬 처리 원격 시스템 로그 - S에서
마찬가지로 C++
노드
다른 방법으로 Python
노드는 사용자 지정 스크립트 스크립팅 언어를 사용하여 CLI 터미널 인터페이스의 역할을 수행 할 수 있습니다. GE는
단순히 명령 줄/표준 입출력을 통해 메타 트레이더 측 활동을 명령 - 어떤 응용 프로그램 인프라 요구에도 기본 MT4 스레드의 가난한 실시간 기능을 향상시킬 수 있습니다이 방법
(하나를 수행 할 수 있습니다 보다 나은 소프트 실시간 예측 가능성과 낮은 대기 시간의 대규모 병렬 아키텍처를 얻을 수 있습니다.여전히, 안전한 측에있을
조심해야) 어떤 다음 "새로운"-MQL4에 의해 수뢰로되는 것을 보호 : 그냥 눈에 보이지 않는 위협, "새"의 headbang 충돌 상상 - MQL4.56789
인을 다른 사람 외에 그 string
, 구문 제안 된 문자열로하면서, 사실에 string
하지만 struct
및 이전의 모든 DLL 관련 작업은 단순히 가공 한 재 및되어야 랩 - 주위를 에뮬레이션을하지 않습니다 string-as-struct 또는 새 DLL 인터페이스는 버퍼에 값을 반환하는 경우를 위해 설계되어야합니다 ArrayOfBYTEs
, 어느 MQL4.56789
측은 수신 및 처리 할 수 있지만 자체 및 메모리 누수가 발생하면이를 해제 할 수 없습니다.
DLL이 .NET DLL이 될 수 있다면 this MT4 .NET 통합 라이브러리 NQuotes를 시도해 볼 수 있습니다.
이 라이브러리를 사용하면 DLL에서 MQL4 함수에 액세스 할 수 있습니다.