Description
New Update (21/09/2021) Better Performance
Indicator has been /* UPGRADED/*, with the option to determine your own period for reversal signals, and a build in zigzag with customable periods
just a simple indicator to help those who have a hard time entering positions, not necessarily a trend base indicator, it' s recommended to use other indicators as well(add it to your stra)
in this caption other indicators are being used as well(indicators with their rightful owner), also not necessarily recommended
purple for sell & blue for buy
// if you have any feedbacks leave them in the comment section
also before use, it is better to set your candle color and outline on transparent
using System;
using cAlgo.API;
using cAlgo.API.Internals;
using cAlgo.API.Indicators;
using cAlgo.Indicators;
namespace cAlgo
{
[Indicator(IsOverlay = true, TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
public class Re_reversalBars : Indicator
{
[Parameter("Thickness", Group = "thickness sett", DefaultValue = 3)]
public int thi { get; set; }
[Parameter("Bullish", Group = "Colors sett", DefaultValue = "Blue")]
public string colo1 { get; set; }
[Parameter("Bearish", Group = "Colors sett", DefaultValue = "Purple")]
public string colo2 { get; set; }
[Parameter("others", Group = "Colors sett", DefaultValue = "Black")]
public string colo3 { get; set; }
[Parameter("others", Group = "Colors sett", DefaultValue = "Gray")]
public string colo4 { get; set; }
[Parameter("Sycle Periode", DefaultValue = 3, MinValue = 0)]
public int P_periode { get; set; }
[Parameter("Zigzag Periode", DefaultValue = 7, MinValue = 0)]
public int Z_zigPeriode { get; set; }
private int comfirmer_2;
private DateTime starts;
protected override void Initialize()
{
comfirmer_2 = 1;
}
private int Z_zigInitialize()
{
int Z_Result = 0;
double zigHigh = Functions.Maximum(Bars.HighPrices, Z_zigPeriode);
if (Bars.HighPrices.LastValue >= zigHigh)
Z_Result = 1;
else
{
double zigLow = Functions.Minimum(Bars.LowPrices, Z_zigPeriode);
if (Bars.LowPrices.LastValue <= zigLow)
Z_Result = -1;
}
return Z_Result;
}
private DateTime cycle;
public override void Calculate(int index)
{
starts = Bars.OpenTimes[index - 1];
int i = 1;
while (i < P_periode)
{
if (Bars.OpenTimes[index - i] == cycle)
return;
else
{
Chart.SetBarColor(index - 1, color: colo4);
}
i++;
}
int zig_ = Z_zigInitialize();
switch (comfirmer_2)
{
case -1:
bool T_down = Bars.ClosePrices[index - 1] < Bars.LowPrices[index - 2] && Bars.ClosePrices[index - 1] < Bars.LowPrices[index - 3];
if (T_down && zig_ == -1)
{
cycle = Bars.OpenTimes[index - 1];
comfirmer_2 = 1;
Chart.SetBarColor(index - 1, color: colo2);
}
else
{
if (Bars.HighPrices[index - 1] >= Bars.ClosePrices[index - 2] || Bars.LowPrices[index - 1] <= Bars.ClosePrices[index - 2])
Chart.SetBarColor(index - 1, color: colo3);
}
break;
case 1:
bool T_up = Bars.ClosePrices[index - 1] > Bars.HighPrices[index - 2] && Bars.ClosePrices[index - 1] > Bars.HighPrices[index - 3];
if (T_up && zig_ == 1)
{
cycle = Bars.OpenTimes[index - 1];
comfirmer_2 = -1;
Chart.SetBarColor(index - 1, color: colo1);
}
else
{
if (Bars.HighPrices[index - 1] >= Bars.ClosePrices[index - 2] || Bars.LowPrices[index - 1] <= Bars.ClosePrices[index - 2])
Chart.SetBarColor(index - 1, color: colo3);
}
break;
}
}
}
}
d.deel
Joined on 06.01.2021
- Distribution: Free
- Language: C#
- Trading platform: cTrader Automate
- File name: Re_reversal Bars.algo
- Rating: 0
- Installs: 3422
- Modified: 13/10/2021 09:54
Comments
Hi, Thank you for sharing, there is any post or something that explains the strategy that your indicator follows to mark a buy or sell candle?. Thanks
Thanks a lot. ;)
Hi, thank you amirreza.mrz
Because of peformance reasons, there will not be an alarm type of systeme
As for personalyze editing in the link bellow, there's a discussion about the subject, or a way
similar on how it can be done
https://ctrader.com/forum/cbot-support/5493
Place the solution in the "If" statements on the 75th and 89th lines and it should
normaly be it. :)
Hello
First of all, thanks for this great indicator.
Is it possible to add a alarm to it or guide me to do by myself?
Hi, sorry but there isn't any strategy based on this indicator, but it can help with better viewing of the market, or/and can serve as an indication to enter or close a position depending on the comfigurations you've set
PS: this indicator is inspired from a simple video seen on Youtube