forked from antekov/Adwizard
		
	
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			MQL5
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			MQL5
		
	
	
	
	
	
//+------------------------------------------------------------------+
 | 
						|
//|                                                 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 "Советник для автоматической оптимизации проектов"
 | 
						|
 | 
						|
#property version "1.05"
 | 
						|
 | 
						|
#include "../Optimization/Optimizer.mqh"
 | 
						|
 | 
						|
sinput string fileName_
 | 
						|
   = "article.17328.db.sqlite";                // - Файл с основной базой данных
 | 
						|
sinput string pythonPath_
 | 
						|
   = "C:\\Python\\Python312\\python.exe"; // - Путь к интерпретатору Python
 | 
						|
 | 
						|
COptimizer *optimizer;                    // Указатель на объект оптимизатора
 | 
						|
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
//| Expert initialization function                                   |
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
int OnInit() {
 | 
						|
   // Создаём оптимизатор
 | 
						|
   optimizer = new COptimizer(fileName_, pythonPath_);
 | 
						|
 | 
						|
   // Создаём таймер и запускаем его обработчик
 | 
						|
   EventSetTimer(20);
 | 
						|
   OnTimer();
 | 
						|
 | 
						|
   return(INIT_SUCCEEDED);
 | 
						|
}
 | 
						|
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
//| Expert timer function                                            |
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
void OnTimer() {
 | 
						|
   // Запускаем обработку оптимизатора
 | 
						|
   optimizer.Process();
 | 
						|
}
 | 
						|
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
//| Expert deinitialization function                                 |
 | 
						|
//+------------------------------------------------------------------+
 | 
						|
void OnDeinit(const int reason) {
 | 
						|
   EventKillTimer();
 | 
						|
 | 
						|
   // Удаляем оптимизатор
 | 
						|
   if(!!optimizer) {
 | 
						|
      delete optimizer;
 | 
						|
   }
 | 
						|
}
 | 
						|
//+------------------------------------------------------------------+
 |