MetaTrader 5 전략 테스터: 오류, 버그, 개선 제안 - 페이지 45

 
Slava :
&&를 ||로 바꿉니다.

추신. 조건이 정확합니다.
일을 위한 조건이 아니라 테스트를 위한 조건이 있습니다. 원칙적으로 Print에서 보고하는 내용입니다. 이것은 수행되기 때문에 때때로 나는 관심있는 사람들을 위해 테스트 버전을 제공할 수 있습니다.

그리고 정기적으로 입력 매개변수를 변경할 때 먼저 "유휴" 실행이 있습니다. 거래하지 않으면 두 번째 출시부터 모든 것이 정상입니다. 왜 나쁜가요? 유전 알고리즘에서 첫 번째 결과가 즉시 제거됩니다.


 
Andrey Pogoreltsev :

추신. 조건이 정확합니다.
일을 위한 조건이 아니라 테스트를 위한 조건이 있습니다. 원칙적으로 Print에서 보고하는 내용입니다. 이것은 수행되기 때문에 때때로 나는 관심있는 사람들을 위해 테스트 버전을 제공할 수 있습니다.

그리고 정기적으로 입력 매개변수를 변경할 때 먼저 "유휴" 실행이 있습니다. 거래하지 않으면 두 번째 출시부터 모든 것이 정상입니다. 왜 나쁜가요? 유전 알고리즘에서 첫 번째 결과가 즉시 제거됩니다.


빌드 번호는 무엇입니까?
 
Slava :
빌드 번호는 무엇입니까?

2280

추신. 거래가 없었을 때의 로그가 다시 여기에 있습니다. 따라서 OnInit 검사에서 정상적으로 통과합니다. OnTimer에서는 분명히 그렇지 않습니다. 지금 당장은 로그를 추가하겠습니다. 로봇은 허용되지 않으면 거래하지 않습니다. 분명히 어떤 종류의 조건이 트리거됩니다.

