BTC Pi MultipleThe Pi Multiple is a function of 350 and 111-day moving average. When both intersect and the 111-day MA crosses above, it has historically coincided with a cycle top with a 3-day margin.
With the Pi Multiple, this intersection is visible when the line crosses zero upwards.
The indicator is called the Pi Multiple because 350/111 is close to Pi. It is based on the Pi Cycle Top Indicator developed by Philip Swift and has been modified for better readability by David Bertho.
Cerca negli script per "top"
VIX: Backwardation Vs ContangoVIX: Backwardation Vs Contango
Quickly visualize Contango vs Backwardation in the S&P 500 Volatility Index by plotting the prices of the futures contracts over the next 9 months
Note: indicator does not map to time axis in the same way as price; it simply plots the progression of contract months out into the future; left to right; so timeframe DOESN'T MATTER for this plot
TO UPDATE(every few months recommended): in REQUEST CONTRACTS section, delete old contracts (top) and add new ones (bottom). Then in PLOTTING section, Delete old contract labels (bottom); add new contract labels (top); adjust the X in 'bar_index-(X+_historical)' numbers accordingly
This is one of several similar indicators: Meats | Metals | Grains | VIX
Tips:
-Right click and reset chart if you can't see the plot; or if you have trouble with the scaling.
-Right click and pin to Scale A to plot on the same scale as price
--Added historical input: input days back in time; to see the historical shape of the Futures curve via selecting 'days back' snapshot
updated 15th June 2022
© twingall
Metals:Backwardation/ContangoMETALS: Gold , Silver , Copper ( GC , SI, HG)
Quickly visualize carrying charge market vs backwardized market by comparing the price of the next 2 years of futures contracts.
Carrying charge (contract prices increasing into the future) = normal, representing the costs of carrying/storage of a commodity. When this is flipped to Backwardation (contract prices decreasing into the future): its a bullish sign: Buyers want this commodity, and they want it NOW.
Note: indicator does not map to time axis in the same way as price; it simply plots the progression of contract months out into the future; left to right; so timeframe DOESN'T MATTER for this plot
There's likely some more efficient way to write this; e.g. when plotting for Gold ( GC ); 21 of the security requests are redundant; but they are still made; and can make this slower to load
TO UPDATE(once a year will do): in REQUEST CONTRACTS section, delete old contracts (top) and add new ones (bottom). Then in PLOTTING section, Delete old contract labels (bottom); add new contract labels (top); adjust the X in 'bar_index-(X+_historical)' numbers accordingly
This is one of three similar indicators: Meats | Metals | Grains
-If you want to build from this; to work on other commodities ; be aware that Tradingview limits the number of contract calls to 40 (hence the 3 seperate indicators)
Tips:
-Right click and reset chart if you can't see the plot; or if you have trouble with the scaling.
-Right click and add to new scale if you prefer this not to overlay directly on price. Or move to new pane below.
--Added historical input: input days back in time; to see the historical shape of the Futures curve via selecting 'days back' snapshot
updated 15th June 2022
© twingall
Grains:Backwardation/ContangoGRAINS: Wheat , Soybeans , Corn (ZW, ZS, ZC )
Quickly visualize carrying charge market vs backwardized market by comparing the price of the next 2 years of futures contracts.
Carrying charge (contract prices increasing into the future) = normal, representing the costs of carrying/storage of a commodity. When this is flipped to Backwardation (contract prices decreasing into the future): its a bullish sign: Buyers want this commodity, and they want it NOW.
The above chart shows a nice example of backwardation.
Note: indicator does not map to time axis in the same way as price; it simply plots the progression of contract months out into the future; left to right; so timeframe DOESN'T MATTER for this plot
There's likely some more efficient way to write this; e.g. when plotting for Wheat (ZW); 15 of the security requests are redundant; but they are still made; and can make this slower to load
TO UPDATE(once a year will do): in REQUEST CONTRACTS section, delete old contracts (top) and add new ones (bottom). Then in PLOTTING section, Delete old contract labels (bottom); add new contract labels (top); adjust the X in 'bar_index-(X+_historical)' numbers accordingly
This is one of three similar indicators: Meats | Metals | Grains
-If you want to build from this; to work on other commodities ; be aware that Tradingview limits the number of contract calls to 40 (hence the 3 seperate indicators)
Tips:
-Right click and reset chart if you can't see the plot; or if you have trouble with the scaling.
-Right click and add to new scale if you prefer this not to overlay directly on price. Or move to new pane below.
--Added historical input: input days back in time; to see the historical shape of the Futures curve via selecting 'days back' snapshot
updated 15th June 2022
© twingall
Meats: Backwardation/CantangoMEATS: Live Cattle , Feeder Cattle, Lean Hogs (LE, GF , HE)
Quickly visualize carrying charge market vs backwardized market by comparing the price of the next 2 years of futures contracts.
Carrying charge (contract prices increasing into the future) = normal, representing the costs of carrying/storage of a commodity. When this is flipped to Backwardation (contract prices decreasing into the future): its a bullish sign: Buyers want this commodity, and they want it NOW.
Note: indicator does NOT map to time axis in the same way as price; it simply plots the progression of contract months out into the future; left to right; so timeframe DOESN'T MATTER for this plot
There's likely some more efficient way to write this; e.g. when plotting for Live Cattle (LE); 8 of the security requests are redundant; but they are still made; and can make this slower to load
TO UPDATE(once a year will do): in REQUEST CONTRACTS section, delete old contracts (top) and add new ones (bottom). Then in PLOTTING section, Delete old contract labels (bottom); add new contract labels (top); adjust the X in 'bar_index-(X+_historical)' numbers accordingly
This is one of three similar indicators: Meats | Metals | Grains
-If you want to build from this; to work on other commodities ; be aware that Tradingview limits the number of contract calls to 40 (hence the 3 seperate indicators)
Tips:
-Right click and reset chart if you can't see the plot; or if you have trouble with the scaling.
-Right click and add to new scale if you prefer this not to overlay directly on price. Or move to new pane below.
--Added historical input: input days back in time; to see the historical shape of the Futures curve via selecting 'days back' snapshot
updated 15th June 2022
© twingall
Jurik-Filtered, Gann HiLo Activator [Loxx]Jurik-Filtered, Gann HiLo Activator is a Gann HiLo activator that has been smoothed using Jurik Filtering to reduce noise and better identify trending markets.
What is Gann HiLo
The HiLo Activator study is a trend-following indicator introduced by Robert Krausz as part of the Gann Swing trading strategy. In addition to indicating the current trend direction, this can be used as both entry signal and trailing stop.
Here is how the HiLo Activator is calculated:
1. The system calculates the moving averages of the high and low prices over the last several candles. By default, the average is calculated using the last three candles.
2. If the close price falls below the average low or rises above the average high, the system plots the opposite moving average. For example, if the price crosses above the average high, the system will plot the average low. If the price crosses below the average low afterward, the system will stop plotting the average low and will start plotting the average high, and so forth.
The plot of the HiLo Activator thus consists of sections on the top and bottom of the price plot. The sections on the bottom signify bullish trending conditions. Vice versa, those on the top signify the bearish conditions.
What is Jurik Volty used in the Juirk Filter?
One of the lesser known qualities of Juirk smoothing is that the Jurik smoothing process is adaptive. "Jurik Volty" (a sort of market volatility ) is what makes Jurik smoothing adaptive. The Jurik Volty calculation can be used as both a standalone indicator and to smooth other indicators that you wish to make adaptive.
What is the Jurik Moving Average?
Have you noticed how moving averages add some lag (delay) to your signals? ... especially when price gaps up or down in a big move, and you are waiting for your moving average to catch up? Wait no more! JMA eliminates this problem forever and gives you the best of both worlds: low lag and smooth lines.
Ideally, you would like a filtered signal to be both smooth and lag-free. Lag causes delays in your trades, and increasing lag in your indicators typically result in lower profits. In other words, late comers get what's left on the table after the feast has already begun.
Included
-Toggle bar color on/off
Bjorgum Double Tap█ OVERVIEW
Double Tap is a pattern recognition script aimed at detecting Double Tops and Double Bottoms. Double Tap can be applied to the broker emulator to observe historical results, run as a trading bot for live trade alerts in real time with entry signals, take profit, and stop orders, or to simply detect patterns.
█ CONCEPTS
How Is A Pattern Defined?
Doubles are technical formations that are both reversal patterns and breakout patterns. These formations typically have a distinctive “M” or a “W” shape with price action breaking beyond the neckline formed by the center of the pattern. They can be recognized when a pivot fails to break when tested for a second time and the retracement that follows breaks beyond the key level opposite. This can trap entrants that were playing in the direction of the prior trend. Entries are made on the breakout with a target projected beyond the neckline equal to the height of the pattern.
Pattern Recognition
Patterns are recognized through the use of zig-zag; a method of filtering price action by connecting swing highs and lows in an alternating fashion to establish trend, support and resistance, or derive shapes from price action. The script looks for the highest or lowest point in a given number of bars and updates a list with the values as they form. If the levels are exceeded, the values are updated. If the direction changes and a new significant point is made, a new point is added to the list and the process starts again. Meanwhile, we scan the list of values looking for the distinctive shape to form as previously described.
█ STRATEGY RESULTS
Back Testing
Historical back testing is the most common method to test a strategy due in part to the general ease of gathering quick results. The underlying theory is that any strategy that worked well in the past is likely to work well in the future, and conversely, any strategy that performed poorly in the past is likely to perform poorly in the future. It is easy to poke holes in this theory, however, as for one to accept it as gospel, one would have to assume that future results will match what has come to pass. The randomness of markets may see to it otherwise, so it is important to scrutinize results. Some commonly used methods are to compare to other markets or benchmarks, perform statistical analysis on the results over many iterations and on differing datasets, walk-forward testing, out-of-sample analysis, or a variety of other techniques. There are many ways to interpret the results, so it is important to do research and gain knowledge in the field prior to taking meaningful conclusions from them.
👉 In short, it would be naive to place trust in one good backtest and expect positive results to continue. For this reason, results have been omitted from this publication.
Repainting
Repainting is simply the difference in behaviour of a strategy in real time vs the results calculated on the historical dataset. The strategy, by default, will wait for confirmed signals and is thus designed to not repaint. Waiting for bar close for entires aligns results in the real time data feed to those calculated on historical bars, which contain far less data. By doing this we align the behaviour of the strategy on the 2 data types, which brings significance to the calculated results. To override this behaviour and introduce repainting one can select "Recalculate on every tick" from the properties tab. It is important to note that by doing this alerts may not align with results seen in the strategy tester when the chart is reloaded, and thus to do so is to forgo backtesting and restricts a strategy to forward testing only.
👉 It is possible to use this script as an indicator as opposed to a full strategy by disabling "Use Strategy" in the "Inputs" tab. Basic alerts for detection will be sent when patterns are detected as opposed to complex order syntax. For alerts mid-bar enable "Recalculate on every tick" , and for confirmed signals ensure it is disabled.
█ EXIT ORDERS
Limit and Stop Orders
By default, the strategy will place a stop loss at the invalidation point of the pattern. This point is beyond the pattern high in the case of Double Tops, or beneath the pattern low in the case of Double Bottoms. The target or take profit point is an equal-legs measurement, or 100% of the pattern height in the direction of the pattern bias. Both the stop and the limit level can be adjusted from the user menu as a percentage of the pattern height.
Trailing Stops
Optional from the menu is the implementation of an ATR based trailing stop. The trailing stop is designed to begin when the target projection is reached. From there, the script looks back a user-defined number of bars for the highest or lowest point +/- the ATR value. For tighter stops the user can look back a lesser number of bars, or decrease the ATR multiple. When using either Alertatron or Trading Connector, each change in the trail value will trigger an alert to update the stop order on the exchange to reflect the new trail price. This reduces latency and slippage that can occur when relying on alerts only as real exchange orders fill faster and remain in place in the event of a disruption in communication between your strategy and the exchange, which ensures a higher level of safety.
👉 It is important to note that in the case the trailing stop is enabled, limit orders are excluded from the exit criteria. Rather, the point in time that the limit value is exceeded is the point that the trail begins. As such, this method will exit by stop loss only.
█ ALERTS
Five Built-in 3rd Party Destinations
The following are five options for delivering alerts from Double Tap to live trade execution via third party API solutions or chat bots to share your trades on social media. These destinations can be selected from the input menu and alert syntax will automatically configure in alerts appropriately to manage trades.
Custom JSON
JSON, or JavaScript Object Notation, is a readable format for structuring data. It is used primarily to transmit data between a server and a web application. In regards to this script, this may be a custom intermediary web application designed to catch alerts and interface with an exchange API. The JSON message is a trade map for an application to read equipped with where its been, where its going, targets, stops, quantity; a full diagnostic of the current state and its previous state. A web application could be configured to follow the messages sent in this format and conduct trades in sync with alerts running on the TV server.
Below is an example of a rendered JSON alert:
{
"passphrase": "1234",
"time": "2022-05-01T17:50:05Z",
"ticker": "ETHUSDTPERP",
"plot": {
"stop_price": 2600.15,
"limit_price": 3100.45
},
"strategy": {
"position_size": 0.1,
"order_action": "buy",
"market_position": "long",
"market_position_size": 0,
"prev_market_position": "flat",
"prev_market_position_size": 0
}
}
Trading Connector
Trading Connector is a third party fully autonomous Chrome extension designed to catch alert webhooks from TradingView and interface with MT4/MT5 to execute live trades from your machine. Alerts to Trading Connector are simple; just select the destination from the input drop down menu, set your ticker in the "TC Ticker" box in the "Alert Strings" section and enter your URL in the alert window when configuring your alert.
Alertatron
Alertatron is an automated algo platform for cryptocurrency trading that is designed to automate your trading strategies. Although the platform is currently restricted to crypto, it offers a versatile interface with high flexibility syntax for complex market orders and conditions. To direct alerts to Alertatron, select the platform from the 3rd party drop down, configure your API key in the ”Alertatron Key” box and add your URL in the alert message box when making alerts.
3 Commas
3 Commas is an easy and quick to use click-and-go third party crypto API solution. Alerts are simple without overly complex syntax. Messages are simply pasted into alerts and executed as alerts are triggered. There are 4 boxes at the bottom of the "Inputs" tab where the appropriate messages to be placed. These messages can be copied from 3 Commas after the bots are set up and pasted directly into the settings menu. Remember to select 3 Commas as a destination from the third party drop down and place the appropriate URL in the alert message window.
Discord
Some may wish to share their trades with their friends in a Discord chat via webhook chat bot. Messages are configured to notify of the pattern type with targets and stop values. A bot can be configured through the integration menu in a Discord chat to which you have appropriate access. Select Discord from the 3rd party drop down menu and place your chat bot URL in the alert message window when configuring alerts.
👉 For further information regarding alert setup, refer to the platform specific instructions given by the chosen third party provider.
█ IMPORTANT NOTES
Setting Alerts
For alert messages to be properly delivered on order fills it is necessary to place the following placeholder in the alert message box when creating an alert.
{{strategy.order.alert_message}}
This placeholder will auto-populate the alert message with the appropriate syntax that is designated for the 3rd party selected in the user menu.
Order Sizing and Commissions
The values that are sent in alert messages are populated from live metrics calculated by the strategy. This means that the actual values in the "Properties" tab are used and must be set by the user. The initial capital, order size, commission, etc. are all used in the calculations, so it is important to set these prior to executing live trades. Be sure to set the commission to the values used by the exchange as well.
👉 It is important to understand that the calculations on the account size take place from the beginning of the price history of the strategy. This means that if historical results have inflated or depleted the account size from the beginning of trade history until now, the values sent in alerts will reflect the calculated size based on the inputs in the "Properties" tab. To start fresh, the user must set the date in the "Inputs" tab to the current date as to remove trades from the trade history. Failure to follow this instruction can result in an unexpected order size being sent in the alert.
█ FOR PINECODERS
• With the recent introduction of matrices in Pine, the script utilizes a matrix to track pivot points with the bars they occurred on, while tracking if that pivot has been traded against to prevent duplicate detections after a trade is exited.
• Alert messages are populated with placeholders ; capability that previously was only possible in alertcondition() , but has recently been extended to `strategy.*()` functions for use in the `alert_message` argument. This allows delivery of live trade values to populate in strategy alert messages.
• New arguments have been added to strategy.exit() , which allow differentiated messages to be sent based on whether the exit occurred at the stop or the limit. The new arguments used in this script are `alert_profit` and `alert_loss` to send messages to Discord
sm trend analyzer█ OVERVIEW
This script is intended to provide full time frame continuity information for almost all time frames (3, 5, 15, 30, 60, 4H, Day, Week, Month, Quarter, Year)
When added, the script provides a visual indicator/table to the bottom right of the screen to view the different performance at each time frame.
----------
Output
Time Frames: 3min, 5min, 15min, 30min, 60min, 4 Hour, Day, Week, Month Quarter, Year
Time Frame Labels: 3, 5, 15, 30, H, 4H, D, W, M, Q, Y
Colors: Will display the colors in RED if it's a down time frame (close/current < prior close) or a GREEN if it's a up time frame (close/current > prior close), the color will be more opaque/the opacity will increase the stronger it's levels are for the time frame.
Percentage: The percentages will also display, to give you a quick visual indicator or how strong a time frame is one way or the other.
Best Practices
----------
Had to decouple this from the other scripts because TV limits how much you can plot/show
May be a little slow at times, analyzing a lot of time periods/data be patient.
Used to indicate who is in control, buyers or sellers.
Jul 28, 2021
Release Notes: Fix study name, add some padding (high percentages are hard to get one the whole table)
Jul 28, 2021
Release Notes: Add more space... fix logic. It's open and close not close and prior close for FTC.
Jul 28, 2021
Release Notes: Set the width to ensure the whole percentage is shown. Also stack the cells (2 rows of 6) so it's more compressed and easier to read. Added in the 2H indicator as well.
Aug 2, 2021
Release Notes: Changes: added the ability to disable/hide each box and the ability to change the time frame of each box. The boxes are sequentially numbered, 1 - 12, left to right, top to bottom. So the first box, or 1, would be the top left, 2 would be the next box, all the way to 12 at the bottom right.
BTC Supply weighted channel: OnchainUse this oscillator in the weekly time frame and then draw the above linear channel
The premise of this idea is that the trend slope of the bitcoin price correlates with the bitcoin supply chart, which shows the total amount of bitcoin ever created/issued.
Therefore, Bitcoin price is weighted based on Bitcoin supply.
As a result, the above channel has been created, which is a linear channel, and it seems that it can be an oscillator to determine the bitcoin trend, as well as the tops and bottoms of the market.
Bitcoin seems to respect the bottom and top lines of this channel as well as its midline
BTC Leading SOPR: OnchainUse This indicator in Weekly Timeframe:
This Onchain Metric is based on SOPR Moving Average.
This metric is very efficient for finding the tops and bottoms of the market as well as the ascending or descending biases in the market.
You can use it alongside RSI to filter out incorrect rsi signals
overhigh areas signal a top, overlow areas signal a low, zero line cross-up indicates an uptrend bias and its cross-down indicates a downtrend bias in the market
Vortex Indicator w/ ALFAdded Adaptive Laguerre Filters (ALF) to built-in TradingView Vortex Indicator.
Use these ALFs similar to an MA or ROC on the VI+ or VI-, as they indicate the strength of the uptrend/downtrend and can help spot tops and bottoms earlier (when the VI line crosses through the ALF the ALF will change color)
- Added configurable horizontal lines to show periods of extremely high/low trend strength. Also can be used to help call tops/bottoms.
- Add horizontal ranges with background color/
- Added background color for when RSI is above a certain level (50 by default). Etienne Botes has mentioned using Vortex with RSI of the same period being over 50.0 can filter out false signals.
- Added background color for when VI+ and VI- cross.
- Added adaptive lookback length based on timeframes. I don't recommend daytrading using multiple vortex timeframes, but it can be useful when screening/analyzing stocks.
Gann Swing Chart [One-Bar]"Gann used three types of swings chart.
One-Bar Swing Chart (1-Bar Swing Chart): The One-Bar Swing Chart, or Minor Trend Chart, follows the one-bar movements of the market. From a low price, each time the market makes a higher-high than the previous bar, a One-Bar trend line moves up from the recent low to the new high. This action makes the previous low price a One-Bar bottom. From a high price each time the market makes a lower-low than the previous bar, a One-Bar swing line moves down from the recent high to the new low. This action makes the previous high price a One-Bar top.
The combination of One-Bar tops and bottoms forms the One-Bar trend indicator chart. The crossing of a One-Bar swing top changes the One-Bar trend to up. The penetration of a One-Bar swing bottom changes the One-Bar trend to down."
This Indicator only show Gann Swing Chart use One-Bar type.
MACD Volume S2 By Gammaprod>> How to use this indicator :
1. Set your teadingview theme to dark theme.
2. My indicator is valid for forex, stock and but more valid for crypto.
3. Use three timeframe for more validation (choose between those, that fit to your trading style) :
- Timeframe 1m, 5m, and 15m for Scalping
- Timeframe 30m, 1h and 4h for Intraday
- Timeframe 4h, 1D and 1W for Swing Trading
4 . Always use THREE INDICATORS FROM GAMMAPROD, those three indicators is back to back each other, by the way, I only made those three indicators only (for now) :
- Trendlines Boll Ichi Crypto by Gammaprod
- Stoch RSI Divs Zone Crypto by Gammaprod
- MACD Volume Crypto by Gammaprod
>> How to setting :
1. Trendlines Boll Ichi Crypto by Gammaprod
A. Support and Resistence
- Well if you familiar with this indicator you can add it, but recommended for Timeframe 30m or more
B. Trendlines Primary or Trendlines Secondary
- Timeframe 1m you DON'T NEED Trendlines Primary or Trendlines Secondary
- Timeframe 5m you DON'T NEED Trendlines Secondary, but you CAN ADD Trendlines Primary if you fell it helpful (for me, it is helpful to find where the candles start or the end trend or a consolidation or where the candles will surpass a resistance or a support).
- Timeframe 15m you DON'T NEED Trendlines Secondary, DEFENITELY add Trendlines Primary it will help to find where the candles stop or a consolidation or where the candles will surpass a resistance or a support).
- Timeframe 30m or more, DEFENITELY NEED BOTH Trendlines Primary and Secondary Trendlines, it will help to find where the candle stop or consolidation or where the candle will surpass a resistance or support).
C. Bolinger, Ichimoku Cloud and Lagging Span
- Please DON'T CHANGE IT at all, it's really helpful to know when and where to make an entry decesion or a trend or a consolidation, if you don't understand how to read it, you better to learn it first (on "how to read" section and "How to OPEN position" the section below)
2. Stoch RSI Divs Zone Crypto by Gammaprod (DON'T CHANGE IT)
3. MACD Volume Crypto by Gammaprod (DON'T CHANGE IT)
>> How to read :
1. Sell or Buy Priority :
A. Buy Priority
- Color background on macd and stoch rsi is pink or purple sell is the priority, (if you're not sure to buy, just wait until the best moment to sell)
B. Buy Priority
- Color background on macd and stoch rsi Teal or light green buy is the priority, (if you're not sure to sell, just wait until the best moment to buy)
C. Indecision / Golden Moment
- Color background on stoch rsi yellow is indecision / golden moment of reversal pattern (wait until it formed background only on Stoch RSI), please becareful at this moment.
2. Trend / Consolidation :
A. BULLISH trend
- When Stoch RSI and MACD have teal or light green background that's means BULLISH trend, better to confirm by the candle is above green cloud and lagging span (red line) is also above the candle.
B. BEARISH trend
- When Stoch RSI and MACD have the Pink or purple background that's means BEARISH trend, better to confirm by the candle is above purple cloud and lagging span (red line) is also below the candle.
C. CONSOLIDATION
- When Stoch RSI have the mix background that's means CONSOLIDATION, better to confirm by the candle is in or near to green / purple cloud and lagging span (red line) is also on the candle.
3. Special Mark
A. Ideal Bullish :
- Near line 20 and green / teal background = When Stoch RSI have the char R / H on lime color label, that's means divergence or hidden divergence for buy position, if you not see this label that's means just a standard confirmation for buy
B. Not an Ideal Bullish :
- Near line 80 and green / teal background = if this happens make sure you know what happen, it could be a false signal or bullish continual pattern
C. Ideal Bearish :
- Near line 80 and pink / purple background = When Stoch RSI have the char R / H on lime color label, that's means divergence or hidden divergence for buy position, if you not see this label that's means just a standard confirmation for sell position.
D. Not an Ideal Bearish:
- Near line 20 and pink / purple background = if this happens make sure you know what happen, it could be a false signal or bearish continual pattern
E. The Beginning of Reversal (from BEARISH to BULLISH) :
- When Stoch RSI line shaping GREEN position is near 20.
- MACD lines still PINK, position lines is UNDER the HISTOGRAM, but the HISTOGRAM start to SHAPE FALL PINK (light pink) and the BACKGROUND still PINK / PURPLE.
- Position CANDLES NEAR BLUE line, NEAR PURPLE CLOUD, and lagging span (red line) STILL ON the area candle. (it used to be confirmed with the golden moment).
F. The Beginning of Reversal (from BULLISH to BEARISH) :
- When Stoch RSI line shaping PINK position is near 80.
- MACD lines still GREEN, position lines is ABOVE the HISTOGRAM, but the HISTOGRAM start to SHAPE FALL GREEN (light green) and the BACKGROUND still TEAL / GREEN.
- Position CANDLES NEAR WHITE line, NEAR TEAL CLOUD, and lagging span (red line) STILL ON the area candle. (it used to be confirmed with the golden moment).
G. False Signals, or It could be a Golden Moment (better to see it on TF 15 or bigger):
- Near line 20 or 80 and yellow background = When Stoch RSI have the char R / H on color label, that's means divergence or hidden divergence for buy / sell position, if you not see this label that's means just a standard confirmation for buy / sell depends on where the Stoch RSI line if near 20 that's means buy, near 80 means sell
>> How to OPEN position:
A. Bullish
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles above the green cloud.
- Lagging span (red line) above the candles.
- then open buy near yellow line (the first option) / blue line (the second option) (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Teal or Green background.
- The lines is shaping green.
- Better if on the bottom (at a range 20).
3. MACD Volume Crypto by Gammaprod
- Teal or Green background.
- The lines is shaped or shaping green.
- Better if at the green histogram.
B. Bearish
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles below the purple cloud.
- Lagging span (red line) below the candles.
- then open buy near yellow line (the first option) / white line (the second option) (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Pink or purple background.
- The lines are shaping pink.
- Better if the line on the top (at a range 80).
3. MACD Volume Crypto by Gammaprod
- Pink or purple background.
- The lines are shaped or shaping green.
- Better if at the pink histogram.
C. Consolidation
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles on the cloud (green or purple).
- Lagging span (red line) on the candles.
- then open buy near the white or blue line (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Mix background specially on a timeframe 15m or more.
- The line move fast up and down.
- Better if on the bottom or the top of the lines (at a range 20 or 80).
3. MACD Volume Crypto by Gammaprod
- Changing the background.
- The line is near the middle line.
- Have small Histogram.
>> The secret ingridient is comparing the timeframe :
The example scalping (Timeframe 1m, 5m and 15m)
- TF 1m is for making an open position.
- TF 5m is for making a judgement of the trend market.
- TF 15m is to confirm that judgement from TF 5m, be careful if it not similar then it used to be a consolidation or the beginning of the reversal.
There's a lot a way to open the position than above information that i gave it to you, but consider there are a limit char on this column, I hope it will help your trading and make a more profit on it.
Stoch RSI, Div, Zone S3 by Gammaprod>> How to use this indicator :
1. Set your teadingview theme to dark theme.
2. My indicator is valid for forex, stock and but more valid for crypto.
3. Use three timeframe for more validation (choose between those, that fit to your trading style) :
- Timeframe 1m, 5m, and 15m for Scalping
- Timeframe 30m, 1h and 4h for Intraday
- Timeframe 4h, 1D and 1W for Swing Trading
4 . Always use THREE INDICATORS FROM GAMMAPROD, those three indicators is back to back each other, by the way, I only made those three indicators only (for now) :
- Trendlines Boll Ichi Crypto by Gammaprod
- Stoch RSI Divs Zone Crypto by Gammaprod
- MACD Volume Crypto by Gammaprod
>> How to setting :
1. Trendlines Boll Ichi Crypto by Gammaprod
A. Support and Resistence
- Well if you familiar with this indicator you can add it, but recommended for Timeframe 30m or more
B. Trendlines Primary or Trendlines Secondary
- Timeframe 1m you DON'T NEED Trendlines Primary or Trendlines Secondary
- Timeframe 5m you DON'T NEED Trendlines Secondary, but you CAN ADD Trendlines Primary if you fell it helpful (for me, it is helpful to find where the candles start or the end trend or a consolidation or where the candles will surpass a resistance or a support).
- Timeframe 15m you DON'T NEED Trendlines Secondary, DEFENITELY add Trendlines Primary it will help to find where the candles stop or a consolidation or where the candles will surpass a resistance or a support).
- Timeframe 30m or more, DEFENITELY NEED BOTH Trendlines Primary and Secondary Trendlines, it will help to find where the candle stop or consolidation or where the candle will surpass a resistance or support).
C. Bolinger, Ichimoku Cloud and Lagging Span
- Please DON'T CHANGE IT at all, it's really helpful to know when and where to make an entry decesion or a trend or a consolidation, if you don't understand how to read it, you better to learn it first (on "how to read" section and "How to OPEN position" the section below)
2. Stoch RSI Divs Zone Crypto by Gammaprod (DON'T CHANGE IT)
3. MACD Volume Crypto by Gammaprod (DON'T CHANGE IT)
>> How to read :
1. Sell or Buy Priority :
A. Buy Priority
- Color background on macd and stoch rsi is pink or purple sell is the priority, (if you're not sure to buy, just wait until the best moment to sell)
B. Buy Priority
- Color background on macd and stoch rsi Teal or light green buy is the priority, (if you're not sure to sell, just wait until the best moment to buy)
C. Indecision / Golden Moment
- Color background on stoch rsi yellow is indecision / golden moment of reversal pattern (wait until it formed background only on Stoch RSI), please becareful at this moment.
2. Trend / Consolidation :
A. BULLISH trend
- When Stoch RSI and MACD have teal or light green background that's means BULLISH trend, better to confirm by the candle is above green cloud and lagging span (red line) is also above the candle.
B. BEARISH trend
- When Stoch RSI and MACD have the Pink or purple background that's means BEARISH trend, better to confirm by the candle is above purple cloud and lagging span (red line) is also below the candle.
C. CONSOLIDATION
- When Stoch RSI have the mix background that's means CONSOLIDATION, better to confirm by the candle is in or near to green / purple cloud and lagging span (red line) is also on the candle.
3. Special Mark
A. Ideal Bullish :
- Near line 20 and green / teal background = When Stoch RSI have the char R / H on lime color label, that's means divergence or hidden divergence for buy position, if you not see this label that's means just a standard confirmation for buy
B. Not an Ideal Bullish :
- Near line 80 and green / teal background = if this happens make sure you know what happen, it could be a false signal or bullish continual pattern
C. Ideal Bearish :
- Near line 80 and pink / purple background = When Stoch RSI have the char R / H on lime color label, that's means divergence or hidden divergence for buy position, if you not see this label that's means just a standard confirmation for sell position.
D. Not an Ideal Bearish:
- Near line 20 and pink / purple background = if this happens make sure you know what happen, it could be a false signal or bearish continual pattern
E. The Beginning of Reversal (from BEARISH to BULLISH) :
- When Stoch RSI line shaping GREEN position is near 20.
- MACD lines still PINK, position lines is UNDER the HISTOGRAM, but the HISTOGRAM start to SHAPE FALL PINK (light pink) and the BACKGROUND still PINK / PURPLE.
- Position CANDLES NEAR BLUE line, NEAR PURPLE CLOUD, and lagging span (red line) STILL ON the area candle. (it used to be confirmed with the golden moment).
F. The Beginning of Reversal (from BULLISH to BEARISH) :
- When Stoch RSI line shaping PINK position is near 80.
- MACD lines still GREEN, position lines is ABOVE the HISTOGRAM, but the HISTOGRAM start to SHAPE FALL GREEN (light green) and the BACKGROUND still TEAL / GREEN.
- Position CANDLES NEAR WHITE line, NEAR TEAL CLOUD, and lagging span (red line) STILL ON the area candle. (it used to be confirmed with the golden moment).
G. False Signals, or It could be a Golden Moment (better to see it on TF 15 or bigger):
- Near line 20 or 80 and yellow background = When Stoch RSI have the char R / H on color label, that's means divergence or hidden divergence for buy / sell position, if you not see this label that's means just a standard confirmation for buy / sell depends on where the Stoch RSI line if near 20 that's means buy, near 80 means sell
>> How to OPEN position:
A. Bullish
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles above the green cloud.
- Lagging span (red line) above the candles.
- then open buy near yellow line (the first option) / blue line (the second option) (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Teal or Green background.
- The lines is shaping green.
- Better if on the bottom (at a range 20).
3. MACD Volume Crypto by Gammaprod
- Teal or Green background.
- The lines is shaped or shaping green.
- Better if at the green histogram.
B. Bearish
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles below the purple cloud.
- Lagging span (red line) below the candles.
- then open buy near yellow line (the first option) / white line (the second option) (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Pink or purple background.
- The lines are shaping pink.
- Better if the line on the top (at a range 80).
3. MACD Volume Crypto by Gammaprod
- Pink or purple background.
- The lines are shaped or shaping green.
- Better if at the pink histogram.
C. Consolidation
1. Trendlines Boll Ichi Crypto by Gammaprod
- The candles on the cloud (green or purple).
- Lagging span (red line) on the candles.
- then open buy near the white or blue line (always confirm the position with two other indicators below).
2. Stoch RSI Divs Zone Crypto by Gammaprod
- Mix background specially on a timeframe 15m or more.
- The line move fast up and down.
- Better if on the bottom or the top of the lines (at a range 20 or 80).
3. MACD Volume Crypto by Gammaprod
- Changing the background.
- The line is near the middle line.
- Have small Histogram.
>> The secret ingridient is comparing the timeframe :
The example scalping (Timeframe 1m, 5m and 15m)
- TF 1m is for making an open position.
- TF 5m is for making a judgement of the trend market.
- TF 15m is to confirm that judgement from TF 5m, be careful if it not similar then it used to be a consolidation or the beginning of the reversal.
There's a lot a way to open the position than above information that i gave it to you, but consider there are a limit char on this column, I hope it will help your trading and make a more profit on it.
NYSE New Highs vs New LowsNYSE New Highs vs New Lows is a simple market breadth indicator that compares HIGN, the number of new highs during that day, and LOWN, the number of new lows. The new highs are on top and lows are appropriately on bottom. Without averaging, it's a little chaotic so you can smooth them out as much as you want, and the top-right label shows how much you're smoothing.
Interpretation:
Essentially, we use $SPY or $QQQ as a proxy for what's going on in the market, but because the FAANG stocks are so heavily weighted, it's not always representative. If SPY is flat/down, but there are 200 new highs today, then one of the big boys is weighing down an otherwise very bullish market. It's like looking at one of those heatmap charts, but in a single number.
Bullish Trend
- Lots of new highs
- Very few new lows
Bearish Trend
- Lots of new lows
- Very few new highs
Potential Reversal
- Too high, 250+
- Too low, 150+
V/T Ratio: Onchain BTC MetricThis is a New Onchain metric that is designed for bitcoin by myself Mjshahsavar (Ghoddusifar), and it is published for the first time in this trading view in this post.
I think this metric has a very high capability to determine the ATH and bottom of the market. This metric can solve a problem that channels are unable to solve. this could be the equivalent of what is known in the stock market as P/E
Calculations:
V/T RATIO = MA (7) of Log ((THE TOTAL VOLUME OF BITCOIN TRANSFERRED ONCHAIN IN USD)/(THE TOTAL AMOUNT OF TRANSACTIONS))
INTERPRETATION:
What is the long-term price channel of Bitcoin? Have you ever thought that maybe drawing a price channel is not right and maybe we should look for something else?
Channel drawing for the price is a subjective and interpretive subject. Look at the charts below, they are all correct in terms of drawing, but no one can say which one will happen. There is no certainty because drawing them is objective.
But who can say which one will definitely work?
We need something more objective. I think V/T Ratio does that.
Just draw the channel. There is only one channel for it. And it has worked historically well to this day.
Compare the drawn channel with the price chart. It works right. When the metric reaches the top line of the channel, it indicates the new ATH and the end of the cycle.
When it reaches the bottom line of the channel, it indicates that the price has reached the bottom.
A Market Cycle:
According to this metric, the bitcoin cycle has 5 stages:
1- Bottom Price: which V/T Ratio touches the bottom line of the channel: In this case, we expect the price to reach the bottom.
2- Semi-high price: that the metric reaches the middle line of the channel: In this case, Bitcoin creates a local top in the MID-Term and Long-Term timeframes
3- Semi-low price: which has a metric return to the lower part of the channel (but the price can still increase)
4- ATH: that Bitcoin reaches its highest historical price
5- It starts after the ATH until the metric reaches the bottom part of the channel again.
Nifty_Top10Movement of Nifty Top 10 Stocks
This script shows us the movement in Nifty Top 10 stocks based on price.
[VDB]TrendScalp-FractalBox-3EMAThere are many indicators with William’s Fractal and Alligator. As many use EMA’s it may be useful to define a 3-EMA ribbon and combining Fractal Levels/Box (filling background between top and bottom fractals) for trend scalping. I searched for this kind of indicator in community – some show fractals, some just levels, some with alligator etc. but couldn't find the one needed. Hence thought of this indicator which may be of interest to other users too.
Key Points:
EMA ribbon is created using 3 EMA’s 35/70/105. Users can change these as per their preference. This is used for trend identification – 1. Bullish bias if Price > EMA1 > EMA2 > EMA3. 2. Bearish bias if Price < EMA1 < EMA2 < EMA3.
Background is marked during crossing of EMA1 and EMA2 to alert possible trend change.
5-bar fractals are used to mark the Fractal levels and background between top and bottom fractals are filled to create a Fractal Box.
Fractal levels are marked only when the fractal formation is complete. Given offset is used this is lagging.
How to Use:
Sloping EMA ribbon is used for identifying the trend.
Fractal box break-out/ break-downs are used to trigger the trade with fractal high/low for entry/SL. Waiting for price contraction towards EMA ribbon resulting in smaller boxes is key to initiate trade. Avoid bigger boxes as SL’s will be big and price may move within. To draw the vertical lines of FractalBox change fractal level0 style to step-line.
This indicator combined with the cycle high/low (overbought/oversold) indicators such as CCI/Stochastic/RSI etc. can make it a good trend scalping setup while trading in the direction of momentum in higher timeframe.
This setup could be used for any timeframes. Do your back-testing before using it in live market.
This indicator was achieved by combing some fractal ideas from “Fractal and Alligator Alerts by JustUncleL”
DISCLAIMER : This indicator has been created for educational reference only and do not constitute investment advice. This indicator should not be relied upon as a substitute for extensive independent market research before making your actual trading decisions. Market data or any other content is subject to change at any time without notice. Liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from use of this indicator is accountability of user using it.
HURST Channel StrategyBased on the work TJS / Trading Zoom / Svoboda
Strategy based on Hurst channel with loss averaging when an open position is below 0.5 channel range.
How it works:
1. opens the long position when the close price crosses over the lower band (from bottom to top)
2. opens additional position (double in size) when average position price is lower than average channel value (0.5)
3. closes the position when the close price crosses over the higher band (from top to bottom)
Works the best on :
- volatile and continuous instruments (futures)
- on timeframes above 15 minutes
- uptrends or consolidations
- downtrends require more capital to open double positions
SuperTrend OptimizerHello!
This indicator attempts to optimize Supertrend parameters. To achieve this, 102 parameter combinations are tested concurrently - the top three performers are listed in descending order.
Parameters,
Factor: Changes to this parameter shifts the tested factor range. For instance, increasing the factor measure from 3.00 to 3.01 (+0.01) will remove 3.00 from the tested range - this setting controls the lower threshold of the range. The upper threshold, in all instances, is the lower Factor threshold + 3.3 (i.e. 3.0(lower) - 6.3(upper), 4.0(lower) - 7.3(upper), 2.5(lower) - 5.8(upper))
ATR period: Changes to this parameter shifts the tested ATR period range. For instance, increasing the ATR measure from 10 to 11 (+1) will remove 10 from the tested range - this setting controls the lower threshold of the range. The upper threshold, in all instances, is the lower threshold + 2 (i.e. 10(lower) - 12(upper), 11(lower) - 13(upper), 9(lower), - 11(upper))
The Factor parameter is modifiable to any positive decimal number; the ATR parameter is modifiable to any positive integer. Changing either parameter shifts the tested parameter combination range. Both parameters can be changed in the settings, to which you control the lower threshold of the range. If, for instance, you were to change the Factor measurement from 3.0 to 4.1 (+1.1) the 4.0 Factor measurement, and all Factor measures less than 4.0, will be excluded from the performance test.
Consequently, a Supertrend test will be performed with a Factor of 4.1 and an ATR period of 10 (default). This test repeats at 0.1 Factor intervals and 1.0 ATR intervals.
Therefore, assume you modify the Factor lower threshold to 3.1 and the ATR lower threshold to 10. The indicator will test three Supertrend systems with a Factor of 3.1 and an ATR period of 10.. then 11.. 12, then three systems with a Factor of 3.2 and an ATR period of 10.. then 11.. 12... until (lower Factor threshold + 3.3) and (lower ATR threshold + 2) are tested... which in this example is... a Factor of 6.4 and an ATR period of 12.
The tested Factor range and ATR range are displayed in a bottom right table alongside the top performing parameter combinations.
Of course, you can change the the lower thresholds, which means you can test numerous Supertrend parameter combinations! However, no greater than 102 parameter combinations will be tested simultaneously; the best performing Supertrend parameters are plotted on the chart automatically.
I will be working on this indicator more tomorrow! Let me know if you have questions or anything you would like included!
(I of course added something fun in the script. Be sure to try it with bar replay!)
Bitcoin Power Law Bands (BTC Power Law) Indicator█ OVERVIEW
The 'Bitcoin Power Law Bands' indicator is a set of three US dollar price trendlines and two price bands for bitcoin , indicating overall long-term trend, support and resistance levels as well as oversold and overbought conditions. The magnitude and growth of the middle (Center) line is determined by double logarithmic (log-log) regression on the entire USD price history of bitcoin . The upper (Resistance) and lower (Support) lines follow the same trajectory but multiplied by respective (fixed) factors. These two lines indicate levels where the price of bitcoin is expected to meet strong long-term resistance or receive strong long-term support. The two bands between the three lines are price levels where bitcoin may be considered overbought or oversold.
All parameters and visuals may be customized by the user as needed.
█ CONCEPTS
Long-term models
Long-term price models have many challenges, the most significant of which is getting the growth curve right overall. No one can predict how a certain market, asset class, or financial instrument will unfold over several decades. In the case of bitcoin , price history is very limited and extremely volatile, and this further complicates the situation. Fortunately for us, a few smart people already had some bright ideas that seem to have stood the test of time.
Power law
The so-called power law is the only long-term bitcoin price model that has a chance of survival for the years ahead. The idea behind the power law is very simple: over time, the rapid (exponential) initial growth cannot possibly be sustained (see The seduction of the exponential curve for a fun take on this). Year-on-year returns, therefore, must decrease over time, which leads us to the concept of diminishing returns and the power law. In this context, the power law translates to linear growth on a chart with both its axes scaled logarithmically. This is called the log-log chart (as opposed to the semilog chart you see above, on which only one of the axes - price - is logarithmic).
Log-log regression
When both price and time are scaled logarithmically, the power law leads to a linear relationship between them. This in turn allows us to apply linear regression techniques, which will find the best-fitting straight line to the data points in question. The result of performing this log-log regression (i.e. linear regression on a log-log scaled dataset) is two parameters: slope (m) and intercept (b). These parameters fully describe the relationship between price and time as follows: log(P) = m * log(T) + b, where P is price and T is time. Price is measured in US dollars , and Time is counted as the number of days elapsed since bitcoin 's genesis block.
DPC model
The final piece of our puzzle is the Dynamic Power Cycle (DPC) price model of bitcoin . DPC is a long-term cyclic model that uses the power law as its foundation, to which a periodic component stemming from the block subsidy halving cycle is applied dynamically. The regression parameters of this model are re-calculated daily to ensure longevity. For the 'Bitcoin Power Law Bands' indicator, the slope and intercept parameters were calculated on publication date (March 6, 2022). The slope of the Resistance Line is the same as that of the Center Line; its intercept was determined by fitting the line onto the Nov 2021 cycle peak. The slope of the Support Line is the same as that of the Center Line; its intercept was determined by fitting the line onto the Dec 2018 trough of the previous cycle. Please see the Limitations section below on the implications of a static model.
█ FEATURES
Inputs
• Parameters
• Center Intercept (b) and Slope (m): These log-log regression parameters control the behavior of the grey line in the middle
• Resistance Intercept (b) and Slope (m): These log-log regression parameters control the behavior of the red line at the top
• Support Intercept (b) and Slope (m): These log-log regression parameters control the behavior of the green line at the bottom
• Controls
• Plot Line Fill: N/A
• Plot Opportunity Label: Controls the display of current price level relative to the Center, Resistance and Support Lines
Style
• Visuals
• Center: Control, color, opacity, thickness, price line control and line style of the Center Line
• Resistance: Control, color, opacity, thickness, price line control and line style of the Resistance Line
• Support: Control, color, opacity, thickness, price line control and line style of the Support Line
• Plots Background: Control, color and opacity of the Upper Band
• Plots Background: Control, color and opacity of the Lower Band
• Labels: N/A
• Output
• Labels on price scale: Controls the display of current Center, Resistance and Support Line values on the price scale
• Values in status line: Controls the display of current Center, Resistance and Support Line values in the indicator's status line
█ HOW TO USE
The indicator includes three price lines:
• The grey Center Line in the middle shows the overall long-term bitcoin USD price trend
• The red Resistance Line at the top is an indication of where the bitcoin USD price is expected to meet strong long-term resistance
• The green Support Line at the bottom is an indication of where the bitcoin USD price is expected to receive strong long-term support
These lines envelope two price bands:
• The red Upper Band between the Center and Resistance Lines is an area where bitcoin is considered overbought (i.e. too expensive)
• The green Lower Band between the Support and Center Lines is an area where bitcoin is considered oversold (i.e. too cheap)
The power law model assumes that the price of bitcoin will fluctuate around the Center Line, by meeting resistance at the Resistance Line and finding support at the Support Line. When the current price is well below the Center Line (i.e. well into the green Lower Band), bitcoin is considered too cheap (oversold). When the current price is well above the Center Line (i.e. well into the red Upper Band), bitcoin is considered too expensive (overbought). This idea alone is not sufficient for profitable trading, but, when combined with other factors, it could guide the user's decision-making process in the right direction.
█ LIMITATIONS
The indicator is based on a static model, and for this reason it will gradually lose its usefulness. The Center Line is the most durable of the three lines since the long-term growth trend of bitcoin seems to deviate little from the power law. However, how far price extends above and below this line will change with every halving cycle (as can be seen for past cycles). Periodic updates will be needed to keep the indicator relevant. The user is invited to adjust the slope and intercept parameters manually between two updates of the indicator.
█ RAMBLINGS
The 'Bitcoin Power Law Bands' indicator is a useful tool for users wishing to place bitcoin in a macro context. As described above, the price level relative to the three lines is a rough indication of whether bitcoin is over- or undervalued. Users wishing to gain more insight into bitcoin price trends may follow the author's periodic updates of the DPC model (contact information below).
█ NOTES
The author regularly posts on Twitter using the @DeFi_initiate handle.
█ THANKS
Many thanks to the following individuals, who - one way or another - made the 'Bitcoin Power Law Bands' indicator possible:
• TradingView user 'capriole_charles', whose open-source 'Bitcoin Power Law Corridor' script was the basis for this indicator
• Harold Christopher Burger, whose Bitcoin’s natural long-term power-law corridor of growth article (2019) was the basis for the 'Bitcoin Power Law Corridor' script
• Bitcoin Forum user "Trololo", who posted the original power law model at Logarithmic (non-linear) regression - Bitcoin estimated value (2014)
HighTimeframeTimingLibrary "HighTimeframeTiming"
@description Library for sampling high timeframe (HTF) historical data at an arbitrary number of HTF bars back, using a single security() call.
The data is fixed and does not alter over the course of the HTF bar. It also behaves consistently on historical and elapsed realtime bars.
‼ LIMITATIONS: This library function depends on there being a consistent number of chart timeframe bars within the HTF bar. This is almost always true in 24/7 markets like crypto.
This might not be true if the chart doesn't produce an update when expected, for example because the asset is thinly traded and there is no volume or price update from the feed at that time.
To mitigate this risk, use this function on liquid assets and at chart timeframes high enough to reliably produce updates at least once per bar period.
The consistent ratio of bars might also break down in markets with irregular sessions and hours. I'm not sure if or how one could mitigate this.
Another limitation is that because we're accessing a multiplied number of chart bars, you will run out of chart bars faster than you would HTF bars. This is only a problem if you use a large historical operator.
If you call a function from this library, you should probably reproduce these limitations in your script description.
However, all of this doesn't mean that this function might not still be the best available solution, depending what your needs are.
If a single chart bar is skipped, for example, the calculation will be off by 1 until the next HTF bar opens. This is certainly inconsistent, but potentially still usable.
@function f_offset_synch(float _HTF_X, int _HTF_H, int _openChartBarsIn, bool _updateEarly)
Returns the number of chart bars that you need to go back in order to get a stable HTF value from a given number of HTF bars ago.
@param float _HTF_X is the timeframe multiplier, i.e. how much bigger the selected timeframe is than the chart timeframe. The script shows a way to calculate this using another of my libraries without using up a security() call.
@param int _HTF_H is the historical operator on the HTF, i.e. how many bars back you want to go on the higher timeframe. If omitted, defaults to zero.
@param int _openChartBarsIn is how many chart bars have been opened within the current HTF bar. An example of calculating this is given below.
@param bool _updateEarly defines whether you want to update the value at the closing calculation of the last chart bar in the HTF bar or at the open of the first one.
@returns an integer that you can use as a historical operator to retrieve the value for the appropriate HTF bar.
🙏 Credits: This library is an attempt at a solution of the problems in using HTF data that were laid out by Pinecoders in "security() revisited" -
Thanks are due to the authors of that work for an understanding of HTF issues. In addition, the current script also includes some of its code.
Specifically, this script reuses the main function recommended in "security() revisited", for the purposes of comparison. And it extends that function to access historical data, again just for comparison.
All the rest of the code, and in particular all of the code in the exported function, is my own.
Special thanks to LucF for pointing out the limitations of my approach.
~~~~~~~~~~~~~~~~|
EXPLANATION
~~~~~~~~~~~~~~~~|
Problems with live HTF data: Many problems with using live HTF data from security() have been clearly explained by Pinecoders in "security() revisited"
In short, its behaviour is inconsistent between historical and elapsed realtime bars, and it changes in realtime, which can cause calculations and alerts to misbehave.
Various unsatisfactory solutions are discussed in "security() revisited", and understanding that script is a prerequisite to understanding this library.
PineCoders give their own solution, which is to fix the data by essentially using the previous HTF bar's data. Importantly, that solution is consistent between historical and realtime bars.
This library is an attempt to provide an alternative to that solution.
Problems with historical HTF data: In addition to the problems with live HTF data, there are different issues when trying to access historical HTF data.
Why use historical HTF data? Maybe you want to do custom calculations that involve previous HTF bars. Or to use HTF data in a function that has mutable variables and so can't be done in a security() call.
Most obviously, using the historical operator (in this description, represented using { } because the square brackets don't render) on variables already retrieved from a security() call, e.g. HTF_Close{1}, is not very useful:
it retrieves the value from the previous *chart* bar, not the previous HTF bar.
Using {1} directly in the security() call instead does get data from the previous HTF bar, but it behaves inconsistently, as we shall see.
This library addresses these concerns as well.
Housekeeping: To follow what's going on with the example and comparisons, turn line labels on: Settings > Scales > Indicator Name Label.
The following explanation assumes "close" as the source, but you can change it if you want.
To quickly see the difference between historical and realtime bars, set the HTF to something like 3 minutes on a 15s chart.
The bars at the top of the screen show the status. Historical bars are grey, elapsed realtime bars are red, and the realtime bar is green. A white vertical line shows the open of a HTF bar.
A: This library function f_offset_synch(): When supplied with an input offset of 0, it plots a stable value of the close of the *previous* HTF bar. This value is thus safe to use for calculations and alerts.
For a historical operator of {1}, it gives the close of the *last-but-one* bar. Sounds simple enough. Let's look at the other options to see its advantages.
B: Live HTF data: Represented on the line label as "security(){0}". Note: this is the source that f_offset_synch() samples.
The raw HTF data is very different on historical and realtime bars:
+ On historical bars, it uses a flat value from the end of the previous HTF bar. It updates at the close of the HTF bar.
+ On realtime bars, it varies between and within each chart bar.
There might be occasions where you want to use live data, in full knowledge of its drawbacks described above. For example, to show simple live conditions that are reversible after a chart bar close.
This library transforms live data to get the fixed data, thus giving you access to both live and fixed data with only one security() call.
C: Historical data using security(){H}: To see how this behaves, set the {H} value in the settings to 1 and show options A, B, and C.
+ On historical bars, this option matches option A, this library function, exactly. It behaves just like security(){0} but one HTF bar behind, as you would expect.
+ On realtime bars, this option takes the value of security(){0} at the end of a HTF bar, but it takes it from the previous *chart* bar, and then persists that.
The easiest way to see this inconsistency is on the first realtime bar (marked red at the top of the screen). This option suddenly jumps, even if it's in the middle of a HTF bar.
Contrast this with option A, which is always constant, until it updates, once per HTF bar.
D: PineCoders' original function: To see how this behaves, show options A, B, and D. Set the {H} value in the settings to 0, then 1.
The PineCoders' original function (D) and extended function (E) do not have the same limitations as this library, described in the Limitations section.
This option has all of the same advantages that this library function, option A, does, with the following differences:
+ It cannot access historical data. The {H} setting makes no difference.
+ It always updates at the open of the first chart bar in a new HTF bar.
By contrast, this library function, option A, is configured by default to update at the close of the last chart bar in a HTF bar.
This little frontrunning is only a few seconds but could be significant in trading. E.g. on a 1D HTF with a 4H chart, an alert that involves a HTF change set to trigger ON CLOSE would trigger 4 hours later using this method -
but use exactly the same value. It depends on the market and timeframe as to whether you could actually trade this. E.g. at the very end of a tradfi day your order won't get executed.
This behaviour mimics how security() itself updates, as is easy to see on the chart. If you don't want it, just set in_updateEarly to false. Then it matches option D exactly.
E: PineCoders' function, extended to get history: To see how this behaves, show options A and E. Set the {H} value in the settings to 0, then 1.
I modified the original function to be able to get historical values. In all other respects it is the same.
Apart from not having the option to update earlier, the only disadvantage of this method vs this library function is that it requires one security() call for each historical operator.
For example, if you wanted live data, and fixed data, and fixed data one bar back, you would need 3 security() calls. My library function requires just one.
This is the essential tradeoff: extra complexity and less robustness in certain circumstances (the PineCoders function is simple and universal by comparison) for more flexibility with fewer security() calls.
RSI Failure Swings & AO DivergencesHello!
The script identifies RSI divergences, similar to other public scripts; however, RSI failure swings are also distinguished. When a failure swing is identified, the script calculates the highest RSI measurement (bottom failure swing) or the lowest RSI measurement (top failure swing) between the two RSI pivot points. A continually updating line is plotted at the "fail point" until it is penetrated for two sessions! In addition, the script displays the RSI fail point measurement. RSI bearish divergences are only distinguished when both RSI peaks form above 70. bullish divergences are only distinguished when both RSI troughs form below 30. Top failure swings require the initial RSI peak be above 70, the second RSI peak can form at any measurement. Bottom failure swings require the initial RSI trough be below 30, the second RSI trough can form at any measurement.
Included are Awesome Oscillator divergences. The indicator is a bit tricky; the oscillator does not incorporate an upper or lower extremity. Consequently, the script uses interpolated percentiles to characterize relatively high measurements and relatively low measurements. Bearish divergences that form within the 90th - 99th percentile are distinguished, and bullish divergences that form within the 1 - 10th percentile are distinguished. This can CERTAINLY be changed should you copy the source code and think of something better! For AO, white columns reflect a difference measurement >= 0; black bars reflect a difference measurement < 0