/// <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; } }