오류, 버그, 질문 - 페이지 2875

 
Denis Rodionov :

표시 방법은 다음과 같습니다. 러시아어는 설정에 있습니다

나는 당신의 터미널이 영어로 생겼습니다. Windows이므로 설정을 확인하는 것이 좋습니다.

그리고 기본 시스템 언어는 러시아어입니까? - 그렇다면 터미널에 Windows 설정이 표시되지 않는 이유를 모르겠습니다.

 
Igor Makanu :

저에게는 터미널이 영어로 표시되었기 때문입니다. Windows이므로 설정을 확인하는 것이 좋습니다.

그리고 기본 시스템 언어는 러시아어입니까? - 그렇다면 터미널에 Windows 설정이 표시되지 않는 이유를 모르겠습니다.

언어 예, 러시아어. 그리고 모든 터미널에서 그런 넌센스.

이해했다)))

터미널 설정에서 어떻게 든 아랍어는

 

모순:

 struct A {
         int i[ 1 ]; //(*)
         void f1() const {        i[   0 ] = 1 ;   } //(1) Error: 'i' - member of the constant object cannot be modified
         void f2() const { ArrayFill ( 0 , 1 , 1 ); } //(2) Error: 'ArrayFill' - wrong parameters count
};
struct B {
         int i[ ]; //(**)
         void f3() const {        i[   0 ] = 1 ;   } //(3) нормально ???
         void f4() const { ArrayFill ( 0 , 1 , 1 ); } //(4) Error: 'ArrayFill' - wrong parameters count
};

(*)와 (**) 사이에 오류 없이 컴파일할 수 있는 근본적인 차이점이 있다고 가정합니다. 하지만 (3)과 (4) 사이의 근본적인 차이점은 무엇입니까?

예상: (1) 및 (3) 및/또는 (3) 및 (4)에서 동일한 컴파일러 동작

 

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

오류, 버그, 질문

A100 , 2020.08.31 15:55

월별 및 주간 시간대가 있는 차트(특히 EURUSD)에서 십자형은 커서 뒤에서 매우 느리게 움직입니다. 재현하려면 커서를 대각선으로 부드럽게 움직이는 것으로 충분합니다...


다음과 같이 재생:

달력 탭을 통해 EURUSD 일일 차트(MetaQuotes-Demo)에서 과거, 현재 및 다음 달에 대한 이벤트를 추가합니다(약 1400개 개체가 확보됨). 지정된 추가 후 차트가 너무 느려지기 시작하여 십자선을 이동하고 추세선을 이동하기 어렵습니다.

모든 OBJ_EVENT 개체를 삭제하면 지연이 사라집니다.

 
A100 :

모순:

(*)와 (**) 사이에 오류 없이 컴파일할 수 있는 근본적인 차이점이 있다고 가정합니다. 하지만 (3)과 (4) 사이의 근본적인 차이점은 무엇입니까?

예상: (1) 및 (3) 및/또는 (3) 및 (4)에서 동일한 컴파일러 동작

예, ArrayResize에 모순이 있습니다. 언어 구문의 다음 업그레이드로 해결할 것입니다.

(1)과 (3) 다른 경우, 첫 번째 경우 배열에 대한 메모리는 상수 객체 의 일부이고, 두 번째 경우에는 그렇지 않고 배열 객체 자체는 일정하지만 요소는 그렇지 않습니다.

 
A100 :

치명적인 런타임 오류

결과: EX5 로드 실패

메시지 주셔서 감사합니다. 수정했습니다.

 

테스터에서 최적화를 수행할 수 없는 이유

 input int       inData        = - 1 ;

-2147483648에서 2147483647까지 1단계로?


추신: 일반적으로 질문은 이유가 아니라 32비트 값에 대한 유전자 최적화를 만드는 방법입니다. EA 코드에서는 입력 매개변수를 비트 단위로 사용합니다. 즉, -2147483648에서 2147483647까지 1씩 최적화할 수 있기를 원하십니까?

 
Igor Makanu :

추신: 일반적으로 질문은 이유가 아니라 32비트 값에 대한 유전자 최적화를 만드는 방법입니다. EA 코드에서는 입력 매개변수를 비트 단위로 사용합니다. 즉, -2147483648에서 2147483647까지 1씩 최적화할 수 있기를 원하십니까?

 input ushort inNum1 = USHORT_MAX ;
input ushort inNum2 = USHORT_MAX ;

const uint Num = ( uint )inNum1 << ( sizeof (inNum1) * 8 ) | inNum2;

void OnInit () {}


 
fxsaber :


얼마나 많은 최적화가 통과했는지 알고 있습니다.

그것은 패스의 수에 관한 것이 아닙니다 (- 나는 모든 패스를 통과하기를 희망하지 않습니다)

문제는 내 알고리즘을 테스터의 한계로 제한한다는 것입니다. 2단계를 설정합니다. 그러면 모든 것이 작동합니다(이 단계에서 GA에서 사소한 매개변수(마지막 비트)를 실행할 수 있음)

상향:

입력 매개변수의 제한이 이상하게 작동합니다.

-2147483648에서 0까지 2씩 증가 - OK

-2147483648에서 0으로 1씩 증가하도록 설정했습니다. 최적화할 수 없습니다.

-2147483648에서 2147483645까지 2씩 증가 - OK

-2147483648에서 2147483645까지 1씩 증가하도록 설정 했습니다. 최적화할 수 없습니다.

 
Igor Makanu :

얼마나 많은 최적화가 통과했는지 알고 있습니다.

소스의 변수 Num.