On the lower study, it doesn't show the number of shares traded in the data box. Is there some way to make it show like on other volume indicators?Chris's Enhanced Volume For ThinkOrSwim
Buy / Sell Volume Pressure Percentages
View attachment 913
Buyers and Sellers is not information available in the data feeds.
When we look at the movement of price in comparison to volume, it is called Volume Pressure.
The scripts discussed here are representative of the PRICE spread compared to the overall volume spread.
We create a percentage for buying and selling pressure by using the candlestick patterns weighted volume.
Volume Pressure identifies the price movement which when aggregated with volume it is used to define MOMENTUM not actual buyers and sellers.
You can't apply the momentum percentage to the volume number and declare that to be the number of buyers and sellers.
View attachment 11814View attachment 11815
Ruby:#Chris' Enhanced Volume V.2 /w Uptick/Downtick declare on_volume; ############### #DPL CRITERIA # ############### input Audible_Alert = yes; def Deviation_Length = 60; def Deviate = 2; def volumestdev = RelativeVolumeStDev(length = Deviation_Length); def abovedev = volumestdev >= Deviate; def belowdev = volumestdev <= Deviate; ############ # DPL BARS # ############ def increase = volume > volume[1]; def devincrease = increase and abovedev; def decrease = volume < volume[1]; def devdecrease = decrease and abovedev; ############################## # UPTICK / DOWNTICK CRITERIA # ############################## def O = open; def H = high; def C = close; def L = low; def V = volume; def Buying = V * (C - L) / (H - L); def Selling = V * (H - C) / (H - L); ################## # Selling Volume # ################## plot SV = Selling; SV.DefineColor("Decrease", Color.rED); SV.DefineColor("DevDecrease", Color.pink); SV.AssignValueColor(if devdecrease then SV.Color("DevDecrease") else SV.Color("Decrease")); SV.SetPaintingStrategy(PaintingStrategy.HISTOGRAM); SV.HideTitle(); SV.HideBubble(); SV.SetLineWeight(5); ################# # Buying Volume # ################# DefineGlobalColor("LabelGreen", CreateColor(0, 165, 0)) ; plot BV = Buying; BV.DefineColor("Increase", GlobalColor("LabelGreen")); BV.DefineColor("DevIncrease", Color.light_GREEN); BV.AssignValueColor(if devincrease then BV.Color("DevIncrease") else BV.Color("Increase")); BV.SetPaintingStrategy(PaintingStrategy.HISTOGRAM); BV.HideTitle(); BV.HideBubble(); BV.SetLineWeight(5); ################# # Adding Volume Labels # ################# input Show_Labels = yes; AddLabel(Show_Labels, "Buy Vol = " + Round(Buying, 0), if Buying > Selling then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Buy %: " + Round((Buying/(Buying+Selling))*100,2), If (Buying/(Buying+Selling))*100 > 60 then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Sell Vol = " + Round(Selling, 0), if Selling > Buying then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Sell %: " + Round((Selling/(Selling+Buying))*100,2), If (Selling/(Selling+Buying))*100 > 60 then GlobalColor("LabelGreen") else color.RED);
Buy / Sell Volume Pressure w/ volumes and percentages -- Upper Study Labels Only
Ruby:#Chris' Enhanced Volume V.2 /w Uptick/Downtick LABELS ONLY declare upper; ############### #DPL CRITERIA # ############### def Deviation_Length = 60; def Deviate = 2; def volumestdev = RelativeVolumeStDev(length = Deviation_Length); def abovedev = volumestdev >= Deviate; def belowdev = volumestdev <= Deviate; ############ # DPL BARS # ############ def increase = volume > volume[1]; def devincrease = increase and abovedev; def decrease = volume < volume[1]; def devdecrease = decrease and abovedev; ############################## # UPTICK / DOWNTICK CRITERIA # ############################## def O = open; def H = high; def C = close; def L = low; def V = volume; def Buying = V * (C - L) / (H - L); def Selling = V * (H - C) / (H - L); ################## # Selling Volume # ################## def SV = Selling; def BV = Buying; ################# # Adding Volume Labels # ################# DefineGlobalColor("LabelGreen", CreateColor(0, 165, 0)) ; input Show_Labels = yes; AddLabel(Show_Labels, "Buy Vol = " + Round(Buying, 0), if Buying > Selling then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Buy %: " + Round((Buying/(Buying+Selling))*100,2), If (Buying/(Buying+Selling))*100 > 60 then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Sell Vol = " + Round(Selling, 0), if Selling > Buying then GlobalColor("LabelGreen") else color.red); AddLabel(Show_Labels, "Sell %: " + Round((Selling/(Selling+Buying))*100,2), If (Selling/(Selling+Buying))*100 > 60 then GlobalColor("LabelGreen") else color.RED);