mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 135 1...128129130131132133134135136137138139140141142...247 새 코멘트 Nikolai Semko 2019.06.08 16:55 #1341 Vict : 세심한 주의를 기울이고 있습니다. 감사합니다. 내가 실수를 했고, 대괄호를 넣지 않았고, "부정직한" 기능을 사용했을 것입니다. 추신: 원본 게시물을 수정했습니다. 이 구성이 평범한 rand()%max보다 나은 이유를 설명하십시오. PS 무슨 말인지 이해합니다. 그렇다면 최대>32767이면 어떻게 될까요? 결국, 함수는 uint 유형 이고 rand()와 같은 최대값을 생성합니다. 32767 다음과 같은 것을 사용하는 것이 좋습니다 ulong RandULong( ulong max= ULONG_MAX ) { return ((( ulong ) rand ()<< 60 )|(( ulong ) rand ()<< 45 )|(( ulong ) rand ()<< 30 )|(( ulong ) rand ()<< 15 )|( ulong ) rand ())%max;} Nikolai Semko 2019.06.08 17:24 #1342 Vict : 당신은 매우 세심합니다. 감사합니다. 내가 실수를 했고, 대괄호를 넣지 않았고, "부정직한" 기능을 사용했을 것입니다. PS: 원본 게시물을 수정했습니다. 누군가가 당신의 정직한 함수를 사용하기를 원하고 get_rand(10)을 작성하면 rand()%10보다 3276배 느리게 작동한다는 것을 알고 있습니까? [삭제] 2019.06.08 18:02 #1343 Nikolai Semko : 그렇다면 최대>32767이면 어떻게 될까요? 결국, 함수는 uint 유형 이고 rand()와 같은 최대값을 생성합니다. 32767 다음과 같은 것을 사용하는 것이 좋습니다 그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기, 당신은> 32767을 얻는 방법을 알고 있습니다. 그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다. 누군가가 당신의 정직한 함수를 사용하기를 원하고 get_rand(10)을 작성하면 rand()%10보다 3276배 느리게 작동한다는 것을 알고 있습니까? 네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다. OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다. 다중 통화 지표를 개발하는 [아카이브!] 포럼을 어지럽히 지 성배가 아니라 그냥 평범한 Artyom Trishkin 2019.06.08 18:06 #1344 Vict : 그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기, 당신은> 32767을 얻는 방법을 알고 있습니다. 그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다. 네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다. OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다. 함수의 속도는 최적화에서 매우 중요합니다. 그리고 그것은 스케줄러와 DOS에 관한 것이 아닙니다. Nikolai Semko 2019.06.08 18:16 #1345 Vict : 그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기에서 > 32767을 얻는 방법을 스스로 알고 있습니다. 그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다. 네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다. OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다. 실수를 인정하는 것을 두려워하지 마십시오. 여기에는 끔찍하고 굴욕적인 것이 없습니다. 우리는 모두 실수를 해요. 이건 괜찮아. "예, 제가 틀렸습니다. 감사합니다."라고 말하는 것이 커뮤니티 인식 측면에서 훨씬 쉽고 유용합니다. 핑계를 대려고 하는 대신. 결국 이 옵션은 훨씬 빠르고 다양하게 작동합니다. ulong randUlong( ulong max= ULONG_MAX ) { static bool f= true ; if (f) {f= false ; srand ( GetTickCount ());} return ((( ulong ) rand ()<< 60 )|(( ulong ) rand ()<< 45 )|(( ulong ) rand ()<< 30 )|(( ulong ) rand ()<< 15 )|( ulong ) rand ())%max; } 큰 숫자가 필요하지 않은 경우(5가 아닌 3랜드()가 됨) ulong을 uint로 다시 코딩하면 속도를 높일 수도 있습니다. 판별 방법: 자동 스크롤 Sultonov의 시스템 표시기 [경고, 주제 닫힘!] 포럼을 [삭제] 2019.06.08 18:36 #1346 Nikolai Semko : 실수를 인정하는 것을 두려워하지 마십시오. 여기에는 끔찍하고 굴욕적인 것이 없습니다. 우리는 모두 실수를 해요. 이건 괜찮아. "예, 제가 틀렸습니다. 감사합니다."라고 말하는 것이 커뮤니티 인식 측면에서 훨씬 쉽고 유용합니다. 핑계를 대려고 하는 대신. 결국 이 옵션은 훨씬 빠르고 다양하게 작동합니다. 큰 숫자가 필요하지 않은 경우(5가 아닌 3랜드()가 됨) ulong을 uint로 다시 코딩하면 속도를 높일 수도 있습니다. 저것들. 구현의 부정직함에 당황하지 않습니까(속도 측면에서 보면 훨씬 느릴 것입니다)? 알다시피. 추신: 부정직 - 확률이 다른 다양한 범위 숫자의 생성. Nikolai Semko 2019.06.08 19:35 #1347 Vict : 저것들. 구현의 부정직함에 당황하지 않습니까(속도 측면에서 보면 훨씬 느릴 것입니다)? 알다시피. 추신: 부정직 - 확률이 다른 다양한 범위 숫자의 생성. 진심이야? [삭제] 2019.06.08 19:42 #1348 Nikolai Semko : 진심이야? 예 https://stackoverflow.com/questions/10984974/why-do-people-say-there-is-modulo-bias-when-using-a-random-number-generator Why do people say there is modulo bias when using a random number generator? 2012.06.11user1413793user1413793 5,32651933stackoverflow.com I have seen this question asked a lot but never seen a true concrete answer to it. So I am going to post one here which will hopefully help people understand why exactly there is "modulo bias" when using a random number generator, like in C++. Nikolai Semko 2019.06.08 21:07 #1349 Vict : 예 https://stackoverflow.com/questions/10984974/why-do-people-say-there-is-modulo-bias-when-using-a-random-number-generator 저것들. 침대 밑에 굴려진 10센트를 찾기 위해 100달러 지폐에 불을 붙일 준비가 되셨습니까? Alexey Navoykov 2019.06.08 23:45 #1350 Nikolai Semko : 저것들. 침대 밑에 굴려진 10센트를 찾기 위해 100달러 지폐에 불을 붙일 준비가 되셨습니까? 당신은 확률의 역할을 헛되이 과소평가하고 있습니다. 수백만 번의 반복에서 이러한 "주화"는 상당히 실질적인 숫자가 될 것입니다. 게다가, 당신의 코드는 작은 범위에 대해 분명히 비합리적입니다. 6개월 전에 이 주제는 이미 포럼에서 논의되었으며 다음 옵션을 제안했습니다. 거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼 N 번째 범위에서 난수를 얻는 방법은 무엇입니까? 알렉세이 나보이코프 , 2018.12.31 01:25 이전 코드가 잘못되었습니다. 순위에 너무 영리합니다. 다음은 올바른 버전이며 동시에 더 간결합니다. ulong RandomLong( ulong range) { #define _MAXRND(range, rnd_range) ((rnd_range) - ((rnd_range)-range)%range - 1 ) #define _RND ( ulong ) rand () ulong rnd, max, const bit= 1 ; if (range <= bit<< 15 ) { if (!range) return 0 ; max=_MAXRND(range, 1 << 15 ); while ((rnd=_RND) > max); return rnd%range; } if (range <= bit<< 30 ) { max=_MAXRND(range, bit<< 30 ); while ((rnd=(_RND | _RND<< 15 )) > max); return rnd%range; } if (range <= bit<< 45 ) { max=_MAXRND(range, bit<< 45 ); while ((rnd=(_RND | _RND<< 15 | _RND<< 30 )) > max); return rnd%range; } if (range <= bit<< 60 ) { max=_MAXRND(range, bit<< 60 ); while ((rnd=(_RND | _RND<< 15 | _RND<< 30 | _RND<< 45 )) > max); return rnd%range; } else { max=_MAXRND(range, bit<< 64 ); while ((rnd=(_RND | _RND<< 15 | _RND<< 30 | _RND<< 45 | _RND<< 60 )) > max); return rnd%range; } #undef _RND #undef _MAXRND } 1...128129130131132133134135136137138139140141142...247 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
세심한 주의를 기울이고 있습니다. 감사합니다. 내가 실수를 했고, 대괄호를 넣지 않았고, "부정직한" 기능을 사용했을 것입니다.
추신: 원본 게시물을 수정했습니다.
이 구성이 평범한 rand()%max보다 나은 이유를 설명하십시오.
PS 무슨 말인지 이해합니다.
그렇다면 최대>32767이면 어떻게 될까요? 결국, 함수는 uint 유형 이고 rand()와 같은 최대값을 생성합니다. 32767
다음과 같은 것을 사용하는 것이 좋습니다
당신은 매우 세심합니다. 감사합니다. 내가 실수를 했고, 대괄호를 넣지 않았고, "부정직한" 기능을 사용했을 것입니다.
PS: 원본 게시물을 수정했습니다.
누군가가 당신의 정직한 함수를 사용하기를 원하고 get_rand(10)을 작성하면 rand()%10보다 3276배 느리게 작동한다는 것을 알고 있습니까?
그렇다면 최대>32767이면 어떻게 될까요? 결국, 함수는 uint 유형 이고 rand()와 같은 최대값을 생성합니다. 32767
다음과 같은 것을 사용하는 것이 좋습니다
그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기, 당신은> 32767을 얻는 방법을 알고 있습니다.
그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다.
누군가가 당신의 정직한 함수를 사용하기를 원하고 get_rand(10)을 작성하면 rand()%10보다 3276배 느리게 작동한다는 것을 알고 있습니까?
네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다.
OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다.
그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기, 당신은> 32767을 얻는 방법을 알고 있습니다.
그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다.
네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다.
OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다.
그리고 MathRand()는 int를 반환합니다. 누군가 6개의 0이 포함된 숫자를 기대한다면 어떻게 될까요? 나는 대중의 어느 정도 수준에 의존하고 있다. 여기에서 > 32767을 얻는 방법을 스스로 알고 있습니다.
그냥 주저하지 않고 rand()%3을 쓰는 경우가 많지만 그들은 내 메시지를 보고 확률에 변화가 있음을 깨닫게 될 것입니다.
네, 아주 천천히, 백만 호출 주기 동안 while 반복 호출은 약 300번 발생합니다. 프로그램이 get_rand()가 트위치하는 ()에 대한 베어로 구성되어 있으면 이것이 중요할 것입니다.
OS 스케줄러가 CPU 시간을 많이 잡아먹고 rand()와 비교할 수 없을 정도로 실행 속도가 느려진다는 사실을 알고 계셨습니까? 당신이 너무 급하니까, 당신이 약간의 dos가 필요합니다.
실수를 인정하는 것을 두려워하지 마십시오. 여기에는 끔찍하고 굴욕적인 것이 없습니다. 우리는 모두 실수를 해요. 이건 괜찮아.
"예, 제가 틀렸습니다. 감사합니다."라고 말하는 것이 커뮤니티 인식 측면에서 훨씬 쉽고 유용합니다. 핑계를 대려고 하는 대신.
결국 이 옵션은 훨씬 빠르고 다양하게 작동합니다.
큰 숫자가 필요하지 않은 경우(5가 아닌 3랜드()가 됨) ulong을 uint로 다시 코딩하면 속도를 높일 수도 있습니다.
실수를 인정하는 것을 두려워하지 마십시오. 여기에는 끔찍하고 굴욕적인 것이 없습니다. 우리는 모두 실수를 해요. 이건 괜찮아.
"예, 제가 틀렸습니다. 감사합니다."라고 말하는 것이 커뮤니티 인식 측면에서 훨씬 쉽고 유용합니다. 핑계를 대려고 하는 대신.
결국 이 옵션은 훨씬 빠르고 다양하게 작동합니다.
큰 숫자가 필요하지 않은 경우(5가 아닌 3랜드()가 됨) ulong을 uint로 다시 코딩하면 속도를 높일 수도 있습니다.
저것들. 구현의 부정직함에 당황하지 않습니까(속도 측면에서 보면 훨씬 느릴 것입니다)? 알다시피.
추신: 부정직 - 확률이 다른 다양한 범위 숫자의 생성.저것들. 구현의 부정직함에 당황하지 않습니까(속도 측면에서 보면 훨씬 느릴 것입니다)? 알다시피.
추신: 부정직 - 확률이 다른 다양한 범위 숫자의 생성.진심이야?
예
https://stackoverflow.com/questions/10984974/why-do-people-say-there-is-modulo-bias-when-using-a-random-number-generator
예
https://stackoverflow.com/questions/10984974/why-do-people-say-there-is-modulo-bias-when-using-a-random-number-generator
저것들. 침대 밑에 굴려진 10센트를 찾기 위해 100달러 지폐에 불을 붙일 준비가 되셨습니까?
당신은 확률의 역할을 헛되이 과소평가하고 있습니다. 수백만 번의 반복에서 이러한 "주화"는 상당히 실질적인 숫자가 될 것입니다. 게다가, 당신의 코드는 작은 범위에 대해 분명히 비합리적입니다.
6개월 전에 이 주제는 이미 포럼에서 논의되었으며 다음 옵션을 제안했습니다.
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
N 번째 범위에서 난수를 얻는 방법은 무엇입니까?
알렉세이 나보이코프 , 2018.12.31 01:25
이전 코드가 잘못되었습니다. 순위에 너무 영리합니다. 다음은 올바른 버전이며 동시에 더 간결합니다.