[경고, 주제 닫힘!] 포럼을 어지럽히지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 당신 없이는 어디에도 없습니다. - 페이지 369

 

내 EA를 테스트 할 때 Sleep() 함수가 작동하지 않습니다

주문이 끝난 후 전문가는 오랫동안 얼어붙었지만 대신 계속해서 잘못된 발견을 조각해야 합니다. 당신은 무엇을 조언하시겠습니까?


부울 cl() {if(주문 선택(0,SELECT_BY_POS)==true){ int t=주문 유형();
더블 l=OrderLots();
int tik=OrderTicket();Alert("tik=", tik);
}
if (t==OP_BUY) OrderClose(tik,l,Bid,3,Red);
if (t==OP_SELL) OrderClose(tik,l,Ask,3,Green);
수면(300000000);
}

 

테스터에서 수면 이 작동하지 않습니다.

 

어드바이저가 지표의 색상 변화에 반응할 수 있는지 알고 싶습니다. 예를 들어 그린-바이 레드-셀

그리고 화면에 다양한 아이콘이 나타나는데... MT4에 어떤 기능이 있는 걸까요?

 
unumi >> :

어드바이저가 지표의 색상 변화에 반응할 수 있는지 알고 싶습니다. 예를 들어 그린-바이 레드-셀

그리고 화면에 다양한 아이콘이 나타나는데... MT4에 어떤 기능이 있는 걸까요?

표시기의 색상이 변경되면 a) 해당 행이 다른 버퍼에 표시됩니다. 이는 상태를 이해하기 위해 질문하는 것으로 충분함을 의미합니다(MT4에서는 MT5와 달리 버퍼 색상을 동적으로 변경할 수 없음). b) 표시줄은 그룹 개체에 의해 표시됩니다. 그런 다음 ObjectGet(....)의 속성을 읽기만 하면 됩니다.

아이콘에도 동일하게 적용됩니다. 버퍼를 통해 코드로 출력하거나 개체로 출력할 수 있습니다.

 
Svinozavr >> :

표시기의 색상이 변경되면 a) 해당 행이 다른 버퍼에 표시됩니다. 이는 상태를 이해하기 위해 질문하는 것으로 충분함을 의미합니다(MT4에서는 MT5와 달리 버퍼 색상을 동적으로 변경할 수 없음). b) 표시줄은 그룹 개체에 의해 표시됩니다. 그런 다음 ObjectGet(....)의 속성을 읽기만 하면 됩니다.

아이콘에도 동일하게 적용됩니다. 버퍼를 통해 코드로 출력하거나 개체로 출력할 수 있습니다.

덕분에 얻었습니다

 

잘 자.

두 가지 관련 질문이 있습니다.

1. 각 틱에서 배열 요소 를 재설정하는 방법(예제에 따라 필요한 경우).

2. 배열 요소의 값을 올바르게 추가하는 방법.

예를 들어:

각 틱에서 배열 요소가 채워지고 1 또는 2 또는 3 또는 4.... 또는 15개의 요소가 채워질 수 있습니다.

그러나 매번 배열 요소 값의 산술 합계가 필요합니다.

 
gvi2504 писал(а) >>

잘 자.

두 가지 관련 질문이 있습니다.

1. 각 틱에서 배열 요소를 재설정하는 방법(예제에 따라 필요한 경우).

2. 배열 요소의 값을 올바르게 추가하는 방법.

예를 들어:

각 틱에서 배열 요소가 채워지고 1 또는 2 또는 3 또는 4.... 또는 15개의 요소가 채워질 수 있습니다.

그러나 매번 배열 요소 값의 산술 합계가 필요합니다.

1. 함수 ArrayInitialize(ArrayName,0).

2. 배열을 채우는 과정에서 즉시 요약합니다. 변수(예: sum)를 선언하고 값 0을 할당한 다음 배열을 채울 때 이 변수에 값을 추가합니다.

 
Integer >> :

1. 함수 ArrayInitialize(ArrayName,0).

2. 배열을 채우는 과정에서 즉시 요약합니다. 변수(예: sum)를 선언하고 값 0을 할당한 다음 배열을 채울 때 이 변수에 값을 추가합니다.

괜찮은.

정확히 무엇이 필요합니다. 정말 감사합니다

 
Bion писал(а) >>

수면(300000000);

이러한 긴 수면 시간은 테스터에서 Sleep()이 작동하더라도 옵션이 아닙니다. 개봉 후에는 개봉 시간을 기억할 수 있습니다.

LastTime=TimeCurrent();

start() 함수의 시작 부분에서 다음을 확인하십시오.

if(TimeCurrent()<LastTime+Pause)return(0);

일시 중지 - 개봉 후 "잠드는" 시간(초).

 
Integer писал(а) >>

이러한 긴 수면 시간은 테스터에서 Sleep()이 작동하더라도 옵션이 아닙니다. 개봉 후에는 개봉 시간을 기억할 수 있습니다.

LastTime=TimeCurrent();

start() 함수의 시작 부분에서 다음을 확인합니다.

if(TimeCurrent()<LastTime+Pause)return(0);

일시 중지 - 개봉 후 "잠드는" 시간(초).

당신이 제안한대로 했다

날짜 시간 마지막 시간;
datetimePause=3600;

정수 시작()
{
if(TimeCurrent()<LastTime+Pause)return(0);

...

부울 cl() {if(주문 선택(0,SELECT_BY_POS)==true){ int t=주문 유형();
더블 l=OrderLots();
int tik=OrderTicket();Alert("tik=", tik);
}
if (t==OP_BUY) OrderClose(tik,l,Bid,3,Red);
if (t==OP_SELL) OrderClose(tik,l,Ask,3,Green);
LastTime=TimeCurrent();
}

마찬가지로 테스터에 반응하지 않고 조건에 따라 주문을 모두 연달아 열지만 동시에 시간에 반응하지 않습니다.

그리고 테스터에서는 대기 중인 주문 수명 매개변수가 응답하지 않습니다. 즉, 떠날 시간이 되었을 때 삭제되지 않습니다.

이렇게 되어야 합니까?

주문이 마감된 후 경과된 시간의 매개변수를 테스트에 고려하는 방법은 무엇입니까?

사유: