62 lines
4.5 KiB
MQL5
62 lines
4.5 KiB
MQL5
#include <General_class_.mqh>
|
|
#include <Indicators_class.mqh>
|
|
#include <ExternalIndicators_class.mqh>
|
|
//+------------------------------------------------------------------+
|
|
//| |
|
|
//+------------------------------------------------------------------+
|
|
CGeneral_class gc;
|
|
CIndicators_class ind;
|
|
CExternalIndicators_class externalind;
|
|
|
|
input ENUM_TIMEFRAMES per = PERIOD_M1; //Период для текущей торговли
|
|
input ENUM_TIMEFRAMES per2 = PERIOD_M5; //Период для долгосрочного тренда
|
|
|
|
//+------------------------------------------------------------------+
|
|
//| Donchian_channel |
|
|
//+------------------------------------------------------------------+
|
|
//enum Applied_Extrem //Тип экстремумов
|
|
// {
|
|
// HIGH_LOW,
|
|
// HIGH_LOW_OPEN,
|
|
// HIGH_LOW_CLOSE,
|
|
// OPEN_HIGH_LOW,
|
|
// CLOSE_HIGH_LOW
|
|
// };
|
|
////+-----------------------------------+
|
|
////| ВХОДНЫЕ ПАРАМЕТРЫ ИНДИКАТОРА |
|
|
////+-----------------------------------+
|
|
input int DonchianPeriod=20; //Период усреднения
|
|
input Applied_Extrem Extremes=HIGH_LOW; //Тип экстремумов
|
|
input int Margins=-2;
|
|
input int Shift=0; //сдвиг индикатора по горизонтали в барах
|
|
//+-----------------------------------+
|
|
//---- индикаторные буферы
|
|
double upperBuffer[];
|
|
double middleBuffer[];
|
|
double lowerBuffer[];
|
|
int Handle_Donchian;
|
|
|
|
int OnInit()
|
|
{
|
|
externalind._Donchian_handle(_Symbol,per,DonchianPeriod,Margins,Shift,Handle_Donchian,true);
|
|
|
|
//---
|
|
return(INIT_SUCCEEDED);
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
//| Expert deinitialization function |
|
|
//+------------------------------------------------------------------+
|
|
void OnDeinit(const int reason)
|
|
{
|
|
//---
|
|
|
|
}
|
|
//+------------------------------------------------------------------+
|
|
//| Expert tick function |
|
|
//+------------------------------------------------------------------+
|
|
void OnTick()
|
|
{
|
|
externalind._Dochian_buffer(upperBuffer, middleBuffer,lowerBuffer,Handle_Donchian);
|
|
|
|
}
|
|
//+------------------------------------------------------------------+
|