last works ...
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
|
||||
//
|
||||
#include "../Libraries/x-saherelm.x-poi.lib.mq5"
|
||||
#include "../Libraries/x-saherelm.xtrade.lib.mq5"
|
||||
|
||||
//
|
||||
#include <ChartObjects/ChartObject.mqh>
|
||||
@@ -56,6 +57,9 @@ enum ENUM_X_CHART_IDS
|
||||
X_FROM,
|
||||
X_UPPER,
|
||||
X_LOWER,
|
||||
X_ENTRY,
|
||||
X_SL,
|
||||
X_TP
|
||||
};
|
||||
|
||||
//
|
||||
@@ -95,6 +99,21 @@ string ToString(ENUM_X_CHART_IDS value)
|
||||
case X_LOWER:
|
||||
result = "XLOWER";
|
||||
break;
|
||||
|
||||
//
|
||||
case X_TP:
|
||||
result = "XTP";
|
||||
break;
|
||||
|
||||
//
|
||||
case X_SL:
|
||||
result = "XSL";
|
||||
break;
|
||||
|
||||
//
|
||||
case X_ENTRY:
|
||||
result = "XENTRY";
|
||||
break;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -574,6 +593,253 @@ class XCZoneObject : public XCBaseObject
|
||||
//
|
||||
// Structured Chart Object ...
|
||||
|
||||
//
|
||||
// Signal ...
|
||||
class XCSignalObject : public XCBaseObject
|
||||
{
|
||||
//
|
||||
public:
|
||||
//
|
||||
|
||||
//
|
||||
// Constructor ...
|
||||
void XCSignalObject()
|
||||
{
|
||||
}
|
||||
|
||||
//
|
||||
// Deconstructor ...
|
||||
void ~XCSignalObject()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a Signal Object on Chart ...
|
||||
*
|
||||
* @param chart_id: Long ...
|
||||
* @param name: String ...
|
||||
* @param window: Integer ...
|
||||
* @param signal: XSignal instance ...
|
||||
*
|
||||
* @return ( bool )
|
||||
*/
|
||||
bool Create(
|
||||
long chart_id,
|
||||
const string name,
|
||||
const int window,
|
||||
XSignal &signal //
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
result = IsValid(name) &&
|
||||
signal
|
||||
.IsValid();
|
||||
if (!result)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
int delay = (PeriodSeconds(signal.period) * 2);
|
||||
datetime time1 = (datetime)((int)signal.time - delay);
|
||||
datetime time2 = (datetime)((int)signal.time + delay);
|
||||
|
||||
//
|
||||
// TP ...
|
||||
string tpName = ToString(X_TP) + "_" + name;
|
||||
result = mTPTrend.Create(
|
||||
chart_id,
|
||||
tpName,
|
||||
window,
|
||||
time1,
|
||||
signal.tp,
|
||||
time2,
|
||||
signal.tp //
|
||||
);
|
||||
if (!result)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// SL ...
|
||||
string slName = ToString(X_TP) + "_" + name;
|
||||
result = mSLTrend.Create(
|
||||
chart_id,
|
||||
slName,
|
||||
window,
|
||||
time1,
|
||||
signal.sl,
|
||||
time2,
|
||||
signal.sl //
|
||||
);
|
||||
if (!result)
|
||||
{
|
||||
//
|
||||
mTPTrend.Delete();
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// ENTRY ...
|
||||
string entrName = ToString(X_ENTRY) + "_" + name;
|
||||
result = mEntryTrend.Create(
|
||||
chart_id,
|
||||
entrName,
|
||||
window,
|
||||
time1,
|
||||
signal.entry,
|
||||
time2,
|
||||
signal.entry //
|
||||
);
|
||||
if (!result)
|
||||
{
|
||||
//
|
||||
mTPTrend.Delete();
|
||||
mSLTrend.Delete();
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Setter(s) ...
|
||||
|
||||
//
|
||||
// TP ...
|
||||
|
||||
/**
|
||||
* Set TP Width ...
|
||||
*
|
||||
* @param value: Integer ...
|
||||
*/
|
||||
void TPWidth(int value)
|
||||
{
|
||||
//
|
||||
if (value < 1)
|
||||
{
|
||||
value = 1;
|
||||
}
|
||||
|
||||
//
|
||||
mTPTrend.Width(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set TP Color ...
|
||||
*
|
||||
* @param value: Color ...
|
||||
*/
|
||||
void TPColor(color value)
|
||||
{
|
||||
mTPTrend.Color(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set TP Style ...
|
||||
*
|
||||
* @param value: ENUM_LINE_STYLE ...
|
||||
*/
|
||||
void TPStyle(ENUM_LINE_STYLE value)
|
||||
{
|
||||
mTPTrend.Style(value);
|
||||
}
|
||||
|
||||
//
|
||||
// SL ...
|
||||
|
||||
/**
|
||||
* Set SL Width ...
|
||||
*
|
||||
* @param value: Integer ...
|
||||
*/
|
||||
void SLWidth(int value)
|
||||
{
|
||||
//
|
||||
if (value < 1)
|
||||
{
|
||||
value = 1;
|
||||
}
|
||||
|
||||
//
|
||||
mSLTrend.Width(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set SL Color ...
|
||||
*
|
||||
* @param value: Color ...
|
||||
*/
|
||||
void SLColor(color value)
|
||||
{
|
||||
mSLTrend.Color(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set SL Style ...
|
||||
*
|
||||
* @param value: ENUM_LINE_STYLE ...
|
||||
*/
|
||||
void SLStyle(ENUM_LINE_STYLE value)
|
||||
{
|
||||
mSLTrend.Style(value);
|
||||
}
|
||||
|
||||
//
|
||||
// ENTRY ...
|
||||
|
||||
/**
|
||||
* Set Entry Width ...
|
||||
*
|
||||
* @param value: Integer ...
|
||||
*/
|
||||
void EntryWidth(int value)
|
||||
{
|
||||
//
|
||||
if (value < 1)
|
||||
{
|
||||
value = 1;
|
||||
}
|
||||
|
||||
//
|
||||
mEntryTrend.Width(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set Entry Color ...
|
||||
*
|
||||
* @param value: Color ...
|
||||
*/
|
||||
void EntryColor(color value)
|
||||
{
|
||||
mEntryTrend.Color(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set Entry Style ...
|
||||
*
|
||||
* @param value: ENUM_LINE_STYLE ...
|
||||
*/
|
||||
void EntryStyle(ENUM_LINE_STYLE value)
|
||||
{
|
||||
mEntryTrend.Style(value);
|
||||
}
|
||||
|
||||
//
|
||||
private:
|
||||
//
|
||||
|
||||
//
|
||||
CChartObjectTrend mTPTrend;
|
||||
CChartObjectTrend mSLTrend;
|
||||
CChartObjectTrend mEntryTrend;
|
||||
};
|
||||
|
||||
//
|
||||
// XTradeDay Object ...
|
||||
class XCTardeDayObject : public XCFromToObject
|
||||
|
||||
Reference in New Issue
Block a user