E7 KDJ free

by Gwave in category Oscilator at 03/03/2021
Description

This is a customised version from E7 Academy, it is derived from the Stochastic Oscillator with the only difference being an extra line called the J line. Values of %K and %D lines show if the security is overbought or oversold. The J line represents the divergence of the %D value from the %K.

Download the Indicator

Watch a live stream here

The pictures below are examples of a 30min, 1hr and 4hr chart respectively.

Notification Publishing copyrighted material is strictly prohibited. If you believe there is copyrighted material in this section you may use the Copyright Infringement Notification form to submit a claim.
Formula / Source Code
Language: C#
Trading Platform: cAlgocTrader
´╗┐using System;
using cAlgo.API;
using cAlgo.Indicators;
using cAlgo.API.Internals;
using cAlgo.API.Indicators;
using System.Collections.Generic;

namespace cAlgo.Indicators
{

    [Indicator(TimeZone = TimeZones.UTC, IsOverlay = true, AccessRights = AccessRights.FullAccess)]
    public class E7KDJ : Indicator
    {

        private string url = "https://www.e7harmonics.com/e7qnet";

        private string title = "your E7 Indicator securely here";

        protected override void Initialize()
        {

            string buttonText = "Download " + title;

            var background = new Rectangle 
            {
                Height = Chart.Height,
                Width = Chart.Width
            };

            var button = new Button 
            {
                Text = buttonText,
                Padding = "16",

                Style = ButtonStyle(Color.FromHex("#009345"), Color.FromHex("#10A651"))
            };

            button.Click += e => System.Diagnostics.Process.Start(url);

            var container = new StackPanel 
            {
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment = VerticalAlignment.Center
            };

            container.AddChild(button);

            Chart.AddControl(container);

            Print(title);
            Print(url);

        }

        public override void Calculate(int index)
        {

        }

        private Style ButtonStyle(Color color, Color hoverColor)
        {
            var style = new Style(DefaultStyles.ButtonStyle);
            style.Set(ControlProperty.BackgroundColor, color, ControlState.DarkTheme);
            style.Set(ControlProperty.BackgroundColor, color, ControlState.LightTheme);
            style.Set(ControlProperty.BackgroundColor, hoverColor, ControlState.DarkTheme | ControlState.Hover);
            style.Set(ControlProperty.BackgroundColor, hoverColor, ControlState.LightTheme | ControlState.Hover);
            style.Set(ControlProperty.ForegroundColor, Color.FromHex("#FFFFFF"), ControlState.DarkTheme);
            style.Set(ControlProperty.ForegroundColor, Color.FromHex("#FFFFFF"), ControlState.LightTheme);
            return style;
        }

        private Color GetColorWithOpacity(Color baseColor, decimal opacity)
        {
            var alpha = (int)Math.Round(byte.MaxValue * opacity, MidpointRounding.AwayFromZero);
            return Color.FromArgb(alpha, baseColor);
        }
    }
}
Comments
5