Expert Advisor를 통해 스크립트 실행 - 페이지 2

 
Shaun :

실화, 나는 사이트, 코딩도 처음입니다. 이전에 코딩한 적이 없습니다.
여기서 시작
 
qjol :
여기서 시작

정보를 주셔서 감사합니다.

솔직히 말해서 나는 처음부터 모든 것을 직접 코딩하는 방법을 배우지 않고 이미 그것을 했고 아마도 나를 도울 수 있는 누군가로부터 답을 얻기 위해 상인/코딩 포럼에 왔습니다.

 
Shaun :

정보를 주셔서 감사합니다.

솔직히 말해서 나는 처음부터 모든 것을 직접 코딩하는 방법을 배우지 않고 이미 그것을 했고 아마도 나를 도울 수 있는 누군가로부터 답을 얻기 위해 상인/코딩 포럼에 왔습니다.

스크립트를 보여주고, EA에게 누군가가 당신을 불쌍히 여겨 결합할 수도 있다는 것을 보여주세요. . .
 
Shaun :

정보를 주셔서 감사합니다.

솔직히 말해서 나는 처음부터 모든 것을 직접 코딩하는 방법을 배우지 않고 이미 그것을 했고 아마도 나를 도울 수 있는 누군가로부터 답을 얻기 위해 상인/코딩 포럼에 왔습니다.

네, 코드를 보여주시면 도와드리겠습니다. 하지만 물론 제가 전체 코드를 수행할 것으로 기대하지는 않습니다.
 

고마워 얘들아!

귀하의 조언에 따라 저는 EA 내부에 다음과 같이 smth를 작성했습니다.

 if (MyCondition)
{
   PlaySound ( "my_alert.wav" );
     if ( MessageBox ( "Do you really want to run the script?" , 0 , MB_YESNO | MB_ICONQUESTION )!= IDNO )
     { 
      MyScript();
      DisableAllEA();
      Sleep(3000);    
     }
  }

MyCondition에서 정의한 특정 상황에서 이것은 내 경고를 재생하므로 무슨 일이 일어나고 있는지 확인해야 한다는 소리를 들을 수 있습니다.

모든 위치 닫기 스크립트인 스크립트를 실행할 것인지 묻는 메시지 상자가 나타납니다.

[YES] 버튼을 클릭하면 스크립트가 실행되고 모든 위치가 닫히고 MT4에서 [Experts] 버튼이 비활성화됩니다.

물론 특별한 이유가 없는 한 전문가를 비활성화할 필요는 없습니다.

다음 루프에서 EA가 조건을 찾지 못하면 스크립트를 트리거하지 않습니다.

분명히 이것은 EA가 모든 틱 에서 계속 반복되기 때문에 완벽한 해결책이 아닌 해결 방법일 뿐입니다.

스크립트가 독립 실행형이 아니라 EA 내부에 있기 때문에 스크립트가 실행될 때까지 Experts를 비활성화할 수 없습니다.

추신

이것이 작동하려면 EA 시작 부분에 다음을 포함해야 합니다.

#include < WinUser32.mqh >
 

방금 다른 해결책을 생각했습니다!!!

스크립트에 바로 가기 키(HOTKEY)를 할당할 수 있습니다.

따라서 키보드 이벤트를 에뮬레이트할 수 있습니다.

그래서, 더 나은:

 if (MyCondition)
{
      EnableScript();
      DisableAllEA();
      Sleep(3000);
}

독립 실행형 스크립트와 메시지 상자에도 alert.wav를 포함할 수 있습니다.

그리고 상황에 대한 조치를 취한 후 전문가를 활성화할지 여부를 결정할 수 있습니다.

이렇게 하면 과도하게 쌓일 위험이 없습니다.

물론 이것은 주요 사건에 대한 더 많은 연구가 필요합니다.

Ctrl+E 키보드 이벤트의 기능은 다음과 같습니다.

 void DisableAllEA() {
   keybd_event( 17 , 0 , 0 , 0 ); // CTRL down
   keybd_event( 69 , 0 , 0 , 0 ); // E down
   keybd_event( 69 , 0 , 2 , 0 ); // E up
   keybd_event( 17 , 0 , 2 , 0 ); // CTRL up
}

약간의 인터넷 검색으로 모든 키에 대한 숫자 코드를 찾을 수 있습니다.

또는 다음 링크를 사용할 수 있습니다. https://www.mql5.com/en/code

물론 keybd_event는 mql4의 일부가 아니므로 다음이 필요합니다.

 #include <WinUser32.mqh>
 

그리고, 그런데!

차트에서 지표로 EA를 구현하는 데 지친 사람이 있습니까?

그것은 잘 작동해야합니다!

그리고 차트에서 여러 지표를 실행할 수 있습니다!

나는 지표로 스크립트를 구현하려고 시도했고 그것은 잘 작동합니다!

 
Dadas :

그리고, 그런데!

차트에서 지표로 EA를 구현하는 데 지친 사람이 있습니까?

그것은 잘 작동해야합니다!


지표에서는 거래를 할 수 없으며 스크립트와 EA에서만 거래를 할 수 있습니다.
 
RaptorUK :

지표에서는 거래를 할 수 없으며 스크립트와 EA에서만 거래를 할 수 있습니다.


그렇다면 EA가 스크립트로 실행될 수 있습니까? 루프에서?

무한 루프에 있을 때만 컴퓨터는 결국 충돌합니다.

매 50ms 또는 smth와 같이 일부 티커에 의해 제어 되는 루프에서 스크립트를 트리거하는 방법이 있습니까?

MT4 틱 아님?

 
RaptorUK :

지표에서는 거래를 할 수 없으며 스크립트와 EA에서만 거래를 할 수 있습니다.


그리고 또 다른 생각:

따라서 키보드 이벤트 기능 을 사용하여 스크립트로 주문할 수 있습니다.

1. 자동으로 주문하는 스크립트를 작성하세요.

2. 그것에 HOTKEY를 할당하십시오.

3. 인디케이터로 실행되는 EA에서 키보드 이벤트를 정의합니다.

그런 다음 마감 주문에 대해서도 동일한 작업을 수행할 수 있습니다.

당신은 그것을 가지고 있습니다! 지표로 작동하고 제 역할을 하는 EA!

이 방법의 유일한 단점은 키보드 이벤트로 표시기를 비활성화할 수 없다는 것입니다. 차트에서 수동으로 제거하기만 하면 됩니다.

사유: