mirror of
https://github.com/raa251/Liquidity_Predator.git
synced 2026-07-06 13:42:02 +00:00
68 lines
1.7 KiB
MQL5
68 lines
1.7 KiB
MQL5
#include "M_SM_LIQUIDITY_ACTIVATED.mqh"
|
|
#include "M_SM_S1_WAIT_FVG_CREATED.mqh"
|
|
#include "M_SM_S1_WAIT_FVG_INVERTED_LONG.mqh"
|
|
#include "M_SM_S1_WAIT_FVG_INVERTED_SHORT.mqh"
|
|
#include "M_SM_S1_WAIT_TRADE_ACTIVATED.mqh"
|
|
#include "M_SM_WAIT_FVG_INVERTED_LONG.mqh"
|
|
#include "M_SM_WAIT_FVG_INVERTED_SHORT.mqh"
|
|
#include "M_SM_IN_TRADE.mqh"
|
|
#include "M_SM_RESET.mqh"
|
|
|
|
void M_StateMachine()
|
|
{
|
|
switch(stGVL.nStateMachine)
|
|
{
|
|
case SM_WAIT_FOR_START:
|
|
break;
|
|
|
|
case SM_LIQUIDITY_ACTIVATED:
|
|
M_SM_LIQUIDITY_ACTIVATED();
|
|
break;
|
|
|
|
case SM_WAIT_FVG_INVERTED:
|
|
if(stGVL.eCurrentDirection == DIR_LONG)
|
|
{
|
|
M_SM_WAIT_FVG_INVERTED_LONG();
|
|
}
|
|
else
|
|
{
|
|
M_SM_WAIT_FVG_INVERTED_SHORT();
|
|
}
|
|
break;
|
|
|
|
case SM_S1_WAIT_FVG_CREATED:
|
|
M_SM_S1_WAIT_FVG_CREATED();
|
|
break;
|
|
|
|
case SM_S1_WAIT_FVG_INVERTED:
|
|
if(stGVL.eCurrentDirection == DIR_LONG)
|
|
{
|
|
M_SM_S1_WAIT_FVG_INVERTED_LONG();
|
|
}
|
|
else
|
|
{
|
|
M_SM_S1_WAIT_FVG_INVERTED_SHORT();
|
|
}
|
|
break;
|
|
|
|
case SM_S1_WAIT_TRADE_ACTIVATED:
|
|
M_SM_S1_WAIT_TRADE_ACTIVATED();
|
|
break;
|
|
|
|
case SM_IN_TRADE:
|
|
M_SM_IN_TRADE();
|
|
break;
|
|
|
|
case SM_RESET:
|
|
M_SM_RESET();
|
|
break;
|
|
}
|
|
E_STATEMACHINE nST = stGVL.nStateMachine;
|
|
E_STATEMACHINE nST_LAST = stGVL.nLASTStateMachine;
|
|
|
|
if(stGVL.nLASTStateMachine != stGVL.nStateMachine)
|
|
{
|
|
M_LogInfo("Statemachine changed to " + EnumToString(stGVL.nStateMachine));
|
|
stGVL.nLASTStateMachine = stGVL.nStateMachine;
|
|
}
|
|
}
|