Uno Momentum

I went down a different path than I thought I would and ended up filtering using the Bollingers instead of RSI2.

Not crazy about the filters, as they are a bit overdone, but overall this is a very usable thing.

if (red[i+2]==true && red[i+1]==true && red[i]==false && Close[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)  ){
        if (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+3)>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+3)
         && Close[i+1]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+1)
         && Open[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)
         && Close[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1)
        )
            {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], High[i], Time[i], High[i]+370*Point);
            ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrRed );
            }
         else if(Close[i]<iMA(symbol,0,30,0,MODE_SMA,PRICE_MEDIAN,i)
            && Close[i+2]>iMA(symbol,0,30,0,MODE_SMA,PRICE_MEDIAN,i+2)
         ) {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], High[i], Time[i], High[i]+370*Point);
          ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrRed );
         }
          else if (Close[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i) 
           && i>0 && RSI2[i-1]>80
          ) {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], Low[i], Time[i], Low[i]-370*Point);
         ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrGreen );
      }
      ObjectSet("TitusX"+IntegerToString(i), OBJPROP_WIDTH, 6 );
      ObjectSet("TitusX"+IntegerToString(i), OBJPROP_STYLE, 1 );
      ObjectSetInteger(0,"TitusX"+IntegerToString(i), OBJPROP_RAY_RIGHT, false );
}


if (orange[i+2]==true && orange[i+1]==true && orange[i]==false && orange[i+5]==false && Close[i+1]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+1) ){
        if (iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i+3)>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)-iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i+3))
            {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], High[i], Time[i], High[i]+370*Point);
            ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrRed );
            }
         else if(Close[i]<iMA(symbol,0,30,0,MODE_SMA,PRICE_MEDIAN,i)
         && Close[i+2]>iMA(symbol,0,30,0,MODE_SMA,PRICE_MEDIAN,i+2)
         ) {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], High[i], Time[i], High[i]+370*Point);
            ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrRed );
          }
          else {ObjectCreate(0,"TitusX"+IntegerToString(i),OBJ_TREND, 0, Time[i], Low[i], Time[i], Low[i]-370*Point);
         ObjectSet("TitusX"+IntegerToString(i), OBJPROP_COLOR, clrGreen );
      }
      ObjectSet("TitusX"+IntegerToString(i), OBJPROP_WIDTH, 6 );
      ObjectSet("TitusX"+IntegerToString(i), OBJPROP_STYLE, 1 );
      ObjectSetInteger(0,"TitusX"+IntegerToString(i), OBJPROP_RAY_RIGHT, false );
}

What you can get out of these squeeze releases normally is the price going outside the band 3x (unless it is going parabolic – 7hr plus without touching the 8 EMO).


Album # 13