# R1 S1

On the trading floor back in 2014 I remember how puzzled I was over these s1,s2,s3 “statistical” support and resistance plots on my neighbor’s screen. I was always sceptical of the one size fits all solutions.

6 years later I feel like I am the only person in the world that can figure an R1 and an S1 accurately.

See, there is no instrument independent calculation. The measuring points for the upside never coincide with the downside’s, they are not opens or closes, they have nothing to do with trading sessions, trading ranges, so not even ATR.

How can you get all of the above wrong and arrive at the right conclusion?

I posted this image the other day. What followed was a dip to 1.12625 and a rally to 1.1352. How does this relate to my S1 and R1 calculations? You tell me.

Why should it had been obvious to take this long side trade?

``   j2=1;   while (j2<500 ){    j=j2+3;       if (iFractals(Symbol(),0,MODE_LOWER,j2))          while (j<j2+16){               if (RSI2[j2]<RSI2[j] && iFractals(Symbol(),0,MODE_LOWER,j)   ) break;       //&& Low[j2]>=Low[j]+10*Point                j++;}                      if (iFractals(Symbol(),0,MODE_LOWER,j) && RSI2[j2]<RSI2[j] && Low[j2]>=Low[j]-10*Point ) break;        //&& Low[j2]>=Low[j]-10*Point          j2++;}  if (j2<500 && Low[j2]>=Low[j]-10*Point) {LowFractalTime_2=iTime(NULL, 0,j2);    LowFractalTime_1=iTime(NULL, 0,j);    } if (j<500 && j<j2+16)   {ObjectDelete(0,"BUNA3_2");     ObjectCreate(0,"BUNA3_2",OBJ_TREND,0,LowFractalTime_1,Low[j],LowFractalTime_2,Low[j2]);    ObjectSetInteger(0,"BUNA3_2",OBJPROP_RAY_RIGHT,false);         if (iLow(symbol,0,iLowest(symbol,0,MODE_LOW,j2-1,0))<Low[j2])    ObjectSet("BUNA3_2",OBJPROP_COLOR,clrNONE);        else          ObjectSet("BUNA3_2",OBJPROP_COLOR,indicator_color9);         ObjectSet("BUNA3_2",OBJPROP_WIDTH, linethickness);           ///first lower continuation divergence                         if (Period()==60){            ObjectCreate("BUNA3_3ffx",OBJ_TEXT, 0, Time[j2+3], Low[j2]+20*Point);          ObjectSetText("BUNA3_3ffx", " ("+DoubleToStr(NormalizeDouble(Low[j2],4),4)+") Short:"+DoubleToStr(NormalizeDouble(Low[j2]+90*Point,4),4), 17, "Impact", clrWhite);          ObjectCreate("BUNA3_3ff",OBJ_TEXT, 0, Time[j2+3], Low[j2]+20*Point);          ObjectSetText("BUNA3_3ff","("+DoubleToStr(NormalizeDouble(Low[j2],4),4)+") Short:"+DoubleToStr(NormalizeDouble(Low[j2]+90*Point,4),4), 17, "Impact", clrDarkRed);           if (iLow(symbol,0,iLowest(symbol,0,MODE_LOW,j2-1,0))<Low[j2])    ObjectSet("BUNA3_3ff",OBJPROP_COLOR,clrRed);                      if (j2>2) {             ObjectCreate("Ellipset"+DoubleToStr(j), OBJ_TRIANGLE, 0, Time[j2-3],  Low[j2]+90*Point, Time[j2-3], Low[j2]-420*Point, Time[j2], Low[j2]);             ObjectSet("Ellipset"+DoubleToStr(j),OBJPROP_COLOR,clrGray);             ObjectSet("Ellipset"+DoubleToStr(j),OBJPROP_BACK,0);             ObjectSet("Ellipset"+DoubleToStr(j),OBJPROP_WIDTH,1);             ObjectSet("Ellipset"+DoubleToStr(j),OBJPROP_STYLE,1);                    ObjectCreate("Ellipse3_3ffx",OBJ_TEXT, 0, Time[j2-3], Low[j2]-400*Point);            ObjectSetText("Ellipse3_3ffx", " S1:"+DoubleToStr(NormalizeDouble(Low[j2]-420*Point,4),4), 17, "Impact", clrWhite);             ObjectCreate("Ellipse3_3ffy",OBJ_TEXT, 0, Time[j2-3], Low[j2]-400*Point);            ObjectSetText("Ellipse3_3ffy", "S1:"+DoubleToStr(NormalizeDouble(Low[j2]-420*Point,4),4), 17, "Impact", clrBlue);``