NL       0        21 : 15 : 27.195     Server  MetaTester 5 stopped
IE       0        22 : 14 : 37.946     Startup MetaTester 5 x64 build 2280 ( 13 Dec 2019 )
FQ       0        22 : 14 : 37.976     Server  MetaTester 5 started on 127.0 . 0.1 : 3011
QJ       0        22 : 14 : 37.977     Startup initialization finished
DQ       0        22 : 14 : 38.125      127.0 . 0.1        login (build 2280 )
IG       0        22 : 14 : 38.145     Network 4372 bytes of account info loaded
CP       0        22 : 14 : 38.145     Network 1482 bytes of tester parameters loaded
CG       0        22 : 14 : 38.145     Network 6332 bytes of input parameters loaded
GM       0        22 : 14 : 38.145     Network 386 bytes of symbols list loaded
CJ       0        22 : 14 : 38.146     Tester  expert file added: Experts\Advisors\ 4 x.ex5. 1044587 bytes loaded
DR       0        22 : 14 : 38.148     Tester   6413 Mb available, 80 blocks set for ticks generating
HG       0        22 : 14 : 38.148     Tester  initial deposit 1000000.00 USD, leverage 1 : 500
LM       0        22 : 14 : 38.152     Tester  successfully initialized
IJ       0        22 : 14 : 38.152     Network 1018 Kb of total initialization data received
QS       0        22 : 14 : 38.152     Tester  AMD Ryzen 5 2600 Six-Core Processor , 32704 MB
LL       0        22 : 14 : 38.163     Symbols AUDCAD.m: symbol to be synchronized
MG       0        22 : 14 : 38.164     Symbols AUDCAD.m: symbol synchronized, 3800 bytes of symbol info received
PM       0        22 : 14 : 38.486     History AUDCAD.m: load 31 bytes of history data to synchronize in 0 : 00 : 00.001
KK       0        22 : 14 : 38.486     History AUDCAD.m: history synchronized from 2016.01 . 04 to 2019.12 . 27
ME       0        22 : 14 : 38.488     Ticks   AUDCAD.m: ticks synchronization started
MS       0        22 : 14 : 38.489     Ticks   AUDCAD.m: load 38 bytes of tick data to synchronize in 0 : 00 : 00.000
QF       0        22 : 14 : 38.489     Ticks   AUDCAD.m: history ticks synchronized from 2017.01 . 02 to 2019.12 . 27
OJ       0        22 : 14 : 38.601     History AUDCAD.m,M1: history cache allocated for 742101 bars and contains 369587 bars from 2018.01 . 02 10 : 00 to 2018.12 . 31 20 : 00
MK       0        22 : 14 : 38.601     History AUDCAD.m,M1: history begins from 2018.01 . 02 10 : 00
QR       0        22 : 14 : 38.624     Tester  AUDCAD.m,M1 (RoboForex-MetaTrader 5 ): generating based on real ticks
NS       0        22 : 14 : 38.624     Tester  AUDCAD.m,M1: testing of Experts\Advisors\ 4 x.ex5 from 2019.01 . 01 00 : 00 to 2019.12 . 29 00 : 00 started with inputs:
HM       0        22 : 14 : 38.624     Tester    LotsMultiplier= 1 e- 06
CH       0        22 : 14 : 38.624     Tester    SymbolPostfix=.m
DG       0        22 : 14 : 38.624     Tester    DefaultSet= 1
QO       0        22 : 14 : 38.624     Tester    MaxTrades= 40
FK       0        22 : 14 : 38.624     Tester    Deviation= 7
RG       0        22 : 14 : 38.624     Tester    ProfitDigger= false
KM       0        22 : 14 : 38.624     Tester    RandomShuffler= false
GI       0        22 : 14 : 38.624     Tester    PeriodSec= 60
NK       0        22 : 14 : 38.624     Tester    Booster= 1.4
GS       0        22 : 14 : 38.624     Tester    TakeProfit= 9
ND       0        22 : 14 : 38.624     Tester    PipStarter= 46
KH       0        22 : 14 : 38.624     Tester    Symbols=EURGBP
KM       0        22 : 14 : 38.647     Symbols EURGBP.m: symbol to be synchronized
KF       0        22 : 14 : 38.648     Symbols EURGBP.m: symbol synchronized, 3800 bytes of symbol info received
EN       0        22 : 14 : 39.139     History EURGBP.m: load 31 bytes of history data to synchronize in 0 : 00 : 00.227
QR       0        22 : 14 : 39.139     History EURGBP.m: history synchronized from 2016.01 . 04 to 2019.12 . 27
OI       0        22 : 14 : 39.141     Ticks   EURGBP.m: ticks synchronization started
QS       0        22 : 14 : 40.239     Ticks   EURGBP.m: load 38 bytes of tick data to synchronize in 0 : 00 : 01.094
IO       0        22 : 14 : 40.239     Ticks   EURGBP.m: history ticks synchronized from 2017.01 . 02 to 2019.12 . 27
GH       0        22 : 14 : 40.268     Symbols GBPUSD.m: symbol to be synchronized
JN       0        22 : 14 : 40.269     Symbols GBPUSD.m: symbol synchronized, 3800 bytes of symbol info received
QP       0        22 : 14 : 40.865     History GBPUSD.m: load 31 bytes of history data to synchronize in 0 : 00 : 00.313
MD       0        22 : 14 : 40.865     History GBPUSD.m: history synchronized from 2016.01 . 04 to 2019.12 . 27
FG       0        22 : 14 : 40.867     Ticks   GBPUSD.m: ticks synchronization started
JM       0        22 : 14 : 41.962     Ticks   GBPUSD.m: load 38 bytes of tick data to synchronize in 0 : 00 : 01.093
KF       0        22 : 14 : 41.962     Ticks   GBPUSD.m: history ticks synchronized from 2017.01 . 02 to 2019.12 . 27
HP       0        22 : 14 : 45.633     Ticks   AUDCAD.m : real ticks begin from 2017.01 . 02 00 : 00 : 00
FN       0        22 : 14 : 48.989     Ticks   EURGBP.m : real ticks begin from 2017.01 . 02 00 : 00 : 00
LE       0        22 : 14 : 53.730     Ticks   GBPUSD.m : real ticks begin from 2017.01 . 02 00 : 00 : 00
MO       0        22 : 15 : 11.576     Tester  final balance 1000000.00 USD
QF       0        22 : 15 : 11.576     Tester  OnTester result 0
DQ       0        22 : 15 : 11.638     Tester  AUDCAD.m,M1: 25591590 ticks, 366283 bars generated. Environment synchronized in 0 : 00 : 00.029 . Test passed in 0 : 00 : 33.483 (including ticks preprocessing 0 : 00 : 11.735 ).
FJ       0        22 : 15 : 11.638     Tester  AUDCAD.m,M1: total time from login to stop testing 0 : 00 : 33.512 (including 0 : 00 : 02.762 for history data synchronization)
FI       0        22 : 15 : 11.638     Tester   84417924 total ticks for all symbols
LS       0        22 : 15 : 11.638     Tester  AUDCAD.m: generate 25591590 ticks in 0 : 00 : 03.625 , passed to tester 25591591 ticks
GP       0        22 : 15 : 11.638     Tester  EURGBP.m: generate 23575704 ticks in 0 : 00 : 03.360 , passed to tester 23575705 ticks
OF       0        22 : 15 : 11.638     Tester  GBPUSD.m: generate 35250630 ticks in 0 : 00 : 04.750 , passed to tester 35250631 ticks
CG       0        22 : 15 : 11.638     Tester   2119 Mb memory used including 42 Mb of history data, 1728 Mb of tick data
RK       0        22 : 15 : 11.638     Tester  log file "E:\Metatrader\Tester\Agent-127.0.0.1-3011\logs\20200101.log" written
GR       0        22 : 15 : 11.639             test Experts\Advisors\ 4 x.ex5 on AUDCAD.m,M1 thread finished
LH       0        22 : 15 : 11.654      127.0 . 0.1        prepare for shutdown
KO       0        22 : 20 : 39.558     Server  MetaTester 5 stopped
 
