데이터 분석, 데이터 과학 및 데이터 시각화를 위한 기능
fxsaber, 2020.01.25 12:39
틱 기록을 다운로드하는 가장 편리한 방법 ( 터미널에서 어드바이저 실행).
#property description "Закачивает тики через Тестер." sinput datetime inFromDate = D'2019.01.01'; // С какой даты закачать тики sinput bool inAllSymbols = false; // 선택 (참) 또는 선택 안 함 (거짓) #include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/ru/code/26132 string PrevTesterSettings = NULL; string GetMyName( void ) { return(StringSubstr(MQLInfoString(MQL_PROGRAM_PATH), StringLen(TerminalInfoString(TERMINAL_DATA_PATH) + "\\MQL5\\Experts\\"))); } bool RunMe( const datetime FromDate, const bool AllSymbols = false ) { const string Str = "[Tester]" + "\nExpert=" + GetMyName() + "\nSymbol=" + _Symbol + "\nOptimization=" + (AllSymbols ? "3" : "0") + "\nModel=4" + "\nFromDate=" + TimeToString(FromDate, TIME_DATE) + "\nToDate=" + TimeToString(TimeCurrent(), TIME_DATE) + "\nForwardMode=0" + "\nProfitInPips=1" + "\nOptimizationCriterion=0" + "\nVisual=0"; return(MTTESTER::SetSettings2(Str) && MTTESTER::ClickStart()); } int OnInit() { bool Res = !MQLInfoInteger(MQL_TESTER) && EventSetTimer(1); if (Res = Res && MTTESTER::GetSettings(PrevTesterSettings)) if (!(Res = RunMe(inFromDate, inAllSymbols))) MTTESTER::SetSettings2(PrevTesterSettings); return(Res ? INIT_SUCCEEDED : INIT_FAILED); } void OnTimer() { if (MTTESTER::IsReady()) { MTTESTER::SetSettings2(PrevTesterSettings); if (inAllSymbols) MTTESTER::CloseNotChart(); ExpertRemove(); } }
그런 다음 터미널에서 틱과 함께 작동하는 스크립트를 실행할 수 있으며 생명의 징후없이 오래 기다리지 않아도됩니다.
Download all ticks of a symbol's history:
마켓 워치의 모든 심볼에 대해 브로커에서 모든 틱을 다운로드합니다. 모든 기록 또는 가능한 경우 과거의 특정 날짜까지 다운로드합니다.
Author: Lorentzos Roussos