Smoothing R-Squared ComparisonIntroduction
Heyo guys, here I made a comparison between my favorised smoothing algorithms.
I chose the R-Squared value as rating factor to accomplish the comparison.
The indicator is non-repainting.
Description
In technical analysis, traders often use moving averages to smooth out the noise in price data and identify trends. While moving averages are a useful tool, they can also obscure important information about the underlying relationship between the price and the smoothed price.
One way to evaluate this relationship is by calculating the R-squared value, which represents the proportion of the variance in the price that can be explained by the smoothed price in a linear regression model.
This PineScript code implements a smoothing R-squared comparison indicator.
It provides a comparison of different smoothing techniques such as Kalman filter, T3, JMA, EMA, SMA, Super Smoother and some special combinations of them.
The Kalman filter is a mathematical algorithm that uses a series of measurements observed over time, containing statistical noise and other inaccuracies, and produces estimates of unknown variables that tend to be more accurate than those based on a single measurement.
The input parameters for the Kalman filter include the process noise covariance and the measurement noise covariance, which help to adjust the sensitivity of the filter to changes in the input data.
The T3 smoothing technique is a popular method used in technical analysis to remove noise from a signal.
The input parameters for the T3 smoothing method include the length of the window used for smoothing, the type of smoothing used (Normal or New), and the smoothing factor used to adjust the sensitivity to changes in the input data.
The JMA smoothing technique is another popular method used in technical analysis to remove noise from a signal.
The input parameters for the JMA smoothing method include the length of the window used for smoothing, the phase used to shift the input data before applying the smoothing algorithm, and the power used to adjust the sensitivity of the JMA to changes in the input data.
The EMA and SMA techniques are also popular methods used in technical analysis to remove noise from a signal.
The input parameters for the EMA and SMA techniques include the length of the window used for smoothing.
The indicator displays a comparison of the R-squared values for each smoothing technique, which provides an indication of how well the technique is fitting the data.
Higher R-squared values indicate a better fit. By adjusting the input parameters for each smoothing technique, the user can compare the effectiveness of different techniques in removing noise from the input data.
Usage
You can use it to find the best fitting smoothing method for the timeframe you usually use.
Just apply it on your preferred timeframe and look for the highlighted table cell.
Conclusion
It seems like the T3 works best on timeframes under 4H.
There's where I am active, so I will use this one more in the future.
Thank you for checking this out. Enjoy your day and leave me a like or comment. 🧙♂️
---
Credits to:
▪@loxx – T3
▪@balipour – Super Smoother
▪ChatGPT – Wrote 80 % of this article and helped with the research
Search in scripts for "如何用wind搜索股票的发行价和份数"
Rolling HTF Liquidity Levels [CHE]█ OVERVIEW
This indicator displays a Rolling HTF Liquidity Levels . Contrary to HTF Liquidity Levels indicators which use a fix time segment, Rolling HTF Liquidity Levels calculates using a moving window defined by a time period (not a simple number of bars), so it shows better results.
This indicator is inspired by
The indicator introduces a new representation of the previous rolling time frame highs & lows (DWM HL) with a focus on untapped levels.
█ CONCEPTS
Untapped Levels
It is popularly known that the liquidity is located behind swing points or beyond higher time frames highs/lows.
Rolling HTF Liquidity Levels uses a moving window, it does not exhibit the static of the HTF Liquidity Levels plots.
█ HOW TO USE IT
Load the indicator on an active chart (see the Help Center if you don't know how).
Time period
By default, the script uses an auto-stepping mechanism to adjust the time period of its moving window to the chart's timeframe. The following table shows chart timeframes and the corresponding time period used by the script. When the chart's timeframe is less than or equal to the timeframe in the first column, the second column's time period is used to calculate the Rolling HTF Liquidity Levels:
Chart Time
timeframe period
1min 🠆 1H
5min 🠆 4H
1H 🠆 1D
4H 🠆 3D
12H 🠆 1W
1D 🠆 1M
1W 🠆 3M
By default, the time period currently used is displayed in the lower-right corner of the chart. The script's inputs allow you to hide the display or change its size and location.
This indicator should make trading easier and improve analysis. Nothing is worse than indicators that give confusingly different signals.
I hope you enjoy my new ideas
best regards
Chervolino
Delta Volume Channels [LucF]█ OVERVIEW
This indicator displays on-chart visuals aimed at making the most of delta volume information. It can color bars and display two channels: one for delta volume, another calculated from the price levels of bars where delta volume divergences occur. Markers and alerts can also be configured using key conditions, and filtered in many different ways. The indicator caters to traders who prefer chart visuals over raw values. It will work on historical bars and in real time, using intrabar analysis to calculate delta volume in both conditions.
█ CONCEPTS
Delta Volume
The volume delta concept divides a bar's volume in "up" and "down" volumes. The delta is calculated by subtracting down volume from up volume. Many calculation techniques exist to isolate up and down volume within a bar. The simplest techniques use the polarity of interbar price changes to assign their volume to up or down slots, e.g., On Balance Volume or the Klinger Oscillator . Others such as Chaikin Money Flow use assumptions based on a bar's OHLC values. The most precise calculation method uses tick data and assigns the volume of each tick to the up or down slot depending on whether the transaction occurs at the bid or ask price. While this technique is ideal, it requires huge amounts of data on historical bars, which usually limits the historical depth of charts and the number of symbols for which tick data is available.
This indicator uses intrabar analysis to achieve a compromise between the simplest and most precise methods of calculating volume delta. In the context where historical tick data is not yet available on TradingView, intrabar analysis is the most precise technique to calculate volume delta on historical bars on our charts. TradingView's Volume Profile built-in indicators use it, as do the CVD - Cumulative Volume Delta Candles and CVD - Cumulative Volume Delta (Chart) indicators published from the TradingView account . My Volume Delta Columns Pro indicator also uses intrabar analysis. Other volume delta indicators such as my Realtime 5D Profile use realtime chart updates to achieve more precise volume delta calculations. Indicators of that type cannot be used on historical bars however; they only work in real time.
This is the logic I use to assign intrabar volume to up or down slots:
• If the intrabar's open and close values are different, their relative position is used.
• If the intrabar's open and close values are the same, the difference between the intrabar's close and the previous intrabar's close is used.
• As a last resort, when there is no movement during an intrabar and it closes at the same price as the previous intrabar, the last known polarity is used.
Once all intrabars making up a chart bar have been analyzed and the up or down property of each intrabar's volume determined, the up volumes are added and the down volumes subtracted. The resulting value is volume delta for that chart bar, which can be used as an estimate of the buying/selling pressure on an instrument.
Delta Volume Percent (DV%)
This value is the proportion that delta volume represents of the total intrabar volume in the chart bar. Note that on some symbols/timeframes, the total intrabar volume may differ from the chart's volume for a bar, but that will not affect our calculations since we use the total intrabar volume.
Delta Volume Channel
The DV channel is the space between two moving averages: the reference line and a DV%-weighted version of that reference. The reference line is a moving average of a type, source and length which you select. The DV%-weighted line uses the same settings, but it averages the DV%-weighted price source.
The weight applied to the source of the reference line is calculated from two values, which are multiplied: DV% and the relative size of the bar's volume in relation to previous bars. The effect of this is that DV% values on bars with higher total volume will carry greater weight than those with lesser volume.
The DV channel can be in one of four states, each having its corresponding color:
• Bull (teal): The DV%-weighted line is above the reference line.
• Strong bull (lime): The bull condition is fulfilled and the bar's close is above the reference line and both the reference and the DV%-weighted lines are rising.
• Bear (maroon): The DV%-weighted line is below the reference line.
• Strong bear (pink): The bear condition is fulfilled and the bar's close is below the reference line and both the reference and the DV%-weighted lines are falling.
Divergences
In the context of this indicator, a divergence is any bar where the slope of the reference line does not match that of the DV%-weighted line. No directional bias is assigned to divergences when they occur.
Divergence Channel
The divergence channel is the space between two levels (by default, the bar's low and high ) saved when divergences occur. When price has breached a channel and a new divergence occurs, a new channel is created. Until that new channel is breached, bars where additional divergences occur will expand the channel's levels if the bar's price points are outside the channel.
Prices breaches of the divergence channel will change its state. Divergence channels can be in one of five different states:
• Bull (teal): Price has breached the channel to the upside.
• Strong bull (lime): The bull condition is fulfilled and the DV channel is in the strong bull state.
• Bear (maroon): Price has breached the channel to the downside.
• Strong bear (pink): The bear condition is fulfilled and the DV channel is in the strong bear state.
• Neutral (gray): The channel has not been breached.
█ HOW TO USE THE INDICATOR
Load the indicator on an active chart (see here if you don't know how).
The default configuration displays:
• The DV channel, without the reference or DV%-weighted lines.
• The Divergence channel, without its level lines.
• Bar colors using the state of the DV channel.
The default settings use an Arnaud-Legoux moving average on the close and a length of 20 bars. The DV%-weighted version of it uses a combination of DV% and relative volume to calculate the ultimate weight applied to the reference. The DV%-weighted line is capped to 5 standard deviations of the reference. The lower timeframe used to access intrabars automatically adjusts to the chart's timeframe and achieves optimal balance between the number of intrabars inspected in each chart bar, and the number of chart bars covered by the script's calculations.
The Divergence channel's levels are determined using the high and low of the bars where divergences occur. Breaches of the channel require a bar's low to move above the top of the channel, and the bar's high to move below the channel's bottom.
No markers appear on the chart; if you want to create alerts from this script, you will need first to define the conditions that will trigger the markers, then create the alert, which will trigger on those same conditions.
To learn more about how to use this indicator, you must understand the concepts it uses and the information it displays, which requires reading this description. There are no videos to explain it.
█ FEATURES
The script's inputs are divided in four sections: "DV channel", "Divergence channel", "Other Visuals" and "Marker/Alert Conditions". The first setting is the selection method used to determine the intrabar precision, i.e., how many lower timeframe bars (intrabars) are examined in each chart bar. The more intrabars you analyze, the more precise the calculation of DV% results will be, but the less chart coverage can be covered by the script's calculations.
DV Channel
Here, you control the visibility and colors of the reference line, its weighted version, and the DV channel between them.
You also specify what type of moving average you want to use as a reference line, its source and length. This acts as the DV channel's baseline. The DV%-weighted line is also a moving average of the same type and length as the reference line, except that it will be calculated from the DV%-weighted source used in the reference line. By default, the DV%-weighted line is capped to five standard deviations of the reference line. You can change that value here. This section is also where you can disable the relative volume component of the weight.
Divergence Channel
This is where you control the appearance of the divergence channel and the key price values used in determining the channel's levels and breaching conditions. These choices have an impact on the behavior of the channel. More generous level prices like the default low and high selection will produce more conservative channels, as will the default choice for breach prices.
In this section, you can also enable a mode where an attempt is made to estimate the channel's bias before price breaches the channel. When it is enabled, successive increases/decreases of the channel's top and bottom levels are counted as new divergences occur. When one count is greater than the other, a bull/bear bias is inferred from it.
Other Visuals
You specify here:
• The method used to color chart bars, if you choose to do so.
• The display of a mark appearing above or below bars when a divergence occurs.
• If you want raw values to appear in tooltips when you hover above chart bars. The default setting does not display them, which makes the script faster.
• If you want to display an information box which by default appears in the lower left of the chart.
It shows which lower timeframe is used for intrabars, and the average number of intrabars per chart bar.
Marker/Alert Conditions
Here, you specify the conditions that will trigger up or down markers. The trigger conditions can include a combination of state transitions of the DV and the divergence channels. The triggering conditions can be filtered using a variety of conditions.
Configuring the marker conditions is necessary before creating an alert from this script, as the alert will use the marker conditions to trigger.
Markers only appear on bar closes, so they will not repaint. Keep in mind, when looking at markers on historical bars, that they are positioned on the bar when it closes — NOT when it opens.
Raw values
The raw values calculated by this script can be inspected using a tooltip and the Data Window. The tooltip is visible when you hover over the top of chart bars. It will display on the last 500 bars of the chart, and shows the values of DV, DV%, the combined weight, and the intermediary values used to calculate them.
█ INTERPRETATION
The aim of the DV channel is to provide a visual representation of the buying/selling pressure calculated using delta volume. The simplest characteristic of the channel is its bull/bear state. One can then distinguish between its bull and strong bull states, as transitions from strong bull to bull states will generally happen when buyers are losing steam. While one should not infer a reversal from such transitions, they can be a good place to tighten stops. Only time will tell if a reversal will occur. One or more divergences will often occur before reversals.
The nature of the divergence channel's design makes it particularly adept at identifying consolidation areas if its settings are kept on the conservative side. A gray divergence channel should usually be considered a no-trade zone. More adventurous traders can use the DV channel to orient their trade entries if they accept the risk of trading in a neutral divergence channel, which by definition will not have been breached by price.
If your charts are already busy with other stuff you want to hold on to, you could consider using only the chart bar coloring component of this indicator:
At its simplest, one way to use this indicator would be to look for overlaps of the strong bull/bear colors in both the DV channel and a divergence channel, as these identify points where price is breaching the divergence channel when buy/sell pressure is consistent with the direction of the breach. I have highlighted all those points in the chart below. Not all of them would have produced profitable trades, but nothing is perfect in the markets. Also, keep in mind that the circles identify the visual you would be looking for — not the trade's entry level.
█ LIMITATIONS
• The script will not work on symbols where no volume is available. An error will appear when that is the case.
• Because a maximum of 100K intrabars can be analyzed by a script, a compromise is necessary between the number of intrabars analyzed per chart bar
and chart coverage. The more intrabars you analyze per chart bar, the less coverage you will obtain.
The setting of the "Intrabar precision" field in the "DV channel" section of the script's inputs
is where you control how the lower timeframe is calculated from the chart's timeframe.
█ NOTES
Volume Quality
If you use volume, it's important to understand its nature and quality, as it varies with sectors and instruments. My Volume X-ray indicator is one way you can appraise the quality of an instrument's intraday volume.
For Pine Script™ Coders
• This script uses the new overload of the fill() function which now makes it possible to do vertical gradients in Pine. I use it for both channels displayed by this script.
• I use the new arguments for plot() 's `display` parameter to control where the script plots some of its values,
namely those I only want to appear in the script's status line and in the Data Window.
• I wrote my script using the revised recommendations in the Style Guide from the Pine v5 User Manual.
█ THANKS
To PineCoders . I have used their lower_tf library in this script, to manage the calculation of the LTF and intrabar stats, and their Time library to convert a timeframe in seconds to a printable form for its display in the Information box.
To TradingView's Pine Script™ team. Their innovations and improvements, big and small, constantly expand the boundaries of the language. What this script does would not have been possible just a few months back.
And finally, thanks to all the users of my scripts who take the time to comment on my publications and suggest improvements. I do not reply to all but I do read your comments and do my best to implement your suggestions with the limited time that I have.
z_score_bgd
Z-score indicator for volatile currency pairs, showing STRONG BUY, BUY, SELL, STRONG SELL zones by shading the chart background.
---------------------------------
Background
---------------------------------
Based on mean reversion, a theory that after a swing in price the price will tend back to the mean. This offers some ability to predict future trends.
The formula for calculating a z-score is is z = (x-μ)/σ, where x is the pair price, μ is the mean for a population, and σ is the population standard deviation.
---------------------------------
Set up
---------------------------------
The user can define their own value for the "window" or population, which is the number of preceding days to evaluate. This value will affect the frequency and magnitude of trades, with higher "window" values reducing the frequency of reversions but increasing their magnitude.
Where the value for "window" is left at 99, the default values below will be applied in the background. Otherwise the user's selection will be in effect.
atombtc 18
avaxbtc 21
ethbtc 18
ftmbtc 11
maticbtc 11
solbtc 11
soleth 16
The default values above are intended for the daily time-frame.
---------------------------------
Interpreting the indicator
---------------------------------
Dark green -> large deviation below mean price (strong buy)
Green -> moderate deviation below mean price (buy)
Red -> moderate deviation below mean price (sell)
Dark red -> large deviation below mean price (strong sell)
Z-score is an imperfect indicator, as with all indiciators and trading decisions must be confirmed by multiple indicators and consider other factors.
CommonFiltersLibrary "CommonFilters"
Collection of some common Filters and Moving Averages. This collection is not encyclopaedic, but to declutter my other scripts. Suggestions are welcome, though. Many filters here are based on the work of John F. Ehlers
sma(src, len) Simple Moving Average
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
ema(src, len) Exponential Moving Average
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
rma(src, len) Wilder's Smoothing (Running Moving Average)
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
hma(src, len) Hull Moving Average
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
vwma(src, len) Volume Weighted Moving Average
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
hp2(src) Simple denoiser
Parameters:
src : Series to use
Returns: Filtered series
fir2(src) Zero at 2 bar cycle period by John F. Ehlers
Parameters:
src : Series to use
Returns: Filtered series
fir3(src) Zero at 3 bar cycle period by John F. Ehlers
Parameters:
src : Series to use
Returns: Filtered series
fir23(src) Zero at 2 bar and 3 bar cycle periods by John F. Ehlers
Parameters:
src : Series to use
Returns: Filtered series
fir234(src) Zero at 2, 3 and 4 bar cycle periods by John F. Ehlers
Parameters:
src : Series to use
Returns: Filtered series
hp(src, len) High Pass Filter for cyclic components shorter than langth. Part of Roofing Filter by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
supers2(src, len) 2-pole Super Smoother by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
filt11(src, len) Filt11 is a variant of 2-pole Super Smoother with error averaging for zero-lag response by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
supers3(src, len) 3-pole Super Smoother by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
hannFIR(src, len) Hann Window Filter by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
hammingFIR(src, len) Hamming Window Filter (inspired by John F. Ehlers). Simplified implementation as Pedestal input parameter cannot be supplied, so I calculate it from the supplied length
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
triangleFIR(src, len) Triangle Window Filter by John F. Ehlers
Parameters:
src : Series to use
len : Filtering length
Returns: Filtered series
doPrefilter(type, src) Execute a particular Prefilter from the list
Parameters:
type : Prefilter type to use
src : Series to use
Returns: Filtered series
doMA(type, src, len) Execute a particular MA from the list
Parameters:
type : MA type to use
src : Series to use
len : Filtering length
Returns: Filtered series
Summary ChecklistThis works on daily charts
Summarizes some data as shown.
Projects volume for eod.
Sometimes it opens on new window. You have to move it to the price window.
VPA - 5.0 This is a upgraded version of the vpa analysis script which basically implements Volume Spread Analysis (aka Volume Price analysis). It has been rechristened as VPA 5.0 to be inline with version released for Amiboker package so that all future upgrades will go hand in hand. All most all featured of the Amibroker version has been incorporated in this version. Some important additions are as follows
1. A status window for the bar and Trend Description added. No need to plot the trend bands or additional trend Indicator any more.
2. The most important upgrade would be the addition of a Alert window which provides description of the VSA signals. It is also a log window which provides up to 10 last signals
(Credits to Quantnomad for this wonderful piece of code. This feature is an adaptation of his public code)
3. Added facility to plot EMAs / PEMAs with changable parameters
4. Added facility to plot VWAP
5. Facility to switch on and Off the VSA signals. Also tool tip provides description of the signals
6. Facility to plot Resistance and Volume Lines (Credits to @margepadu)
Hope this script will be helpful to everyone. Please do provide your feedback and suggestions for improvements
Fast Fourier Transform (FFT) FilterDear friends!
I'm happy to present an implementation of the Fast Fourier Transform (FFT) algorithm. The script uses the FFT procedure to decompose the input time series into its cyclical constituents, in other words, its frequency components , and convert it back to the time domain with modified frequency content, that is, to filter it.
Input Description and Usage
Source and Length :
Indicates where the data comes from and the size of the lookback window used to build the dataset.
Standardize Input Dataset :
If enabled, the dataset is preprocessed by subtracting its mean and normalizing the result by the standard deviation, which is sometimes useful when analyzing seasonalities. This procedure is not recommended when using the FFT filter for smoothing (see below), as it will not preserve the average of the dataset.
Show Frequency-Domain Power Spectrum :
When enabled, the results of Fourier analysis (for the last price bar!) are plotted as a frequency-domain power spectrum , where “power” is a measure of the significance of the component in the dataset. In the spectrum, lower frequencies (longer cycles) are on the right, higher frequencies are on the left. The graph does not display the 0th component, which contains only information about the mean value. Frequency components that are allowed to pass through the filter (see below) are highlighted in magenta .
Dominant Cycles, Rows :
If this option is activated, the periods and relative powers of several dominant cyclical components that is, those that have a higher power, are listed in the table. The number of the component in the power spectrum (N) is shown in the first column. The number of rows in the table is defined by the user.
Show Inverse Fourier Transform (Filtered) :
When enabled, the reconstructed and filtered time-domain dataset (for the last price bar!) is displayed.
Apply FFT Filter in a Moving Window :
When enabled, the FFT filter with the same parameters is applied to each bar. The last data point of the reconstructed and filtered dataset is used to build a new time series. For example, by getting rid of high-frequency noise, the FFT filter can make the data smoother. By removing slowly evolving low-frequency components (including non-periodic constituents), one can reveal and analyze shorter cycles. Since filtering is done in real-time in a moving window (similar to the moving average), the modified data can potentially be used as part of a strategy and be subjected to other technical indicators.
Lowest Allowed N :
Indicates the number of the lowest frequency component used in the reconstructed time series.
Highest Allowed N :
Indicates the number of the highest frequency component used in the reconstructed time series.
Filtering Time Range block:
Specifies the time range over which real-time FFT filtering is applied. The reason for the presence of this block is that the FFT procedure is relatively computationally intensive. Therefore, the script execution may encounter the time limit imposed by TradingView when all historical bars are processed.
As always, I look forward to your feedback!
Also, leave a comment if you'd be interested in the tutorial on how to use this tool and/or in seeing the FFT filter in a strategy.
FOTSI - Open sourceI WOULD LIKE TO SPECIFY TWO THINGS:
- The indicator was absolutely not designed by me, I do not take any credit and much less I want them, I am just making this fantastic indicator open source and accessible to all
- The script code was not recycled from other indicators, but was created from 0 following the theory behind it to the letter, thus avoiding copyright infringement
- Advices and improvements are accepted, as having very little programming experience in Pine Script I consider this work still rough and slow
WHAT IS THE FOTSI?
The FOTSI is an oscillator that measures the relative strength of the individual currencies that make up the 28 major Forex exchanges.
By identifying the currencies that are in the overbought (+50) and oversold (-50) areas, it is possible to anticipate the correction of a currency pair following a strong trend.
THE THEORY BEHIND
1) At the base of everything is the 1-period momentum (close-open) of the single currency pairs that contain a certain currency. For example, the momentum of the USD currency is composed of all the exchange rates that contain the US dollar inside it: mom_usd = - mom_eurusd - mom_gbpusd + mom_usdchf + mom_usdjpy - mom_audusd + mom_usdcad - mom_nzdusd. Where the base currency is in second position, the momentum is subtracted instead of adding it.
2) The IST formula is applied to the momentum of the individual currencies obtained. In this way we get an oscillator that oscillates between 0 and its overbought and oversold areas. The area between +25 and -25 is an area in which we can consider the movements of individual currencies to be neutral.
3) The TSI is nothing more than a double smoothing on the momentum of individual currencies. This particularity makes the indicator very reactive, minimizing the delays of the trend reversal.
HOW TO USE
1) A currency is identified that is in the overbought (+50) or oversold (-50) area. Example GBP = 50
2) The second currency is identified as the one most opposite to the first. Example USD = -25
3) The currency pair consisting of the two currencies opens. So GBP / USD
4) Considering that GBP is oversold, we anticipate its future devaluation. So in this case we are short on GBP / SUD. Otherwise if GBP had been oversold (-50) we expect its future valuation and therefore we enter long.
5) It is used on the H1, H4 and D1 timeframes
6) Closing conditions: the position on the 50-period exponential moving average is split / the position at target on the 100-period exponential moving average is closed
7) Stoploss: it is recommended not to use it, if you want to use it it is equivalent to 5 times the ATR on the reference timeframe
8) Position sizing: go very slow! Being a counter-trend strategy, it is very risky to position yourself heavily. Use common sense in everything!
9) To insert the alerts that warn you of an overbought and oversold condition, it is necessary to enter the signals called "Overbought Signal" and "Oversold Signal" for each chart used, in the specific Trading View window. like me using multiple charts in the same window.
I hope you enjoy my work. For any questions write in the comments.
Thanks <3
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TENGO A PRECISARE DUE COSE:
- L'indicatore non è stato assolutamente ideato da me, non mi assumo nessun merito e tanto meno li voglio, io sto solo rendendo questo fantastico indicatore open source ed accessibile a tutti
- Il codice dello script non è stato riciclato da altri indicatori, ma è stato creato da 0 seguendo alla lettere la teoria che sta alla sua base, evitando così di violare il copyright
- Si accettano consigli e migliorie, visto che avendo pochissima esperienza di programmazione in Pine Script considero questo lavoro ancora grezzo e lento
COS'È IL FOTSI?
Il FOTSI è un oscillatore che misura la forza relativa delle singole valute che compongono i 28 cambi major del Forex.
Individuando le valute che si trovano nelle aree di ipercomprato (+50) ed ipervenduto (-50) , è possibile anticipare la correzione di una coppia valutaria al seguito di un forte trend.
LA TEORIA ALLA BASE
1) Alla base di tutto c'è il momentum ad 1 periodo (close-open) delle singole coppie valutarie che contengono una determinata valuta. Ad esempio il momentum della valuta USD è composto da tutti i cambi che contengono il dollaro americano al suo interno: mom_usd = - mom_eurusd - mom_gbpusd + mom_usdchf + mom_usdjpy - mom_audusd + mom_usdcad - mom_nzdusd . Ove la valuta base si trova in seconda posizione si sottrae il momentum al posto che sommarlo.
2) Si applica la formula del TSI ai momentum delle singole valute ottenute. In questo modo otteniamo un oscillatore che oscilla tra lo 0 e le sue aree di ipercomprato ed ipervenduto. L'area compresa tra +25 e -25 è un area in cui possiamo considerare neutri i movimenti delle singole valute.
3) Il TSI non è altro che un doppio smoothing sul momentum delle singole valute. Questa particolarità rende l'indicatore molto reattivo, minimizzando i ritardi dell'inversione del trend.
COME SI USA
1) Si individua una valuta che si trova nell'area di ipercomprato (+50) o ipervenduto (-50) . Esempio GBP = 50
2) Si individua come seconda valuta quella più opposta alla prima. Esempio USD = -25
3) Si apre la coppia di valuta composta dalle due valute. Quindi GBP/USD
4) Considerando che GBP è in fase di ipervenduto prevediamo una sua futura svalutazione. Quindi in questo caso entriamo short su GBP/SUD. Diversamente se GBP fosse stato in fase di ipervenduto (-50) ci aspettiamo una sua futura valutazione e quindi entriamo long.
5) Si usa sui timeframe H1, H4 e D1
6) Condizioni di chiusura: si smezza la posizione sulla media mobile esponenziale a 50 periodi / si chiude la posizione a target sulla media mobile esponenziale a 100 periodi
7) Stoploss: è consigliato non usarlo, nel caso lo si voglia utilizzare esso equivale a 5 volte l'ATR sul timeframe di riferimento
8) Position sizing: andateci molto piano! Essendo una strategia contro trend è molto rischioso posizionarsi in modo pesante. Usate il buonsenso in tutto!
9) Per inserire gli allert che ti avvertono di una condizione di ipercomprato ed ipervenduto, è necessario inserire dall'apposita finestra di Trading View i segnali denominati "Segnale di ipercomprato" ed "Segnale di ipervenduto" per ogni grafico che si usa, nel caso come me che si utilizzano più grafici nella stessa finestra.
Spero che possiate apprezzare il mio lavoro. Per qualsiasi domanda scrivete nei commenti.
Grazie<3
[blackcat] L2 Ehlers Center of GravityLevel: 2
Background
John F. Ehlers introuced center of gravity (CG) in his "Cybernetic Analysis for Stocks and Futures" chapter 5 on 2004.
Function
The center of gravity (CG) of a physical object is its balance point. For example, if you balance a 12-inch ruler on your finger, the CG will be at its 6-inch point. If you change the weight distribution of the ruler by putting a paper clip on one end, then the balance point (i.e., the CG) shifts toward
the paper clip. Moving from the physical world to the trading world, we can substitute the prices over our window of observation for the units of weight along the ruler. Using this analogy, we see that the CG of the window moves to the right when prices increase sharply. Correspondingly, the CG of the window moves to the left when prices decrease.
The idea of computing the center of gravity of Dr. Ehlers arose from observing how the lags of various finite impulse response (FIR) filters vary according to
the relative amplitude of the filter coefficients. A simple moving average (SMA) is an FIR filter where all the filter coefficients have the same value (usually unity). As a result, the CG of the SMA is exactly in the center of the filter. A weighted moving average (WMA) is an FIR filter where the most recent price is weighted by the length of the filter, the next most recent price is weighted by the length of the filter less 1, and so on. The weighting terms are the filter coefficients. The filter coefficients of a WMA describe the outline of a triangle. It is well known that the CG of a triangle is located at one-third the length of the base of the triangle. In other words, the CG of the WMA has shifted to the right relative to the CG of an SMA of equal length, resulting in less lag. In all FIR filters, the sum of the product of the coefficients and prices must be divided by the sum of the coefficients so that the scale of the original prices is retained.
Key Signal
CG ---> CG fast line
CG (2) ---> CG slow line
Pros and Cons
100% John F. Ehlers definition translation of original work, even variable names are the same. This help readers who would like to use pine to read his book. If you had read his works, then you will be quite familiar with my code style.
Remarks
The 26th script for Blackcat1402 John F. Ehlers Week publication.
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
Indicators all in oneHello Everyone . Sometimes we need some indicators and each one needs seperated window. with this tool we can see indicators by choosing it from pull down menu, in the same window.
Currently you can choose RSI, MACD, Commodity Channel Index (CCI), Momentum, Stochastic, Stochastic RSI, Directional Movement Index (DMI), Chaikin Money Flow (CMF), On-Balance Volume (OBV), Average True Range (ATR), Volume Weigthed MACD (VWMACD).
some screen shots:
DMI:
MACD:
Stochastic RSI
Let me know if you need any other indicator in this tool.
Enjoy!
Enhanced Instantaneous Cycle Period - Dr. John EhlersThis is my first public release of detector code entitled "Enhanced Instantaneous Cycle Period" for PSv4.0 I built many months ago. Be forewarned, this is not an indicator, this is a detector to be used by ADVANCED developers to build futuristic indicators in Pine. The origins of this script come from a document by Dr. John Ehlers entitled "SIGNAL ANALYSIS CONCEPTS". You may find this using the NSA's reverse search engine "goggles", as I call it. John Ehlers' MESA used this measurement to establish the data window for analysis for MESA Cycle computations. So... does any developer wish to emulate MESA Cycle now??
I decided to take instantaneous cycle period to another level of novel attainability in this public release of source code with the following methods, if you are curious how I ENHANCED it. Firstly I reduced the delay of accurate measurement from bar_index==0 by quite a few bars closer to IPO. Secondarily, I provided a limit of 6 for a minimum instantaneous cycle period. At bar_index==0, it would provide a period of 0 wrecking many algorithms from the start. I also increased the instantaneous cycle period's maximum value to 80 from 50, providing a window of 6-80 for the instantaneous cycle period value window limits. Thirdly, I replaced the internal EMA with another algorithm. It reduces the lag while extracting a floating point number, for algorithms that will accept that, compared to a sluggish ordinary EMA return. You will see the excessive EMA delay with adding plot(ema(ICP,7)) as it was originally designed. Lastly it's in one simple function for reusability in a nice little package comprising of less than 40 lines of code. I hope I explained that adequately enough and gave you the reader a glimpse of the "Power of Pine" combined with ingenuity.
Be forewarned again, that most of Pine's built-in functions will not accept a floating-point number or dynamic integers for the "length" of it's calculation. You will have to emulate the built-in functions by creating Pine based custom functions, and I assure you, this is very possible in many cases, but not all without array support. You may use int(ICP) to extract an integer from the smoothICP return variable, which may be favorable compared to the choppiness/ringing if ICP alone.
This is commonly what my dense intricate code looks like behind the veil. If you are wondering why there is barely any notation, that's because the notation is in the variable naming and this is intended primarily for ADVANCED developers too. It does contain lines of code that explore techniques in Pine that may be applicable in other Pine projects for those learning or wishing to excel with Pine.
Showcased in the chart below is my free to use "Enhanced Schaff Trend Cycle Indicator", having a common appeal to TV users frequently. If you do have any questions or comments regarding this indicator, I will consider your inquiries, thoughts, and ideas presented below in the comments section, when time provides it. As always, "Like" it if you simply just like it with a proper thumbs up, and also return to my scripts list occasionally for additional postings. Have a profitable future everyone!
NOTICE: Copy pasting bandits who may be having nefarious thoughts, DO NOT attempt this, because this may violate Tradingview's terms, conditions and/or house rules. "WE" are always watching the TV community vigilantly for mischievous behaviors and actions that exploit well intended authors for the purpose of increasing brownie points in reputation scores. Hiding behind a "protected" wall may not protect you from investigation and account penalization by TV staff. Be respectful, and don't just throw an ma() in there branding it as "your" gizmo. Fair enough? Alrighty then... I firmly believe in "innovating" future state-of-the-art indicators, and please contact me if you wish to do so.
PT Feeder - HighLowPricePercentageYet another script to help people set the Addon PT Feeder for a trading bot Profit Trailer. Same rule applies if you do not own this the following explanation will not help you.
- Add the script to your favourites
- Edit Minutes for short term and long term for both indicators
- Set candle size you are using default is 5 Minutes
HighLowPricePercentage (Source PT Feeder Wiki)
"This is a property to try and check the variance of the price from the norm and is over the MinutesToMeasureTrend time window. The math is:
firstVariance = (high.ActualPrice - low.ActualPrice) / 2
medianVariance = high.ActualPrice - firstVariance
highLowPercentage = (latestActualPrice - medianVariance) / latestActualPrice * 100".
LongerTermHighLowPricePercentage (Source PT Feeder Wiki)
"This is a property to try and check the variance of the price from the norm and is over the LongerTermMinutesToMeasureTrend time window. The math is the same as the HighLowPricePercentage".
Sources:
PT Feeder Wiki - github.com
LTC: LYHj4WDN7BPu5294cSpqK3SgWSWdDX56Qt
BTC: 1NPVzeDSsenaCS9QdPro877hkMk93nRLcD
5EMA_BB_ScalpingWhat?
In this forum we have earlier published a public scanner called 5EMA BollingerBand Nifty Stock Scanner , which is getting appreciated by the community. That works on top-40 stocks of NSE as a scanner.
Whereas this time, we have come up with the similar concept as a stand-alone indicator which can be applied for any chart, for any timeframe to reap the benifit of reversal trading.
How it works?
This is essentially a reversal/divergence trading strategy, based on a widely used strategy of Power-of-Stocks 5EMA.
To know the divergence from 5-EMA we just check if the high of the candle (on closing) is below the 5-EMA. Then we check if the closing is inside the Bollinger Band (BB). That's a Buy signal. SL: low of the candle, T: middle and higher BB.
Just opposite for selling. 5-EMA low should be above 5-EMA and closing should be inside BB (lesser than BB higher level). That's a Sell signal. SL: high of the candle, T: middle and lower BB.
Along with we compare the current bar's volume with the last-20 bar VWMA (volume weighted moving average) to determine if the volume is high or low.
Present bar's volume is compared with the previous bar's volume to know if it's rising or falling.
VWAP is also determined using `ta.vwap` built-in support of TradingView.
The Bolling Band width is also notified, along with whether it is rising or falling (comparing with previous candle).
What's special?
We love this reversal trading, as it offers many benifits over trend following strategies:
Risk to Reward (RR) is superior.
It _Does Hit_ stop losses, but the stop losses are tiny.
Means, althrough the Profit Factor looks Nahh , however due to superior RR, end of day it ended up in green.
When the day is sideways, it's difficult to trade in trending strategies. This sort of volatility, reversal strategies works better.
It's always tempting to go agaist the wind. Whole world is in Put/PE and you went opposite and enter a Call/CE. And turns out profitable! That's an amazing feeling, as a trader :)
How to trade using this?
* Put any chart
* Apply this screener from Indicators (shortcut to launch indicators is just type / in your keyboard).
* It will show you the Green up arrow when buy alert comes or red down arrow when sell comes. * Also on the top right it will show the latest signal with entry, SL and target.
Disclaimer
* This piece of software does not come up with any warrantee or any rights of not changing it over the future course of time.
* We are not responsible for any trading/investment decision you are taking out of the outcome of this indicator.
Session Volume Profile Sniffer: HVN & Rejection ZonesA simple tool built for traders who rely on intraday volume structure.
What this script does
This script tracks volume distribution inside a selected session and highlights two key price levels:
High Volume Nodes (HVNs) — areas where price spent time building heavy participation.
Low Volume Nodes (LVNs) — thin zones where price moved quickly with very little interest.
Instead of plotting a full profile, this tool gives you the exact rejection-level lines you usually hunt manually.
Why these levels matter
HVN → price tends to react, stall, or flip direction
LVN → price often rejects strongly since liquidity is thin
Rejection patterns around these areas give clean entry signals
Positioning trades around HVN/LVN helps filter noise in choppy sessions
This script removes the trouble of drawing profiles, counting bins, or guessing node levels. Everything is calculated inside the session you choose.
How the detection works
Inside your session window, the script:
1. Tracks each tick-based price bucket
2. Accumulates raw volume for every bucket
Identifies:
HVNs = buckets with volume above a tier
LVNs = buckets with volume below a tier
3. Prints each level as a single clean line
4. Generates:
Long signal → bounce from LVN
Short signal → rejection from HVN
Built-in exits use ATR-based conditions for quick testing.
Features
Session-based volume mapping
HVN + LVN levels drawn automatically
Entry triggers based on rejection
ATR exits for experimental backtests
Clean, minimal visual output
Best use cases
Intraday futures
Index scalping
FX sessions (London / NY)
Crypto sessions (user-timed)
Anyone who trades around volume structure
Adjustable settings
Session window
Volume bin size
HVN multiplier
LVN multiplier
Enable/disable zone lines
This keeps it flexible enough for both scalpers and slow-paced intraday setups.
Important note
This script is built for study + idea testing.
It is not intended as a final system.
Once you identify how price behaves around these nodes, you can blend this tool into your own setup.
BTC - ALSI: Altcoin Season Index (Dynamic Eras)Title: BTC - ALSI: Altcoin Season Index (Dynamic Eras)
Overview & Philosophy
The Altcoin Season Index (ALSI) is a quantitative tool designed to answer the most critical question in crypto capital rotation: "Is it time to hold Bitcoin, or is it time to take risks on Altcoins?"
Most "Altseason" indicators suffer from Survivor Bias or Obsolescence. They either track a static list of coins that includes "dead" assets from previous cycles (ghosts of 2017), or they break completely when major tokens collapse (like LUNA or FTT).
This indicator solves this by using a Time-Varying Basket. The indicator automatically adjusts its reference list of Top 20 coins based on historical eras. This ensures the index tracks the winners of the moment—capturing the DeFi summer of 2020, the NFT craze of 2021, and the AI/Meme narratives of 2024/2025.
Methodology
The indicator calculates the percentage of the Top 20 Altcoins that are outperforming Bitcoin over a rolling window (Default: 90 Days).
The "Win" Count: For every major Altcoin performing better than BTC, the index adds a point.
Dynamic Eras: The basket of coins changes depending on the date:
2020 Era (DeFi Summer): Tracks the "Blue Chips" of the DeFi revolution like UNI, LINK, DOT, and early movers like VET and FIL.
2021 Era (Layer 1 Wars): Tracks the explosion of alternative smart contract platforms, adding winners like SOL, AVAX, MATIC, and ALGO.
2022 Era (The Survivors): Filters for resilience during the Bear Market, solidifying the status of established assets like SHIB and ATOM.
2023 Era (Infrastructure & Scale): Captures the rise of "Next-Gen" tech leading into the pre-halving year, introducing TON, APT (Aptos), and ARB (Arbitrum).
2024/25 Era (AI & Speed): Tracks the current Super-Cycle leaders, focusing on the AI narrative (TAO, RNDR), High-Performance L1s (SUI), and modern Memes (PEPE).
Chart Analysis & Strategy ( The "Alpha" )
As seen in the chart above, there is a strong correlation between ALSI Peaks and local tops in TOTAL3 (The Crypto Market Cap excluding BTC & ETH).
The Entry (Rotation): When the indicator rises above the neutral 50 line, it signals that capital is beginning to rotate out of Bitcoin and into Altcoins. This has historically been a strong confirmation signal to increase exposure to high-beta assets.
The Exit (Saturation): When the indicator hits 100 (or sustains in the Red Zone > 75), it means every single Altcoin is beating Bitcoin. Historically, this extreme exuberance often marks a local top in the TOTAL3 chart. This is the zone where smart money typically sells into strength, rather than opening new positions.
How to Read the Visuals
🚀 Altcoin Season (Red Zone > 75): Strong Altcoin dominance. The market is "Risk On."
🛡️ Bitcoin Season (Blue Zone < 25): Bitcoin dominance. Alts are bleeding against BTC. Historically, this is a defensive zone to hold BTC or Stablecoins.
Data Dashboard: A status table in the bottom-right corner displays the live Index Value, current Regime, and a System Check to ensure all 20 data feeds are active.
Settings
Lookback Period: Default 90 Days. Lowering this (e.g., to 30) makes the index faster but noisier.
Thresholds: Adjustable zones for Altcoin Season (Default: 75) and Bitcoin Season (Default: 25).
Credits & Attribution
This open-source indicator is built on the shoulders of giants. I acknowledge the original creators of the concept and the pioneers of its implementation on TradingView:
Original Concept: BlockchainCenter.net. - They established the industry standard definition: 75% of the Top 50 coins outperforming Bitcoin over 90 days = Altseason..
TradingView Implementation: Adam_Nguyen - He implemented the "Dynamic Era" logic (updating the coin list annually) on TradingView. Our code structure for the time-based switching is inspired by his methodology. See also his implementation in the chart. ( Altcoin Season Index - Adam) .
Comparison: Why use ALSI | RM?
While inspired by the above, ALSI introduces three key improvements:
Open Source: Unlike other popular TradingView versions (which are closed-source), this script is fully transparent. You can see exactly which coins are triggering the signal.
Sanitized History (Anti-Fragile): Historical Top 20 snapshots are not blindly used. "Dead" coins (like LUNA and FTT) from previous eras are manually filtered out. A raw index would crash during the Terra/FTX collapses, giving a false "Bitcoin Season" signal purely due to bad actors. The curated list preserves the integrity of the market structure signal.
Narrative Relevance: The 2024/25 basket was updated to include TAO (Bittensor) and RNDR, ensuring the index captures the dominant AI narrative, rather than tracking fading assets from the previous cycle.
You can compare the ALSI indicator with other available tradingview indicators in the chart: Different indicators for the same idea are shown in the 3 Pane window below the BTC and Total3 chart, whereas ALSI is the top pane indicator.
Important Note on Coin Selection Baskets are highly curated: Dead/irrelevant coins (FTT, LUNA, BSV) are excluded for clean signals. This prevents historical breaks and ensures Era T5 captures current narratives (AI, Memes) via TAO/RNDR. See above. Users are free to adjust the source code to test their own baskets.
Disclaimer
This script is for research and educational purposes only. Past correlations between ALSI and TOTAL3 do not guarantee future results. Market regimes can change, and "Altseasons" can be cut short by macro events.
Tags
bitcoin, btc, altseason, dominance, total3, rotation, cycle, index, alsi, Rob Maths
Orderblock Footprints [AlgoAlpha]🟠 OVERVIEW
This script highlights orderblocks and then drills into what actually trades inside them. Zones are created only after an abnormal directional impulse, measured with a z-score on consecutive candle bodies, so the orderblocks are tied to real expansion rather than simple pivots. Once a zone exists, the script overlays lower-timeframe volume footprints inside the candle when price trades back into that zone. The goal is to show not just where an orderblock sits, but whether price is being accepted or absorbed when it is revisited.
🟠 CONCEPTS
Orderblocks are detected after extreme bullish or bearish impulses. The script tracks consecutive body movement up or down, normalizes that distance with a rolling z-score, and only triggers when the move is statistically large. The last opposite candle before that impulse defines the orderblock range. These zones then extend forward until they are either mitigated by price closing through them or they expire by age.
Inside an active zone, the script switches to a lower timeframe and builds a footprint-style profile for each bar. Each candle is split into price rows, counting time-at-price and volume delta. Positive and negative delta are colored separately. Absorption is flagged when opposing delta prints appear in the wick that rejects the zone. In practice: the impulse defines context ; the footprint shows interaction .
🟠 FEATURES
Separate bullish and bearish zones with automatic extension
Volume split inside each zone candle (up vs down volume)
Lower-timeframe footprint with TPO-style rows and delta gradient
Absorption detection using opposing delta in rejection wicks
Alerts for zone creation and absorption events
🟠 USAGE
Setup : Add the script to your chart. It works on any market and timeframe. The lower timeframe for footprints is fixed at 5 minutes, so higher chart timeframes show clearer structure. Use the Z-Score Window to control how strict impulse detection is and Max Box Age to limit how long old zones stay on the chart.
Read the chart : Bullish orderblocks are created after strong upward impulses and are invalidated when price closes below them. Bearish orderblocks are created after strong downward impulses and are invalidated when price closes above them. When price trades inside a zone, footprint rows appear. Green-tinted rows show positive delta; red-tinted rows show negative delta. Absorption labels appear when opposing delta prints into a rejecting wick.
Settings that matter : Increasing the Z-Score Window makes orderblocks rarer but more significant. Disabling Prevent Overlap allows stacked zones if you want to study clustering. Adjusting Rows per bar changes footprint resolution—lower values are cleaner, higher values show more detail but use more objects.
Rolling Volume Profile [Matrix Volume Heatmap] by NXT2017Description
This indicator offers a unique visual approach to Volume Profile analysis. Instead of the traditional histogram bars or boxes, this script renders a Rolling Volume Profile as a background "Matrix Heatmap" directly on your chart.
By dividing the price action of the most recent N-candles into 30 horizontal zones (buckets), it visualizes where the most trading activity has occurred within your defined lookback period. The visualization uses dynamic transparency to highlight the Point of Control (POC) and high-volume nodes, while fading out low-volume areas.
🧠 How it Works
The script operates on a "Rolling Window" basis, meaning it recalculates the profile at every bar to reflect the immediate market context.
Dynamic Range: It calculates the highest High and lowest Low of the user-defined Lookback Length (default: 1000 bars).
Bucket Slicing: This vertical range is divided into 30 equal price buckets.
Volume Distribution (Overlap Logic): The script iterates through the historical data. If a candle is large and spans multiple buckets, its volume is distributed proportionally across those buckets. This ensures a more realistic profile compared to simply assigning volume to the close price.
Heatmap Visualization:
The script calculates the Maximum Volume (POC) within the profile.
It uses a Reference Length to normalize this maximum.
Dynamic Opacity: Zones with volume close to the maximum are rendered opaque (solid). Zones with low relative volume become highly transparent. This creates an automatic "Heatmap" effect, allowing you to instantly spot the most significant price levels.
⚙️ Settings
Lookback Length (candles): Defines how far back the profile calculates volume (e.g., 1000 bars).
POC Reference Length: Defines the smoothing window for the 100% volume baseline. Increasing this stabilizes the color changes; decreasing it makes the heatmap more reactive to sudden volume spikes.
Profil Color: Choose the base color for the matrix. The transparency is calculated automatically.
💡 Use Case
This tool is ideal for traders who want to see the "Value Area" of the current range without cluttering the chart with complex boxes or side-bars. It works excellent as a background context tool to identify:
High Volume Nodes (Support/Resistance)
Low Volume Nodes (Price gaps/Rejection areas)
Migrating Points of Control (Trend direction)
Adaptive Risk Management [sgbpulse]1. Introduction:
Adaptive Risk Management is an advanced indicator designed to provide traders with a comprehensive risk management tool directly on the chart. Instead of relying on complex manual calculations, the indicator automates all critical steps of trade planning. It dynamically calculates the estimated Entry Price , the Stop Loss location, the required Position Size (Quantity) based on your capital and risk limits, and the three Take Profit targets based on your defined Reward/Risk ratios. The indicator displays all these essential data points clearly and visually on the chart, ensuring you always know the potential risk-reward profile of every trade.
ARM : The A daptive R isk M anagement every trader needs to ARM themselves with.
2. The Critical Importance of Risk Management
Proper risk management is the cornerstone of successful trading. Consistent profitability in the market is impossible without rigorously defining risk limits.
Risk Control: This starts by setting the maximum risk amount you are willing to lose in a single trade (Risk per Trade), and limiting the total capital allocated to the position (Max Capital per Trade).
Defining Boundaries (Stop Loss & Take Profit): It is mandatory to define a technical Stop Loss and a Take Profit target. A fundamental rule of risk management is that the Reward/Risk Ratio (R/R) must be a minimum of 1:1.
3. Core Features, Adaptivity, and Customization
The Adaptive Risk Management indicator is engineered for use across all major trading styles, including Swing Trading, Intraday Trading, and Scalping, providing consistent risk control regardless of the chosen timeframe.
Real-Time Dynamic Adaptivity: The indicator calculates all risk management parameters (Entry, Stop Loss, Quantity) dynamically with every new bar, thus adapting instantly to changing market conditions.
Trend Direction Adjustment: Define the analysis direction (Long/Uptrend or Short/Downtrend).
Intraday Session Data Control: Full control over whether lookback calculations will include data from Extended Trading Hours (ETH), or if the daily calculations will start actively only from the first bar of Regular Trading Hours (RTH).
Status Validation: The indicator performs critical status checks and displays clear Warning Messages if risk conditions are not met.
4. Intuitive Visualization and Real-Time Data
Dynamic Tracking Lines: The Entry Price and Stop Loss lines are updated with every new bar. Crucially, the length of these lines dynamically reflects the calculation's lookback range (e.g., the extent of Lookback Bars or the location of the confirmed Pivot Point), providing a visual anchor for the calculated price.
Risk and Reward Zones: The indicator creates a graphical background fill between Entry and Stop Loss (marked with the risk color) and between Entry and the Reward Targets (marked with the reward color).
Essential Information Labels: Labels are placed at the end of each line, providing critical data: Estimated Entry Price, Stock/Contract Quantity (Quantity), Total Entry Amount, Estimated Stop Loss, Risk per Share, Total Financial Risk (Risk Amount), Exit Amount, Estimated Take Profit 1/2/3, Reward/Risk Ratio 1/2/3, Total Reward 1/2/3, TP Exit Amount 1/2/3.
4.1. Data Window Metrics (16 Full Series)
The indicator displays 16 full data series in the TradingView Data Window, allowing precise tracking of every calculation parameter:
Entry Data: Estimated Entry, Quantity, Entry Amount.
Risk Data (Stop Loss): Estimated Stop Loss, Risk per Share, Risk Amount, Exit Amount.
Reward Data (Take Profit): Estimated Take Profit 1/2/3, Reward/Risk Ratio 1/2/3, Total Reward 1/2/3, TP Exit Amount 1/2/3.
4.2. Instant Tracking in the Status Line
The indicator displays 6 critical parameters continuously in the indicator's Status Line: Estimated Entry, Quantity, Estimated Stop Loss, Estimated Take Profit 1/2/3.
5. Detailed Indicator Inputs
5.1 General
Focused Trend: Defines the analysis direction (Uptrend / Downtrend).
Max Capital per Trade: The maximum amount allocated to purchasing stocks/contracts (in account currency).
Risk per Trade: The maximum amount the user is willing to risk in this single trade (in account currency).
ATR Length: The lookback period for the Average True Range (ATR) calculation.
5.2 Intraday Session Data Control
Regular Hours Limitation : If enabled, all daily lookback calculations (for Entry/Stop Loss anchor points) will begin strictly from the first Regular Trading Hours (RTH) bar. This limits the lookback range to the current RTH session, excluding preceding Extended Trading Hours (ETH) data. Only relevant for Intraday charts. Default: False (Off)
5.3 Entry Inputs
Entry Method: Selects the entry price calculation method:
Current Price: Uses the closing price of the current bar as the estimated entry point (Market Entry).
ATR Real Bodies Margin :
- Uptrend: Calculates the Maximum Real Body over the lookback period + the calculated safety margin.
- Downtrend: Calculates the Minimum Real Body over the lookback period - the calculated safety margin.
ATR Bars Margin :
- Uptrend: Calculates the Maximum High price over the lookback period + the calculated safety margin.
- Downtrend: Calculates the Minimum Low price over the lookback period - the calculated safety margin.
Lookback Bars: The number of bars used to calculate the extremes in the ATR-based entry methods (Relevant only for ATR Real Bodies Margin and ATR Bars Margin methods).
ATR Multiplier (Entry): The multiplier applied to the ATR value. The result of the multiplication is the calculated safety margin used to determine the estimated Entry Price.
5.4 Risk Inputs (Stop Loss)
Risk Method: Selects the Stop Loss price calculation method.
ATR Current Price Margin :
- Uptrend: Entry Price - the calculated safety margin.
- Downtrend: Entry Price + the calculated safety margin.
ATR Current Bar Margin :
- Uptrend: Current Bar's Low price - the calculated safety margin.
- Downtrend: Current Bar's High price + the calculated safety margin.
ATR Bars Margin :
- Uptrend: Lowest Low over lookback period - the calculated safety margin.
- Downtrend: Highest High over lookback period + the calculated safety margin.
ATR Pivot Margin :
- Uptrend: The first confirmed Pivot Low point - the calculated safety margin.
- Downtrend: The first confirmed Pivot High point + the calculated safety margin.
Lookback Bars: The lookback period for finding the extreme price used in the 'ATR Bars Margin' calculation.
ATR Multiplier (Risk): The multiplier applied to the ATR value. The result of the multiplication is the calculated safety margin used to place the estimated Stop Loss. Note: If set to 0, the Stop Loss will be placed exactly at the technical anchor point, provided the Minimum Margin Value is also 0.
Minimum Margin Value: The minimum price value (e.g., $0.01) the Stop Loss margin buffer must be.
Pivot (Left / Right): The number of bars required on either side of the pivot bar for confirmation (relevant only for the ATR Pivot Margin method).
5.5 Reward Inputs (Take Profit)
Show Take Profit 1/2/3: ON/OFF switch to control the visibility of each Take Profit target.
Reward/Risk Ratio 1/ 2/ 3: Defines the R/R ratio for the profit target. Must be ≥1.0.
6. Indicator Status/Warning Messages
In situations where the Stop Loss location cannot be calculated logically and validly, often caused by a mismatch between the configured Focused Trend (Uptrend/Downtrend) and the actual price action, the indicator will display a warning message, explaining the reason and suggesting corrective action.
Status Message 1: Pivot reference unavailable
Condition: The Stop Loss is set to the "ATR Pivot Margin" method, but the anchor point (Pivot) is missing or inaccessible.
Message Displayed: "Pivot reference unavailable. Wait for valid price action, or adjust the Regular Hours Limitation setting or Pivot Left/Right inputs."
Status Message 2: Calculated Stop Loss is unsafe
Condition: The calculated Stop Loss is placed illogically or unsafely relative to the trend direction and the Entry price.
Message Displayed: "Calculated Stop Loss is unsafe for current trend. Wait for valid price action or adjust SL Lookback/Multiplier."
7. Summary
The Adaptive Risk Management (ARM) indicator provides a seamless and systematic approach to trade execution and risk control. By dynamically automating all critical trade parameters—from Entry Price and Stop Loss placement to Position Sizing and Take Profit targets—ARM removes emotional bias and ensures every trade adheres strictly to your predefined risk profile.
Key Benefits:
Systematic Risk Control: Strict enforcement of maximum capital allocation and risk per trade limits.
Adaptivity: Dynamic calculation of prices and quantities based on real-time market data (ATR and Lookback).
Clarity and Trust: Clear on-chart visualization, precise data metrics (16 series), and unambiguous Status/Warning Messages ensure transparency and reliability.
ARM allows traders to focus on strategy and analysis, confident that their execution complies with the core principles of professional risk management.
Important Note: Trading Risk
This indicator is intended for educational and informational purposes only and does not constitute investment advice or a recommendation for trading in any form whatsoever.
Trading in financial markets involves significant risk of capital loss. It is important to remember that past performance is not indicative of future results. All trading decisions are your sole responsibility. Never trade with money you cannot afford to lose.
HTF Frequency Zone [BigBeluga]🔵 OVERVIEW
HTF Frequency Zone highlights the dominant price level (Point of Control) and the full high–low expansion of any higher timeframe — Daily, Weekly, or Monthly. It captures the frequency of closes inside each HTF candle and plots the most traded “frequency zone”, allowing traders to easily see where price spent the most time and where buy/sell pressure accumulated.
This tool transforms each higher-timeframe bar into a fully visualized structure:
• Top = HTF high
• Bottom = HTF low
• Midline = HTF Frequency POC
• Color-coded zones = bullish or bearish bias
• Labels = counts of bullish and bearish candles inside the HTF range
It is designed to give traders an immediate understanding of high-timeframe balance, imbalance, and price attraction zones.
🔵 CONCEPTS
HTF Partitioning — Each Weekly/Daily/Monthly candle is converted into a dedicated zone with its own High, Low, and Frequency Point of Control.
Frequency POC (Most Touched Price) — The indicator divides the HTF range into 100 bins and counts how many times price closed near each level.
Dominant Zone — The level with the highest frequency becomes the HTF “Value Zone,” plotted as a bold central line.
Directional Bias —
• Bullish HTF zone
• Bearish HTF zone
Internal Candle Counting — Within each HTF period the indicator counts:
• Buy candles (close > open)
• Sell candles (close < open)
This reveals whether intraperiod flow was bullish or bearish.
HTF Structure Blocks — High, Low, and POC are connected across the entire higher-timeframe duration, showing the real shape of HTF balance.
🔵 FEATURES
Automatic HTF Zone Construction — Generates a complete price zone every time the selected timeframe flips (Daily / Weekly / Monthly).
Dynamic High & Low Extraction — The indicator scans every bar inside the HTF window to find true extremes of the range.
100-Level Frequency Scan — Each close within the period is assigned to a bin, creating a detailed distribution of price interaction.
HTF POC Highlighting — The most frequent price level is plotted with a bold red line for immediate visual clarity.
Bull/Bear Coloring —
• Green → Bullish HTF zone.
• Orange → Bearish HTF zone.
Zone Shading — High–Low range is filled with a semi-transparent color matching trend direction.
Buy/Sell Candle Counters — Printed at the top and bottom of each HTF block, showing how many internal candles were bullish or bearish.
POC Label — Displays frequency count (how many touches) at the POC level.
Adaptive Threshold Warning — If bars inside the HTF window are too few (<10), the indicator warns the trader to switch timeframe.
🔵 HOW TO USE
Higher-Timeframe Biasing — Read the zone color to determine if the HTF candle leaned bullish or bearish.
Value Zone Reactions — Price often reacts to the Frequency POC; use it as support/resistance or liquidity magnet.
Range Context — Identify when price is trading near HTF highs (breakout potential) or lows (reversal potential).
Momentum Evaluation — More bullish internal candles = internal buying pressure; more bearish = internal selling pressure.
Swing Trading — Use HTF zones as the “macro map,” then execute trades on lower timeframes aligned with the zone structure.
Liquidity Awareness — The HTF POC often aligns with algorithmic liquidity levels, making it a strong reaction point.
🔵 CONCLUSION
HTF Frequency Zone transforms raw higher-timeframe candles into detailed distribution zones that reveal true market behavior inside the HTF structure. By showing highs, lows, buying/selling activity, and the most interacted price level (Frequency POC), this tool becomes invaluable for traders who want to align executions with powerful HTF levels, liquidity magnets, and structural zones.
Volatility Risk PremiumTHE INSURANCE PREMIUM OF THE STOCK MARKET
Every day, millions of investors face a fundamental question that has puzzled economists for decades: how much should protection against market crashes cost? The answer lies in a phenomenon called the Volatility Risk Premium, and understanding it may fundamentally change how you interpret market conditions.
Think of the stock market like a neighborhood where homeowners buy insurance against fire. The insurance company charges premiums based on their estimates of fire risk. But here is the interesting part: insurance companies systematically charge more than the actual expected losses. This difference between what people pay and what actually happens is the insurance premium. The same principle operates in financial markets, but instead of fire insurance, investors buy protection against market volatility through options contracts.
The Volatility Risk Premium, or VRP, measures exactly this difference. It represents the gap between what the market expects volatility to be (implied volatility, as reflected in options prices) and what volatility actually turns out to be (realized volatility, calculated from actual price movements). This indicator quantifies that gap and transforms it into actionable intelligence.
THE FOUNDATION
The academic study of volatility risk premiums began gaining serious traction in the early 2000s, though the phenomenon itself had been observed by practitioners for much longer. Three research papers form the backbone of this indicator's methodology.
Peter Carr and Liuren Wu published their seminal work "Variance Risk Premiums" in the Review of Financial Studies in 2009. Their research established that variance risk premiums exist across virtually all asset classes and persist over time. They documented that on average, implied volatility exceeds realized volatility by approximately three to four percentage points annualized. This is not a small number. It means that sellers of volatility insurance have historically collected a substantial premium for bearing this risk.
Tim Bollerslev, George Tauchen, and Hao Zhou extended this research in their 2009 paper "Expected Stock Returns and Variance Risk Premia," also published in the Review of Financial Studies. Their critical contribution was demonstrating that the VRP is a statistically significant predictor of future equity returns. When the VRP is high, meaning investors are paying substantial premiums for protection, future stock returns tend to be positive. When the VRP collapses or turns negative, it often signals that realized volatility has spiked above expectations, typically during market stress periods.
Gurdip Bakshi and Nikunj Kapadia provided additional theoretical grounding in their 2003 paper "Delta-Hedged Gains and the Negative Market Volatility Risk Premium." They demonstrated through careful empirical analysis why volatility sellers are compensated: the risk is not diversifiable and tends to materialize precisely when investors can least afford losses.
HOW THE INDICATOR CALCULATES VOLATILITY
The calculation begins with two separate measurements that must be compared: implied volatility and realized volatility.
For implied volatility, the indicator uses the CBOE Volatility Index, commonly known as the VIX. The VIX represents the market's expectation of 30-day forward volatility on the S&P 500, calculated from a weighted average of out-of-the-money put and call options. It is often called the "fear gauge" because it rises when investors rush to buy protective options.
Realized volatility requires more careful consideration. The indicator offers three distinct calculation methods, each with specific advantages rooted in academic literature.
The Close-to-Close method is the most straightforward approach. It calculates the standard deviation of logarithmic daily returns over a specified lookback period, then annualizes this figure by multiplying by the square root of 252, the approximate number of trading days in a year. This method is intuitive and widely used, but it only captures information from closing prices and ignores intraday price movements.
The Parkinson estimator, developed by Michael Parkinson in 1980, improves efficiency by incorporating high and low prices. The mathematical formula calculates variance as the sum of squared log ratios of daily highs to lows, divided by four times the natural logarithm of two, times the number of observations. This estimator is theoretically about five times more efficient than the close-to-close method because high and low prices contain additional information about the volatility process.
The Garman-Klass estimator, published by Mark Garman and Michael Klass in 1980, goes further by incorporating opening, high, low, and closing prices. The formula combines half the squared log ratio of high to low prices minus a factor involving the log ratio of close to open. This method achieves the minimum variance among estimators using only these four price points, making it particularly valuable for markets where intraday information is meaningful.
THE CORE VRP CALCULATION
Once both volatility measures are obtained, the VRP calculation is straightforward: subtract realized volatility from implied volatility. A positive result means the market is paying a premium for volatility insurance. A negative result means realized volatility has exceeded expectations, typically indicating market stress.
The raw VRP signal receives slight smoothing through an exponential moving average to reduce noise while preserving responsiveness. The default smoothing period of five days balances signal clarity against lag.
INTERPRETING THE REGIMES
The indicator classifies market conditions into five distinct regimes based on VRP levels.
The EXTREME regime occurs when VRP exceeds ten percentage points. This represents an unusual situation where the gap between implied and realized volatility is historically wide. Markets are pricing in significantly more fear than is materializing. Research suggests this often precedes positive equity returns as the premium normalizes.
The HIGH regime, between five and ten percentage points, indicates elevated risk aversion. Investors are paying above-average premiums for protection. This often occurs after market corrections when fear remains elevated but realized volatility has begun subsiding.
The NORMAL regime covers VRP between zero and five percentage points. This represents the long-term average state of markets where implied volatility modestly exceeds realized volatility. The insurance premium is being collected at typical rates.
The LOW regime, between negative two and zero percentage points, suggests either unusual complacency or that realized volatility is catching up to implied volatility. The premium is shrinking, which can precede either calm continuation or increased stress.
The NEGATIVE regime occurs when realized volatility exceeds implied volatility. This is relatively rare and typically indicates active market stress. Options were priced for less volatility than actually occurred, meaning volatility sellers are experiencing losses. Historically, deeply negative VRP readings have often coincided with market bottoms, though timing the reversal remains challenging.
TERM STRUCTURE ANALYSIS
Beyond the basic VRP calculation, sophisticated market participants analyze how volatility behaves across different time horizons. The indicator calculates VRP using both short-term (default ten days) and long-term (default sixty days) realized volatility windows.
Under normal market conditions, short-term realized volatility tends to be lower than long-term realized volatility. This produces what traders call contango in the term structure, analogous to futures markets where later delivery dates trade at premiums. The RV Slope metric quantifies this relationship.
When markets enter stress periods, the term structure often inverts. Short-term realized volatility spikes above long-term realized volatility as markets experience immediate turmoil. This backwardation condition serves as an early warning signal that current volatility is elevated relative to historical norms.
The academic foundation for term structure analysis comes from Scott Mixon's 2007 paper "The Implied Volatility Term Structure" in the Journal of Derivatives, which documented the predictive power of term structure dynamics.
MEAN REVERSION CHARACTERISTICS
One of the most practically useful properties of the VRP is its tendency to mean-revert. Extreme readings, whether high or low, tend to normalize over time. This creates opportunities for systematic trading strategies.
The indicator tracks VRP in statistical terms by calculating its Z-score relative to the trailing one-year distribution. A Z-score above two indicates that current VRP is more than two standard deviations above its mean, a statistically unusual condition. Similarly, a Z-score below negative two indicates VRP is unusually low.
Mean reversion signals trigger when VRP reaches extreme Z-score levels and then shows initial signs of reversal. A buy signal occurs when VRP recovers from oversold conditions (Z-score below negative two and rising), suggesting that the period of elevated realized volatility may be ending. A sell signal occurs when VRP contracts from overbought conditions (Z-score above two and falling), suggesting the fear premium may be excessive and due for normalization.
These signals should not be interpreted as standalone trading recommendations. They indicate probabilistic conditions based on historical patterns. Market context and other factors always matter.
MOMENTUM ANALYSIS
The rate of change in VRP carries its own information content. Rapidly rising VRP suggests fear is building faster than volatility is materializing, often seen in the early stages of corrections before realized volatility catches up. Rapidly falling VRP indicates either calming conditions or rising realized volatility eating into the premium.
The indicator tracks VRP momentum as the difference between current VRP and VRP from a specified number of bars ago. Positive momentum with positive acceleration suggests strengthening risk aversion. Negative momentum with negative acceleration suggests intensifying stress or rapid normalization from elevated levels.
PRACTICAL APPLICATION
For equity investors, the VRP provides context for risk management decisions. High VRP environments historically favor equity exposure because the market is pricing in more pessimism than typically materializes. Low or negative VRP environments suggest either reducing exposure or hedging, as markets may be underpricing risk.
For options traders, understanding VRP is fundamental to strategy selection. Strategies that sell volatility, such as covered calls, cash-secured puts, or iron condors, tend to profit when VRP is elevated and compress toward its mean. Strategies that buy volatility tend to profit when VRP is low and risk materializes.
For systematic traders, VRP provides a regime filter for other strategies. Momentum strategies may benefit from different parameters in high versus low VRP environments. Mean reversion strategies in VRP itself can form the basis of a complete trading system.
LIMITATIONS AND CONSIDERATIONS
No indicator provides perfect foresight, and the VRP is no exception. Several limitations deserve attention.
The VRP measures a relationship between two estimates, each subject to measurement error. The VIX represents expectations that may prove incorrect. Realized volatility calculations depend on the chosen method and lookback period.
Mean reversion tendencies hold over longer time horizons but provide limited guidance for short-term timing. VRP can remain extreme for extended periods, and mean reversion signals can generate losses if the extremity persists or intensifies.
The indicator is calibrated for equity markets, specifically the S&P 500. Application to other asset classes requires recalibration of thresholds and potentially different data sources.
Historical relationships between VRP and subsequent returns, while statistically robust, do not guarantee future performance. Structural changes in markets, options pricing, or investor behavior could alter these dynamics.
STATISTICAL OUTPUTS
The indicator presents comprehensive statistics including current VRP level, implied volatility from VIX, realized volatility from the selected method, current regime classification, number of bars in the current regime, percentile ranking over the lookback period, Z-score relative to recent history, mean VRP over the lookback period, realized volatility term structure slope, VRP momentum, mean reversion signal status, and overall market bias interpretation.
Color coding throughout the indicator provides immediate visual interpretation. Green tones indicate elevated VRP associated with fear and potential opportunity. Red tones indicate compressed or negative VRP associated with complacency or active stress. Neutral tones indicate normal market conditions.
ALERT CONDITIONS
The indicator provides alerts for regime transitions, extreme statistical readings, term structure inversions, mean reversion signals, and momentum shifts. These can be configured through the TradingView alert system for real-time monitoring across multiple timeframes.
REFERENCES
Bakshi, G., and Kapadia, N. (2003). Delta-Hedged Gains and the Negative Market Volatility Risk Premium. Review of Financial Studies, 16(2), 527-566.
Bollerslev, T., Tauchen, G., and Zhou, H. (2009). Expected Stock Returns and Variance Risk Premia. Review of Financial Studies, 22(11), 4463-4492.
Carr, P., and Wu, L. (2009). Variance Risk Premiums. Review of Financial Studies, 22(3), 1311-1341.
Garman, M. B., and Klass, M. J. (1980). On the Estimation of Security Price Volatilities from Historical Data. Journal of Business, 53(1), 67-78.
Mixon, S. (2007). The Implied Volatility Term Structure of Stock Index Options. Journal of Empirical Finance, 14(3), 333-354.
Parkinson, M. (1980). The Extreme Value Method for Estimating the Variance of the Rate of Return. Journal of Business, 53(1), 61-65.
AI Kernel Regression StrategyHow to Use This Strategy
Paste the Code: Open the Pine Editor, paste the code, and click "Add to chart".
Look for Reversals:
BUY Signal: The price dipped below the green band (oversold) and snapped back up. The script identifies this as a high-probability bounce.
SELL Signal: The price spiked above the red band (overbought) and snapped back down.
Adjust the "Lookback Window":
In the settings (gear icon), if you change Lookback Window to a higher number (e.g., 15-20), the lines become smoother (better for trends).
If you lower it (e.g., 3-5), it becomes very reactive (better for scalping).
Important Note on "Repainting"
This script uses a technique called Regression. In live trading, it works perfectly (the signal appears when the candle closes). However, be aware that "AI" scripts like this are heavy on calculations. If you refresh your browser, the historical lines might shift slightly to fit the data better. Always wait for the candle to close before taking the trade to ensure the signal is locked in.
Мой скриптinputs:
window(1),
type(0), // 0: close, 1: high low, 2: fractals up down, 3: new fractals
persistent(False),
exittype(1),
nbars(160),
adxthres(40),
nstop(3000);
vars:
currentSwingLow(0),
currentSwingHigh(0),
trailStructureValid(false),
downFractal(0),
upFractal(0),
breakStructureHigh(0),
breakStructureLow(0),
BoS_H(0),
BoS_L(0),
Regime(0),
Last_BoS_L(0),
Last_BoS_H(0),
PeakfilterX(false);
BoS(window,persistent,type,Bos_H,BoS_L,upFractal,downFractal,breakStructureHigh,breakStructureLow);
//BOS Regime
If BoS_H <> 0 then begin
Regime = 1; // Bullish
Last_BoS_H = BoS_H ;
end;
If BoS_L <> 0 Then begin
Regime = -1; // Bearish
Last_BoS_L = BoS_L ;
end;
//Entry Logic: if we are in BoS regime then wait for break swing to entry
if ADX(5) of data2 < adxthres then begin
if time>900 and Regime = 1 and EntriesToday(date)= 0 and Last_BoS_H upFractal then buy next bar at market;
end;
if time>900 and EntriesToday(date)= 0 and Regime = -1 and Last_BoS_L>downFractal then
begin
if close < downFractal then sellshort next bar at market;
end;
end;
// Exits: nbars or stoploss or at the end of the day
if marketposition <> 0 and barssinceentry >nbars then begin
sell next bar at market;
buytocover next bar at market;
end;
setstoploss(nstop);
setexitonclose;






















