내 접근 방식. 코어 - 엔진. - 페이지 158

 
Artyom Trishkin :

중지. 당신은 다음과 같이 썼습니다.

그렇다면 누가 어떤 군대를 가지고 있으며 어떤 군대로 구성되어 있습니까?

글쎄, 나는 당신이 러시아어를 잘하지 못한다는 사실에 대해 "현명한 사람"에 대한 무례함을 쓸 것이고,이 호소가 대화 상대에 대한 경멸적이고 무시하는 태도를 의미한다는 것을 이해하지 못합니다.

유머 감각을 잃었습니까? 아니면 무엇입니까?

 
Vasiliy Sokolov :

불행히도 그렇습니다. 근본적으로 다른 두 시스템 간의 콜백 인터페이스는 혼란스러울 수 없습니다.

사실 그 질문은 거의 수사적이었습니다)

IMHO에 NET 호환성이 추가되면서 터미널에 콜백을 추가해야 하는 긴급한 필요성이 있습니다. 적어도 하나) 최소한 이벤트를 터미널 대기열로 푸시합니다.

 
Artyom Trishkin :

타이머를 통해서라면 테스터에서 어떻게 일할 생각이었나요? 크로스 플랫폼 코드를 수행하고 있다고 말씀하셨습니다.

Artyom, 어떤 종류의 질문입니까? 타이머가 작동하지 않으면 다른 소스에서 에뮬레이트됩니다.

EventSetTimer 때문에 "전투 로봇"에서도 항상 그렇습니다. :-)

ps / 군국주의 테마로 전염되는 무언가 .. 지휘소, 전투 로봇 .. "Galakteko 위험"

 
Dmitriy Skub :

사실 그 질문은 거의 수사적이었습니다)

IMHO에 NET 호환성이 추가되면서 터미널에 콜백을 추가해야 하는 긴급한 필요성이 있습니다. 적어도 하나) 최소한 이벤트를 터미널 대기열로 푸시합니다.

나는 MT5에서 이벤트를 잡을 수 없었습니다. 어떤 이유로 Spy++는 차트 이벤트를 볼 수 없습니다. 분명히 자체 작성 클래스와 이벤트 모델이 사용되며 표준 Windows 모델이 아닙니다. MT4에서는 문제 없이 Windows 이벤트를 보낼 수 있습니다.

나는 또한 OnTimer를 통해 폴링 중이므로 요청에서 최소 데이터 패킷을 받으려고 노력하지만 현대 PC 속도에서는 아마도 너무 헛된 욕심일 수 있습니다)))

Artyom Trishkin :

타이머를 통해서라면 테스터에서 어떻게 일할 생각이었나요? 크로스 플랫폼 코드를 수행하고 있다고 말씀하셨습니다.

MT5에서는 테스터의 타이머가 문제 없이 생성되며 C#으로 코드를 작성하는 것이 즐겁습니다. .dll을 호출하고 즉시 양식을 실행하고 별도의 스레드( Thread )에 모든 그래픽을 넣고 그게 전부입니다. C#과 MT5 사이의 데이터 교환과 버튼 자체가 있는 그래픽 형식은 일반 Windows 응용 프로그램처럼 작동합니다. MT5의 요청에서는 이전에 클릭한 요소의 상태만 전송되고 아무 것도 느려지지 않고 느려지지 않습니다.)

 
Maxim Kuznetsov :

Artyom, 어떤 종류의 질문입니까? 타이머가 작동하지 않으면 다른 소스에서 에뮬레이트됩니다.

EventSetTimer 때문에 "전투 로봇"에서도 항상 그렇습니다. :-)

ps / 군국주의 테마로 전염되는 무언가 .. 지휘소, 전투 로봇 .. "Galakteko 위험"

Duc ... 글쎄, 나는 Vasily에게 그가 어떻게 할 것인지 알고 싶었습니다. 내가 오래전에 했던 것과 비교하기 위해 (물론 Vasil의 프롬프트 없이는 아님)

 
Igor Makanu :

