190 lines
15 KiB
MQL5
190 lines
15 KiB
MQL5
//+------------------------------------------------------------------+
|
|
//| WinFutMsgLogs.mqh |
|
|
//| Copyright 2025, MetaQuotes Ltd. |
|
|
//| https://www.mql5.com |
|
|
//+------------------------------------------------------------------+
|
|
#property copyright "Copyright 2025, MetaQuotes Ltd."
|
|
#property link "https://www.mql5.com"
|
|
//+------------------------------------------------------------------+
|
|
//| defines |
|
|
//+------------------------------------------------------------------+
|
|
// #define MacrosHello "Hello, world!"
|
|
// #define MacrosYear 2010
|
|
//+------------------------------------------------------------------+
|
|
//| DLL imports |
|
|
//+------------------------------------------------------------------+
|
|
// #import "user32.dll"
|
|
// int SendMessageA(int hWnd,int Msg,int wParam,int lParam);
|
|
// #import "my_expert.dll"
|
|
// int ExpertRecalculate(int wParam,int lParam);
|
|
// #import
|
|
//+------------------------------------------------------------------+
|
|
//| EX5 imports |
|
|
//+------------------------------------------------------------------+
|
|
// #import "stdlib.ex5"
|
|
// string ErrorDescription(int error_code);
|
|
// #import
|
|
//+------------------------------------------------------------------+
|
|
|
|
#include <WinFutLib\WinFutHorarioBovespaLibs.mqh>
|
|
|
|
/**
|
|
* esta sera uma nova class onde estara centralizado os envios de mensagens
|
|
* de logs, msg de aviso ao usuario para que possa acompanhar o funcionamento
|
|
* do robo, vamos migrar toda e qualquer msg que tenha saida ao inves
|
|
* de usar um simples print;
|
|
*/
|
|
|
|
WinFutHorarioBovespaLibs winFHBLibs;
|
|
|
|
class WinFutMsgLogs {
|
|
|
|
public:
|
|
WinFutMsgLogs(void);
|
|
~WinFutMsgLogs(void);
|
|
void WinFutMsgInfoTrace(string);
|
|
void WinFutMsgOnInit(void);
|
|
void WinFutMsgLogsSetMagicNumber(void);
|
|
void WinFutMsgLogsSetMediaMovel(void);
|
|
void WinFutMsgLogsSetDeInit(void);
|
|
void WinFutMsgLogsSetLogsOnInit(void);
|
|
void WinFutMsgLogsSetVerificarNovoDia(void);
|
|
void WinFutMsgLogsSetInicializarDadosDia(void);
|
|
void WinFutMsgLogsSetTradingPermitido(void);
|
|
void WinFutMsgLogsSetHorarioTradingPermitido(void);
|
|
void WinFutMsgLogsSetHorarioAltaVolatilidade(void);
|
|
void WinFutMsgLogsSetTemPosicaoAberta(void);
|
|
void WinFutMsgLogsSetGerenciarPosicao(void);
|
|
void WinFutMsgLogsSetAnalisarEntrada(void);
|
|
void WinFutMsgLogsSetAnalisarPriceAction(void);
|
|
void WinFutMsgLogsSetExecutarOrdem(void);
|
|
void WinFutMsgLogsSetOnTickTrader(void);
|
|
void WinFutMsgLogsSetOnTrade(void);
|
|
};
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogs(void) { }
|
|
void WinFutMsgLogs::~WinFutMsgLogs(void){ }
|
|
|
|
void WinFutMsgLogs::WinFutMsgInfoTrace(string msgLog) {
|
|
Print(msgLog);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgOnInit() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgOnInit - inicializando Clear WinFut Scalper";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetMagicNumber() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetMagicNumber - setando numeros magicos para o robo";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetMediaMovel() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetMediaMovel - Criar handle da média móvel";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetDeInit() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetDeInit - inicializando function DeInit();";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetLogsOnInit() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetLogsOnInit - inicializando function OnInit();";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetVerificarNovoDia() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetVerificarNovoDia - inicializando function para Verificar se é um novo dia";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetInicializarDadosDia() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetInicializarDadosDia - function para Inicializar dados do dia";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetTradingPermitido() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetTradingPermitido - function para verificar se trading está permitido";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetHorarioTradingPermitido() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetHorarioTradingPermitido - function para verificar horário de trading permitido";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetHorarioAltaVolatilidade() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetHorarioTradingPermitido - function para verificar se é horário de alta volatilidade";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetTemPosicaoAberta() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetHorarioTradingPermitido - function para Verificar se tem posição aberta";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetGerenciarPosicao() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetGerenciarPosicao - function Gerenciar posição aberta";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetAnalisarEntrada() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetAnalisarEntrada - Analisar entrada baseada em price action";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetAnalisarPriceAction() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetAnalisarPriceAction - Analisar price action para determinar direção";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetExecutarOrdem() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetExecutarOrdem - Executar ordem";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetOnTickTrader() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetOnTickTrader - inicializando OnTickTrader";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|
|
void WinFutMsgLogs::WinFutMsgLogsSetOnTrade() {
|
|
string msgInit;
|
|
msgInit = "WinFutMsgLogs::WinFutMsgLogsSetOnTrade - OnTrade function";
|
|
msgInit+= winFHBLibs.getTimestampBR();
|
|
this.WinFutMsgInfoTrace(msgInit);
|
|
}
|
|
|