Initial comit of TrendBreakouts
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
//+------------------------------------------------------------------+
|
||||
//| MarketObserverTiger.mqh |
|
||||
//| Copyright 2023, MetaQuotes Ltd. |
|
||||
//| https://www.mql5.com |
|
||||
//+------------------------------------------------------------------+
|
||||
#property copyright "Copyright 2023, 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 "Zone.mqh"
|
||||
#include "ZoneContainer.mqh"
|
||||
|
||||
|
||||
// ALGORITHM CLASSES INCLUDES
|
||||
|
||||
#include "NewCandleDetector.mqh"
|
||||
|
||||
|
||||
//+------------------------------------------------------------------+
|
||||
//| |
|
||||
//+------------------------------------------------------------------+
|
||||
class MarketObserverTiger
|
||||
{
|
||||
// THIS CLASS HAS ACCESS TO ZONE CONTAINER, HOWEVER IT MUST NOT CHANGE IT IT ONLY READS FROM THE ZONECONTAINER CLASS
|
||||
private:
|
||||
|
||||
|
||||
|
||||
public:
|
||||
MarketObserverTiger();
|
||||
~MarketObserverTiger();
|
||||
|
||||
string zoneReached();
|
||||
bool candleClosedAboveResistanceByIndex(int _index,ENUM_TIMEFRAMES tf,ZoneContainer& resistanceZoneContainer); // the index is a specific zone from the zones container
|
||||
bool candleClosedBelowSupportByIndex(int _index,ENUM_TIMEFRAMES tf,ZoneContainer& supportZoneContainer); // the index is a specific zone from the zones container
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
//+------------------------------------------------------------------+
|
||||
//| |
|
||||
//+------------------------------------------------------------------+
|
||||
MarketObserverTiger::MarketObserverTiger()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
//+------------------------------------------------------------------+
|
||||
//| |
|
||||
//+------------------------------------------------------------------+
|
||||
MarketObserverTiger::~MarketObserverTiger()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//+------------------------------------------------------------------+
|
||||
//| |
|
||||
//+------------------------------------------------------------------+
|
||||
bool MarketObserverTiger:: candleClosedAboveResistanceByIndex(int _index,ENUM_TIMEFRAMES tf,ZoneContainer& resistanceZoneContainer)
|
||||
{
|
||||
|
||||
double previousCandleClose = iClose(_Symbol,tf,1);
|
||||
|
||||
if((previousCandleClose > resistanceZoneContainer.getZoneByIndex(_index).getHigherEdge()))
|
||||
{
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
return false ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool MarketObserverTiger:: candleClosedBelowSupportByIndex(int _index, ENUM_TIMEFRAMES tf, ZoneContainer& supportZoneContainer){
|
||||
|
||||
|
||||
double previousCandleClose = iClose(_Symbol,tf,1);
|
||||
if(previousCandleClose < supportZoneContainer.getZoneByIndex(_index).getLowerEdge()){
|
||||
return true ;
|
||||
}
|
||||
|
||||
return false ;
|
||||
}
|
||||
Reference in New Issue
Block a user