나는 MT5에서 이벤트를 잡을 수 없었습니다. 어떤 이유로 Spy++는 차트 이벤트를 볼 수 없습니다. 분명히 자체 작성 클래스와 이벤트 모델이 사용되며 표준 Windows 모델이 아닙니다. MT4에서는 문제 없이 Windows 이벤트를 보낼 수 있습니다.

나는 또한 OnTimer를 통해 폴링 중이므로 요청에서 최소 데이터 패킷을 받으려고 노력하지만 현대 PC 속도에서는 아마도 너무 헛된 욕심일 수 있습니다)))

MT5에서는 테스터의 타이머가 문제 없이 생성되고 C#으로 코드를 작성하는 것이 즐겁습니다. 저는 .dll을 호출하고 즉시 양식을 실행하고 별도의 스레드( Thread )로 모든 그래픽을 실행하면 그게 전부입니다. C#과 MT5 사이의 데이터 교환에서만 작동하며 버튼 자체가 있는 그래픽 양식은 일반 Windows 응용 프로그램처럼 작동합니다. MT5의 요청에서는 이전에 클릭한 요소의 상태만 전송되고 아무 것도 느려지지 않고 느려지지 않습니다. )

테스터의 타이머를 통해 5위 안에 들었습니다. 그것의 간단한 사용(그리고 밀리초 멀티타이머)조차도 테스터의 심각한 속도 저하를 초래했습니다. 따라서 시각화 도구에서 타이머를 거부했습니다. 작동하려면 진드기에 하나의 무화과가 있습니다. 타이머와 OnTick()을 통한 이벤트 플래그의 두 가지 모델을 만들었습니다. 실시간 타이머별, 틱별 - 시각화 도우미.

추신. 나는 거짓말을하고 있습니다 - 세 가지 모델 - 또한 OnChartEvent ()를 통해 - 또한 실시간 만 있습니다.

 
Igor Makanu :

나는 MT5에서 이벤트를 잡을 수 없었습니다. 어떤 이유로 Spy++는 차트 이벤트를 볼 수 없습니다. 분명히 자체 작성 클래스와 이벤트 모델이 사용되며 표준 Windows 모델이 아닙니다. MT4에서는 문제 없이 Windows 이벤트를 보낼 수 있습니다.

나는 또한 OnTimer를 통해 폴링 중이므로 요청에서 최소 데이터 패킷을 받으려고 노력하지만 현대 PC 속도에서는 아마도 너무 헛된 욕심일 수 있습니다)))

MT5에서는 테스터의 타이머가 문제 없이 생성 되며 C#으로 코드를 작성하는 것이 즐겁습니다. 저는 .dll을 호출하고 즉시 양식을 실행하고 별도의 스레드( Thread )로 모든 그래픽을 실행하면 그게 전부입니다. C#과 MT5 사이 의 데이터 교환에서만 작동하며 버튼 자체가 있는 그래픽 양식은 일반 Windows 응용 프로그램처럼 작동합니다. MT5의 요청에서는 이전에 클릭한 요소의 상태만 전송되고 아무 것도 느려지지 않고 느려지지 않습니다. )

MQL 수준에서 모델을 휘젓고 나머지는 Sharpei에서 휘젓면 완전히 더 예뻐질 수 있습니다. 그러면 논리가 분리되고 보기가 분리됩니다. 프론트엔드는 사용성이 있는 디자인에 종사하며 트레이딩 백에 맞지 않습니다. 양식의 버튼 구성을 변경하거나 양식을 둘 또는 셋으로 나누는 것은 어드바이저의 알고리즘에 어떤 식으로든 영향을 미치지 않아야 합니다.

 
Vasiliy Sokolov :

Piotr, 괜찮으시다면 .Net 라이브러리와의 새로운 통합을 사용하여 MQL에서 그래픽 애플리케이션을 쉽게 생성할 수 있는 방법에 대한 기사를 준비하겠습니다. 이 기사의 제목은 ".Net Framework 및 C#을 기반으로 하는 전문가 고문을 위해 VisualStudio에서 사용자 지정 양식 만들기"입니다.

