MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1426 1...141914201421142214231424142514261427142814291430143114321433...1953 새 코멘트 ANDREY 2021.03.20 16:17 #14251 Aleksei Stepanenko : 두 행의 값을 정렬하시겠습니까, 아니면 첫 번째 행만 정렬하시겠습니까? 처음에만. 코드에 오류가 있습니다 죄송합니다... 코드를 제거하는 방법을 모르겠습니다. 따라서 LoY[S2][0]=Bid 대신 블록 2에서 간단히 말하겠습니다. LoY[0][52]=입찰가 필요 Aleksei Stepanenko 2021.03.20 16:19 #14252 행과 열을 동시에 바꿀 수 없는 이유는 무엇입니까? double LoY[ 31 ][ 2 ]; Aleksei Stepanenko 2021.03.20 16:27 #14253 즉시 올바른 순서로 수행하면 채우려는 셀의 이름을 0.5555 값으로 지정할 수 있습니까? ANDREY 2021.03.20 16:28 #14254 Aleksei Stepanenko : 행과 열을 동시에 바꿀 수 없는 이유는 무엇입니까? 그런 다음 ArrayFill(LoY,0,10,0.5555); 작동 안 할 것이다. 결국, 그녀는 값을 변경하는 배열 요소 가 *연속*으로 이동해야 합니다. 내가 그녀에게 LoY[31][2]를 먹이면 어떻게 될까요? 그런 다음 값을 변경해야 하는 배열 요소는 1을 통과합니다. 이 경우 먼저 배열의 31행을 한 줄에 순서대로 "추가"합니다. 포럼을 어지럽히 지 않도록 [ARCHIVE] 포럼을 어지럽히 지 [경고, 주제 닫힘!] 포럼을 ANDREY 2021.03.20 16:30 #14255 Aleksei Stepanenko : 즉시 올바른 순서로 수행하면 채우려는 셀의 이름을 0.5555 값으로 지정할 수 있습니까? 셀의 첫 번째 줄에는 첫 번째부터 열 번째까지 포함됩니다. 그러나 값을 0.5555로 채우고 나면 전체 첫 번째 줄을 정렬해야 합니다. 예를 들어 오름차순으로 가정해 보겠습니다. ArrayFill (LoY,0,10,0.5555) 대신 루프의 반복이 적합하지 않습니다. 코드의 버그를 수정했습니다 Aleksei Stepanenko 2021.03.20 16:43 #14256 스크립트는 다음과 같습니다. void OnStart () { int arr[ 31 , 2 ]={ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 }; //до заполнения string str= "" ; for ( int i= 0 ; i< 31 ; i++) for ( int j= 0 ; j< 2 ; j++) str+=( string )arr[i,j]+ ", " ; printf (str); //после заполнения str= "" ; ArrayFill (arr, 0 , 10 , 555 ); for ( int i= 0 ; i< 31 ; i++) for ( int j= 0 ; j< 2 ; j++) str+=( string )arr[i,j]+ ", " ; printf (str); } 결과: 2021.03 . 20 19 : 42 : 26.602 primer AUDUSD,H1: 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 2021.03 . 20 19 : 42 : 26.602 primer AUDUSD,H1: 555 , 555 , 555 , 555 , 555 , 555 , 555 , 555 , 555 , 555 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 예 혹은 아니오? ANDREY 2021.03.20 16:50 #14257 Aleksei Stepanenko : 스크립트는 다음과 같습니다. 결과: 예 혹은 아니오? 매우 감사합니다. 이것은 내가 필요로하는 것 같습니다. 그러나 이 코드를 스크립트로 발행하지 않고 제 코드에 삽입해 주시면 감사하겠습니다. 나는 나를 위해 새로운 정보를 빨리 이해하고 배울 것입니다. 배열에 정수 대신 가격 값만 있습니다. 도움을 주셔서 다시 한 번 감사드립니다. Aleksei Stepanenko 2021.03.20 16:51 #14258 다른 방식으로 작성해야 하는 경우 대신 ArrayFill() 사용 for ( int i= 0 ; i< 10 ; i++) arr[i, 0 ]= 555 ; ANDREY 2021.03.20 16:54 #14259 Aleksei Stepanenko : 다르게 작성해야 하는 경우 대신 사용 확인. 오늘은 저를 위한 새로운 정보에 대해 알아보려고 합니다. 내일 결과를 알려드리겠습니다. 다시 한번 감사합니다. Aleksei Stepanenko 2021.03.20 16:56 #14260 ANDREY : 코드는 스크립트 형식이 아니라 내 코드에 붙여넣습니다. 그래서 나는 다른 것을 쓰지 않고 단지 당신의 코드를 반복했습니다. 내가 시각적으로 숫자를 잘못 정렬했는데(두 줄로 되어 있지만 31에 있어야 함) 이것이 필요하다고 생각했습니다. ArrayFill 대신 0.5555 를 반복해야 할 가능성이 큽니다. 시도 해봐. double LoY[ 31 ][ 2 ],LoU,LoU1; int S,S1,S2; void OnTick () { //*************************************************** БЛОК 1 if (Minute()== 20 &&Minute()!=S1) { for ( int i= 0 ; i< 10 ; i++) LoY[i, 0 ]= 0.555 ; S1=Minute(); } //*************************************************** БЛОК 2 if (Minute()!=S) { LoY[S2][ 0 ]=Bid; ArraySort (LoY, WHOLE_ARRAY , 0 ,MODE_ASCEND); Print ( "----LoY[1][0]-- В --- [0] " , LoY[ 0 ][ 0 ], " [1] " , LoY[ 1 ][ 0 ], " [2] " , LoY[ 2 ][ 0 ], " [3] " , LoY[ 3 ][ 0 ], " [4] " , LoY[ 4 ][ 0 ], " [26] " , LoY[ 26 ][ 0 ], " [27] " , LoY[ 27 ][ 0 ], " [28] " , LoY[ 28 ][ 0 ], " [30] " , LoY[ 30 ][ 0 ], " [60] " , LoY[ 60 ][ 0 ]); S2++; if (S2== 62 ) { S2= 0 ; } S=Minute(); } } 1...141914201421142214231424142514261427142814291430143114321433...1953 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
두 행의 값을 정렬하시겠습니까, 아니면 첫 번째 행만 정렬하시겠습니까?
처음에만. 코드에 오류가 있습니다
죄송합니다... 코드를 제거하는 방법을 모르겠습니다. 따라서 LoY[S2][0]=Bid 대신 블록 2에서 간단히 말하겠습니다. LoY[0][52]=입찰가 필요
행과 열을 동시에 바꿀 수 없는 이유는 무엇입니까?
즉시 올바른 순서로 수행하면 채우려는 셀의 이름을 0.5555 값으로 지정할 수 있습니까?
행과 열을 동시에 바꿀 수 없는 이유는 무엇입니까?
그런 다음 ArrayFill(LoY,0,10,0.5555); 작동 안 할 것이다. 결국, 그녀는 값을 변경하는 배열 요소 가 *연속*으로 이동해야 합니다. 내가 그녀에게 LoY[31][2]를 먹이면 어떻게 될까요?
그런 다음 값을 변경해야 하는 배열 요소는 1을 통과합니다. 이 경우 먼저 배열의 31행을 한 줄에 순서대로 "추가"합니다.
즉시 올바른 순서로 수행하면 채우려는 셀의 이름을 0.5555 값으로 지정할 수 있습니까?
셀의 첫 번째 줄에는 첫 번째부터 열 번째까지 포함됩니다. 그러나 값을 0.5555로 채우고 나면 전체 첫 번째 줄을 정렬해야 합니다. 예를 들어 오름차순으로 가정해 보겠습니다. ArrayFill (LoY,0,10,0.5555) 대신 루프의 반복이 적합하지 않습니다.
코드의 버그를 수정했습니다
스크립트는 다음과 같습니다.
결과:
예 혹은 아니오?
스크립트는 다음과 같습니다.
결과:
예 혹은 아니오?
매우 감사합니다. 이것은 내가 필요로하는 것 같습니다. 그러나 이 코드를 스크립트로 발행하지 않고 제 코드에 삽입해 주시면 감사하겠습니다. 나는 나를 위해 새로운 정보를 빨리 이해하고 배울 것입니다. 배열에 정수 대신 가격 값만 있습니다.
도움을 주셔서 다시 한 번 감사드립니다.
ArrayFill()
사용
다르게 작성해야 하는 경우 대신
사용
확인. 오늘은 저를 위한 새로운 정보에 대해 알아보려고 합니다. 내일 결과를 알려드리겠습니다.
다시 한번 감사합니다.
코드는 스크립트 형식이 아니라 내 코드에 붙여넣습니다.
그래서 나는 다른 것을 쓰지 않고 단지 당신의 코드를 반복했습니다.
내가 시각적으로 숫자를 잘못 정렬했는데(두 줄로 되어 있지만 31에 있어야 함) 이것이 필요하다고 생각했습니다.
ArrayFill 대신 0.5555 를 반복해야 할 가능성이 큽니다. 시도 해봐.