백테스트를 위해 아래 코드를 작성하려고 하는데, 목표는 클래스에 나열된 각 통화의 뉴스/이벤트를 확인하기 위해 모든 반복에서 .bin을 로드하는 것입니다.
파일에서 정적 변수로 데이터를 한 번만 로드하면 됩니다.
#define CALENDAR_FILENAME "Calendar.bin"// 캘린더 읽기/쓰기를 위한 파일 이름입니다.#property tester_file CALENDAR_FILENAME // MT5-Tester가 이 파일을 선택하도록 지정합니다.#include <fxsaber\Calendar\Calendar.mqh> // https://www.mql5.com/ko/code/32430CALENDAR CalendarFull;// 캘린더 데이터가 있는 개체.intOnInit()
{
return(CalendarFull.Load(CALENDAR_FILENAME) == -1); // 파일에서 이벤트 로드
}
voidOnTick()
{
CALENDAR Calendar = CalendarFull;//....
}
캘린더 :
저자 : fxsaber
작업이 무엇인지 즉시 공식화하는 것이 좋습니다.
작업이 무엇인지 즉시 공식화하는 것이 좋습니다.
죄송합니다 fxsaber, 명확히하겠습니다.
기본적으로 공유하신 예제 코드로 시작하여 .bin 파일을 다운로드하여 만들 수 있습니다.
백 테스트를 위해 아래 코드를 작성하려고하는데, 목표는 클래스에 나열된 각 통화의 뉴스 / 이벤트를 확인하기 위해 모든 반복에서 .bin을로드하는 것입니다.
그러나 백 테스트를 할 때 Calendar.ToString이 공백으로 반환됩니다 ( "인쇄"는 디버깅 용입니다).
고마워요,
백테스트를 위해 아래 코드를 작성하려고 하는데, 목표는 클래스에 나열된 각 통화의 뉴스/이벤트를 확인하기 위해 모든 반복에서 .bin을 로드하는 것입니다.
파일에서 정적 변수로 데이터를 한 번만 로드하면 됩니다.
파일에서 정적 변수로 데이터를 한 번만 로드하면 됩니다.
매우 편리하고 정확합니다.
파일에서 정적 변수로 데이터를 한 번만 로드하면 됩니다.
감사합니다,
귀하의 제안으로 코드를 정리할 수 있었지만 여전히 .bin을로드 한 후에도 CalendarFULL이 비어 있습니다.
CalendarFULL.Load는 "1"을 반환하지만 CalendarFULL 내부에는 아무것도없는 것 같습니다.
.bin의 인코딩 문제일까요?
고마워요
를 호출하면 CalendarFULL.Load가 "1"을 반환하지만, CalendarFULL 내부에는 아무것도 없는 것 같습니다.
MT5 터미널에서 이 스크립트를 한 번 실행하여 bin 파일을 생성합니다.
MT5 터미널에서 이 스크립트를 한 번 실행하여 빈 파일을 생성합니다.
고마워요 fxsaber, 그렇게 했더니 7xmb .bin 파일이 생성되었습니다. 그러나 여전히 로드 및 인쇄를 시도하면 공백으로 반환됩니다.
감사합니다,
결국 내 코드의 문제를 발견했는데 .mq5가 어떻게 든 유니 코드로 저장되어 파일 읽기가 작동하지 않았고 ANSI로 변경하면 작동합니다.
고마워요,