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

 
Ekburg :

결과는 동일합니다 .. 그러나 이러한 기능은 무엇이며 그 의미는 무엇입니까? 전에 보거나 사용한 적이 없는


이것은 함수가 아니라 수정 전 확인일 뿐이며 SL 또는 TP의 값이 이전 값과 충분히 다르면 수정합니다. DC를 괴롭히지 않기 위해서만 한 핍으로 TR 또는 SL을 수정하는 것은 의미가 없습니다.
 
Sepulca :


이것은 함수가 아니라 수정 전 확인일 뿐이며 SL 또는 TP의 값이 이전 값과 충분히 다르면 수정합니다. DC를 괴롭히지 않기 위해서만 한 핍으로 TR 또는 SL을 수정하는 것은 의미가 없습니다.

정말 감사합니다 계속 사용하겠습니다
 
TarasBY :
(당신이 모든 것을 다시 읽거나 "그렇게 읽습니다") 당신을 믿지 말자 - 오류 1번에 대한 질문은 교과서에서 다루고 있으며 포럼에서 반복적으로 논의되었습니다. 여기 에서 답을 찾으십시오.


글쎄, 물론 나는 모든 것을 읽지 않았지만 내 문제와 관련된 것을 몇 번 조심스럽게 다시 읽고이 오류의 원인을 찾았지만 코드에없는 것 같습니다 .. 바로 지금 나는' 귀하의 링크를 보고 이 주제에 대한 기사를 다시 읽을 것입니다. 점수를 받지 못한 데 도움을 주셔서 감사합니다. :)
 

안녕하세요 포럼 회원 여러분,

나는 나 자신에게 조언자를 쓰기로 결정했다. MT4를 거래하면서 mql4에 대한 자습서를 읽고 있습니다. 그리고 여기 흥미로운 것이 있습니다. 이 튜토리얼에서 다운로드한 일반적인 mqh 파일은 MetaEditor 5에서 (자동으로) 열립니다(Mt5도 설치되어 있습니다)! 이것은 그들이 Mt4에서 작동하지 않는다는 것을 의미합니까?

 
Ekburg :

결과는 동일합니다 .. 그러나 이러한 기능은 무엇이며 그 의미는 무엇입니까? 전에 보거나 사용한 적이 없는


이것은 함수가 아니라 정규화되지 않은 숫자를 비교하는 방법입니다. 그것들은 서로 비교할 수 없지만 다른 것에서 하나를 뺀 결과는 0과 비교할 수 있습니다.

내 수표는 다음과 같습니다.

//+------------------------------------------------------------------+ 
 double ND( double nd){ return ( NormalizeDouble (nd, Digits ));}
//+------------------------------------------------------------------+ 
if (ND(price)!=OrderOpenPrice()||ND(SL)!=OrderStopLoss()||ND(TP)!=OrderTakeProfit()||Expiration!=OrderExpiration())
   {
   OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color= CLR_NONE );
}
else return ;
     
 
lottamer :

안녕하세요 포럼 회원 여러분,

나는 나 자신을 고문으로 쓰기로 결정했다. MT4를 거래하면서 mql4에 대한 자습서를 읽고 있습니다. 그리고 여기 흥미로운 것이 있습니다. 이 튜토리얼에서 다운로드한 일반적인 mqh 파일은 MetaEditor 5에서 (자동으로) 열립니다(Mt5도 설치되어 있습니다)! 이것은 그들이 Mt4에서 작동하지 않는다는 것을 의미합니까?


컴파일을 시도하면 알게 될 것입니다.
 
rigonich :


이것은 함수가 아니라 정규화되지 않은 숫자를 비교하는 방법입니다. 그것들은 서로 비교할 수 없지만 다른 것에서 하나를 뺀 결과는 0과 비교할 수 있습니다.

내 수표는 다음과 같습니다.

올바르게 말하지만 "자신의 방식대로"하십시오 ... 그러나 더 유능하게 (결국) :

 //+------------------------------------------------------------------+ 
 double ND( double nd){ return ( NormalizeDouble (nd, Digits ));}
