# 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.

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

And the Cat. B buy was valid till 1.1243

Therefore your entry risk at S1 was low, 20 pips or so, and the probability of hitting R1 was high.

As for R2 and S1 I don’t think that a single line could be defined, so ignore them for now.

As for the measuring points, just remember this: they are the ending fractals of a continuation divergence.

``   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);``