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+10)
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–20)
endif
endif
drawcandle(open,high,low,close)
return