틱 데이터를 사용한 백테스팅 - 페이지 3

 

BTW - 첨부된 .rar 파일의 스크립트. 이전에 포럼에 게시(잘라내기 및 붙여넣기)한 스크립트와 정확히 동일한가요?

 
mikey :

BTW - 첨부된 .rar 파일의 스크립트. 이전에 포럼에 게시(잘라내기 및 붙여넣기)한 스크립트와 정확히 동일한가요?

네. 게시물은 파일에서 잘라내어 붙여넣기입니다...


이것을 고려하면:

중요한 드라마는 아니지만 출력 파일의 마지막 줄은 다음과 같습니다.

2004.02.23,08:34,,,,,1

스크립트는 마지막 줄의 끝에서 파일이 종료 된다고 가정 합니다. 귀하의 경우 파일의 마지막 줄 끝에 줄 바꿈 문자가 있을 수 있으므로 루프가 '파일 끝'을 감지하지 못하고 실제로 비어 있는 마지막 줄을 계속 처리했습니다... 이 문제를 해결하는 여러 가지 방법, 예를 들어 쓰기 전에 'sclose' 변수가 비어 있지 않다는 조건을 추가할 수 있습니다.

 if (sclose != "" )     // make sure close price exists in last line processed
   FileWrite (trg_handle,output);
 

고마워 친구. 다시 한 가지 간단한 질문: 전략 테스터 의 스왑 비용 . 이것은 마지막에 추가되는 것입니까 아니면 진행하면서 추가되는 것입니까? 진행하면서 추가될 수 있다고 생각합니다. 일부 거래의 경우: 예를 들어 TP로 마감할 때 이익실현(TP)이 100이면 +100의 이익이 반환되지 않고 대신 TP가 반환됩니다. 더 적은 양의 예. +80. 이것은 해당 거래에 추가된 스왑 비용 때문일 수 있습니다(밤새 개최된 날을 설명하기 위해 - 물론 이 방법을 사용하면 우리가 가져야 하는 것보다 더 많은 "밤"이 있습니다). (스왑 비용은 0.1 랏으로 거래하기 때문에 오버나이트에 대해 너무 많은 비용이 들지 않지만 많은 야간 요인으로 인해 추가됩니다).

아직 실행 중입니다. 내가 말하고 싶은 한 가지는 결과가 M1과 매우 다르다는 것입니다. 따라서 이것이 실제로 유효하다면 - 확실히 할 가치가 있습니다. 훨씬 더 많은 아이디어를 제공합니다.

 
mikey :

고마워 친구. 다시 한 가지 빠른 질문: 전략 테스터의 스왑 비용. 이것은 마지막에 추가되는 것입니까 아니면 진행하면서 추가되는 것입니까? [...]

라이브/데모 계정에 추가된 그대로 추가됩니다. 'MetaTrader 4의 기능 및 제한 테스트'에서 :

모든 스왑, 증거금 요구 사항, 만료, GTC 주문이 모델링됩니다.

스왑 값은 테스터에서 '시작'을 누르는 순간 현재 연결되어 있는 계정에서 가져옵니다.

 

새로운 장애물. 3개월 분량의 틱 데이터를 히스토리 센터에 로드할 때(이 스레드에서 정리한 것처럼 처리됨 - 각 틱에 자체 M1 막대가 있도록 함) - 겉보기에는 모든 것이 정상이지만 저널에서 방금 본 내용:

Historybase: 메모리 '#CLX01'이 충분하지 않습니다. [8412861 막대]
메모리 처리기: 370166236바이트의 메모리를 할당할 수 없습니다.

그래서 이것은 모든 데이터를 로드하지 않았다는 말입니까?

 
mikey :

새로운 장애물. 3개월 분량의 틱 데이터를 히스토리 센터에 로드할 때(이 스레드에서 정리한 것처럼 처리됨 - 각 틱에 자체 M1 막대가 있도록 함) - 겉보기에는 모든 것이 정상이지만 저널에서 방금 본 내용:

Historybase: 메모리 '#CLX01'이 충분하지 않습니다. [8412861 막대]
메모리 처리기: 370166236바이트의 메모리를 할당할 수 없습니다.

그래서 이것은 모든 데이터를 로드하지 않았다는 말입니까?

2GB 제한에 도달했기 때문일 수 있습니다. '시작'을 누른 후 테스터는 테스트에 대한 눈금이 포함된 FXT 파일을 만듭니다(귀하의 경우 막대당 1 눈금). 이 파일은 '\MetaTrader 4\tester\history' 폴더에 생성됩니다. 이 폴더를 열고 마지막으로 생성된 파일의 크기가 약 2GB인지 확인 합니다. 그렇다면 테스터의 한계에 도달한 것입니다. 더 짧은 시간에 테스트하는 것 외에는 이에 대한 해결책이 없습니다...


이게 이유인지는 모르겠지만 다른 이유가 있을 수도...

 

크기를 확인 했을 때 테스터는 여전히 실행 중입니다. 따라서 증가할 수 있습니까?

그러나 어쨌든 현재로서는 크기가 412MB에 불과합니다. 어느 것이 2GB 미만이라고 생각합니까?

 

BTW - 이 오류 메시지가 있는 저널은 전략 테스터 에 없습니다. 그러나 다른 하나(계정용)

 

좀 답답해집니다. 공정한 enuf - 나는 새로운 것을 시도하고 있으므로 문제가 있을 수 밖에 없습니다.

그러나 이 스레드와 관련되지 않은 경우 - 3개월 동안 얻은 오일 데이터에 대해 적절한 M1 데이터(따라서 우리가 이 스레드에서 이야기하는 것과 관련이 없음)를 사용하여 실행되는 늪지 표준 메타 트레이더 전략을 발견했습니다. 그리고 나는 전략 테스터 가 약 2주 후에 거래 개시를 중단했다는 것을 알아차렸습니다. 코드에서 - 거래가 열려 있지 않을 때마다 새로운 거래를 열어야 합니다(앞으로 테스트에서 이와 관련된 문제가 전혀 없음). 그러나 전략 테스터는 2주 동안 괜찮습니다. 거래를 시작하고 약 2.5개월 동안 거래를 열지 않았습니다(5000달러의 이익에도 불구하고)! 또한 전달된 결과의 종류는 지금까지의 순방향 테스트에서 제거되었습니다. metatatrader 전략 테스터의 엔진과 그 유효성 및 사용에 대해 의심이 들기 시작했습니다.

(보고서의 날짜 범위에 대해 올바른 범위를 가지고 있기 때문에 테스터에 모든 데이터가 로드됨)

내 꿈/목표: 내가 바랐던 것은 전략 테스터에게 좋은 과거 데이터(특히 틱 데이터를 얻을 수 있는 경우)를 제공하고 전략이 해당 기록(실패, 분산 분산)에서 실제로 거래된 방식에 대한 좋은 통찰력을 얻는 것입니다. 등 허용). 그러나 이제 이것이 달성 가능한지 여부를 의심하기 시작합니다. 전략 엔진이 실제로 이것을 제공할 수 있다면. METATRADER로 이 목표를 달성할 수 있습니까? 누군가 나에게 희망을 줘!

 
mikey :

BTW - 이 오류 메시지가 있는 저널이 전략 테스터에 없습니다. 그러나 다른 하나(계정용)

그렇다면 테스터와 아무 관련이 없을 것입니다('MetaTrader 4\tester\logs' 폴더에 있는 로그를 볼 수 있음). 하지만 확신할 수는 없습니다.
사유: