The real author:
WizardSerg
The SlopeDirectionLine trend indicator with the ability to change the algorithms of averaging and triggering alerts, push notifications and sending e-mail messages.
Indicator input parameters:
//+-----------------------------------+ //| Indicator input parameters | //+-----------------------------------+ input Smooth_Method MA_Method1=MODE_LWMA; // First smoothing method input uint Length1=12; // First smoothing depth input int Phase1=15; // First smoothing parameter //--- Phase1: for JJMA that can change withing the range -100 ... +100. It impacts the quality of the intermediate process of smoothing; //--- Phase1: for VIDIA, it is a CMO period, for AMA, it is a slow moving average period input Smooth_Method MA_Method2=MODE_SMA; // Second smoothing averaging method input int Phase2=15; // Second smoothing parameter //---Phase2: for JJMA that can change withing the range -100 ... +100. It impacts the quality of the intermediate process of smoothing; //---Phase2: for VIDIA, it is a CMO period, for AMA, it is a slow moving average period input Applied_price_ IPC=PRICE_CLOSE; // Price constant input int Shift=0; // Horizontal shift of the indicator in bars input int PriceShift=0; // Vertical shift of the indicator in points input bool On_Push = false; // Allow to send push-messages input bool On_Email = false; // Allow to send e-mail messages input bool On_Alert = true; // Allow to put alert input bool On_Play_Sound = false; // Allow to put sound signal input string NameFileSound = "expert.wav"; // Name of the file with sound input string CommentSirName="SlopeDirectionLine: "; // The first part of the alert comment input uint SignalBar=1; // Bar index for getting an entry signal
The indicator uses SmoothAlgorithms.mqh library classes (must be copied to the terminal_data_folder\MQL5\Include). The use of the classes was thoroughly described in the article "Averaging price series for intermediate calculations without using additional buffers".

Fig.1 The SlopeDirectionLine indicator