Forums › ProRealTime English forum › ProBuilder support › PRC williams' high and low indicator › Reply To: PRC williams' high and low indicator
Sorry Nicolas, but it doesn’t work either.
This is the original code I modified to display ONLY arrows that are circled. I only moved the DRAWARROWUP/DRAWARROWDOWN lines to the line following DRAWELLIPSE (and commented out this one), I also commented out the DRAWCANDLE line at the bottom, plus I had to comment out some variables used to drawellipses. This code is working as you can see from indicator box 3, since it displays ONLY those arrows that are circled on the price chart.
But, if instead of drawing an arrov a simply set x=1 when it’s an upward arrow and x=-1 when it’s the other way round, it does not work! With initial x=0 the result is box 1, without x=0 (or setting just ONCE x=0) the result is the histogram in box 2. In either cases it’s wrong.
I am wondering why replacing a DRAWARROWUP with x=1 produces odd results.
I also tried to set DEFPARAM CalculateOnLastBars = 1000 (from 300), but that’s not the problem I guess, since the original version on the price chart still has 300 as a bar limit.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
DEFPARAM CalculateOnLastBars = 1000 //computation of the radius to draw ellipses //radius=average[200](range)/4 //if golong=1 then //golong=0 //endif //formula to compute short term swing points if (high>alto[1]) and not (high<high[1] and low>low[1]) then alto=high basso=low markup=barindex markhigh=high endif if (low<basso[1]) and not (high<high[1] and low>low[1]) then alto=high basso=low markdown=barindex marklow=low endif if alto<alto[1] and trend=1 then trend=0 //drawarrowdown(markup,markhigh) mediummarkup=shortmarkup shortmarkup=markup longmarkhigh=mediummarkhigh mediummarkhigh=shortmarkhigh shortmarkhigh=markhigh //intermediate high swing points if longmarkhigh<mediummarkhigh and mediummarkhigh>shortmarkhigh then //DRAWELLIPSE(mediummarkup-1, mediummarkhigh-radius, mediummarkup+1, mediummarkhigh+radius) drawarrowdown(mediummarkup,markhigh) endif endif if basso>basso[1] and trend=0 then trend=1 //drawarrowup(markdown,marklow) mediummarkdown=shortmarkdown shortmarkdown=markdown longmarklow=mediummarklow mediummarklow=shortmarklow shortmarklow=marklow //intermediate low swing points if longmarklow>mediummarklow and mediummarklow<shortmarklow then //DRAWELLIPSE(mediummarkdown-1, mediummarklow-radius, mediummarkdown+1, mediummarklow+radius) drawarrowup(mediummarkdown,marklow) endif endif //drawcandle(open,high,low,close) return |