Last ...
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
|
||||
//
|
||||
#include <ChartObjects/ChartObject.mqh>
|
||||
#include <ChartObjects/ChartObjectsArrows.mqh>
|
||||
#include <ChartObjects/ChartObjectsLines.mqh>
|
||||
#include <ChartObjects/ChartObjectsShapes.mqh>
|
||||
|
||||
@@ -35,23 +36,29 @@ enum ENUM_XCHARTOBJECTS
|
||||
{
|
||||
//
|
||||
// Global ...
|
||||
X_ZONE = 7860,
|
||||
X_FROM_TO = 7861,
|
||||
X_BAR_ARROW = 7862,
|
||||
X_ZONE_OBJ = 7860,
|
||||
X_FROM_TO_OBJ = 7861,
|
||||
X_BAR_ARROW_OBJ = 7862,
|
||||
//
|
||||
X_SIGNAL = 8860
|
||||
//
|
||||
// Structured ...
|
||||
X_TRADE_DAY = 9860,
|
||||
X_MARKET_SESSION = 9861,
|
||||
X_SUPPORT_ZONE = 9862,
|
||||
X_RESISTANCE_ZONE = 9863,
|
||||
X_SUPPLY_ZONE = 9864,
|
||||
X_DEMAND_ZONE = 9865,
|
||||
X_BULLISH_ORDERBLOCK = 9866,
|
||||
X_BEARISH_ORDERBLOCK = 9867,
|
||||
X_BULLISH_FVG = 9868,
|
||||
X_BEARISH_FVG = 9869,
|
||||
X_SIGNAL_OBJ = 8860,
|
||||
//
|
||||
// Structured ...
|
||||
X_TRADE_DAY_OBJ = 9860,
|
||||
X_MARKET_SESSION_OBJ = 9861,
|
||||
X_SWING_HIGH_OBJ = 9862,
|
||||
X_SWING_LOW_OBJ = 9863,
|
||||
X_BULLISH_MOMENTUM_BAR_OBJ = 9864,
|
||||
X_BEARISH_MOMENTUM_BAR_OBJ = 9865,
|
||||
X_BULLISH_REJECTION_BAR_OBJ = 9866,
|
||||
X_BEARISH_REJECTION_BAR_OBJ = 9867,
|
||||
X_SUPPORT_ZONE_OBJ = 9868,
|
||||
X_RESISTANCE_ZONE_OBJ = 9869,
|
||||
X_SUPPLY_ZONE_OBJ = 9870,
|
||||
X_DEMAND_ZONE_OBJ = 9871,
|
||||
X_BULLISH_ORDERBLOCK_OBJ = 9872,
|
||||
X_BEARISH_ORDERBLOCK_OBJ = 9873,
|
||||
X_BULLISH_FVG_OBJ = 9874,
|
||||
X_BEARISH_FVG_OBJ = 9875,
|
||||
};
|
||||
|
||||
enum ENUM_X_CHART_IDS
|
||||
@@ -197,6 +204,9 @@ class XCBarArrow : public XCBaseObject
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param priceType: ENUM_X_PRICE member ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
@@ -221,7 +231,7 @@ class XCBarArrow : public XCBaseObject
|
||||
}
|
||||
|
||||
//
|
||||
double time = bar.time;
|
||||
datetime time = bar.time;
|
||||
double price = bar.GetPrice(priceType);
|
||||
|
||||
//
|
||||
@@ -253,7 +263,7 @@ class XCBarArrow : public XCBaseObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BAR_ARROW;
|
||||
return X_BAR_ARROW_OBJ;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -276,6 +286,16 @@ class XCBarArrow : public XCBaseObject
|
||||
mArrow.Color(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set Arrow Width ...
|
||||
*
|
||||
* @param value: Integer ...
|
||||
*/
|
||||
void ArrowWidth(int value)
|
||||
{
|
||||
mArrow.Width(value);
|
||||
}
|
||||
|
||||
//
|
||||
protected:
|
||||
//
|
||||
@@ -363,7 +383,7 @@ class XCFromToObject : public XCBaseObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_FROM_TO;
|
||||
return X_FROM_TO_OBJ;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -648,7 +668,24 @@ class XCZoneObject : public XCBaseObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_ZONE;
|
||||
return X_ZONE_OBJ;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fill Zone ...
|
||||
*
|
||||
* @param value: Boolean ...
|
||||
*/
|
||||
void ZoneFill(bool value)
|
||||
{
|
||||
//
|
||||
if (!IsValid(mRect.Name()))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
mRect.Fill(value);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -823,6 +860,10 @@ class XCSignalObject : public XCBaseObject
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Set Object Name ...
|
||||
ObjName(name);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
@@ -957,7 +998,7 @@ class XCSignalObject : public XCBaseObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SIGNAL;
|
||||
return X_SIGNAL_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -1030,17 +1071,8 @@ class XCTardeDayObject : public XCFromToObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_TRADE_DAY;
|
||||
return X_TRADE_DAY_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
protected:
|
||||
//
|
||||
|
||||
//
|
||||
private:
|
||||
//
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1103,25 +1135,451 @@ class XCMarketSessionObject : public XCFromToObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_MARKET_SESSION;
|
||||
return X_MARKET_SESSION_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
protected:
|
||||
//
|
||||
|
||||
//
|
||||
private:
|
||||
//
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
class XCSwingHighObject : public
|
||||
// Swing High Object ...
|
||||
class XCSwingHighObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Support Zone ...
|
||||
class XCSupportZoneObject : public XCZoneObject
|
||||
//
|
||||
// Constructor ...
|
||||
void XCSwingHighObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCSwingHighObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCSwingHighObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateBySwing(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &swing,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
swing,
|
||||
X_PRICE_HIGH,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SWING_HIGH_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Swing Low Object ...
|
||||
class XCSwingLowObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCSwingLowObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCSwingLowObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCSwingHighObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateBySwing(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &swing,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
swing,
|
||||
X_PRICE_LOW,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SWING_LOW_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Bullish Momentum Bar Object ...
|
||||
class XCBullishMomentumBarObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCBullishMomentumBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCBullishMomentumBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCBullishMomentumBarObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateByBar(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &bar,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
bar,
|
||||
X_PRICE_LOW,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BULLISH_MOMENTUM_BAR_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Bearish Momentum Bar Object ...
|
||||
class XCBearishMomentumBarObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCBearishMomentumBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCBearishMomentumBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCBearishMomentumBarObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateByBar(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &bar,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
bar,
|
||||
X_PRICE_HIGH,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BEARISH_MOMENTUM_BAR_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Bullish Rejection Bar Object ...
|
||||
class XCBullishRejectionBarObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCBullishRejectionBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCBullishRejectionBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCBullishRejectionBarObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateByBar(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &bar,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
bar,
|
||||
X_PRICE_LOW,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BULLISH_REJECTION_BAR_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Bearish Rejection Bar Object ...
|
||||
class XCBearishRejectionBarObject : public XCBarArrow
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCBearishRejectionBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCBearishRejectionBarObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
/**
|
||||
* Create XCBearishRejectionBarObject ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param bar: XOHCL instance ...
|
||||
* @param arrow: Integer ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool CreateByBar(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XOHCL &bar,
|
||||
int arrow //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = Create(
|
||||
chart_id,
|
||||
name,
|
||||
window,
|
||||
bar,
|
||||
X_PRICE_HIGH,
|
||||
(char)arrow //
|
||||
);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Virtual Actions ...
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BEARISH_REJECTION_BAR_OBJ;
|
||||
}
|
||||
};
|
||||
|
||||
//
|
||||
// Support Zone ...
|
||||
class XCSupportZoneObject : public XCZoneObject
|
||||
{
|
||||
//
|
||||
public:
|
||||
@@ -1200,10 +1658,8 @@ class XCSwingHighObject : public
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SUPPORT_ZONE;
|
||||
return X_SUPPORT_ZONE_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1287,10 +1743,8 @@ class XCResistanceZoneObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_RESISTANCE_ZONE;
|
||||
return X_RESISTANCE_ZONE_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1320,10 +1774,8 @@ class XCSupplyZoneObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SUPPLY_ZONE;
|
||||
return X_SUPPLY_ZONE_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1353,10 +1805,8 @@ class XCDemandZoneObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_DEMAND_ZONE;
|
||||
return X_DEMAND_ZONE_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1387,10 +1837,8 @@ class XCBullishOrderBlockObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BULLISH_ORDERBLOCK;
|
||||
return X_BULLISH_ORDERBLOCK_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1421,10 +1869,8 @@ class XCBearishOrderBlockObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BEARISH_ORDERBLOCK;
|
||||
return X_BEARISH_ORDERBLOCK_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1455,10 +1901,8 @@ class XCBullishFVGObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BULLISH_FVG;
|
||||
return X_BULLISH_FVG_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
@@ -1489,10 +1933,8 @@ class XCBearishFVGObject : public XCZoneObject
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_BEARISH_FVG;
|
||||
return X_BEARISH_FVG_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
};
|
||||
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user