포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 1109

 
LRA :
이 질문은 예를 들어 교육 시스템과 관련이 있습니다. 배포 키트 를 얻으려면 플래시 드라이브에 MT4를 설치하십시오. 또는 터미널 폴더를 플래시 드라이브에 복사합니다. 그런 다음 이 폴더는 여러 번 컴퓨터에 복사할 수 있습니다. 이러한 배포 키트는 백업, 백업, 복원 용도로 유용합니다... /portable 키로 터미널을 실행하는 것이 좋습니다. 그렇지 않으면 컴퓨터에 불편한 추가 폴더가 생성됩니다. 이 질문은 링크의 다른 스레드에서 더 자세히 논의됩니다.

설치하는 방법?

인터넷에서 아무것도 설치하지 않는 다운로드한 설치 프로그램이 있습니다.

 

설치 프로그램을 실행하면 파일 다운로드 표시 창이 열립니다.

그리고 또 다른 창이 나타납니다

설치 프로그램이 내게 없는 프록시 설정을 지정하도록 요청합니다.

 
 
polpolpol :

설치 프로그램을 실행하면 파일 다운로드 표시 창이 열립니다.

그리고 또 다른 창이 나타납니다

설치 프로그램은 내가 가지고 있지 않은 프록시 서버 설정을 지정하도록 요구합니다.

바이러스 백신을 끄고 메모리에서 제거하십시오.
 

안녕하세요. 다음 항목이 맞습니까? 호출되면 함수는 보류 중인 모든 주문 을 삭제해야 합니다.

 void DeletedOrders()
         {
         for ( int i= 0 ; i<= OrdersTotal (), i++)
             {
             if ( OrderSelect (i,SELECT_BY_POS))
                type=OrderType();
             if (type== 2 || type== 3 || type== 4 || type== 5 )
                OrderDelete(i, clrNONE );
             }
         return ();
         }  
 
bobrush :

안녕하세요. 다음 항목이 맞습니까? 호출될 때 함수는 모든 보류 주문을 삭제해야 합니다.

당연히 아니지. 루프의 시퀀스 번호가 아니라 티켓을 지정해야 합니다.   주문 삭제(주문 티켓(), clrNONE );

음, 조건은 다음과 같이 충분합니다. if (type>1 ).

그리고 오류 코드를 더 자주 출력하는 것이 좋습니다. 도움이 됩니다.

아, 예, "void" 유형의 함수는 아무 것도 반환하지 않아야 합니다. return() 은 일반 실행에서 필요하지 않습니다. 단, 함수가 일부 조건에 의해 조기에 종료되는 경우에만 가능합니다.

 
bobrush :

안녕하세요. 다음 항목이 맞습니까? 호출될 때 함수는 모든 보류 주문을 삭제해야 합니다.

잔액 및 계정 신용 작업에 대해 각각 type=6 및 type=7인 문서화되지 않은 주문 유형이 있다는 점을 염두에 두십시오.

i<= OrdersTotal () 대신 OrderSelect에 대한 추가 호출 없이 i< OrdersTotal ()이 더 좋습니다.

그리고 사이클은 끝에서 처음으로 전달되어야 합니다. 그렇지 않고 i번째 요소가 제거된 후 주문 배열이 업데이트된 경우 i번째 위치의 이전 i+1번째 요소는 건너뜁니다. 끝에서 시작하는 것이 좋습니다.

개발자가 주문 배열의 순서를 보장하지 않는다는 점을 고려하면 실제로 배열의 주문 시퀀스 중 하나를 삭제한 후에도 해당 배열의 순서가 유지된다는 보장은 없습니다. 그렇게 하는 것이 매우 안전할 것입니다. 보류 중인 주문 이 감지될 때까지 주기를 비틀었습니다. 우리는 사이클을 중지합니다. 찾은 주문을 삭제합니다. Sleep(100)이 주문 배열을 업데이트하기를 기다리고 있습니다. 그런 다음 이번에는 새로운 주문 배열로 보류 중인 주문을 검색하는 주기입니다. 전체 열거이며 이전 주기를 재개하지 않습니다. 그리고 보류 중인 주문을 더 이상 찾을 수 없는 순간까지 트리플렛(검색 주기, 하나의 주문 삭제, 어레이 업데이트 대기)이 계속됩니다.

 
evillive :

당연히 아니지. 루프의 시퀀스 번호가 아니라 티켓을 지정해야 합니다.   주문 삭제(주문 티켓(), clrNONE );

음, 조건은 다음과 같이 충분합니다. if (type>1 ).

그리고 오류 코드를 더 자주 출력하는 것이 좋습니다. 도움이 됩니다.

아, 예, "void" 유형의 함수는 아무 것도 반환하지 않아야 합니다. return() 은 일반 실행에서 필요하지 않습니다. 단, 함수가 일부 조건에 의해 조기에 종료되는 경우에만 가능합니다.


고맙습니다!
 
Vlad143 :

잔액 및 계정 신용 작업에 대해 각각 type=6 및 type=7인 문서화되지 않은 주문 유형이 있다는 점을 염두에 두십시오.

i<= OrdersTotal () 대신 OrderSelect에 대한 추가 호출 없이 i< OrdersTotal ()이 더 좋습니다.

그리고 사이클은 끝에서 처음으로 전달되어야 합니다. 그렇지 않고 i번째 요소가 제거된 후 주문 배열이 업데이트된 경우 i번째 위치의 이전 i+1번째 요소는 건너뜁니다. 끝에서 시작하는 것이 좋습니다.

개발자가 주문 배열의 순서를 보장하지 않는다는 점을 고려하면 실제로 배열의 주문 시퀀스 중 하나를 삭제한 후에도 해당 배열의 순서가 유지된다는 보장은 없습니다. 그렇게 하는 것이 매우 안전할 것입니다. 보류 중인 주문이 감지될 때까지 주기를 비틀었습니다. 우리는 사이클을 중지합니다. 찾은 주문을 삭제합니다. Sleep(100)이 주문 배열을 업데이트하기를 기다리고 있습니다. 그런 다음 이번에는 새로운 주문 배열로 보류 중인 주문을 검색하는 주기입니다. 전체 열거이며 이전 주기를 재개하지 않습니다. 그리고 보류 중인 주문을 더 이상 찾을 수 없는 순간까지 트리플렛(검색 주기, 하나의 주문 삭제, 어레이 업데이트 대기)이 계속됩니다.


저것들. for( OrdersTotal() -1,i=0,i--) 및 절전 및 중단 루프가 끝날 때?
 
Vlad143 : Sleep(100)이 주문 배열을 업데이트하기를 기다리고 있습니다.
IMHO, IMHO, Sleep (100) 대신 개인적인 의견이 더 좋습니다 . while(!RefreshRates()); 끝에 필수 세미콜론