[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 282

 

여러분, 지표( FX5_Divergence_V2.1.mq4 )에서 Expert Advisor로 발산 신호를 가져오는 방법을 가르쳐 주십시오.

표시기의 버퍼 2와 3은 EMPTY_VALUE를 반환합니다.

 
다음과 같은 방식으로 틱 기록 을 저장하는 틱 피커가 있는 사람이 있습니까? 틱 도착 시간, 묻기, 입찰가? 코드베이스에는 묻지 않는 수집기만 있습니다.
 
Sergey_Rogozin :

여러분, 지표( FX5_Divergence_V2.1.mq4 )에서 Expert Advisor로 발산 신호를 가져오는 방법을 가르쳐 주십시오.

표시기의 버퍼 2와 3은 EMPTY_VALUE를 반환합니다.

내가 당신을 위해 스크립트를 작성 했습니까? 모든 것을 갖추고 있습니다. 경고와 함께 메시지를 표시하는 대신 처리를 입력하십시오. DoubleToString()에 0이 표시되면 소수점 이하 여섯 자리 대신 8을 입력할 수 있습니다. 어쨌든 신호가 있고 스크립트가 신호를 읽습니다. 조금만 생각하고 노력하세요.
 
artmedia70 :
내가 당신을 위해 스크립트를 작성 했습니까? 모든 것을 갖추고 있습니다. 경고와 함께 메시지를 표시하는 대신 처리를 입력하십시오. DoubleToString()에 0이 표시되면 소수점 이하 여섯 자리 대신 8을 입력할 수 있습니다. 어쨌든 신호가 있고 스크립트가 신호를 읽습니다. 조금만 생각하고 노력하세요.
완고한 사람에게서. 그에게 한 번 더 설명하겠습니다.
화살표가 있는 버퍼의 빈 값은 0 대신 EMPTY_VALUE 값으로 채워지며 숫자는 2147483647과 같습니다. 화살표가 있는 경우 값이 다릅니다(예: 0.000031).
"빈" 값을 프로그래밍 방식으로 필터링해야 합니다. 비교할 때 숫자 2147483647처럼 보이기 때문입니다.
예를 들어 이렇게 하면 효과가 있습니다. 똑똑한 사람이 더 아름답게 만들 수 있습니다.

 double buy= iCustom ( NULL , 0 , "FX5_Divergence_V2.1" , 2 ,CountBar);
// отфильтровывает значения EMPTY_VALUE , заменяя их на 0 
if (buy== EMPTY_VALUE ) buy= 0.0 ;
// теперь значения buy могут быть либо 0, либо значением стрелки, например, 0,000032
 
granit77 :
완고한 사람에게서. 그에게 한 번 더 설명하겠습니다.
화살표가 있는 버퍼의 빈 값은 0 대신 EMPTY_VALUE 값으로 채워지며 숫자는 2147483647과 같습니다. 화살표가 있는 경우 값이 다릅니다(예: 0.000031).
"빈" 값을 프로그래밍 방식으로 필터링해야 합니다. 비교할 때 숫자 2147483647처럼 보이기 때문입니다.
예를 들어 이렇게 하면 효과가 있습니다. 똑똑한 사람이 더 아름답게 만들 수 있습니다.

이제 사람은 버퍼 2와 3이 0만 출력되도록 작성할 것입니다. :)))

젠장, 간단한 논리: 버퍼 값이 EMPTY_VALUE 와 같지 않으면 이 막대에는 화살표가 있고 따라서 신호가 있습니다.
그리고 이 공허한 가치를 어떻게 제시하고 무엇을 비교할 것인가는 모두의 취향 문제입니다.

 
artmedia70 :

어쨌든, 젠장, 당신은 하나님께 감사하지 않습니다 ...


섬으로!!! :)

동일한 숫자를 (어드바이저를 통해) 쓰는 것이 흥미롭고 데이터 창을 통해 EMPTY_VALUE가 표시됩니다! 이것은 어떻게 고칠 수 있습니까?


 
granit77 :
완고한 사람에게서. 그에게 한 번 더 설명하겠습니다.
화살표가 있는 버퍼의 빈 값은 0 대신 EMPTY_VALUE 값으로 채워지며 숫자는 2147483647과 같습니다. 화살표가 있는 경우 값이 다릅니다(예: 0.000031).
"빈" 값을 프로그래밍 방식으로 필터링해야 합니다. 비교할 때 숫자 2147483647처럼 보이기 때문입니다.
예를 들어 이렇게 하면 효과가 있습니다. 똑똑한 사람이 더 아름답게 만들 수 있습니다.



대충 이해

 

바로 artmedia70 입니다.

나는 스크립트를 정말로 사용할 수 없었다. granit77 쓰기 와 거의 동일하게 하려고 했지만 작동하지 않았습니다.

if (구매== EMPTY_VALUE ) 구매= 0.0 ; - 결과적으로 영구적으로 "0"이 중단됩니다. 알림은 표시기에서 나오며 어드바이저에 연결된 알림은 작동하지 않습니다.

좋아, 고마워, 나는 계속 "고통"할 것이다 ...)))

 
Sergey_Rogozin :

바로 artmedia70 입니다.

나는 스크립트를 정말로 사용할 수 없었다. granit77 쓰기 와 거의 동일하게 하려고 했지만 작동하지 않았습니다.

if (구매== EMPTY_VALUE ) 구매= 0.0 ; - 결과적으로 영구적으로 "0"이 중단됩니다. 알림은 표시기에서 오지만 어드바이저에 연결된 알림이 작동하지 않습니다.

좋아, 고마워, 나는 계속 "고통"할 것이다 ...)))

당신은 더 이상 혼자가 아닙니다 - 당신은 고통 받고 있습니다, 나는 이미 지표를 수정하고 있습니다 :)))
 
todem :

동일한 숫자를 (어드바이저를 통해) 쓰는 것이 흥미롭고 데이터 창을 통해 EMPTY_VALUE가 표시됩니다! 이것은 어떻게 고칠 수 있습니까?

버퍼 값을 화면에 표시할 때 무엇을 하나요? 모두 동일한 숫자 데이터가 표시됩니다. 이제 빈 문자열이나 "Empty value" 또는 " EMPTY_VALUE "라는 비문을 표시하려면 문자열 변수로 출력합니다.
저것들. :
문자열 값;
if ( 버퍼 값 ==EMPTY_VALUE) val ="EMPTY_VALUE";
If ( 버퍼 값 !=EMPTY_VALUE) val =DoubleToString( 버퍼 값 , 8);
버퍼 의 값이 아니라 변수 val의 값을 표시합니다.
예: 주석("값 = ", val );