수학적 계산 모드에서는 히스토리를 통한 실행이 없습니다. 이로 인해 거래 작업 을 사용하지 않고 수학적 계산을 수행해야 할 때 최대 속도가 달성됩니다. 이 모드 에서 거래 EA를 최적화하면 (이력 데이터, 스프레드 등의 EA에 대한 막대/틱 입력으로) 시장 환경을 직접 모델링해야 합니다. 이 경우 모든 종류의 기록 데이터를 사용할 수 있으며 이전에 준비된 파일에서 가져옵니다.
1. x64 OS로의 전환은 4바이트 이상의 RAM에서 "표시"할 수 없기 때문이라는 것을 이해합니다. x64 OS가 있는데 포인터가 4바이트를 차지하는 이유는 무엇입니까(mql뿐만 아니라 C++에서도 적용됨)?
2. MT4에 대한 질문: dll 함수를 호출할 때 왜:
#import "MemoryDLL.dll"void fn( double j[]); // Подозреваю что так отдается адрес?#import
int start()
{
double dVal[1];
fn(dVal);
retutn(0);
}
dll 변수에서 일반적으로 다음과 같은 방식으로 허용될 수 있습니다.
extern"C" __declspec(dllexport) void fn( double &j); // Почему так работает????
// и такextern"C" __declspec(dllexport) void fn( double *j); // Думаю что должно работать только так
포인터와 참조가 아이디어에 따라 호환되지 않아야 한다고 가정하지만, 예를 들어 double에 대한 포인터가 나에게서 4바이트를 차지하기 때문입니다.
지금 문제
2012.02.26 15:47:46 테스터 파일 C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDD286B60B1DB9B989A2FFC701\MQL5\Files \signal10000.2]v 열기 오류
먼저 C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDD286B60B1DB9B989A2FFC701\MQL5\Files\ 폴더에 무엇이 있는지 확인하십시오.
둘째, MQL5에는 오류 32가 없습니다. 이상하다... 파일을 열려고 해서 핸들을 확인하고, 열려고 해서 마지막 에러 코드를 확인하니?
"수학 모드"란 무엇입니까?
"수학 모드"란 무엇입니까?
이 모드에서는 OnTester()만 호출됩니다. 그러나 OnTester()에서 계산의 복잡성과 양은 제한되지 않습니다. 주어진 입력 매개변수로 Expert Advisor의 이익을 직접 계산하면 테스터의 유전자 알고리즘 을 최적화에 사용할 수 있습니다.
이해를 도와주세요. 제 뇌가 끓고 있습니다.
1. x64 OS로의 전환은 4바이트 이상의 RAM에서 "표시"할 수 없기 때문이라는 것을 이해합니다. x64 OS가 있는데 포인터가 4바이트를 차지하는 이유는 무엇입니까(mql뿐만 아니라 C++에서도 적용됨)?
2. MT4에 대한 질문: dll 함수를 호출할 때 왜:
dll 변수에서 일반적으로 다음과 같은 방식으로 허용될 수 있습니다.
포인터와 참조가 아이디어에 따라 호환되지 않아야 한다고 가정하지만, 예를 들어 double에 대한 포인터가 나에게서 4바이트를 차지하기 때문입니다.
작동 방식은 다음과 같습니다.
작동하지 않음:
적어도 당연히 (여러 어레이를 전송하고 싶습니다)? 나는 뒤를 통과하고 싶지 않다.
적어도 당연히 (여러 어레이를 전송하고 싶습니다)? 나는 뒤를 통과하고 싶지 않다.
그리고 MQL에서 누가 &를 함수 선언에 넣을까요?
예, 아마도 맞을 것입니다. 그러나 모두 동일하게 MKL은 C에 따라 어떻게 든 작동하지 않습니다(틀릴 수 있음).
예, 아마도 맞을 것입니다. 그러나 모두 동일하게 MKL은 C에 따라 어떻게 든 작동하지 않습니다(틀릴 수 있음).
전달에 한 가지 차이점이 있습니다. 모든 것은 참조 &로만 전달되어야 하며 클래스 객체 만 ' * ' 포인터로 전달할 수 있습니다.
나는 기본 메모리 조각이 주소와 값의 두 부분으로 구성되어 있다고 생각했습니다. 주소를 전송하는 경우 "값" 필드에서 전송된 섹션의 주소와 함께 일부 변수에 있어야 합니다. 따라서 이러한 옵션이 동시에 올바르게 작동하는 방법을 이해할 수 없습니다.
유형에 대한 설명을 찾으려고 시도할 수 있습니다. 메모리 조각이 "있는 그대로" 전송되고 수신 측에서 메모리로 무엇을 할지 결정합니다(주소를 값에 쓰거나 주소 복사). 그러나 이 가설은 다음과 같이 작동하지 않는다는 사실에 의해 파괴됩니다.
설명을 다시 찾으려고 시도할 수 있습니다. 첫 번째 duvuh에서 입력은 "값" 필드에 주소가 지정되고 수신 측에서는 이를 사용하여 수행할 작업을 결정합니다. 이와 대조적으로 C ++에서 컴파일러는 그의 의견에 따라 다음과 같이 할 수 없다고 말합니다.
또는 다음과 같이:
일반적으로 나는 모순 외에는 아무것도 보지 않습니다.나는 스스로에게 물었고 나는 대답할 것이다.
링크와 포인터가 거의 같은 것이라는 결론에 이르렀습니다. 작은 차이점이 있습니다.
매우 중요한 점은 호출된 함수 에 링크 또는 포인터와 같은 인수가 있으면 주소가 실제로 전달된다는 것입니다. 이것은 dll에서 호출할 때 이해하는 것이 매우 중요합니다.
스토캐스틱의 주선과 표시선의 교차점의 정확한 값을 찾는 방법을 주전자에 알려주십시오.
시각적으로 간단하지만 프로그래밍 방식으로 구현하는 방법은 무엇입니까?