Compare commits

..

1 Commits

Author SHA1 Message Date
Artur 5327473eaf Updated for RangeBars ver. 3.04 2020-03-17 23:34:45 +01:00
4 changed files with 37 additions and 7 deletions
+12 -2
View File
@@ -26,13 +26,18 @@ input int InpRSIPeriod = 14; // RSI period
// Example shown below // Example shown below
// //
RangeBars rangeBars(MQLInfoInteger((int)MQL5_TESTING) ? false : true); RangeBars *rangeBars = NULL;
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
//| Expert initialization function | //| Expert initialization function |
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
int OnInit() int OnInit()
{ {
if(rangeBars == NULL)
{
rangeBars = new RangeBars(MQLInfoInteger((int)MQL5_TESTING) ? false : true);
}
rangeBars.Init(); rangeBars.Init();
if(rangeBars.GetHandle() == INVALID_HANDLE) if(rangeBars.GetHandle() == INVALID_HANDLE)
return(INIT_FAILED); return(INIT_FAILED);
@@ -48,7 +53,12 @@ int OnInit()
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
void OnDeinit(const int reason) void OnDeinit(const int reason)
{ {
rangeBars.Deinit(); if(rangeBars != NULL)
{
rangeBars.Deinit();
delete rangeBars;
rangeBars = NULL;
}
// //
// your custom code goes here... // your custom code goes here...
+25 -5
View File
@@ -8,6 +8,7 @@
// Helper functions for placing market orders. // Helper functions for placing market orders.
// //
#define DEVELOPER_VERSION
#include <AZ-INVEST/SDK/TradeFunctions.mqh> #include <AZ-INVEST/SDK/TradeFunctions.mqh>
// //
@@ -52,14 +53,19 @@ ulong currentTicket;
// Example shown below // Example shown below
// //
RangeBars rangeBars(MQLInfoInteger((int)MQL5_TESTING) ? false : true); RangeBars *rangeBars = NULL;
CMarketOrder * marketOrder; CMarketOrder *marketOrder = NULL;
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
//| Expert initialization function | //| Expert initialization function |
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
int OnInit() int OnInit()
{ {
if(rangeBars == NULL)
{
rangeBars = new RangeBars(MQLInfoInteger((int)MQL5_TESTING) ? false : true);
}
rangeBars.Init(); rangeBars.Init();
if(rangeBars.GetHandle() == INVALID_HANDLE) if(rangeBars.GetHandle() == INVALID_HANDLE)
return(INIT_FAILED); return(INIT_FAILED);
@@ -79,8 +85,12 @@ int OnInit()
params.busyTimeout_ms = InpBusyTimeout_ms; params.busyTimeout_ms = InpBusyTimeout_ms;
params.requoteTimeout_ms = InpRequoteTimeout_ms; params.requoteTimeout_ms = InpRequoteTimeout_ms;
} }
marketOrder = new CMarketOrder(params);
if(marketOrder == NULL)
{
marketOrder = new CMarketOrder(params);
}
return(INIT_SUCCEEDED); return(INIT_SUCCEEDED);
} }
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
@@ -88,7 +98,16 @@ int OnInit()
//+------------------------------------------------------------------+ //+------------------------------------------------------------------+
void OnDeinit(const int reason) void OnDeinit(const int reason)
{ {
rangeBars.Deinit(); //
// delete RanegBars class
//
if(rangeBars != NULL)
{
rangeBars.Deinit();
delete rangeBars;
rangeBars = NULL;
}
// //
// delete MarketOrder class // delete MarketOrder class
@@ -97,6 +116,7 @@ void OnDeinit(const int reason)
if(marketOrder != NULL) if(marketOrder != NULL)
{ {
delete marketOrder; delete marketOrder;
marketOrder = NULL;
} }
} }
Binary file not shown.
Binary file not shown.