Adwizard/Experts/Optimization.mqh

55 lines
4.1 KiB
MQL5
Raw Permalink Normal View History

2025-04-11 13:28:40 +03:00
<EFBFBD><EFBFBD>//+------------------------------------------------------------------+
//| Optimization.mqh |
//| Copyright 2024, Yuriy Bykov |
//| https://www.mql5.com/ru/users/antekov |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, Yuriy Bykov"
#property link "https://www.mql5.com/ru/users/antekov"
#property description "!>25B=8: 4;O 02B><0B8G5A:>9 >?B8<870F88 ?@>5:B>2"
2025-04-11 15:16:52 +03:00
#property version "1.05"
2025-04-11 13:28:40 +03:00
2025-04-11 15:16:52 +03:00
#include "../Optimization/Optimizer.mqh"
2025-04-11 13:28:40 +03:00
sinput string fileName_
= "article.17328.db.sqlite"; // - $09; A >A=>2=>9 107>9 40==KE
sinput string pythonPath_
= "C:\\Python\\Python312\\python.exe"; // - CBL : 8=B5@?@5B0B>@C Python
COptimizer *optimizer; // #:070B5;L =0 >1J5:B >?B8<870B>@0
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit() {
// !>740Q< >?B8<870B>@
optimizer = new COptimizer(fileName_, pythonPath_);
// !>740Q< B09<5@ 8 70?CA:05< 53> >1@01>BG8:
EventSetTimer(20);
OnTimer();
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert timer function |
//+------------------------------------------------------------------+
void OnTimer() {
// 0?CA:05< >1@01>B:C >?B8<870B>@0
optimizer.Process();
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
EventKillTimer();
// #40;O5< >?B8<870B>@
if(!!optimizer) {
delete optimizer;
}
}
//+------------------------------------------------------------------+