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

 
Dadas :


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

MT4 틱 아님?


나는 이것에 스스로 대답하려고 노력할 것입니다.

start() 함수가 브로커의 틱을 의미하는 새 따옴표로 실행되기 때문에 불가능합니다.

따라서 start() 함수 내부에 루프가 있더라도 새 틱이 들어올 때만 루프가 실행됩니다.

그렇기 때문에 브로커에게 이길 수 없습니다!

하지만 EA를 다음과 같은 스크립트로 실행했을 때:

 int start() {

while ( 1 == 1 ) {

MyEA();

}
}

그 루프 때문에 내 컴퓨터가 느려지기 시작했습니다.

나는 일요일에 이것을 시도 했으므로 시장이 닫혔습니다.

 
Dadas :


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

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

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

MT4 틱 아님?


스크립트는 start() 함수 내에 유한/무한 루프를 추가하지 않는 한 한 번 실행됩니다. 자신이 생성한 틱으로 스크립트를 트리거하려면 EA로 만들고 오프라인 차트에 올리세요.
 
Dadas :


하지만 EA를 다음과 같은 스크립트로 실행했을 때:

그 루프 때문에 내 컴퓨터가 느려지기 시작했습니다.


컴퓨터를 업그레이드해야 합니다. . . 또는 교체됩니다.
 
RaptorUK :

컴퓨터를 업그레이드해야 합니다. . . 또는 교체됩니다.

그것은 사실입니다! 그것은 오래된 것입니다.
 
RaptorUK :

스크립트는 start() 함수 내에 유한/무한 루프를 추가하지 않는 한 한 번 실행됩니다. 자신이 생성한 틱으로 스크립트를 트리거하려면 EA로 만들고 오프라인 차트에 올리세요.

오프라인 차트에서는 거래할 수 없습니다.
 
Dadas :

오프라인 차트에서는 거래할 수 없습니다.
왜 안 돼 ?
 

다다스 2012.08.12 16:34
다다스 :


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

MT4 틱 아님?


나는 이것에 스스로 대답하려고 노력할 것입니다.

start() 함수가 브로커의 틱을 의미하는 새 따옴표로 실행되기 때문에 불가능합니다.

따라서 start() 함수 내부에 루프가 있더라도 새 틱이 들어올 때만 루프가 실행됩니다.

그렇기 때문에 브로커에게 이길 수 없습니다!

하지만 EA를 다음과 같은 스크립트로 실행했을 때:

 int start() {

while ( 1 == 1 ) {

MyEA();

}
}

그 루프 때문에 내 컴퓨터가 느려지기 시작했습니다.

나는 일요일에 이것을 시도 했으므로 시장이 닫혔습니다.

안녕하세요 다다스입니다.

스크립트는 틱 없이 실행되고 EA는 틱으로 실행됩니다.

무한 루프를 사용할 때 Sleep() 추가( https://docs.mql4.com/common/Sleep )

아래 코드를 스크립트로 시도하고 인터넷 연결을 끄고 작업 관리자를 열고 스크립트를 차트에 첨부하십시오. 스크립트는 틱이 필요하지 않고 프로세서를 너무 많이 사용하지 않고 무한 반복됩니다.

   int n;
   while ( IsStopped () == false) // or while (true)
    {
    n++;
     Alert (n);
    
     Sleep ( 500 ); // add this !
    }

 
.
 
RaptorUK :
왜 안 돼 ?


저를 깨우쳐주세요!

오프라인 차트에서 실시간 라이브 거래를 하려면 어떻게 해야 하나요?

 
onewithzachy :

안녕하세요 다다스입니다.

스크립트는 틱 없이 실행되고 EA는 틱으로 실행됩니다.

무한 루프를 사용할 때 Sleep() 추가( https://docs.mql4.com/common/Sleep )

아래 코드를 스크립트로 시도하고 인터넷 연결을 끄고 작업 관리자를 열고 스크립트를 차트에 첨부하십시오. 스크립트는 틱이 필요하지 않고 프로세서를 너무 많이 사용하지 않고 무한 반복됩니다.


정말 감사합니다!

너무 간단해서 스스로 생각했어야 했는데...

피곤해, 나는 QUESTION. 내 오래된 컴퓨터처럼 - LOL!

알다시피, 나는 smth를 조금 다르게 생각하고 있었습니다.

MT4 라이브 트레이딩에서 틱을 무시하는 방법을 생각하고 있습니다!

요점은 라이브 거래 중에 틱이 EA를 제어하므로 브로커도 제어할 수 있다는 것입니다.

다시 말해서, 내 EA가 어떤 조건에서 주문을 마감하기를 원할 경우 - 내 EA가 그렇게 하기를 원합니다.

requotes(다른 방법은 없지만 브로커 변경)를 제외하고는 차트에서 볼 수 있는 것처럼 너무 자주 발생합니다.

내 주문이 마감되어야 하지만 다음 틱까지 계속 걸려 있다가 실패합니다.

내 EA에 작성하는 경우:

 if ( AccountProfit ()> 0 ) { CloseAllOrders(); }

그런 다음 @ 1 Pip 이익 이상을 마감하고 싶습니다. 나는 그것이 1 Pip에 매달려 있고 아무 것도하지 않을 것으로 기대하지 않습니다!

BTW, 저는 EURUSD에서 1핍의 고정 스프레드로 거래하고 있습니다.

따라서 나는 명백한 것이 필요하지 않으며 Sleep()도 오프라인 역방향 테스트를 위한 솔루션이 아닙니다.

BTW, 모든 역방향 테스트는 아무 것도 좋지 않습니다. 실시간 테스트가 아닙니다.

글쎄, 그것은 많은 것을 배우기 위해 약간의 관찰과 차트 공부를하는 것이 좋습니다!

그러나 실시간 거래에서는 미래를 알 수 없으며 EA를 정말로 신뢰하지 않는 한 실수를 할 것입니다!

차트에서 보는 것보다 더 믿으십시오! - 가장 어려운 부분입니다!

그러니 여러분, 제 글을 이해하면서 읽어주세요!