Andrey Pogoreltsev :

2280

추신. 거래가 없었을 때의 로그가 다시 여기에 있습니다. 따라서 OnInit 검사에서 정상적으로 통과합니다. OnTimer에서는 분명히 그렇지 않습니다. 지금 당장은 로그를 추가하겠습니다. 로봇은 허용되지 않으면 거래하지 않습니다. 분명히 어떤 종류의 조건이 트리거됩니다.

최신 빌드를 사용할 수 있습니다.
 
Slava :
최신 빌드를 사용할 수 있습니다.

작동하지 않습니다

 
Andrey Pogoreltsev :

작동하지 않습니다

MetaQuotes-Demo에서 업데이트해야 합니다.

 
Artyom Trishkin :

MetaQuotes-Demo에서 업데이트해야 합니다.

고맙습니다. 2286으로 업데이트 했습니다. 문제가 다시 발생하면 글을 쓰겠습니다.

 

일반적으로 내 캔트. ifdef 프로파일링 모드 에서 플래그 초기화를 닫고 무작위로 잡았습니다(

추신. 게다가, 때때로 ArrayResize는 (시각 모드에서와 같이) 메모리를 지웠고 이 오류를 잡을 수 없었습니다.

 

안녕하세요 여러분 다시한번)


개발자 여러분, 질문입니다. 유전자 알고리즘 의 매개변수를 사용자 정의할 수 있습니까? 예를 들어 중지 및 돌연변이의 기준을 설정하려면?

극단에 도달하기 전에 정지가 발생한다는 사실을 종종 접합니다.

또한 질문입니다. 시뮬레이션된 어닐링과 같은 다른 방법을 구현할 예정입니까?

 
빌드 2280이지만 이전 버전에 있었습니다. 디버깅을 위해 스크립트 또는 Expert Advisor를 실행하면 1H 시간대의 Market Watch에서 첫 번째 기호의 새 창이 열립니다. 그리고 첫 번째 문자나 다른 TF가 아닌 디버그해야 하는 경우? 올바른 문자가 첫 번째 문자가 되도록 모든 문자를 제거하는 것과 같이 샤머니즘 없이 이 작업을 수행할 수 있는 방법이 있습니까?