//+------------------------------------------------------------------+ 
if (ND (price - OrderOpenPrice()) != 0.0 || ND (SL - OrderStopLoss()) != 0.0 || ND (TP - OrderTakeProfit()) != 0.0 || Expiration != OrderExpiration())
{OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color= CLR_NONE );}

... 모든 비교 조건에 동의하지는 않지만. 여기 에서 조건에 대해 읽을 수 있습니다.

 
rigonich :

컴파일하고 알아내십시오.

네..4번째 편집기로 이 mqh 파일을 열면 됩니다...
 
Desead :

선택할 수 있는 모든 통화 쌍인 가격 차트를 정규화해야 합니다. 지표에 필요합니다. 현재 값을 이전 값으로 나누려고 했습니다. 특정 오실레이터가 1 주위에 나타납니다. 이것은 차트의 특성을 유지하는 데 필요한 것이 아닙니다. 차트를 절대 척도에서 상대적 척도로 옮겨야 한다는 생각이 들었습니다. 즉, 견적의 백분율 변화를 볼 수 있습니다. 구현했습니다. 그것은 이미 더 좋고 실질적으로 당신이 필요로 하는 것입니다. 하지만 내 마지막 바람은 [0:1] 범위의 따옴표를 정규화하는 것입니다. 그리고 이 마지막 단계를 수행하는 방법을 상상할 수 없습니다. 그건 그렇고, 당신이 필요로하는 것, 그러나 부르주아에서 나는 러시아어로 같은 것을 가질 것입니다 : http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

두 번째 질문은 주문 삭제에 관한 것입니다. 나는 이미 그것과 싸우는 데 지쳤습니다. 모든 주문은 정상적으로 삭제되지 않으며 그게 전부입니다. 삭제하려는 루프는 다음과 같습니다.

거의 항상 보류 중인 주문 중 일부가 남아 있고 FOR 주기에 WHILE 주기를 추가했지만 여전히 삭제되지 않은 주문이 있습니다. 제거해야 할 연기가 많이 있습니다. 약 20, 아마도 이것에 어떤 종류의 어려움이 있습니까?


만세, 주문 삭제 문제를 해결한 것 같습니다. "필요한"(삭제해야 할) 주문의 수 -- Total --을 별도의 함수로 간주하여 이 함수를 호출한 다음 조건( Total>0)일 때 삭제 루프 for(int i= Total-1 ;i<=0l;i --), 다시 "필요한" 수를 세는 기능, 지정된 수준에 도달했을 때 while 에서 빠져나와 삭제를 시도하는 카운터. 따라서 모든 것이 제거됩니다.
 
TarasBY :

다음은 보류 중인 주문을 포함하여 주문을 삭제하는 예입니다( 주문으로 삭제됨).

제공한 코드(선택 필터에서)에 모든 지연이 존재하는 것은 아닙니다. 오류의 또 다른 변형: (귀하의 코드에서) 열 때 지연으로 받은 Magic을 확인하십시오.

답변 해주셔서 감사합니다. 모두 필요하지 않고 buylimit와 Sellimite만 있으며, 나는 그들만 넣었습니다. 마술사도 어디에나 동일하게 존재합니다. 나는 당신이 제공한 코드를 보았고 거기에 너무 많은 것이 있었고 그것을 알아 내려고 앉아 있었습니다. 일반적으로 스스로 문제를 해결하지 못하면 앉아서 스크립트를 더 철저히 구문 분석할 것입니다. 그렇지 않으면 여기에서 모든 것을 삭제하지 않습니다(

나는 무언가에 대해 생각하고 있다. 한 곳에서 모든 지연된 항목을 삭제할 수 있습니다. 로봇을 언로드할 때 deinit 섹션에 있는 항목입니다. 이 섹션에 시간 제한이 있습니까? 따라서 명령은 떠날 시간이 없습니까? 결국 주문이 적으면 다 똑똑히 제거되고 그리드가 완전히 펼쳐지면 PPC는 무슨 일이야, 항상 수십 개의 주문이 남아 있고 손으로 그것을 청소하는 옵션이 아닌 일종의 ATS처럼.

사유: