자동 로트 크기 계산 기능? - 페이지 4

 

포함 파일이 올바른 파일 폴더에 있습니까?

 
Antonsan:

저에게만 발생한 버그인가요?
# include가 있는 줄을 넣으면 MetaEditor mq4로 파일을 컴파일할 수 없습니다.
코드에 # 라인이 포함된 mq4 파일을 컴파일할 수도 없었습니다.
라인만 활성화
# < stderror.mqh>를 포함합니다.
# < stdlib.mqh>를 포함합니다.
# < WinUser32.mqh>를 포함합니다.

필립의 게시물 외에도 :

위의 코드가 코드에 있는 것이라면... 언어 문서를 주의 깊게 읽으십시오.

#i 사이에 공백 없음 포함

NO 대문자 I ... 소문자 i 사용

 

Analyze Currency 파일에서 SymbolType() 메서드에 문제가 있는 것 같습니다.

저는 CADJPY를 거래하고 있으며 accountcurrency()는 USD이지만 항상 SymbolType = 6을 반환합니다.

그 이유는 MarketInfo("USDJPY", MODE_LOTSIZE)가 항상 0을 반환하기 때문입니다.

현재 차트에 대한 LOT_SIZE만 가져올 수 있습니다. 전. MarketInfo("CADJPY", MODE_LOTSIZE)가 제대로 작동합니다.

이것은 MetaTrader의 문제입니다. 어떻게 다른 쌍 속성 을 얻을 수 없습니까?

 

Ricotter는 어떤 브로커를 사용하고 있습니까? 거래할 수 있도록 USDJPY를 제공합니까?

코드가 올바르게 구현되었는지 확인하기 위해 FXDD를 다운로드하고 데모 계정 을 열고 CADJPY에서 코드를 시도해야 합니다. 포함 파일이 올바르게 설정되어 있으면 작동해야 합니다.

 
1005phillip :

Ricotter는 어떤 브로커를 사용하고 있습니까? 거래할 수 있도록 USDJPY를 제공합니까?

코드가 올바르게 구현되었는지 확인하기 위해 FXDD를 다운로드하고 데모 계정을 열고 CADJPY에서 코드를 시도해야 합니다. 포함 파일이 올바르게 설정되어 있으면 작동해야 합니다.

테스트를 좀 더 해봤습니다. 모든 것을 제거하고 start() 함수 에서 MarketInfo 호출만 추가했습니다. 라이브 거래에서는 잘 작동하지만 테스터를 사용할 때 테스트를 실행 중인 기호 이외의 다른 항목에 대해 0을 반환합니다.

FXDD로 테스트해보겠습니다. 감사합니다.

 
Ricotter :

테스트를 좀 더 해봤습니다. 모든 것을 제거하고 start() 함수에서 MarketInfo 호출만 추가했습니다. 라이브 거래에서는 잘 작동하지만 테스터를 사용할 때 테스트를 실행 중인 기호 이외의 다른 항목에 대해 0을 반환합니다.

FXDD로 테스트해보겠습니다. 감사합니다.

FXDD도 마찬가지입니다. CADJPY 쌍 에 대해 테스터를 실행하는 동안 MarketInfo("USDJPY", MODE_LOTSIZE)를 호출하려고 하면 0을 반환합니다. USDCAD 및 USDJPY에 대한 기록도 다운로드했습니다.

 
Ricotter :

FXDD도 마찬가지입니다. CADJPY 쌍에 대해 테스터를 실행하는 동안 MarketInfo("USDJPY", MODE_LOTSIZE)를 호출하려고 하면 0을 반환합니다. USDCAD 및 USDJPY에 대한 기록도 다운로드했습니다.

MarketInfo()는 테스터에서 테스트된 기호에 대해서만 작동합니다. 여기에서 모든 테스터 제한 사항을 확인하십시오 -> https://www.mql5.com/en/articles/1512 .
 
gordon :
MarketInfo()는 테스터에서 테스트된 기호에 대해서만 작동합니다. 여기에서 모든 테스터 제한 사항을 확인하십시오 -> https://www.mql5.com/en/articles/1512 .

감사해요!

 

코드는 당신을 위해 여러 가지 일을 할 것이고, 그것은 symbol() 불가지론적이며, 당신이 위험을 감수할 의향이 있는 자산과 손절매 가격을 기반으로 한 포지션에 대해 취할 최대 로트 크기를 계산할 것입니다. 해당 lotsize 값이 있으면 테이크프로핏 가격을 기반으로 잠재적인 이익을 계산할 수도 있습니다.

그것은 십자가를 정확하게 계산합니다. 그것은 당신이 추구했던 것입니다... 그러나 당신의 EA가 과거 가격 데이터에 액세스하지 못하게 하는 MT4의 백테스터의 근본적인 설계 제한 때문에 십자가에 대해 올바르게 백테스트할 수 없다는 것을 알아야 합니다. 백테스트 중 다른 통화 쌍 . 실제로 이것이 의미하는 바는 백테스트에서 교차 쌍 거래에서 오는 모든 금전적 평가가 근본적으로 잘못되었다는 것입니다. 즉, 백테스터가 계정 통화로 변환할 때 거래 자체의 손익이 단순히 잘못되었음을 의미합니다.

내가 링크한 코드는 그것들을 정확하게, 분석적으로 계산하고, 단축키를 사용하지 않습니다. 그러나 코드가 시장 가치를 올바르게 계산하려고 시도하고 계산하고 백테스터가 그렇게 하는 것을 방지하고 코드가 단순히 오류 경고를 반환하기 때문에 십자가에 대한 백 테스팅에는 사용할 수 없습니다. 브로커가 통화 정의를 어긴 경우).

 
1005phillip :

코드는 당신을 위해 여러 가지 일을 할 것이고, 그것은 symbol() 불가지론적이며, 당신이 위험을 감수할 의향이 있는 자산과 손절매 가격을 기반으로 한 포지션에 대해 취할 최대 로트 크기를 계산할 것입니다. 해당 lotsize 값이 있으면 테이크프로핏 가격을 기반으로 잠재적인 이익을 계산할 수도 있습니다.

그것은 십자가를 정확하게 계산합니다. 그것은 당신이 추구했던 것입니다... 그러나 당신의 EA가 과거 가격 데이터에 액세스하지 못하게 하는 MT4의 백테스터의 근본적인 설계 제한 때문에 십자가에 대해 올바르게 백테스트할 수 없다는 것을 알아야 합니다. 백테스트 중 다른 통화 쌍. 실제로 이것이 의미하는 바는 백테스트에서 교차 쌍 거래에서 오는 모든 금전적 평가가 근본적으로 잘못되었다는 것입니다. 즉, 백테스터가 계정 통화로 변환할 때 거래 자체의 손익이 단순히 잘못되었음을 의미합니다.

내가 링크한 코드는 그것들을 정확하게, 분석적으로 계산하고, 단축키를 사용하지 않습니다. 그러나 코드가 시장 가치를 올바르게 계산하려고 시도하고 계산하고 백테스터가 그렇게 하는 것을 방지하고 코드가 단순히 오류 경고를 반환하기 때문에 십자가에 대한 백 테스팅에는 사용할 수 없습니다. 브로커가 통화 정의를 어긴 경우).

이 사람은 파일 기록을 사용하여 수행합니다.

https://www.mql5.com/en/articles/1493