2026-03-17 08:31:01 -05:00
//+------------------------------------------------------------------+
//| AiDataTaskRunnerByLeo.mq5 |
//| Copyright 2026, Niquel Mendoza. |
//| https://www.mql5.com/es/users/nique_372 |
//+------------------------------------------------------------------+
# property copyright " Copyright 2026, Niquel Mendoza. "
# property link " https://www.mql5.com/es/users/nique_372 "
# property version " 1.00 "
# property description " Automate data generation and AI model training through a simple, easy-to-use GUI. "
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
2026-03-17 16:50:48 -05:00
# include "Backend\\All.mqh"
2026-03-17 08:31:01 -05:00
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
sinput group " -- Panel folder -- "
input ENUM_VERBOSE_LOG_LEVEL InpLogLevelPanelFronted = VERBOSE_LOG_LEVEL_ALL ; // Log levels
input string InpGeneralBaseFolder = " AiDataTaskRunner \\ " ; // Folder for panel files
input bool InpGeneralCommonFolder = true ; // In common folder ?
sinput group " -- Generation -- "
input ENUM_VERBOSE_LOG_LEVEL InpLogLevelPanelBackend = VERBOSE_LOG_LEVEL_ALL ; // Log levels
input bool InpBackendCommonIn = true ; // Files EA input in common folder ?
input bool InpBackendCommonOut = true ; // Files EA output in common folder ?
sinput group " -- Telegram bot -- "
input string InpTelegramBotPath = EXPERT_TELEGRAM_PATH ; // Put the path of telegram bot
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
CProgram g_program ;
CExecutionTester g_backend ;
2026-03-18 13:28:52 -05:00
CChatTelegramAgentLLmSenderAdtr * g_sender_to_telegram ; // clase que procesa las llamdas de evento de telegram
2026-03-17 08:31:01 -05:00
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ( )
{
//---
g_aidatatask_runner_config_g . base_folder = InpGeneralBaseFolder ;
g_aidatatask_runner_config_g . comon_flag = InpGeneralCommonFolder ;
//--- Configraucion
// Backend
g_backend . AddLogFlags ( InpLogLevelPanelBackend ) ;
g_backend .Set ( g_program . GetSecTaskRunerAiDGenPtr ( ) , InpBackendCommonIn , InpBackendCommonOut ) ;
// Fronted
g_program . GetSecTaskRunerAiDGenPtr ( ) . SetRunner ( & g_backend ) ;
2026-03-17 16:50:48 -05:00
// Tab ai
2026-03-18 13:28:52 -05:00
g_sender_to_telegram = new CChatTelegramAgentLLmSenderAdtr ( ) ;
g_program . GetSecAi ( ) . Initialize ( g_aidatatask_runner_config_g . base_folder , AIDATATASK_RUNNER_COMON_FLAG , g_sender_to_telegram ) ;
g_sender_to_telegram .Set ( & g_backend , g_program . GetSecTaskRunerAiDGenPtr ( ) ) ; // Setemoas los puntos del frontend y backend
g_sender_to_telegram . RunEA ( InpTelegramBotPath ) ; // Corremos el EA (tlgm)
2026-03-17 16:50:48 -05:00
2026-03-17 08:31:01 -05:00
//---
g_program . CreateGUI ( 700 , 500 , InpLogLevelPanelFronted ) ;
//---
return ( INIT_SUCCEEDED ) ;
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason )
{
//--- destroy timer
g_program . OnDeinitEvent ( reason ) ;
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick ( )
{
//---
}
//+------------------------------------------------------------------+
//| Timer function |
//+------------------------------------------------------------------+
void OnTimer ( )
{
//---
g_program . OnTimerEvent ( ) ;
}
//+------------------------------------------------------------------+
//| ChartEvent function |
//+------------------------------------------------------------------+
void OnChartEvent ( const int32_t id ,
const long & lparam ,
const double & dparam ,
const string & sparam )
{
//---
2026-03-18 13:28:52 -05:00
g_sender_to_telegram . ChartEvent ( id , lparam , dparam , sparam ) ;
2026-03-17 08:31:01 -05:00
g_backend . ChartEvent ( id , lparam , dparam , sparam ) ;
g_program . ChartEvent ( id , lparam , dparam , sparam ) ;
}
//+------------------------------------------------------------------+