OPEN-SOURCE SCRIPT

Automatic Support, Resistance, Fibonacci Levels

Updated
This indicator plots absolute high and low values for up to five completely adjustable time periods (in months, weeks, days, hours, minutes) and optionally calculates the Fibonacci levels on the pair of absolutes of your choice, ascending or descending, and mimics the shading available in the built-in Fib charting tools (e.g. retracement).

Here are a few screenshots of the same chart with various options selected.

3-Month, 4-Week, and 5-Day absolutes with 3-Monthly Fib plotted:
snapshot

The same chart with 4-Weekly Fib:
snapshot

The same chart with 5-Daily Fib:
snapshot


5-Day, 12-Hour, 90-Minute absolutes with 12-Hourly Fib:
snapshot

Zoomed in, on a 30-minute interval, with 90-minute Fib:
snapshot

With descending ("inverted") 90-minute Fib:
snapshot

I started putting this together for Vazzyb, who was looking for a way to automate plotting horizontal support and resistance levels for monthly, weekly, and daily extremes, and then I added additional features as they occurred to me. Special thanks to Paaax, who suggested I add Fib levels.

I am leaving the code open, so you may feel free to grab snippets you like and use them for your own purposes. Of particular interest may be my custom "calc_fib()" function, which accepts any series pair, as well as a Boolean indicating whether to invert, and returns an array with each of the major Fibonacci levels: [_236,_382,_500,_618,_786,_1618].

If anyone likes this enough to feel generous, please feel free:
BTC
3KmFchJ18QvMzAJKDcFQXvyK9p1EHWQdhP
BCH
qqtrw64ptuwprk5vtj3z8qwkvh3v0jawxq7khqng7x
ETH
0x9b51361A278910Ba3945C7519C9f0FA8a77df18d
LTC
MDeWWsP7XCG2zQuZ2dYALZXQ52u2qkc8fh

P.S. If you want the time lengths to be as close to accurate as possible, don't forget to change the number of days per week when using for cryptocurrency!
Release Notes
Added the option to hold monthly, weekly, and daily S/R levels constant throughout each day, changing only at the start of each new trading session, by request.
Added the option to turn all lines gray...as a bonus.
Remember, Fibonacci levels can be turned off by selecting "None."
Release Notes
Removed all-grey option; added configurable zigzag indicator. Note that the TV built-in zigzag will usually be better, since that indicator redraws its past--something that a script cannot do. Depth and sensitivity are options, though.
Release Notes
Made more sensible color choices; added option to connect support/resist lines with a line and disabled this option by default; enabled "Keep Lines Straight All Day" by default; set default zigzag depth to 50.

Example of 1-week (red), 2-day (blue) levels plotted with no Fib:
snapshot
Release Notes
Fixed an error in the zigzag logic. Shown in the preview image alongside my Support/Resistance (Daily Bars) indicator.
adjustableconfigurablefibFibonacci RetracementretracementlevelssupportSupport and Resistance

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?

Disclaimer