apply latest optimization on indicator helpers classes and also add time tracking configurations into ea ...
This commit is contained in:
@@ -52,6 +52,13 @@ struct X121SetupCycleInputs
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Deconstructor Constructor ...
|
||||||
|
void ~X121SetupCycleInputs()
|
||||||
|
{
|
||||||
|
delete setup;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Initialization ...
|
// Initialization ...
|
||||||
bool Init(
|
bool Init(
|
||||||
|
|||||||
@@ -24,8 +24,8 @@
|
|||||||
// Imports ...
|
// Imports ...
|
||||||
|
|
||||||
//
|
//
|
||||||
#include "../Classes/x-saherelm.x121.setup.cycle.class.mq5"
|
|
||||||
#include "../Classes/x-saherelm.xea.class.mq5"
|
#include "../Classes/x-saherelm.xea.class.mq5"
|
||||||
|
#include "../Classes/x-saherelm.x121.setup.cycle.class.mq5"
|
||||||
|
|
||||||
//
|
//
|
||||||
// Definitions ...
|
// Definitions ...
|
||||||
|
|||||||
@@ -155,6 +155,21 @@ public:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
delete mTrader;
|
delete mTrader;
|
||||||
|
|
||||||
|
//
|
||||||
|
Clean(mOnSignalEventHandlers);
|
||||||
|
|
||||||
|
//
|
||||||
|
mOnSignal = NULL;
|
||||||
|
mOnModifyPosition = NULL;
|
||||||
|
mOnStopLossTriggered = NULL;
|
||||||
|
mOnTakeProfitTriggered = NULL;
|
||||||
|
mOnForceClosePosition = NULL;
|
||||||
|
mOnDealsChangedHandler = NULL;
|
||||||
|
mOnPartialClosePosition = NULL;
|
||||||
|
mOnOrdersChangedHandler = NULL;
|
||||||
|
mOnPositionsChangedHandler = NULL;
|
||||||
|
mOnTradeStateChangedHandler = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -345,6 +360,10 @@ public:
|
|||||||
//
|
//
|
||||||
// Execute Signals ...
|
// Execute Signals ...
|
||||||
HandleSignalsExecution(signals);
|
HandleSignalsExecution(signals);
|
||||||
|
|
||||||
|
//
|
||||||
|
Clean(guards);
|
||||||
|
Clean(signals);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -987,6 +1006,9 @@ protected:
|
|||||||
supports //
|
supports //
|
||||||
);
|
);
|
||||||
|
|
||||||
|
//
|
||||||
|
Clean(supports);
|
||||||
|
|
||||||
//
|
//
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@@ -1065,6 +1087,11 @@ protected:
|
|||||||
|
|
||||||
//
|
//
|
||||||
mTrader.CancelOrders(mustCancel);
|
mTrader.CancelOrders(mustCancel);
|
||||||
|
|
||||||
|
//
|
||||||
|
Clean(orders);
|
||||||
|
Clean(positions);
|
||||||
|
Clean(mustCancel);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -586,6 +586,17 @@ public:
|
|||||||
// Remove Pointer ...
|
// Remove Pointer ...
|
||||||
delete mTrader;
|
delete mTrader;
|
||||||
delete mAccount;
|
delete mAccount;
|
||||||
|
|
||||||
|
//
|
||||||
|
Clean(mOnModifyEventHandlers);
|
||||||
|
Clean(mStopLossEventHandlers);
|
||||||
|
Clean(mTakeProfitEventHandlers);
|
||||||
|
Clean(mOnForceCloseEventHandlers);
|
||||||
|
Clean(mDealsChangedEventHandlers);
|
||||||
|
Clean(mOrdersChangedEventHandlers);
|
||||||
|
Clean(mOnPartialCloseEventHandlers);
|
||||||
|
Clean(mPositionsChangedEventHandlers);
|
||||||
|
Clean(mTradeStateChangedEventHandlers);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|||||||
+102
-54
@@ -124,6 +124,15 @@ input bool x121EAMailAlerts = false; // Mail Alerts
|
|||||||
input bool x121EAPushAlerts = false; // Push Alerts
|
input bool x121EAPushAlerts = false; // Push Alerts
|
||||||
input bool x121EATerminalAlerts = false; // Terminal Alerts
|
input bool x121EATerminalAlerts = false; // Terminal Alerts
|
||||||
|
|
||||||
|
//
|
||||||
|
// Time Tracking ...
|
||||||
|
input group "Time Tracking";
|
||||||
|
input bool x121EAAlertNewMonth = false; // Alert New Month
|
||||||
|
input bool x121EAAlertNewWeek = false; // Alert New Week
|
||||||
|
input bool x121EAAlertNewDay = false; // Alert New Day
|
||||||
|
input bool x121EAAlertNewHour = false; // Alert New Hour
|
||||||
|
input bool x121EAAlertNewMinute = false; // Alert New Minute
|
||||||
|
|
||||||
//
|
//
|
||||||
// Definitions ...
|
// Definitions ...
|
||||||
|
|
||||||
@@ -131,7 +140,7 @@ input bool x121EATerminalAlerts = false; // Terminal Alerts
|
|||||||
// Local Variables ...
|
// Local Variables ...
|
||||||
|
|
||||||
//
|
//
|
||||||
bool is121EAInTestMode = false;
|
const bool is121EAInTestMode = IsRunningOnTestMode();
|
||||||
XTimeTracker x121EATimeTracker;
|
XTimeTracker x121EATimeTracker;
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -159,12 +168,9 @@ int OnInit()
|
|||||||
return INIT_PARAMETERS_INCORRECT;
|
return INIT_PARAMETERS_INCORRECT;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
is121EAInTestMode = IsRunningOnTestMode();
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Initializitation Succeed Message ...
|
// Initializitation Succeed Message ...
|
||||||
x121EA.Alert("Initialized Successfully ...");
|
x121EAAlert.Alert("Initialized Successfully ...");
|
||||||
|
|
||||||
//
|
//
|
||||||
// Init Succeed ...
|
// Init Succeed ...
|
||||||
@@ -187,18 +193,24 @@ void OnDeinit(const int reason)
|
|||||||
// REASON_INITFAILED 8 The OnInit() handler returned a non-zero value
|
// REASON_INITFAILED 8 The OnInit() handler returned a non-zero value
|
||||||
// REASON_CLOSE 9 Terminal closed
|
// REASON_CLOSE 9 Terminal closed
|
||||||
|
|
||||||
|
//
|
||||||
|
// De Initialization Succeed ...
|
||||||
|
x121EAAlert.Alert("De Initialized Successfully ...");
|
||||||
|
|
||||||
|
//
|
||||||
|
// Clean Array ...
|
||||||
|
Clean(x121EAUsedSymbols);
|
||||||
|
|
||||||
//
|
//
|
||||||
// De Initialize XSampleEA Providers ...
|
// De Initialize XSampleEA Providers ...
|
||||||
delete x121EA;
|
delete x121EA;
|
||||||
|
|
||||||
//
|
//
|
||||||
delete x121EAAlert;
|
|
||||||
delete x121EACTHelper;
|
delete x121EACTHelper;
|
||||||
delete x121EACCHelper;
|
delete x121EACCHelper;
|
||||||
|
|
||||||
//
|
//
|
||||||
// De Initialization Succeed ...
|
delete x121EAAlert;
|
||||||
x121EA.Alert("De Initialized Successfully ...");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -206,51 +218,7 @@ void OnDeinit(const int reason)
|
|||||||
void OnTick()
|
void OnTick()
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Time Tracking ...
|
X121EAHandleTimeReports();
|
||||||
|
|
||||||
//
|
|
||||||
// Alert Month ...
|
|
||||||
if (x121EATimeTracker.IsNewMonth())
|
|
||||||
{
|
|
||||||
//
|
|
||||||
if (!is121EAInTestMode)
|
|
||||||
{
|
|
||||||
x121EAAlert.Alert("New Mount ...");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Alert Week ...
|
|
||||||
if (x121EATimeTracker.IsNewWeek())
|
|
||||||
{
|
|
||||||
//
|
|
||||||
if (!is121EAInTestMode)
|
|
||||||
{
|
|
||||||
x121EAAlert.Alert("New Week ...");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Alert New Day ...
|
|
||||||
if (x121EATimeTracker.IsNewDay())
|
|
||||||
{
|
|
||||||
//
|
|
||||||
if (!is121EAInTestMode)
|
|
||||||
{
|
|
||||||
x121EAAlert.Alert("New Day ...");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Alert New Hour ...
|
|
||||||
if (x121EATimeTracker.IsNewHour())
|
|
||||||
{
|
|
||||||
//
|
|
||||||
if (!is121EAInTestMode)
|
|
||||||
{
|
|
||||||
x121EAAlert.Alert("New Hour ...");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
//
|
||||||
x121EA.OnTick();
|
x121EA.OnTick();
|
||||||
@@ -370,6 +338,11 @@ bool InitialEA()
|
|||||||
result = IsValidSize(symbolsCount);
|
result = IsValidSize(symbolsCount);
|
||||||
if (!result)
|
if (!result)
|
||||||
{
|
{
|
||||||
|
//
|
||||||
|
Clean(inputSymbols);
|
||||||
|
Clean(allSymbols);
|
||||||
|
Clean(watchListSymbols);
|
||||||
|
Clean(x121EAUsedSymbols);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -474,14 +447,15 @@ bool InitialEA()
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Prepare Providers and Add them into mX121EA class ...
|
// Prepare Providers and Add them into mX121EA class ...
|
||||||
|
ENUM_TIMEFRAMES iHostPeriod = _Period;
|
||||||
for (int i = 0; i < symbolsCount; i++)
|
for (int i = 0; i < symbolsCount; i++)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Requirements ...
|
// Requirements ...
|
||||||
string iSymbol = x121EAUsedSymbols[i];
|
string iSymbol = x121EAUsedSymbols[i];
|
||||||
ENUM_TIMEFRAMES iHostPeriod = _Period;
|
|
||||||
|
|
||||||
//
|
//
|
||||||
|
// Instancing Setup Cycle ...
|
||||||
XSCX121SetupCycles *iSetupCycle;
|
XSCX121SetupCycles *iSetupCycle;
|
||||||
iSetupCycle = new XSCX121SetupCycles();
|
iSetupCycle = new XSCX121SetupCycles();
|
||||||
result = iSetupCycle.Init(
|
result = iSetupCycle.Init(
|
||||||
@@ -495,6 +469,7 @@ bool InitialEA()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
// Adding Instance Pointer Class to EA Class Instance ...
|
||||||
result = x121EA.AddSetup(iSetupCycle);
|
result = x121EA.AddSetup(iSetupCycle);
|
||||||
if (!result)
|
if (!result)
|
||||||
{
|
{
|
||||||
@@ -502,6 +477,12 @@ bool InitialEA()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Cleaning Unused Arrays ...
|
||||||
|
Clean(inputSymbols);
|
||||||
|
Clean(allSymbols);
|
||||||
|
Clean(watchListSymbols);
|
||||||
|
|
||||||
//
|
//
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@@ -746,3 +727,70 @@ void X121ReportState()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
void X121EAHandleTimeReports()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// Time Tracking ...
|
||||||
|
|
||||||
|
//
|
||||||
|
// Alert Month ...
|
||||||
|
if (x121EAAlertNewMonth)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool isNewMonth = x121EATimeTracker.IsNewMonth();
|
||||||
|
if (isNewMonth)
|
||||||
|
{
|
||||||
|
x121EAAlert.Alert("New Mount ...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Alert Week ...
|
||||||
|
if (x121EAAlertNewWeek)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool isNewWeek = x121EATimeTracker.IsNewWeek();
|
||||||
|
if (isNewWeek)
|
||||||
|
{
|
||||||
|
x121EAAlert.Alert("New Week ...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Alert New Day ...
|
||||||
|
if (x121EAAlertNewDay)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool isNewDay = x121EATimeTracker.IsNewDay();
|
||||||
|
if (isNewDay)
|
||||||
|
{
|
||||||
|
x121EAAlert.Alert("New Day ...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Alert New Hour ...
|
||||||
|
if (x121EAAlertNewHour)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool isNewHour = x121EATimeTracker.IsNewHour();
|
||||||
|
if (isNewHour)
|
||||||
|
{
|
||||||
|
x121EAAlert.Alert("New Hour ...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Alert New Minute ...
|
||||||
|
if (x121EAAlertNewMinute)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
bool isNewMinute = x121EATimeTracker.IsNewMinute();
|
||||||
|
if (isNewMinute)
|
||||||
|
{
|
||||||
|
x121EAAlert.Alert("New Minute ...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
|||||||
@@ -307,7 +307,13 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXADXTDHelper() {}
|
~XSCXADXTDHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(bullpBuffer);
|
||||||
|
Clean(bearpBuffer);
|
||||||
|
Clean(strengthBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -662,7 +668,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -141,7 +141,10 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXAMAHelper() {}
|
~XSCXAMAHelper() {
|
||||||
|
//
|
||||||
|
Clean(mainBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -277,7 +277,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXASCTHelper() {}
|
~XSCXASCTHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(longsBuffer);
|
||||||
|
Clean(shortsBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -465,8 +470,8 @@ public:
|
|||||||
//
|
//
|
||||||
bool GetConditions(
|
bool GetConditions(
|
||||||
XASCTConditions &conditions, //
|
XASCTConditions &conditions, //
|
||||||
int barIndex = 0, //
|
int barIndex = 0, //
|
||||||
int loopback = 3 //
|
int loopback = 3 //
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
@@ -514,7 +519,7 @@ public:
|
|||||||
bool isLongSignal = NotEmptyZero(conditions.longSignal[cIndex]);
|
bool isLongSignal = NotEmptyZero(conditions.longSignal[cIndex]);
|
||||||
bool isShortSignal = NotEmptyZero(conditions.shortSignal[cIndex]);
|
bool isShortSignal = NotEmptyZero(conditions.shortSignal[cIndex]);
|
||||||
|
|
||||||
//
|
//
|
||||||
conditions.isLongSignal = isLongSignal;
|
conditions.isLongSignal = isLongSignal;
|
||||||
conditions.isShortSignal = isShortSignal;
|
conditions.isShortSignal = isShortSignal;
|
||||||
|
|
||||||
@@ -546,7 +551,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -285,7 +285,10 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXATSLHelper() {}
|
~XSCXATSLHelper()
|
||||||
|
{
|
||||||
|
Clean(atslBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -353,7 +353,14 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXCHEHelper() {}
|
~XSCXCHEHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(longExit1Buffer);
|
||||||
|
Clean(longExit2Buffer);
|
||||||
|
Clean(shortExit1Buffer);
|
||||||
|
Clean(shortExit2Buffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -751,7 +758,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2218,7 +2218,22 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXCHMAHelper() {}
|
~XSCXCHMAHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(fastBuffer);
|
||||||
|
Clean(slowBuffer);
|
||||||
|
Clean(cFastBuffer);
|
||||||
|
Clean(cSlowBuffer);
|
||||||
|
Clean(sFastBuffer);
|
||||||
|
Clean(sSlowBuffer);
|
||||||
|
Clean(mFastBuffer);
|
||||||
|
Clean(mSlowBuffer);
|
||||||
|
Clean(lFastBuffer);
|
||||||
|
Clean(lSlowBuffer);
|
||||||
|
Clean(hFastBuffer);
|
||||||
|
Clean(hSlowBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -263,7 +263,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXDMNTHelper() {}
|
~XSCXDMNTHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(bullBuffer);
|
||||||
|
Clean(bearBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -164,7 +164,18 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXDONHelper() {}
|
~XSCXDONHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(upperOBuffer);
|
||||||
|
Clean(lowerOBuffer);
|
||||||
|
Clean(upperCBuffer);
|
||||||
|
Clean(lowerCBuffer);
|
||||||
|
Clean(upperHBuffer);
|
||||||
|
Clean(lowerHBuffer);
|
||||||
|
Clean(upperLBuffer);
|
||||||
|
Clean(lowerLBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -968,7 +979,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -335,7 +335,18 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXHKHelper() {}
|
~XSCXHKHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(openBuffer);
|
||||||
|
Clean(highBuffer);
|
||||||
|
Clean(lowBuffer);
|
||||||
|
Clean(closeBuffer);
|
||||||
|
Clean(smOpenBuffer);
|
||||||
|
Clean(smHighBuffer);
|
||||||
|
Clean(smLowBuffer);
|
||||||
|
Clean(smCloseBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -1195,7 +1206,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -292,7 +292,9 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXHTDHelper() {}
|
~XSCXHTDHelper() {
|
||||||
|
Clean(htdBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -337,7 +337,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXHULLHelper() {}
|
~XSCXHULLHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(upBuffer);
|
||||||
|
Clean(downBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -642,7 +647,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -770,7 +770,17 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXICHHelper() {}
|
~XSCXICHHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(kijunSenBuffer);
|
||||||
|
Clean(tenkanSenBuffer);
|
||||||
|
Clean(chikouSpanBuffer);
|
||||||
|
Clean(senkouSpanABuffer);
|
||||||
|
Clean(senkouSpanBBuffer);
|
||||||
|
Clean(futureSenkouSpanABuffer);
|
||||||
|
Clean(futureSenkouSpanBBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -1478,7 +1488,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -542,7 +542,14 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXMCHelper() {}
|
~XSCXMCHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(sarBuffer);
|
||||||
|
Clean(fastBuffer);
|
||||||
|
Clean(slowBuffer);
|
||||||
|
Clean(verifierBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -1057,7 +1064,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -455,7 +455,24 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXMRBHelper() {}
|
~XSCXMRBHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(fastBuffer);
|
||||||
|
Clean(slowBuffer);
|
||||||
|
Clean(r1FastBuffer);
|
||||||
|
Clean(r1SlowBuffer);
|
||||||
|
Clean(r2FastBuffer);
|
||||||
|
Clean(r2SlowBuffer);
|
||||||
|
Clean(r3FastBuffer);
|
||||||
|
Clean(r3SlowBuffer);
|
||||||
|
Clean(r4FastBuffer);
|
||||||
|
Clean(r4SlowBuffer);
|
||||||
|
Clean(r5FastBuffer);
|
||||||
|
Clean(r5SlowBuffer);
|
||||||
|
Clean(r6FastBuffer);
|
||||||
|
Clean(r6SlowBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -272,7 +272,25 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXOSCHelper() {}
|
~XSCXOSCHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(atrBuffer);
|
||||||
|
Clean(rsiBuffer);
|
||||||
|
Clean(cciBuffer);
|
||||||
|
Clean(sarBuffer);
|
||||||
|
Clean(bullPBuffer);
|
||||||
|
Clean(bearPBuffer);
|
||||||
|
Clean(stddevBuffer);
|
||||||
|
Clean(volumeBuffer);
|
||||||
|
Clean(rviMainBuffer);
|
||||||
|
Clean(momentumBuffer);
|
||||||
|
Clean(macdMainBuffer);
|
||||||
|
Clean(rviSignalBuffer);
|
||||||
|
Clean(stochMainBuffer);
|
||||||
|
Clean(macdSignalBuffer);
|
||||||
|
Clean(stochSignalBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -1139,7 +1157,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -964,7 +964,27 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXPVHelper() {}
|
~XSCXPVHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(fib1Buffer);
|
||||||
|
Clean(fib2Buffer);
|
||||||
|
Clean(fib3Buffer);
|
||||||
|
Clean(fib4Buffer);
|
||||||
|
Clean(fib5Buffer);
|
||||||
|
Clean(scHHBuffer);
|
||||||
|
Clean(scLLBuffer);
|
||||||
|
Clean(mcHHBuffer);
|
||||||
|
Clean(mcLLBuffer);
|
||||||
|
Clean(lcHHBuffer);
|
||||||
|
Clean(lcLLBuffer);
|
||||||
|
Clean(hcHHBuffer);
|
||||||
|
Clean(hcLLBuffer);
|
||||||
|
Clean(peaksBuffer);
|
||||||
|
Clean(valesBuffer);
|
||||||
|
Clean(supportBuffer);
|
||||||
|
Clean(resistanceBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -405,7 +405,16 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXRLHelper() {}
|
~XSCXRLHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(fastBuffer);
|
||||||
|
Clean(slowBuffer);
|
||||||
|
Clean(verifierBuffer);
|
||||||
|
Clean(fastStateBuffer);
|
||||||
|
Clean(slowStateBuffer);
|
||||||
|
Clean(verifierStateBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -282,7 +282,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXSLNHelper() {}
|
~XSCXSLNHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(slnBuffer);
|
||||||
|
Clean(stateBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -309,7 +309,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXSSLCHelper() {}
|
~XSCXSSLCHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(upBuffer);
|
||||||
|
Clean(downBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -599,7 +604,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -298,7 +298,12 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXSTRHelper() {}
|
~XSCXSTRHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(trendBuffer);
|
||||||
|
Clean(stateBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -611,7 +616,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -306,7 +306,13 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXTDHelper() {}
|
~XSCXTDHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(signalBuffer);
|
||||||
|
Clean(bullishBuffer);
|
||||||
|
Clean(bearishBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -638,7 +644,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -135,7 +135,9 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXTMHelper() {}
|
~XSCXTMHelper() {
|
||||||
|
Clean(mainBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -279,7 +279,9 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXVLMHelper() {}
|
~XSCXVLMHelper() {
|
||||||
|
Clean(volumeBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
|
|||||||
@@ -160,7 +160,14 @@ public:
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Deconstructor ...
|
// Deconstructor ...
|
||||||
~XSCXZGHelper() {}
|
~XSCXZGHelper()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
Clean(mainBuffer);
|
||||||
|
Clean(lowsBuffer);
|
||||||
|
Clean(highsBuffer);
|
||||||
|
Clean(PeaksAndValesBuffer);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Tools ...
|
// Tools ...
|
||||||
@@ -476,7 +483,8 @@ private:
|
|||||||
{
|
{
|
||||||
//
|
//
|
||||||
int totalBars = CountBars();
|
int totalBars = CountBars();
|
||||||
if (totalBars > 1000) {
|
if (totalBars > 1000)
|
||||||
|
{
|
||||||
totalBars = 1000;
|
totalBars = 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -159,36 +159,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -230,37 +230,16 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[]
|
|
||||||
//
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -247,36 +247,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
if (Bars(_Symbol, _Period) < rates_total)
|
if (Bars(_Symbol, _Period) < rates_total)
|
||||||
|
|||||||
@@ -365,36 +365,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -418,36 +418,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -220,36 +220,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -210,36 +210,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
int numOfRequiredAtrs;
|
int numOfRequiredAtrs;
|
||||||
|
|||||||
@@ -175,36 +175,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -175,36 +175,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
@@ -161,36 +161,17 @@ void OnDeinit(const int reason)
|
|||||||
//
|
//
|
||||||
// Calculating what we want ...
|
// Calculating what we want ...
|
||||||
int OnCalculate(
|
int OnCalculate(
|
||||||
//
|
const int rates_total, // Total Bars on Chart ...
|
||||||
// total Candles on chart ...
|
const int prev_calculated, // Total Calculated Bars on Charts ...
|
||||||
const int rates_total,
|
const datetime &time[], // History of Open Time ...
|
||||||
//
|
const double &open[], // History of Open Price ...
|
||||||
// total calculated Candles on charts ...
|
const double &high[], // History of High Price ...
|
||||||
const int prev_calculated,
|
const double &low[], // History of Low Price ...
|
||||||
//
|
const double &close[], // History of Close Price ...
|
||||||
// history of Candles Open Time ...
|
const long &tick_volume[], // History of Tick Volumes on Bar ...
|
||||||
const datetime &time[],
|
const long &volume[], // History of Trade Volumes ...
|
||||||
//
|
const int &spread[] // History of Spread Price ...
|
||||||
// history of Candles Open Price ...
|
)
|
||||||
const double &open[],
|
|
||||||
//
|
|
||||||
// history of Candles High Price ...
|
|
||||||
const double &high[],
|
|
||||||
//
|
|
||||||
// history of Candles Low Price ...
|
|
||||||
const double &low[],
|
|
||||||
//
|
|
||||||
// history of Candles Close Price ...
|
|
||||||
const double &close[],
|
|
||||||
//
|
|
||||||
// history of Tick Volumes on Candle ...
|
|
||||||
const long &tick_volume[],
|
|
||||||
//
|
|
||||||
// history of Trade Volumes ...
|
|
||||||
const long &volume[],
|
|
||||||
//
|
|
||||||
// history of Candles Spread Price ...
|
|
||||||
const int &spread[])
|
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Prepare Buffers ...
|
// Prepare Buffers ...
|
||||||
|
|||||||
Reference in New Issue
Block a user