I am trying to produce a Green Dot or arrow etc when the value of a 14 period RSI is above 55 and a red dot etc when moves below 45, see code I started but it comes up with an error.
[Description("Enter the description of your new custom indicator here")]
publicclass AshRSI : Indicator
{
#region Variables
// Wizard generated variables
privateint period = 14; // Default setting for Period
// User defined variables (add any user defined variables below)
#endregion
///<summary>
/// This method is used to configure the indicator and is called once before any bar data is loaded.
///</summary>
protectedoverridevoid Initialize()
{
Add(new Plot(Color.FromKnownColor(KnownColor.SpringGreen), PlotStyle.Dot, "Above"));
Add(new Plot(Color.FromKnownColor(KnownColor.Red), PlotStyle.Dot, "Below"));
Add(new Line(Color.FromKnownColor(KnownColor.Lime), 55, "A"));
Add(new Line(Color.FromKnownColor(KnownColor.Red), 45, "B"));
Period = 14;
// Set line drawing thresholds which give the visual effect of
// multi colored lines based on indicator values
Plots[0].Min = 45;
Plots[1].Max = 45;
Plots[1].Min = 55;
Plots[2].Min = 55;
CalculateOnBarClose = true;
Overlay = false;
PriceTypeSupported = false;
}
///<summary>
/// Called on each bar update event (incoming tick)
///</summary>
protectedoverridevoid OnBarUpdate()
{// Do not calculate if we don't have enough bars
if (CurrentBar < Period) return;
// Calculate RSI value
double value = RSI(14)[0];
// Use an if branch to set an indicator panel back ground color and bar color
if (value > 55)
{
BackColor = Color.PaleGreen;
BarColor = Color.Yellow;
}
if (value < 45)
{
BackColor = Color.Pink;
BarColor = Color.Yellow;
}
// Set the plot value
Above.Set(55);
Below.Set(45);
}
Comment