최적화 모드에서 전략 테스터에 대한 효율성을 평가하기 위해 다양한 프로세서의 성능에 대한 통계를 수집할 것을 제안합니다.
좋은 이니셔티브, 지지합니다.
컴파일할 때 경고가 표시됩니다.
implicit conversion from 'number' to 'string' Tree_Brut_TestPL.mq5 2567 16
그래야만 합니까?
라인:
if ( FrameAdd (Test_P, 1 , 0 ,stat_values)== false )
최적화 모드에서 전략 테스터에 대한 효율성을 평가하기 위해 다양한 프로세서의 성능에 대한 통계를 수집할 것을 제안합니다.
보다 객관적으로 " 수학적 계산 " 모드에서 작동하는 어드바이저를 사용하는 것이 좋습니다. 이렇게 하면 하드 디스크와 컴퓨터 메모리를 최소한으로 사용할 수 있습니다. 가능하면 프로세서 이름, 마더보드 및 RAM 주파수를 포함하십시오.
EA에는 최적화 대상이 되는 매개변수가 하나만 있으며(객관성을 위해 더미이고 모든 에이전트에 대해 데이터가 동일함) 스레드 수와 동일한 패스 수를 지정하고 다음 기준에 따라 에이전트를 선택합니다. 프로세서 코어 수(하이퍼트레이딩 제외!).
수집된 데이터가 최적화를 위한 하드웨어를 선택하는 데 도움이 되기를 바랍니다. 이것이 가장 먼저 받아들여야 하는 신선함은 아닙니다. 어쨌든 최근에는 그랬지만 뭔가 달라졌을 수도 있습니다.
EA 자체는 실제 EA에서 잘라낸 것으로, 비슷한 작업에서 의사 결정 트리에서 잎을 선택하는 데 사용합니다. MO의 진짜 과제, 그리고 코드 속도를 높이는 아이디어가 있다면 관심있게 듣겠습니다. 코드에는 1000개의 잎만 있고 실제로는 이미 70,000개가 넘는 잎이 있으므로 컴파일 결과를 기다리는 허용 가능한 시간 동안 함수로 이동됩니다.
좋은 이니셔티브, 지지합니다.
컴파일할 때 경고가 표시됩니다.
그래야만 합니까?
라인:
수정해서 재업로드했습니다!
시험.
최적화할 기간과 기간은? 도구가 중요한가?
" 수학 계산 " 모드에서는 문제가 되지 않습니다. 틱이 생성되지 않습니다!
그리고 거기에 무엇이 있습니까? 2000년대 말의 그루터기는 더 이상 이륙하지 않는다? :디
프로세서를 사용해 보고 결과를 버리십시오 - 이륙하는지 아니면 그냥 굴러가는지 봅시다!
늙은 말이 밭고랑을 망칠까?
결과:
2019.08 . 09 23 : 22 : 07.472 Tester set "Custom max" as optimization criterion for mathematical calculations 2019.08 . 09 23 : 22 : 07.540 Experts optimization frame expert Tree_Brut_TestPL (EURUSD.m,H1) processing started 2019.08 . 09 23 : 22 : 07.592 Tester cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt' deleted 2019.08 . 09 23 : 22 : 07.623 Tester Experts\Tree_Brut_TestPL.ex5 math calculations test means no history and no symbol info for EURUSD.m 2019.08 . 09 23 : 22 : 07.623 Tester complete optimization started 2019.08 . 09 23 : 22 : 07.648 Core 1 agent process started on 127.0 . 0.1 : 3008 2019.08 . 09 23 : 22 : 07.650 Core 2 agent process started on 127.0 . 0.1 : 3009 2019.08 . 09 23 : 22 : 07.652 Core 3 agent process started on 127.0 . 0.1 : 3010 2019.08 . 09 23 : 22 : 07.654 Core 4 agent process started on 127.0 . 0.1 : 3011 2019.08 . 09 23 : 22 : 07.657 Core 5 agent process started on 127.0 . 0.1 : 3012 2019.08 . 09 23 : 22 : 07.659 Core 6 agent process started on 127.0 . 0.1 : 3013 2019.08 . 09 23 : 22 : 07.662 Core 7 agent process started on 127.0 . 0.1 : 3014 2019.08 . 09 23 : 22 : 07.664 Core 8 agent process started on 127.0 . 0.1 : 3015 2019.08 . 09 23 : 22 : 07.972 Core 1 connecting to 127.0 . 0.1 : 3008 2019.08 . 09 23 : 22 : 07.973 Core 1 connected 2019.08 . 09 23 : 22 : 07.983 Core 1 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 07.997 Core 1 common synchronization completed 2019.08 . 09 23 : 22 : 08.035 Core 3 connecting to 127.0 . 0.1 : 3010 2019.08 . 09 23 : 22 : 08.036 Core 3 connected 2019.08 . 09 23 : 22 : 08.046 Core 3 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.056 Core 2 connecting to 127.0 . 0.1 : 3009 2019.08 . 09 23 : 22 : 08.057 Core 2 connected 2019.08 . 09 23 : 22 : 08.059 Core 3 common synchronization completed 2019.08 . 09 23 : 22 : 08.067 Core 5 connecting to 127.0 . 0.1 : 3012 2019.08 . 09 23 : 22 : 08.068 Core 5 connected 2019.08 . 09 23 : 22 : 08.068 Core 2 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.082 Core 2 common synchronization completed 2019.08 . 09 23 : 22 : 08.083 Core 5 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.103 Core 7 connecting to 127.0 . 0.1 : 3014 2019.08 . 09 23 : 22 : 08.104 Core 7 connected 2019.08 . 09 23 : 22 : 08.119 Core 7 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.125 Core 5 common synchronization completed 2019.08 . 09 23 : 22 : 08.140 Core 7 common synchronization completed 2019.08 . 09 23 : 22 : 08.150 Core 4 connecting to 127.0 . 0.1 : 3011 2019.08 . 09 23 : 22 : 08.151 Core 4 connected 2019.08 . 09 23 : 22 : 08.151 Core 8 connecting to 127.0 . 0.1 : 3015 2019.08 . 09 23 : 22 : 08.151 Core 8 connected 2019.08 . 09 23 : 22 : 08.162 Core 8 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.164 Core 4 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.184 Core 6 connecting to 127.0 . 0.1 : 3013 2019.08 . 09 23 : 22 : 08.185 Core 6 connected 2019.08 . 09 23 : 22 : 08.208 Core 6 authorized (agent build 2097 ) 2019.08 . 09 23 : 22 : 08.228 Core 4 common synchronization completed 2019.08 . 09 23 : 22 : 08.240 Core 6 common synchronization completed 2019.08 . 09 23 : 22 : 08.250 Core 8 common synchronization completed 2019.08 . 09 23 : 24 : 45.931 Tester optimization finished, total passes 8 2019.08 . 09 23 : 24 : 45.941 Statistics optimization done in 2 minutes 38 seconds 2019.08 . 09 23 : 24 : 45.941 Statistics shortest pass 0 : 02 : 35.945 , longest pass 0 : 02 : 37.669 , average pass 0 : 02 : 37.006 2019.08 . 09 23 : 24 : 45.941 Statistics 8000 frames ( 3.14 Mb total, 412 bytes per frame) received 2019.08 . 09 23 : 24 : 45.941 Statistics local 8 tasks ( 100 %), remote 0 tasks ( 0 %), cloud 0 tasks ( 0 %) 2019.08 . 09 23 : 24 : 45.988 Tester 8 new records saved to cache file 'tester\cache\Tree_Brut_TestPL.30.DFF2DB61B8A3751199D61AD0A0F226D3.opt'
터미널 버전:
2019.08 . 09 23 : 20 : 35.776 Terminal MetaTrader 5 x64 build 2085 started (MetaQuotes Software Corp.) 2019.08 . 09 23 : 20 : 35.778 Terminal Windows 10 (build 17763 ) x64, IE 11 , UAC, AMD FX- 8300 Eight-Core Processor , Memory: 17102 / 24574 Mb, Disk: 2407 / 2441 Gb, GMT+ 2
늙은 말이 밭고랑을 망칠까?
결과:
터미널 버전:
8개의 에이전트가 관련된 것 같지만 FX에는 4개의 FPU와 8개의 ALU만 있기 때문에 4개가 필요합니다. 즉, 최적화 중에 FPU가 로드됩니다. 이것이 왜 그런지는 분명하지 않습니다. 코드가 대부분 비교를 기반으로 작성되기 때문에 질문은 개발자에게 있습니다. 보조 프로세서의 수를 정확히 설정하려면 1 패스가 더 빨라지고 평균 시간은 거의 동일하게 유지됩니다.
8개의 에이전트가 관련된 것으로 보이지만 FX에는 4개의 FPU와 8개의 APU만 있으므로 최적화 중에 FPU가 로드되므로 4개가 필요합니다. 이것이 왜 그런지는 분명하지 않습니다. 코드가 대부분 비교를 기반으로 작성되기 때문에 질문은 개발자에게 있습니다. 보조 프로세서의 수를 정확히 설정하려면 1 패스가 더 빨라지고 평균 시간은 거의 동일하게 유지됩니다.
명확히 해주세요. 4개의 에이전트를 비활성화하고 매개변수를 최적화하여 4개의 최적화 패스를 얻습니까? 또는 8 패스?
8은 스레드 수에 따라 하이퍼 트레이딩과 유사한 4개의 에이전트를 전달합니다.
각 패스의 시간을 보려면 "전체 최적화 로그"를 활성화하십시오.
최적화 모드에서 전략 테스터에 대한 효율성을 평가하기 위해 다양한 프로세서의 성능에 대한 통계를 수집할 것을 제안합니다.
보다 객관적으로 " 수학적 계산 " 모드에서 작동하는 어드바이저를 사용하는 것이 좋습니다. 이렇게 하면 하드 디스크와 컴퓨터 메모리를 최소한으로 사용할 수 있습니다. 가능하면 프로세서 이름, 마더보드 및 RAM 주파수를 포함하십시오.
EA에는 최적화 대상이 되는 매개변수가 하나만 있으며(객관성을 위해 더미이고 모든 에이전트에 대해 데이터가 동일함) 스레드 수와 동일한 패스 수를 지정하고 다음 기준에 따라 에이전트를 선택합니다. 프로세서 코어 수(하이퍼트레이딩 제외!).
수집된 데이터가 최적화를 위한 하드웨어를 선택하는 데 도움이 되기를 바랍니다. 이것이 가장 먼저 받아들여야 하는 신선함은 아닙니다. 어쨌든 최근에는 그랬지만 뭔가 달라졌을 수도 있습니다.
EA 자체는 실제 EA에서 잘라낸 것으로, 비슷한 작업에서 의사 결정 트리에서 잎을 선택하는 데 사용합니다. MO의 진짜 과제, 그리고 코드 속도를 높이는 아이디어가 있다면 관심있게 듣겠습니다. 코드에는 1000개의 잎만 있고 실제로는 이미 70,000개가 넘는 잎이 있으므로 컴파일 결과를 기다리는 허용 가능한 시간 동안 함수로 이동됩니다.
전략 테스터 로그에서 컨텍스트 메뉴를 사용하여 "전체 최적화 로그" 확인란을 선택합니다.추가됨: 이 스레드에서 코드가 구조적으로 크게 변경되지는 않지만 일부 프로세서의 파일 크기(우리가 알아야 할 사항)가 시스템 전체의 성능에 영향을 미치는 것으로 나타났습니다. 따라서 나는 모두에게 두 명의 고문을 테스트하도록 요청합니다.
테스터 설정의 예 - 기호, 기간 및 시간 프레임은 중요하지 않습니다. 나머지 설정은 관련이 있으며 화면에 다른 조언자가 있지만 설정은 필요합니다.
컴퓨팅 리소스 비용에 대해 Expert Advisor의 가장 무거운 변형인 마지막 열을 기준으로 필터링됩니다.