당신의 접근 방식과 아이디어가 저를 짜증나게 했습니다. 나는 스스로에게 물었다. 기본적인 프로그래밍 능력만 가지고도 내 전문가를 위한 그래픽 형식을 쉽고 빠르게 만들 수 있습니까? 나는 실험을했고 그것이 가능하다는 것이 밝혀졌습니다! 다음과 같은 양식이 있습니다.

아이디어는 사용자가 VisualStudio 편집기에서 필요한 양식을 그리고 이 창을 MQL 코드와 결합하는 데 필요한 모든 작업이 자동 모드에서 "뒤에서" 수행된다는 것이었습니다. 이렇게 하려면 C#으로 구형 컴팩트 컨트롤러를 작성해야 했습니다. 커널과 유사한 종류이지만 약 200줄의 코드만 있으면 됩니다.

내가 시작한 기사에서 모든 것이 어떻게 작동하는지 읽을 수 있습니다.

그게 다야 Vasily가 양동이를 구리 대야로 덮었습니다.

 
Dmitry Fedoseev :

그게 다야 Vasily가 양동이를 구리 대야로 덮었습니다.

일반적으로 이 정도로 끝날 것으로 예상되지만 아직까지 구체적인 기사는 나오지 않았습니다..

그런 기사가 코어 엔진보다 먼저 출시될 확률은 99%입니다. Peter는 나머지 백분율을 충족해야 합니다.

 
Artyom Trishkin :

테스터의 타이머를 통해 5위 안에 들었습니다. 그것의 간단한 사용(그리고 밀리초 멀티타이머)조차도 테스터의 심각한 속도 저하를 초래했습니다. 따라서 시각화 도구에서 타이머를 거부했습니다. 작동하려면 진드기에 하나의 무화과가 있습니다. 타이머와 OnTick()을 통한 이벤트 플래그의 두 가지 모델을 만들었습니다. 실시간 타이머별, 틱별 - 시각화 도우미에서.

추신. 나는 거짓말을하고 있습니다 - 세 가지 모델 - 또한 OnChartEvent ()를 통해 - 또한 실시간 만 있습니다.

아직 디자인을 결정하지 않았지만 테스터에서 문제 없이 작동하는지 확인했습니다. @fxsaber 가 #define 코드를 도와줘서 감사합니다. 포함자를 연결할 때 자동으로 OnTick(), OnTimer() 처리기를 추가합니다... 그래서 EA의 모든 섹션에서 필요한 통화를 완료할 수 있습니다.

속도가 느려질 수 있는 부분도 이해하지 못하지만? 나는 타이머를 400ms 자주 사용하지만 호출은 .dll 2 int 배열 10 el-in 및 2 int(버튼 수와 체크박스 수, 배열 차원)에서 가져옵니다. 물리적으로 아무것도 할 수 없습니다. 속도를 늦추십시오. 버튼을 클릭하면 어레이에 쓰고 버튼의 번호를 int에 전달하더라도 사용자의 신경이 흐트러지면 안전을 위해 어레이는 원칙적으로 필요하지 않습니다. 0.5초보다 빠르게 버튼을 두드립니다.)))

여기에는 다른 작업이 있습니다. 분명히 차량 제작에 대해 이야기하는 경우 그래픽이 필요하지 않으며 차량 디버깅 및 시각화에 대해 이야기하는 경우 테스터의 속도가 필요하지 않습니다.)


막심 쿠즈네초프 :

MQL 수준에서 모델을 휘젓고 나머지는 샤페이에서 휘젓면 완전히 더 예뻐질 수 있습니다. 그러면 논리가 분리되고 보기가 분리됩니다. 프론트엔드는 사용성이 있는 디자인에 종사하며 트레이딩 백에 맞지 않습니다. 양식의 버튼 구성을 변경하거나 양식을 둘 또는 셋으로 나누는 것은 어드바이저의 알고리즘에 어떤 식으로든 영향을 미치지 않아야 합니다.

! 나는 그것을 나 자신에게 보관할 것이다, 좋은 포스트! , 그리고 공개 토론을 위해 성숙하면 설명에 쓸 것입니다.