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

 
귀하의 버전에서는 작동하고 ETO는 이미 큰 돌파구입니다). 나는 조건이 필요하지 않습니다 ( Ask<tmp || Ask>tmp), 그러나 단순히 진부한 ( Ask<=tmp). 즉, 적어도 하나의 진드기가 다른 방향으로 나타나자 마자 ... 그리고 그것은주기와 함께) .. 진실이 근처 어딘가에 있다는 것을 알고 있습니다))). 실생활에서 작동하더라도 테스터를 통해 하나님의 축복을 받으십시오.
 
maryan.dirtyn >> :
в вашем варианте работает, и ЕТО уже большой прорыв ). только мне нужно условие не ( Ask<tmp || Ask>tmp), а просто банально ( Ask<=tmp). тоесть как только появиться хоть один тик в другую сторону... и именно с циклом).. я знаю, истина где то рядом))). хотя б на реале работало, бог с ним, с тестером то.

글쎄, 같은 것 - 같은 논리. 루프 전에 변수를 루프 조건이 참이 되는 상태로 가져옵니다. 또한 루프에서 반복할 때마다 RefreshRates()를 사용하여 데이터를 업데이트한 후 견적이 최신인지 확인한 다음 일부 작업을 수행하고 루프를 강제로 중단합니다. 루프 아래의 코드를 실행하려면 break 명령으로 인터럽트하십시오. 실행되지 않아야 하는 경우 return(0) 명령으로 어드바이저의 int start() 함수 작업을 중단합니다.
 

나는 이것을 하는 방법의 논리를 이해한다

 double tmp=Ask; while (Ask<=tmp) tmp=Ask; Print("Заработало");
 double tmp= 0 ;   while (Ask<=tmp || tmp== 0 ) { RefreshRates(); if (Ask>tmp) break ;} Print("Заработало");
 
maryan.dirtyn >> :

나는 이것을하는 방법의 논리를 이해합니다 .. 왜 하나의 건설이 작동하지 않는지 이해가되지 않습니다. 몇 가지가 더 많은 옵션을 열거하는 심연으로 빠져 들었습니다.


눈을 감고 루프의 각 반복에서 무슨 일이 일어나는지 상상해야 합니다.

첫 번째 옵션:

속도는 에이스와 동일합니다. 동등 조건이 충족되므로 루프는 거의 무한대의 반복 횟수로 진행됩니다. 새로운 인용문이 나온다고 해도 그것이 순환 진리 조건을 위반한다는 것은 사실이 아니기 때문입니다. 몇 번의 연속 떨어지는 질문과 주기를 종료하기 위해 거의 무한정 기다릴 수 있습니다...

 

솔직히 말해서, MQL4 튜토리얼이 나왔을 때, 나는 그것을 뒤집어서 돌아오지 않았다. 나는 이 에세이의 저자가 while() 루프를 어디에나 두는 것이 마음에 들지 않았다. 이것은 이 책에서 MQL을 배우려는 많은 사람들에게 흔적을 남겼습니다.

당신의 Expert Advisor가 이 주기 없이는 할 수 없는 그런 끔찍한 일을 하고 있다고 말해주세요. 글쎄, 당신은 통제력을 잃으면서 무한 반복으로 이 루프를 실행하는 것이 얼마나 쉬운지 스스로 알 수 있습니다. 귀하의 경우 for() 루프를 사용할 수 있습니까? 글쎄, 아니면 별도의 간단한 기능을 작성? ...

 

그들이 말하는 것처럼 시간 왜건) .. 가장 중요한 것은 그것이 작동한다는 것입니다. 떨어지는 칼을 사는 데 지쳤습니다. 가장 세련되지 않은 경우에도 문제의 해결책이 필요합니다.

 double tmp=Ask; 
                 while (Ask<=tmp) tmp=Ask; 
                                               Print ( "Заработало" );
 
drknn >> :

솔직히 말해서, MQL4 튜토리얼이 나왔을 때, 나는 그것을 뒤집고 다시 돌아오지 않았다. 나는 이 에세이의 저자가 while() 루프를 어디에나 두는 것이 마음에 들지 않았다. 이것은 이 책에서 MQL을 배우려는 많은 사람들에게 흔적을 남겼습니다.

당신의 Expert Advisor가 이 주기 없이는 할 수 없는 그런 끔찍한 일을 하고 있다고 말해주세요. 글쎄, 당신은 통제력을 잃으면서 무한 반복으로 이 루프를 실행하는 것이 얼마나 쉬운지 스스로 알 수 있습니다. 귀하의 경우 for() 루프를 사용할 수 있습니까? 글쎄, 아니면 별도의 간단한 기능을 작성?...

글쎄, 나는 오랫동안 mql에 익숙하지 않습니다. 벌써 2년만에 적응이 되었네요.. 네, 필요한 것입니다. 그건 그렇고 주기적으로 교과서로 돌아가는데 뭔가 하품을 하지 않았나)..토끼가 안보이나요? 그러나 그것은 .. 모든 것이 그렇게 간단하지는 않습니다.
 
방해해서 미안하지만 이 형태에서는 사이클이 끝이 없을 것입니다. tmp는 Ask보다 분명히 큰 초기 값이 할당되어 정적으로 설정되어야 합니다. 또는 제안된 구성을 OR과 함께 사용하는 경우 =0입니다. 따라서 Ask는 항상 = tmp가 됩니다.
 
Svinozavr >> :
Извините, что вмешиваюсь, но в таком виде цикл и будет бесконечным. tmp нужно сделать static с присвоением ей началного значения заведомо большего Ask. Или =0, если использовать предложенную конструкцию с ИЛИ. А так Ask всегда будет = tmp.
intervene plz.. 작업은 간단합니다. 가격이 하락하는 동안 다른 방향으로 틱이 나타날 때까지 구매하지 마십시오. 코드가 날아가는 동안 아무 것도 만지지 마십시오.
 

여기에 순환이 있는 이유는 명확하지 않습니다. 각 틱 의 가격을 확인하고 현실에 따라 행동하십시오.