/// <summary> /// Called on each bar update event (incoming tick) /// </summary> protected override void OnBarUpdate() { // Use this method for calculating your indicator values. Assign a value to each // plot below by replacing 'Close[0]' with your own formula. int strength = 0; if (Rising(HMA(period1))) { Bull0.Set(3); strength++; } else { Bear0.Set(3); } if (Rising(HMA(period2))) { Bull1.Set(2); strength++; } else { Bear1.Set(2); } if (Rising(HMA(period3))) { Bull2.Set(1); strength++; } else { Bear2.Set(1); } if (Rising(HMA(period4))) { Bull3.Set(0); strength++; } else { Bear3.Set(0); } Print(Time + " strength: " + strength); switch ((int)(strength)) { case 0: SumBearStrong.Set(5); break; case 1: SumBearWeak.Set(5); break; case 2: SumNeutral.Set(5); break; case 3: SumBullWeak.Set(5); break; case 4: SumBullStrong.Set(5); break; default: break; } }
/// <summary> /// Called on each bar update event (incoming tick) /// </summary> protected override void OnBarUpdate() { // Use this method for calculating your indicator values. Assign a value to each // plot below by replacing 'Close[0]' with your own formula. //Plot0.Set(Close[0]); // Checks to ensure all Bars objects contain enough bars before beginning if (CurrentBars[0] <= BarsRequired || CurrentBars[1] <= BarsRequired || CurrentBars[2] <= BarsRequired || CurrentBars[3] <= BarsRequired) { return; } int strength = 0; //Stochastics stoc0 = Stochastics(BarsArray[0], periodD, periodK, smooth); if (BarsInProgress == 0) { strength = plotStoc(BarsInProgress); Bear0.Set(BarsInProgress); Print(Time + " BarsInProgress: " + BarsInProgress + " strength: " + strength); } else if (BarsInProgress == 1) { strength += plotStoc(BarsInProgress); Print(Time + " BarsInProgress: " + BarsInProgress + " strength: " + strength); } else { return; } /* * if (Rising(Stochastics(BarsArray[0], periodD, periodK, smooth).D)) { * Bull1.Set(2); * strength++; * } else { * Bear1.Set(2); * } * if (Rising(HMA(period3))) { * Bull2.Set(1); * strength++; * } else { * Bear2.Set(1); * } * * if (Rising(HMA(period4))) { * Bull3.Set(0); * strength++; * } else { * Bear3.Set(0); * } * * switch ((int) (strength)) { * case -2: * //SumBearStrong.Set(5); * Plots[0].Pen.Color = Color.Red; * Plots[0] = 5; * break; * case -1: * //SumBearWeak.Set(5); * break; * case 0: * //SumNeutral.Set(5); * break; * case 1: * //SumBullWeak.Set(5); * break; * case 2: * Plots[0].Pen.Color = Color.Blue; * Plots[0].Set(5); * //SumBullStrong.Set(5); * //Bull1.Set(5); * break; * * default: * break; * } */ }