Description
using System; using cAlgo.API; using cAlgo.API.Indicators; using cAlgo.API.Internals; using cAlgo.Indicators; namespace EngulfingPattern { [Indicator(IsOverlay = false, TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)] public class EngulfingPattern : Indicator { [Parameter(DefaultValue = 3)] public int LookbackPeriods { get; set; } public MarketSeries SourceSeries { get; private set; } public MarketSeries EngulfingSeries { get; private set; } protected override void Initialize() { SourceSeries = MarketData.GetSeries(TimeFrame); EngulfingSeries = CreateDataSeries(); } public override void Calculate(int index) { if (index < LookbackPeriods) return; bool isBullishEngulfing = IsBullishEngulfing(index); bool isBearishEngulfing = IsBearishEngulfing(index); if (isBullishEngulfing) EngulfingSeries[index] = 1; else if (isBearishEngulfing) EngulfingSeries[index] = -1; } private bool IsBullishEngulfing(int index) { return SourceSeries.Close[index - 1] > SourceSeries.Open[index - 1] && SourceSeries.Open[index] > SourceSeries.Close[index - 1] && SourceSeries.Close[index] > SourceSeries.Open[index]; } private bool IsBearishEngulfing(int index) { return SourceSeries.Open[index - 1] > SourceSeries.Close[index - 1] && SourceSeries.Close[index] > SourceSeries.Open[index - 1] && SourceSeries.Open[index] > SourceSeries.Close[index]; } } }
ali.falahati.m
Joined on 13.09.2023
- Distribution: Free
- Language: C#
- Trading platform: cTrader Automate
- File name: QualitativeQuantitativeE.algo
- Rating: 0
- Installs: 605