Circular Barplot - Oscillators Sentiment [LuxAlgo]This indicator is an implementation of a circular barplot aiming to return the market sentiment given by multiple normalized oscillators. These include the relative strength index (RSI), Stochastic %K (%K), Linear Correlation Oscillator (ROSC), William Percent Range (WPR), Percent Rank (%R), and money flow index (MFI).
The length period of each of these oscillators can be adjusted in the indicator settings.
The label in the center of the circular plot returns the average market sentiment constructed from all the previously mentioned oscillators.
Settings
Width: Circle width.
Spacing: Determines how close each circle is to the other.
Thickness: Width of the colored lines.
Offset: Controls how far the circular barplot left extremity is from the most recent candles.
Src: Input source of the indicators.
Usage
Unlike regular bar charts, circular bar plots display the bars as circle arcs and have the advantage of preserving horizontal and vertical space. A higher arc length would indicate a value closer to the maximal value of the oscillator. Other variations of the circular barplots exist but this variation using the circle arc is particularly appropriate for normalized data.
The indicator can be used as a simple widget giving a quick method to obtain the overall market sentiment of a certain ticker. A dashboard is displayed on the top left of the chart in the event the user wants to see the actual value of the oscillators.
Note that low width or high spacing settings might return unwanted results.
Circular
Periodic EllipsesThe following script periodically plot ellipses to the chart, where the maximum height of the ellipses is determined by the price high of the user-selected time frame while the price low determines the minimum height of the ellipses.
The selected time frame affects the frequency at which the ellipses are plotted, for example, a selected time frame of 1 week will plot an ellipse every week
Note that time frames that are close to the one used in the main chart can return noncircular shapes
Here the main time frame is 15 minutes, while the time frame in the script is 1 hour.
By default the script uses future data, and as such repaint which makes it only useful in offline (non-real time) situations, you can make the script use only past data by deselecting the "repaint" option.
Interpretation And Construction
In terms of usages and interpretation ellipses are similar to bands indicators, as such we can use ellipses in a breakout methodology, where a closing price crossing over the upper bound indicating an uptrend and a closing price crossing under the lower bound indicating a downtrend.
By default, the color of the plots are based on a gradient determined by the position of the closing price relative to the ellipse, with a closing price closer to the upper bound of the ellipse returning a blue color and a closing price closer to the lower bound returning a red color, the intermediate color is violet. When repainting mode is deactivated a blue color indicates an up-trend, while a red color indicates a down-trend, violet colors on the other hand indicate a ranging market.
The ellipses can also determine possible retracements, as such the upper bound of the ellipse can act as a support in an uptrend while the lower bound can act as a resistance in a downtrend.
Construction
Peoples might be interested in the construction of ellipses, this task is not complicated. We can construct circular shapes by using the equation of a semi-circle described as follows:
C = √(1 - x*x)
with 1 ≥ x ≥ -1 , values of x greater than 1 or lower than -1 will return na . In the script, the variable basis creates a line starting at -1 and ending at 1, we then only need to apply the previous equation to this line to have a semi-circle. This semi-circle is in a range of (0,1), so we need to rescale it in a useful range, let's define the highest high of the selected time frame as H and the lowest low as L , the upper and lower bound of the ellipse are calculated as follows:
upper = avg(H,L) + C*(H - avg(H,L))
lower = avg(H,L) - C*(avg(H,L) - L)
Summary
A script plotting ellipses has been proposed, we have seen that the signals that can be generated are similar to the one generated by band indicators, note however that the script has not been made to be a serious indicator, it would be more advisable to use regular band indicators instead.
Thx to @freds_view for the question.