//+------------------------------------------------------------------+ //| Global.mqh | //| Copyright 2025, Niquel Mendoza. | //| https://www.mql5.com/es/users/nique_372 | //+------------------------------------------------------------------+ #property copyright "Copyright 2025, Niquel Mendoza." #property link "https://www.mql5.com/es/users/nique_372" #property strict #ifndef GLOBAL_MQH #define GLOBAL_MQH // Archivo Global.mqh aqui se ubican todas las incilizacion GLOBALES antes de OnInit //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ #include //--- CNewBarManager g_new_bar_manager; //--- #define TSN_ICTLIBRARY_INSTANCE_BAR_MANAGER g_new_bar_manager //--- Defines para limpieza de bloques #define AIDATALEO_FEAUTRE_CLEAN_GEN(Timeframe, Frecuencia) \ if(Timeframe #include #include //--- Incluiremos las librerias de eventos principales y el autocleaner #include #include //--- Incluiremos las noticas #include CEconomicCalendar g_calendar; EconomicEventPorcentage g_calendar_events[]; // Definimos la instancia del calendario #define AILEO_ECONOMIC_CALENDAR_INSTANCE g_calendar //--- Incluiremos las librerias de generacion de data y trainters #include #include #include //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class CGlobalInit { private: static bool init; public: //--- Incializacion global CGlobalInit(void) { if(init) return; //--- Llamamos una unica vez a la funcion de incilzaicion ICTGen_Init(THE_BOT_PLACE_USER_ID); CBasicEvents::Init(); CNewsEvents::Init(); //--- Seteasmos el bar manager ICTGen_BarManagerSet(&g_new_bar_manager); // Le damos a la libreira ICT el manager //--- Inciamos pool CIctLibPool::Init(); CIctLibAtrManager::Init(); CIndicatorCache::Init(); //--- Solo añadimos en CASO de que DEFGLOBAL_SIMPLE NO ESTE DEFINIDIO // Util para los ejemplos BASE.. en los cuales no hace falta usar CAutoCleaner debido a la simplicidad CAutoCleaner::AddFunction(CAccountStatus_Deinit); CAutoCleaner::AddFunction(CBasicEvents::Deinit); CAutoCleaner::AddFunction(ICTGen_OnDeinitEvent); CAutoCleaner::AddFunction(CNewsEvents::Deinit); //--- Limpieza de los Pools CAutoCleaner::AddFunction(CIctLibPool::Deinit); CAutoCleaner::AddFunction(CIctLibAtrManager::Deinit); CAutoCleaner::AddFunction(CIndicatorCache::Deinit); //--- init = true; } //--- Deinicializacion global ~CGlobalInit(void) {} }; //+------------------------------------------------------------------+ bool CGlobalInit::init = false; //+------------------------------------------------------------------+ CGlobalInit g_global_instance; //+------------------------------------------------------------------+ #endif // GLOBAL_MQH