Comment la volatilité est-elle calculée dans le Screener ?

La volatilité mesure les variations de prix d'un instrument financier sur une période de temps donnée. Plus la fourchette de prix est large, plus la volatilité est élevée. Plus la fourchette de prix est étroite, plus la volatilité est faible. 

Voici la formule de volatilité que nous utilisons pour nos calculs (hebdomadaire, mensuel et quotidien) :

//@version=4study("volatility")fastSearchN(xs, x) => // xs - sorted, ascending    max_bars_back(xs, 366)    left  = 0    right = min(bar_index,366)    mid = 0    if xs < x        0    else        for i = 0 to 9            mid := ceil((left+right) / 2)            if left == right                break            else if xs[mid] < x                right := mid                continue            else if xs[mid] > x                left := mid                continue            else                break        midmonth1 = 30month_ago = timenow - 1000*60*60*24*month1month_ago_this_bar = time - 1000*60*60*24*month1countOfBars1MonthAgo = fastSearchN(time, month_ago)countOfBars1MonthAgoThisBar = fastSearchN(time, month_ago_this_bar)week1 = 7week_ago = timenow - 1000*60*60*24*week1week_ago_this_bar = time - 1000*60*60*24*week1countOfBarsWeekAgo = fastSearchN(time, week_ago)countOfBarsWeekAgoThisBar = fastSearchN(time, week_ago_this_bar)// volatilityvolatility(bb) =>    bb2 = bb    if bar_index == 0        bb2 := 365    if bb2 == 0        na    else        s = sum((high-low)/abs(low) * 100 / bb2, bb2)        if bb == 0            na        else            splot(volatility(countOfBarsWeekAgoThisBar), title="Volatility.W")plot(volatility(countOfBars1MonthAgoThisBar),title="Volatility.M")plot(tr(true)*100/abs(low), title="Volatility.D")
Java

Note : les valeurs de ce script sont différentes en historique et en temps réel à cause du timenow, voir https://www.tradingview.com/pine-script-docs/en/v4/essential/Indicator_repainting.html

Pour un affichage visuel, vous pouvez ajouter ce script à votre graphique via l'éditeur Pine en utilisant l'horizon temporel quotidien du graphique. Un indicateur apparaîtra sur le graphique, dont les tracés montreront les valeurs pour chaque type de volatilité.