Fix all Refactors issues on X121SMC for start Implementing Strategy ...
This commit is contained in:
@@ -1534,6 +1534,269 @@ class XCBearishFairValueGapObject : public XCZoneObject
|
||||
return X_BEARISH_FVG_OBJ;
|
||||
}
|
||||
};
|
||||
//
|
||||
// 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;
|
||||
}
|
||||
|
||||
//
|
||||
string nameMD5 = ToMD5(name);
|
||||
|
||||
//
|
||||
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) + "_" + nameMD5;
|
||||
result = mTPTrend.Create(
|
||||
chart_id,
|
||||
tpName,
|
||||
window,
|
||||
time1,
|
||||
signal.tp,
|
||||
time2,
|
||||
signal.tp //
|
||||
);
|
||||
if (!result)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// SL ...
|
||||
string slName = ToString(X_SL) + "_" + nameMD5;
|
||||
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) + "_" + nameMD5;
|
||||
result = mEntryTrend.Create(
|
||||
chart_id,
|
||||
entrName,
|
||||
window,
|
||||
time1,
|
||||
signal.entry,
|
||||
time2,
|
||||
signal.entry //
|
||||
);
|
||||
if (!result)
|
||||
{
|
||||
//
|
||||
mTPTrend.Delete();
|
||||
mSLTrend.Delete();
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Set Object Name ...
|
||||
ObjName(name);
|
||||
|
||||
//
|
||||
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);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve Object Type ...
|
||||
*
|
||||
* @return ( ENUM_XCHARTOBJECTS )
|
||||
*/
|
||||
virtual ENUM_XCHARTOBJECTS Type()
|
||||
{
|
||||
return X_SIGNAL_OBJ;
|
||||
}
|
||||
|
||||
//
|
||||
private:
|
||||
//
|
||||
|
||||
//
|
||||
CChartObjectTrend mTPTrend;
|
||||
CChartObjectTrend mSLTrend;
|
||||
CChartObjectTrend mEntryTrend;
|
||||
};
|
||||
|
||||
//
|
||||
// Zone Ticks ...
|
||||
@@ -1844,8 +2107,9 @@ class XCTicksZoneObject : public XCBaseObject
|
||||
|
||||
//
|
||||
// Actions ...
|
||||
|
||||
void Destroy() {
|
||||
|
||||
void Destroy()
|
||||
{
|
||||
mZones.Clear();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user