Premarket Std Dev BandsOverview
The Premarket Std Dev Bands indicator is a powerful Pine Script tool designed to help traders gain deeper insights into the premarket session's price movements. This indicator calculates and displays the standard deviation bands for premarket trading, providing valuable information on price volatility and potential support and resistance levels during the premarket hours.
Key Features
Premarket Focus: Specifically designed to analyze price movements during the premarket session, offering unique insights not available with traditional indicators.
Customizable Length: Users can adjust the averaging period for calculating the standard deviation, allowing for tailored analysis based on their trading strategy.
Standard Deviation Bands: Displays both 1 and 2 standard deviation bands, helping traders identify significant price movements and potential reversal points.
Real-Time Updates: Continuously updates the premarket open and close prices, ensuring the bands are accurate and reflective of current market conditions.
How It Works
Premarket Session Identification: The script identifies when the current bar is within the premarket session.
Track Premarket Prices: It tracks the open and close prices during the premarket session.
Calculate Premarket Moves: Once the premarket session ends, it calculates the price movement and stores it in an array.
Compute Averages and Standard Deviation: The script calculates the simple moving average (SMA) and standard deviation of the premarket moves over a specified period.
Plot Standard Deviation Bands: Based on the calculated standard deviation, it plots the 1 and 2 standard deviation bands around the premarket open price.
Usage
To utilize the Premarket Std Dev Bands indicator:
Add the script to your TradingView chart.
Adjust the Length input to set the averaging period for calculating the standard deviation.
Observe the plotted standard deviation bands during the premarket session to identify potential trading opportunities.
Benefits
Enhanced Volatility Analysis: Understand price volatility during the premarket session, which can be crucial for making informed trading decisions.
Support and Resistance Levels: Use the standard deviation bands to identify key support and resistance levels, aiding in better entry and exit points.
Customizable and Flexible: Tailor the averaging period to match your trading style and strategy, making this indicator versatile for various market conditions.
Cari dalam skrip untuk "session"
LIT - Timings Fx MartinThe Asia Liquidity Points Indicator is a powerful tool designed for traders to identify key liquidity points during the Asia trading session. This script is tailored specifically to aid traders in capitalizing on the unique characteristics of Asian markets, providing invaluable insights into liquidity zones that can significantly enhance trading decisions.
Key Features:
Asia Session Focus: The indicator focuses exclusively on the Asia trading session, which encompasses the trading activity primarily in the Asian markets such as Tokyo, Hong Kong, Singapore, and others.
Liquidity Zones Identification: The script utilizes advanced algorithms to identify and map out liquidity zones within the Asia trading session. These zones represent areas where significant buying or selling pressure is likely to occur, thus presenting lucrative trading opportunities.
Customizable Parameters: Traders have the flexibility to customize various parameters such as time frame, sensitivity, and display options to suit their trading preferences and strategies.
Visual Alerts: The indicator provides visual alerts on the trading chart, clearly indicating the location and strength of liquidity points. This feature enables traders to quickly identify potential entry or exit points based on the liquidity dynamics in the market.
Real-Time Updates: The script continuously monitors market activity during the Asia session, providing real-time updates on liquidity points as they evolve. This ensures traders stay informed and adaptable to changing market conditions.
Integration with Trading Strategies: The Asia Liquidity Points Indicator seamlessly integrates with various trading strategies, serving as a valuable tool for both discretionary and algorithmic traders. Whether used in isolation or in combination with other technical analysis tools, this indicator can enhance trading performance and profitability.
User-Friendly Interface: The indicator boasts a user-friendly interface, making it accessible to traders of all levels of experience. Whether you are a novice trader or a seasoned professional, you can easily incorporate this tool into your trading arsenal.
In conclusion, the Asia Liquidity Points Indicator offers traders a strategic advantage in navigating the nuances of the Asia trading session. By identifying key liquidity zones and providing real-time insights, this script empowers traders to make informed decisions and capitalize on lucrative trading opportunities in the dynamic Asian markets.
ORB Algo | Flux Charts💎 GENERAL OVERVIEW
Introducing our new ORB Algo indicator! ORB stands for "Opening Range Breakout" which is a common trading strategy. The indicator can analyze the market trend in the current session and give "Buy / Sell", "Take Profit" and "Stop Loss" signals. For more information about the analyzing process of the indicator, you can read "How Does It Work ?" section of the description.
Features of the new ORB Algo indicator :
Buy & Sell Signals
Up To 3 Take Profit Signals
Stop-Loss Signals
Alerts for Buy / Sell, Take-Profit and Stop-Loss
Customizable Algoritm
Session Dashboard
Backtesting Dashboard
📌 HOW DOES IT WORK ?
This indicator works best in 1-minute timeframe. The idea is that the trend of the current session can be forecasted by analyzing the market for a while after the session starts. However, each market has it's own dynamics and the algorithm will need fine-tuning to get the best performance possible. So, we've implemented a "Backtesting Dashboard" that shows the past performance of the algorithm in the current ticker with your current settings. Always keep in mind that past performance does not guarantee future results.
Here are the steps of the algorithm explained briefly :
1. The algorithm follows and analyzes the first 30 minutes (can be adjusted) of the session.
2. Then, algorithm checks for breakouts of the opening range's high or low.
3. If a breakout happens in a bullish or a bearish direction, the algorithm will now check for retests of the breakout. Depending on the sensitivity setting, there must be 0 / 1 / 2 / 3 failed retests for the breakout to be considered as reliable.
4. If the breakout is reliable, the algorithm will give an entry signal.
5. After the position entry, algorithm will now wait for Take-Profit or Stop-Loss zones and signal if any of them occur.
If you wonder how does the indicator find Take-Profit & Stop-Loss zones, you can check the "Settings" section of the description.
🚩UNIQUENESS
While there are indicators that show the opening range of the session, they come short with features like indicating breakouts, entries, and Take-Profit & Stop-Loss zones. We are also aware of that different stock markets have different dynamics, and tuning the algorithm for different markets is really important for better results, so we decided to make the algorithm fully customizable. Besides all that, our indicator contains a detailed backtesting dashboard, so you can see past performance of the algorithm in the current ticker. While past performance does not yield any guarantee for future results, we believe that a backtesting dashboard is necessary for tuning the algorithm. Another strength of this indicator is that there are multiple options for detection of Take-Profit and Stop-Loss zones, which the trader can select one of their liking.
⚙️SETTINGS
Keep in mind that best chart timeframe for this indicator to work is the 1-minute timeframe.
TP = Take-Profit
SL = Stop-Loss
EMA = Exponential Moving Average
OR = Opening Range
ATR = Average True Range
1. Algorithm
ORB Timeframe -> This setting determines the timeframe that the algorithm will analyze the market after a new session begins before giving any signals. It's important to experiment with this setting and find the best option that suits the current ticker for the best performance. More volatile stocks will often require this setting to be larger, while more stabilized stocks may have this setting shorter.
Sensitivity -> This setting determines how much failed retests are needed to take a position entry. Higher senstivity means that less retests are needed to consider the breakout as reliable. If you think that the current ticker makes strong movements in a bullish & bearish direction after a breakout, you should set this setting higher. If you think the opposite, meaning that the ticker does not decide the trend right after a breakout, this setting show be lower.
(High = 0 Retests, Medium = 1 Retest, Low = 2 Retests, Lowest = 3 Retests)
Breakout Condition -> The condition for the algorithm to detect breakouts.
Close = Bar needs to close higher than the OR High Line in a bullish breakout, or lower than the OR Low Line in a bearish breakout. EMA = The EMA of the bar must be higher / lower than OR Lines instead of the close price.
TP Method -> The method for the algorithm to use when determining TP zones.
Dynamic = This TP method essentially tries to find the bar that price starts declining the current trend and going to the other direction, and puts a TP zone there. To achieve this, it uses an EMA line, and when the close price of a bar crosses the EMA line, It's a TP spot.
ATR = In this TP method, instead of a dynamic approach the TP zones are pre-determined using the ATR of the entry bar. This option is generally for traders who just want to know their TP spots beforehand while trading. Selecting this option will also show TP zones at the ORB Dashboard.
"Dynamic" option generally performs better, while the "ATR" method is safer to use.
EMA Length -> This setting determines the length of the EMA line used in "Dynamic TP method" and "EMA Breakout Condition". This is completely up to the trader's choice, though the default option should generally perform well. You might want to experiment with this setting and find the optimal length for the current ticker.
Stop-Loss -> Algorithm will place the Stop-Loss zone using setting.
Safer = The SL zone will be placed closer to the OR High for a bullish entry, and closer to the OR Low for a bearish entry.
Balanced = The SL zone will be placed in the center of OR High & OR Low
Risky = The SL zone will be placed closer to the OR Low for a bullish entry, and closer to the OR High for a bearish entry.
Adaptive SL -> This option only takes effect if the first TP zone is hit.
Enabled = After the 1st TP zone is hit, the SL zone will be moved to the entry price, essentially making the position risk-free.
Disabled = The SL zone will never change.
2. ORB Dashboard
ORB Dashboard shows the information about the current session.
3. ORB Backtesting
ORB Backtesting Dashboard allows you to see past performance of the algorithm in the current ticker with current settings.
Total amount of days that can be backtested depends on your TV subscription.
Backtesting Exit Ratios -> You can select how much of percent your entry will be closed at any TP zone while backtesting. For example, %90, %5, %5 means that %90 of the position will be closed at the first TP zone, %5 of it will be closed at the 2nd TP zone, and %5 of it will be closed at the last TP zone.
Seek liquidityGuided by ICT tutoring, I create this versatile "Seek liquidity" indicator.
This indicator shows an easy way to view the Liquidity that has been Created - Eliminated - and what liquidity is left to eliminate.
Liquidity levels appear after the sessions are over, and the lines get stuck on the candle that eliminates them.
Timing session =
//---Asian
- 18:00-00:00
//---London
- 00:00-02:00
- 02:00-05:00
- 00:00-06:00
//---New York
- 06:00-12:00
- 09.30-12.00
//---Lunch
- 12:00-13:30
//---PM
- 1.30pm - 4.00pm
- 12:00-18:00
The user has the possibility to:
- Choose whether or not to view sessions
- Choose to show levels from previous sessions
- Choose to show today's session levels
- Choose whether to view the boxes
- Choose to view the division is open daily
The indicator should be used as ICT shows in its concepts, the indicator takes into consideration both the previous and today's Liquidity, and the session levels can be used for a reversal as in the example below:
Intraday Volatility Bands [Honestcowboy]The Intraday Volatility Bands aims to provide a better alternative to ATR in the calculation of targets or reversal points.
How are they different from ATR based bands?
While ATR and other measures of volatility base their calculations on the previous bars on the chart (for example bars 1954 to 1968). The volatility used in these bands measure expected volatility during that time of the day.
Why would you take this approach?
Markets behave different during certain times of the day, also called sessions.
Here are a couple examples.
Asian Session (generally low volatility)
London Session (bigger volatility starts)
New York Session (overlap of New York with London creates huge volatility)
Generally when using bands or channel type indicators intraday they do not account for the upcoming sessions. On London open price will quickly spike through a bollinger band and it will take some time for the bands to adjust to new volatility.
This script will show expected volatility targets at the start of each new bar and will not adjust during the bar. It already knows what price is expected to do at this time of day.
Script also plots arrows when price breaches either the top or bottom of the bands. You can also set alerts for when this occurs. These are non repainting as the script knows the level at start of the bar and does not change.
🔷 CALCULATION
Think of this script like an ATR but instead it uses past days data instead of previous bars data. Charts below should visualise this more clearly:
The scripts measure of volatility is based on a simple high-low.
The script also counts the number of bars that exist in a day on your current timeframe chart. After knowing that number it creates the matrix used in it's calculations and data storage.
See how it works perfectly on a lower timeframe chart below:
Getting this right was the hardest part, check the coding if you are interested in this type of stuff. I commented every step in the coding process.
🔷 SETTINGS
Every setting of the script has a tooltip but I provided a breakdown here:
Some more examples of different charts:
90cycle @joshuuu90 minute cycle is a concept about certain time windows of the day.
This indicator has two different options. One uses the 90 minute cycle times mentioned by traderdaye, the other uses the cls operational times split up into 90 minutes session.
e.g. we can often see a fake move happening in the 90 minute window between 2.30am and 4am ny time.
The indicator draws vertical lines at the start/end of each session and the user is able to only display certain sessions (asia, london, new york am and pm)
For the traderdayes option, the indicator also counts the windows from 1 to 4 and calls them q1,q2,q3,q4 (q-quarter)
⚠️ Open Source ⚠️
Coders and TV users are authorized to copy this code base, but a paid distribution is prohibited. A mention to the original author is expected, and appreciated.
⚠️ Terms and Conditions ⚠️
This financial tool is for educational purposes only and not financial advice. Users assume responsibility for decisions made based on the tool's information. Past performance doesn't guarantee future results. By using this tool, users agree to these terms.
CVD - Cumulative Volume Delta (Chart)█ OVERVIEW
This indicator displays cumulative volume delta (CVD) as an on-chart oscillator. It uses intrabar analysis to obtain more precise volume delta information compared to methods that only use the chart's timeframe.
The core concepts in this script come from our first CVD indicator , which displays CVD values as plot candles in a separate indicator pane. In this script, CVD values are scaled according to price ranges and represented on the main chart pane.
█ CONCEPTS
Bar polarity
Bar polarity refers to the position of the close price relative to the open price. In other words, bar polarity is the direction of price change.
Intrabars
Intrabars are chart bars at a lower timeframe than the chart's. Each 1H chart bar of a 24x7 market will, for example, usually contain 60 bars at the lower timeframe of 1min, provided there was market activity during each minute of the hour. Mining information from intrabars can be useful in that it offers traders visibility on the activity inside a chart bar.
Lower timeframes (LTFs)
A lower timeframe is a timeframe that is smaller than the chart's timeframe. This script utilizes a LTF to analyze intrabars, or price changes within a chart bar. The lower the LTF, the more intrabars are analyzed, but the less chart bars can display information due to the limited number of intrabars that can be analyzed.
Volume delta
Volume delta is a measure that separates volume into "up" and "down" parts, then takes the difference to estimate the net demand for the asset. This approach gives traders a more detailed insight when analyzing volume and market sentiment. There are several methods for determining whether an asset's volume belongs in the "up" or "down" category. Some indicators, such as On Balance Volume and the Klinger Oscillator , use the change in price between bars to assign volume values to the appropriate category. Others, such as Chaikin Money Flow , make assumptions based on open, high, low, and close prices. The most accurate method involves using tick data to determine whether each transaction occurred at the bid or ask price and assigning the volume value to the appropriate category accordingly. However, this method requires a large amount of data on historical bars, which can limit the historical depth of charts and the number of symbols for which tick data is available.
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. This indicator uses intrabar analysis to achieve a compromise between simplicity and accuracy in calculating volume delta on historical bars. Our Volume Profile indicators use it as well. Other volume delta indicators in our Community Scripts , such as the Realtime 5D Profile , use real-time chart updates to achieve more precise volume delta calculations. However, these indicators aren't suitable for analyzing historical bars since they only work for real-time analysis.
This is the logic we use to assign intrabar volume to the "up" or "down" category:
• 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 comprising a chart bar are analyzed, we calculate the net difference between "up" and "down" intrabar volume to produce the volume delta for the chart bar.
█ FEATURES
CVD resets
The "cumulative" part of the indicator's name stems from the fact that calculations accumulate during a period of time. By periodically resetting the volume delta accumulation, we can analyze the progression of volume delta across manageable chunks, which is often more useful than looking at volume delta accumulated from the beginning of a chart's history.
You can configure the reset period using the "CVD Resets" input, which offers the following selections:
• None : Calculations do not reset.
• On a fixed higher timeframe : Calculations reset on the higher timeframe you select in the "Fixed higher timeframe" field.
• At a fixed time that you specify.
• At the beginning of the regular session .
• On trend changes : Calculations reset on the direction change of either the Aroon indicator, Parabolic SAR , or Supertrend .
• On a stepped higher timeframe : Calculations reset on a higher timeframe automatically stepped using the chart's timeframe and following these rules:
Chart TF HTF
< 1min 1H
< 3H 1D
<= 12H 1W
< 1W 1M
>= 1W 1Y
Specifying intrabar precision
Ten options are included in the script to control the number of intrabars used per chart bar for calculations. The greater the number of intrabars per chart bar, the fewer chart bars can be analyzed.
The first five options allow users to specify the approximate amount of chart bars to be covered:
• Least Precise (Most chart bars) : Covers all chart bars by dividing the current timeframe by four.
This ensures the highest level of intrabar precision while achieving complete coverage for the dataset.
• Less Precise (Some chart bars) & More Precise (Less chart bars) : These options calculate a stepped LTF in relation to the current chart's timeframe.
• Very precise (2min intrabars) : Uses the second highest quantity of intrabars possible with the 2min LTF.
• Most precise (1min intrabars) : Uses the maximum quantity of intrabars possible with the 1min LTF.
The stepped lower timeframe for "Less Precise" and "More Precise" options is calculated from the current chart's timeframe as follows:
Chart Timeframe Lower Timeframe
Less Precise More Precise
< 1hr 1min 1min
< 1D 15min 1min
< 1W 2hr 30min
> 1W 1D 60min
The last five options allow users to specify an approximate fixed number of intrabars to analyze per chart bar. The available choices are 12, 24, 50, 100, and 250. The script will calculate the LTF which most closely approximates the specified number of intrabars per chart bar. Keep in mind that due to factors such as the length of a ticker's sessions and rounding of the LTF, it is not always possible to produce the exact number specified. However, the script will do its best to get as close to the value as possible.
As there is a limit to the number of intrabars that can be analyzed by a script, a tradeoff occurs between the number of intrabars analyzed per chart bar and the chart bars for which calculations are possible.
Display
This script displays raw or cumulative volume delta values on the chart as either line or histogram oscillator zones scaled according to the price chart, allowing traders to visualize volume activity on each bar or cumulatively over time. The indicator's background shows where CVD resets occur, demarcating the beginning of new zones. The vertical axis of each oscillator zone is scaled relative to the one with the highest price range, and the oscillator values are scaled relative to the highest volume delta. A vertical offset is applied to each oscillator zone so that the highest oscillator value aligns with the lowest price. This method ensures an accurate, intuitive visual comparison of volume activity within zones, as the scale is consistent across the chart, and oscillator values sit below prices. The vertical scale of oscillator zones can be adjusted using the "Zone Height" input in the script settings.
This script displays labels at the highest and lowest oscillator values in each zone, which can be enabled using the "Hi/Lo Labels" input in the "Visuals" section of the script settings. Additionally, the oscillator's value on a chart bar is displayed as a tooltip when a user hovers over the bar, which can be enabled using the "Value Tooltips" input.
Divergences occur when the polarity of volume delta does not match that of the chart bar. The script displays divergences as bar colors and background colors that can be enabled using the "Color bars on divergences" and "Color background on divergences" inputs.
An information box in the lower-left corner of the indicator displays the HTF used for resets, the LTF used for intrabars, the average quantity of intrabars per chart bar, and the number of chart bars for which there is LTF data. This is enabled using the "Show information box" input in the "Visuals" section of the script settings.
FOR Pine Script™ CODERS
• This script utilizes `ltf()` and `ltfStats()` from the lower_tf library.
The `ltf()` function determines the appropriate lower timeframe from the selected calculation mode and chart timeframe, and returns it in a format that can be used with request.security_lower_tf() .
The `ltfStats()` function, on the other hand, is used to compute and display statistical information about the lower timeframe in an information box.
• The script utilizes display.data_window and display.status_line to restrict the display of certain plots.
These new built-ins allow coders to fine-tune where a script’s plot values are displayed.
• The newly added session.isfirstbar_regular built-in allows for resetting the CVD segments at the start of the regular session.
• The VisibleChart library developed by our resident PineCoders team leverages the chart.left_visible_bar_time and chart.right_visible_bar_time variables to optimize the performance of this script.
These variables identify the opening time of the leftmost and rightmost visible bars on the chart, allowing the script to recalculate and draw objects only within the range of visible bars as the user scrolls.
This functionality also enables the scaling of the oscillator zones.
These variables are just a couple of the many new built-ins available in the chart.* namespace.
For more information, check out this blog post or look them up by typing "chart." in the Pine Script™ Reference Manual .
• Our ta library has undergone significant updates recently, including the incorporation of the `aroon()` indicator used as a method for resetting CVD segments within this script.
Revisit the library to see more of the newly added content!
Look first. Then leap.
ICT Killzone by JeawThis is an indicator script for TradingView called "ICT Killzone". It is a useful tool for identifying the London and New York open and close sessions, as well as the Asian range on the chart. The appearance of the "killzones" can be customized by selecting colors and transparencies for each session. Boxes can also be displayed around each session and labels with additional information can be added. This script is compatible with intraday charts and time multipliers up to 60 minutes. It was created by Jeaw and is based on the ideas of the ICT (Institutional Cash Trades) methodology. This script can help traders avoid entering the market during high impact news events and periods of low liquidity. By identifying these potentially volatile times, traders can better manage their risk and improve their overall trading strategy.
Williams Vix Fix OHLC candles plot indicator (Tartigradia)OHLC candles plot of the Williams VixFix indicator, which allows to draw trend lines.
Williams VixFix is a realized volatility indicator developed by Larry Williams, and can help in finding market bottoms.
Indeed, as Williams describe in his paper, markets tend to find the lowest prices during times of highest volatility, which usually accompany times of highest fear. The VixFix is calculated as how much the current low price statistically deviates from the maximum within a given look-back period.
The Williams VixFix indicator is usually presented as a curve or histogram. The novelty of this indicator is to present the data as a OHLC candles plot: whereas the original Williams VixFix calculation only involves the close value, we here use the open, high and low values as well. This led to some mathematical challenges because some of these calculations led to absurd values, so workarounds had to be found, but in the end I think the result was worth it, it reproduces the VIX chart quite well.
A great additional value of the OHLC chart is that it shows not just the close value, but all the values during the session: open, high and low in addition to close. This allows to draw trend lines and can provide additional information on momentum and sentiment. In addition, other indicators can be used on it, as if it was a price chart, such as RSI indicators (see RSI+ (alt) indicator for example).
For more information on the Vix Fix, which is a strategy published under public domain:
The VIX Fix, Larry Williams, Active Trader magazine, December 2007, web.archive.org
Fixing the VIX: An Indicator to Beat Fear, Amber Hestla-Barnhart, Journal of Technical Analysis, March 13, 2015, ssrn.com
Replicating the CBOE VIX using a synthetic volatility index trading algorithm, Dayne Cary and Gary van Vuuren, Cogent Economics & Finance, Volume 7, 2019, Issue 1, doi.org
This indicator includes only the Williams VixFix as an OHLC candles or bars plot, and price / vixfix candles plot, as well as the typical vixfix histogram. Indeed, it is much more practical for unbounded range indicators to be plotted in their own separate panel, hence why this indicator is released separately, so that it can work and be scaled adequately out of the box.
Note that the there are however no bottom buy signals. For a more complete indicator, which also includes the OHLC candles plots present here, but also bottom signals and Inverse VixFix (top signals), see:
Set Index symbol to SPX, and index_current = false, and timeframe Weekly, to reproduce the original VIX as close as possible by the VIXFIX (use the Add Symbol option, because you want to plot CBOE:VIX on the same timeframe as the current chart, which may include extended session / weekends). With the Weekly timeframe, off days / extended session days should not change much, but with lower timeframes this is important, because nights and weekends can change how the graph appears and seemingly make them different because of timing misalignment when in reality they are not when properly aligned.
Historic VPoCs and pseudo VPVRThis study tries to recreate session based historic VPoCs
and VPVR Volume Profile
as they are used by
TradingLatino TradingView user.
It's aimed at BTCUSDT pair and 4h timeframe.
HOW IT WORKS
HOW IT WORKS - VPVR Profile Block
It gathers volume from the last chosen Bars
in order to draw the vpvr profile block
Volume that intersects with current level range
being studied is added to its value.
Additionally the current level price is modified
so that it matches the level price where most
of the volume has concentrated
So you get a pretty accurate price for drawn volume
while at the same time the levels are not stuck
to arbitrary level prices.
HOW IT WORKS - VPoC
It calculates a Volume Profile for the
given historic session but then
it only outputs that Volume Profile VPoC.
SETTINGS
Show VPVR Volume Profile {True}.
Show Historic VPoC lines {True}.
Show Historic VPoC labels {True}.
Extend Historic VPoC lines {True}: If this option is turned off the VPoC lines are only shown during the session duration.
Show tick difference from current price {False}: BETA. Feedback is needed because I'm not sure how it should work this setting.
VPVR Number of bars {100}: Define the Visible Range in number of bars so that its Volume Profile can be shown.
VPVR Profile width (in bars) {15}: VPVR Profile can be make larger or smaller in width thanks to this option.
VPVR Profile offset (in bars) {15}: VPVR Profile can be shown more to the left or to the right if the defaults do not suit you.
Historic Session Volume Profile timeframe {1D}: Historic VPoC use 1 day as their timeframe reference by default.
Number of decimal digits {2}: How many decimal digits are shown in label prices.
Number of previous sessions to print VPoC {5}: How many previous sessions VPoCs are to be printed. The maximum for this setting is 20.
Historic VPoC lines width (in pixels) {2}.
Historic VPoC labels size {small}.
History VPoC line offset (in bars) {5}: How far to the right VPoCs lines are to be extended. Note: This setting does not apply when 'Extend Historic VPoC lines' is set to 'False'.
WARNING
Please be aware that VPoC from the first previous session might not be accurate due to Pine Script limitations.
VPVR USAGE
This is not a VPVR like the official TradingView indicator.
This is a pseudo VPVR and that means it needs some manual input from you.
But, don't worry it's quite easy to do and if you always use the same number
of bars to calculate your VPVR then you might even just set it up once.
In order to show the VPVR (or Volume Profile on the Visible Range):
Rescale your chart so that you see all the bars for your Visible Range.
Click on the ruler tool.
Click on the last bar (far to the right) shown on the screen
Drag the ruler to first bar (far to the left) shown on the screen
Check what the ruler says
E.g. it says: 101 bars
Open this study settings
Modify: 'VPVR Number of bars ' setting
So that its value matches your measured number of bars (101)
Press OK to confirm and wait for the indicator to refresh.
STRATEGY USAGE
If your strategy uses VPoC
to define your resistances
or supports
you can check the VPoCs shown here.
FEEDBACK
I have only used this identifier in BTCUSDT 4h timeframe.
I'm interested to know what needs to be tweaked
in other securities and timeframes.
PINE STUDY TRICK
This study let's you choose the number of decimals the label will use.
CREDITS
I have reused and adapted some code from
'Poor man's volume profile' study
which it's from TradingView IldarAkhmetgaleev user.
I also wanted to thank him for helping me understanding his study.
I have reused some code from
'MTF Selection Framework - PineCoders FAQ' study
which it's from TradingView PineCoders user.
Key Recent Highs and LowsKey Recent Highs & Lows — Session‐Aware Market Structure
TL;DR
This tool plots the most important intraday price extremes for every U.S.‑equity trading segment—Early Premarket • Western Premarket • Regular Hours • Post‑Market Hours • Yesterday’s Range—and labels them so you can trade break‑outs, retests and mean‑reversion with instant context.
📐 Theory & Why These Levels Matter
Liquidity Pools
Visible session extremes attract resting orders (stop‑losses, take‑profits, opening prints). Price often accelerates into them and reacts at them.
Market Memory
The previous day’s high/low is a widely‑watched pivot for gap fills, overnight inventory corrections and multi‑day breakouts.
Mean‑Reversion Windows
Statistically, pre‑ and post‑market ranges are thin; an aggressive spike outside those bands often retraces when full liquidity returns.
Break‑Out Confirmation
A true breakout isn’t just a tick above RTH‑high—it usually closes or at least consolidates above the prior extreme. Seeing all bands lets you gauge whether a push is “real” or just probing thinner sessions.
Put simply, these levels help you decide:
Break‑out ➜ trade in the direction of expansion past a session extreme with follow‑through.
Fade/Mean‑Revert ➜ fade a spike that tags an extreme without commitment (e.g., hits Western‑Premkt‑High then stalls before RTH).
🔍 What the Script Draws
Session (UTC‑4 EST) Default Color / Style Typical Use‑Case
Early Premarket 4 – 7 AM Thick semi‑transparent orange line detect overnight retail spikes / fade plays
Western Premarket 7 – 9 : 30 AM Dashed orange‑red breakout watch as U.S. brokers open
Regular Session (RTH) 9 : 30 – 16 : 00 Bold teal dotted line core intraday structure; classic highs/lows
Post‑Market 16 – 23 : 59 Soft indigo band after‑hours news moves, earnings fades
Previous‑Day RTH Solid teal gap‑fill targets, trend continuation filters
(All colors, thicknesses and transparencies are editable in the settings.)
✨ Features
Real‑Time Updates
Levels refresh tick‑by‑tick inside their own session—no repainting later.
One‑Click Visibility Toggles
Show or hide any session extreme independently.
Clean Auto‑Labels
Optional right‑edge tags (“RTH High”, “Premkt Low”, etc.) keep your chart readable even when lines overlap.
Automatic Daily Reset
At midnight Eastern, buffers clear and yesterday’s extremes roll into the “Prev‑Day” pair.
Zero‑Noise Design
Transparencies and line styles are tuned so you can overlay on any symbol / timeframe without drowning candles.
📈 How to Trade with It
Intraday Breakout Strategy
Mark confluence (e.g., price pushes through Western Premkt High and Yesterday’s High).
Wait for a pullback that holds above the reclaimed band.
Enter with stop under that session line; target next band or measured‑move.
Fade / Mean‑Reversion
Pre‑market headline sends price 5 % above Early Premkt High.
Volume dries up before RTH open.
Short into exhaustion; cover near Western Premkt High or VWAP.
Gap‑Fill & Trend Days
Cash open gaps above Prev‑Day High.
If first 15‑min candle closes back inside yesterday’s range, bias shifts to downside fade.
If it holds above, treat gap as breakout and track RTH High extensions.
Pair it with volume‑profile, VWAP, or momentum oscillators for even higher‑confidence setups.
⚙️ Settings Cheat‑Sheet
Setting Effect
Show Regular / Premarket / Post‑market High/Low Master visibility per session
Show Previous Day High/Low Toggle yesterday’s anchor range
Show Session Labels Turn the right‑edge tags on/off
Style Panel Change each line’s color, width, transparency, dash/dot
🛠️ Best Practices
Works on any intraday timeframe (1‑min to 1‑hour).
Crypto or 24 h markets: adjust session times to match your exchange.
Combine with alerts (e.g., “price crossing RTH High”) for hands‑free monitoring.
Put KRHL on your chart and you’ll never wonder which high matters most again—because they’re all right there, clearly labeled and color‑coded. Trade breakouts or fades with confidence, armed with the exact market structure everyone else is watching.
Gold Opening 15-Min ORB INDICATOR by AdéThis indicator is designed for trading Gold (XAUUSD) during the first 15 minutes of major market openings: Asian, European, and US sessions. It highlights these key time windows, plots the high and low ranges of each session, and generates breakout-based buy/sell signals. Ideal for traders focusing on volatility at market opens.
Features:Session Windows:
Asian: 1:00–1:15 AM Barcelona time (23:00–23:15 UTC, CEST-adjusted).
European: 9:00–9:15 AM Barcelona time (07:00–07:15 UTC).
US: 3:30–3:45 PM Barcelona time (13:30–13:45 UTC).
Marked with yellow (Asian), green (Europe), and blue (US) triangles below bars.
High/Low Ranges:Plots horizontal lines showing the highest high and lowest low of each session’s first 15 minutes.Lines appear after each session ends and persist until the next day, color-coded to match the sessions.Breakout Signals:Buy (Long): Triggers when the closing price breaks above the highest high of the previous 5 bars during a session window (lime triangle above bar).Sell (Short): Triggers when the closing price breaks below the lowest low of the previous 5 bars during a session window (red triangle below bar).
Signals are restricted to the 15-minute session periods for focused trading.Usage:Timeframe: Optimized for 1-minute XAUUSD charts.Timezone: Set your chart to UTC for accurate session timing (script uses UTC internally, based on Barcelona CEST, UTC+2 in April).Strategy:
Use buy/sell signals for breakout trades during volatile market opens, with session ranges as support/resistance levels.Customization: Adjust the lookback variable (default: 5) to tweak signal sensitivity.Notes:Tested for April 2025 (CEST, UTC+2).
Adjust timestamp values if using outside daylight saving time (CET, UTC+1) or for different broker timezones.Best for scalping or short-term trades during high-volatility periods. Combine with other indicators for confirmation if desired.How to Use:Apply to a 1-minute XAUUSD chart.Watch for session markers (triangles) and breakout signals during the 15-minute windows.Use the high/low lines to gauge potential breakout targets or reversals.
Mon to Fri + LSE and NYSE📌 Highlight Custom Days & Market Hours Indicator 📌
🔹 Overview:
This script allows traders to visually highlight specific weekdays and market sessions directly on their TradingView charts. With customizable checkboxes, you can choose which days of the week to highlight, along with session times for the New York Stock Exchange (NYSE) and London Stock Exchange (LSE).
🔹 Features:
✅ Select individual weekdays (Monday–Friday) to highlight in blue
✅ Highlight NYSE open hours (2:30 PM – 9:30 PM UK time) in green
✅ Highlight LSE open hours (8:00 AM – 4:30 PM UK time) in orange
✅ Ensures NYSE & LSE sessions are only highlighted on weekdays (no weekends)
✅ Clean and simple visualization for enhanced market awareness
🔹 How to Use:
1️⃣ Add the indicator to your TradingView chart
2️⃣ Use the settings panel to enable/disable specific weekdays
3️⃣ Toggle NYSE or LSE session highlights based on your trading preference
🚀 Perfect for traders who follow institutional sessions and want better time-based confluence in their strategies!
Volume profile [Signals] - By Leviathan [Mindyourbuisness]Market Sessions and Volume Profile with Sweep Signals - Based on Leviathan's Volume Profile
This indicator is an enhanced version of Leviathan's Volume Profile indicator, adding session-based value area analysis and sweep detection signals. It combines volume profile analysis with market structure concepts to identify potential reversal opportunities.
Features
- Session-based volume profiles (Daily, Weekly, Monthly, Quarterly, Yearly)
- Forex sessions support (Tokyo, London, New York)
- Value Area analysis with POC, VAH, and VAL levels
- Extended level visualization for the last completed session
- Sweep detection signals for key value area levels
Sweep Signals Explanation
The indicator detects two types of sweeps at VAH, VAL, and POC levels:
Bearish Sweeps (Red Triangle Down)
Conditions:
- Price makes a high above the level (VAH/VAL/POC)
- Closes below the level
- Closes below the previous candle's low
- Previous candle must be bullish
Trading Implication: Suggests a failed breakout and potential reversal to the downside. These sweeps often indicate stop-loss hunting above key levels followed by institutional selling.
Bullish Sweeps (Green Triangle Up)
Conditions:
- Price makes a low below the level (VAH/VAL/POC)
- Closes above the level
- Closes above the previous candle's high
- Previous candle must be bearish
Trading Implication: Suggests a failed breakdown and potential reversal to the upside. These sweeps often indicate stop-loss hunting below key levels followed by institutional buying.
Trading Guidelines
1. Use sweep signals in conjunction with the overall trend
2. Look for additional confirmation like:
- Volume surge during the sweep
- Price action patterns
- Support/resistance levels
3. Consider the session's volatility and time of day
4. More reliable signals often occur at VAH and VAL levels
5. POC sweeps might indicate stronger reversals due to their significance as fair value levels
Notes
- The indicator works best on higher timeframes (1H and above)
- Sweep signals are more reliable during active market hours
- Consider using multiple timeframe analysis for better confirmation
- Past performance is not indicative of future results
Credits: Original Volume Profile indicator by Leviathan
Time Vertical LinesVLines - Time-Based Vertical Lines with Zones
This PineScript indicator creates vertical time lines with customizable zones between them. Perfect for marking trading sessions, key market times, or any time-based analysis.
Key Features:
- 5 configurable time lines
- 3 customizable zones (between lines 1-2, 2-3, and 4-5)
- Each zone features:
- Background shading
- Horizontal lines at high/low points
- Independent color controls
- Adjustable line styles and widths
- Time zone offset adjustment
- Option to show/hide historical lines
Installation Instructions:
1. Open TradingView's Pine Script Editor
2. Create a new script
3. Copy and paste the entire code
4. Add to Chart
Setup Guide:
1. Time Zone Adjustment:
- Find the "Time Zone Offset (Hours)" setting
- Adjust if lines appear at wrong times
- Example: If lines appear 3 hours early, set offset to 3
2. Basic Time Lines (1-3):
- Each line has settings for:
- Hour (0-23)
- Minute (0-59)
- Color
- Show/Hide toggle
3. Session Lines (4-5):
- Special lines typically used for session marking
- Same settings as basic lines
- Default red color to distinguish from other lines
4. Zone Customization:
Three separate zones are available:
- Zone 1-2 (between first and second lines)
- Zone 2-3 (between second and third lines)
- Zone 4-5 (between fourth and fifth lines)
Each zone can be customized with:
- Background color and transparency
- Horizontal line color
- Line style (Solid/Dashed/Dotted)
- Line width
- Individual show/hide toggles for zone and lines
5. Additional Settings:
- "Show Historical Lines" - toggle to show/hide lines on previous days
- Global line style and width settings for vertical lines
Suggested Uses:
1. Mark pre-market, market, and post-market sessions
2. Highlight specific trading windows
3. Track time-based support/resistance levels
4. Monitor price ranges during specific time periods
Tips:
- Start by setting just one zone to get familiar with the controls
- Use different colors for different sessions/time periods
- Adjust transparency to maintain chart visibility
- Use the show/hide toggles to focus on specific times
- The horizontal lines automatically mark the high/low range between time points
Asian Range IndicatorIndicator Name:
Asian Range Indicator
Description:
This TradingView indicator is designed to accurately detect the price range during the Asian session, based on our trading strategy. This range is crucial for planning trades in the European and American sessions. Using advanced algorithms, the indicator automatically identifies and plots the highs and lows within the Asian session period, highlighting them on the chart with shaded areas for clear visualization. This helps traders anticipate breakouts and set more precise entry and exit levels.
How to Use the Indicator:
Add the indicator to your TradingView chart.
Observe the shaded areas representing the Asian range.
Use these levels to plan your trades during the European and American sessions.
Combine with other technical indicators to confirm your trading decisions.
Chart:
The chart published with this script is clean and easy to understand, clearly showing the Asian range highlighted with shaded areas. No other scripts are included, ensuring the indicator's output is easily identifiable. The shaded areas contribute to the visual understanding of the Asian range, helping traders effectively use the script.
NDOG + ASIA CONFLUENCENDOG (New Day Opening Gap) Visualization:
The indicator identifies and visualizes New Day Opening Gaps (NDOGs), which are essentially the differences between the opening price of a new trading day and the closing price of the previous day.
For each NDOG identified, it creates a box on the chart that highlights the high and low price range of the NDOG.
The color of these boxes, as well as the number of NDOGs to be displayed, can be customized by the user.
Asia Session Highlighting:
The indicator includes a feature to highlight the Asia trading session, typically spanning from 18:00 to 00:00, but customizable to suit different time zones or preferences.
It does not dynamically calculate or display the Asia session but uses a fixed time input by the user.
The color for highlighting the Asia session can be chosen by the user.
Additional Lines on NDOGs:
The script draws horizontal lines at the high and low of each NDOG, spanning from 18:00 to 00:00, to visually represent the range of the NDOG during the Asia session.
The color of these lines can be customized.
Customizability:
The indicator provides various input options for users to customize the colors of the NDOG boxes and the lines that represent the high and low of the NDOGs.
Purpose and Usage:
This indicator is useful for traders who focus on price gaps between trading days and are particularly interested in the price action during the Asia trading session.
It helps in identifying potential zones of interest where significant price movements or trading activities could occur, especially at the opening of a new trading day.
JustaBox_NY_LexThis indicator marks two boxes around the opening hour of the chosen session(s). One around the highs and lows and one around the highest open/close and lowest open/close for that hour., its main purpose if for backtesting the DR/IDR strategy but is useful for live trading as it auto adds the boxes and STD levels. The buy and sell signals that show up are not meant for trade entries, they just give an idea of whether there was a signal that day which is a close above or below the IDR (inner box lines), from there loops are started and it tests which STD levels get hit or if the opposite end of the box is crossed it considers it a stop out and closes the loops. The data from these loops can be pulled to email and then excel using the alert system.
This is the first thing i've ever coded, I put alot of work into it but id recommend going thru a few days randomly and checking the data matches up as expected.
This indicator only pulls data from the NY session, I have two others of identical functionality, the only difference being they pull the data from the London and Tokyo sessions respectively, wanted to include all three in one but I reached a limit. Search JustaBox_LDN_Lex and JustaBox_TKO_Lex
When live, once the hour of the chosen session resolves it marks the DR and IDR lines onward for a few hours, adds a 0.5 retracement line in the middle and STD levels above and below at 0.5, 1, 1.5, 2, 2.5, & 3.
There are labels that can be turned off, they show the prices these lines are set at.
Read the tooltips in the menu for more information.
(Might be self explanatory when you pull it but I'll add a key here for the titles of the data(had to keep them short due to character limit) and explain how the test works in the next couple of days but quickly:
Each STD levels has a true, false or NaN state, if its a buy signal for the session the STD levels below the bottom DR are turned off and will return NaN, but if its a sell signal they'll return false if they don't get hit true if they do. Each level has a cross time this is a bar number, you also get a bar number for the last bar in the DR box and one for when you received the buy or sell signal, so you subtract one of these from the STD X number and it will give you number of bars since 10:30 for NY sess or from when you received signal. Multiply that number by 5 to get the number of minutes. Gives prices for boxes, open and close prices of first and last candles in box and price of the NY day open for all sessions)
DR/IDR V1Defining Range DR and Implied Defining Range IDR for regular Session and overnight Session
This script is showing the IDR and DR for the regular trading session and for the overnight session based on the rules from the creator of the DR/IDR concept.
It works for all major Forex Pairs, BTC, ETH and the US Equity indices. This concept is based on rules and has a 80 % probability to be correct.
It should be applied in the 5 Min. Timeframe.
The timings for the RDR are from 09.30 - 10.30 am New York local time.
The timings for the ODR are from 03.00 - 04.00 am New York local time.
Rules:
1. If price in the 5 Min timeframe closes above the DR high after 10.30 am or 04.00 am then the DR low will be with 80 percent probability the low of the trading session. This is called confirmation.
2. If price in the 5 Min timeframe closes below the DR low after 10.30 am or 04.00 am then the DR high will be with 80 percent probability the high of the trading session. This is called confirmation.
3. If price closes above the IDR high after 10.30 am or 04.00 am it is an early indication that the low of the DR will be the low of the day and vice versa.
Credits:
This script imports the recently published (VisibleChart) library containing functions that return values calculated from the range of visible bars on the chart.
bmistiaen helped me a lot with this script. Thank you a lot.
ICT Directional FVG Indicator (Buffered SL)This is the first indicator I have ever made, and I am very new to Pine Script. I’ve tried my best to create this as a strategy, but I’m still learning, so please be kind and constructive with your feedback!
ICT Directional FVG Indicator (Buffered SL)
This indicator is designed for traders who follow ICT (Inner Circle Trader) concepts, focusing on Fair Value Gaps (FVGs), liquidity sweeps, and session-based trading. It automatically detects bullish and bearish FVGs, highlights them on the chart, and identifies liquidity sweep events. The indicator features three customizable Kill Zones (London, New York, and Asia sessions), each with independent toggles and color-coded backgrounds for clear visual separation.
Key features:
Fair Value Gap Detection: Highlights bullish and bearish FVGs in real time.
Liquidity Sweep Alerts: Marks potential liquidity sweep events for both highs and lows.
Session Kill Zones: Toggle each Kill Zone (London, New York, Asia) independently; background color changes only in enabled zones.
Trade Signal Visualization: Plots entry, stop loss, and take profit levels based on FVG and sweep logic, with a user-defined stop loss buffer.
Customizable Display: Easily enable or disable FVGs, sweeps, trade levels, and each Kill Zone to suit your strategy.
This tool is ideal for ICT-based traders who want a clear, automated view of FVGs, sweeps, and session activity, with full control over which sessions and signals are displayed.
Mariam Market DashboardMariam Market Dashboard – A Quick Guide
Purpose:
Shows if the market is trending, volatile, or stuck so you can decide when to trade or wait.
How to Use
Add the indicator to your chart. Adjust basic settings like EMA, RSI, ATR lengths, and timezone if needed. Use it before entering any trade to confirm market conditions.
What Each Metric Means (with general ranges)
Session: Identifies which market session is active (New York, London, Tokyo).
Trend: Shows current market direction. “Up” means price above EMA and VWAP, “Down” means price below. Use this to confirm bullish or bearish bias.
HTF Trend: Confirms trend on a higher timeframe for stronger signals.
ATR (Average True Range): Measures market volatility or price movement speed.
Low ATR (e.g., below 0.5% of price) means quiet or slow market; high ATR (above 1% of price) means volatile or fast-moving market, good for active trades.
Strong Bar: A candlestick closing near its high (above 75% of range) indicates strong buying momentum; closing near its low indicates strong selling momentum.
Higher Volume: Volume higher than average (typically 10-20% above normal) means more market activity and stronger moves.
Volume / Avg Volume: Ratio above 1.2 (120%) shows volume is significantly higher than usual, signaling strong interest.
RVol % (Relative Volume %): Above 100% means volume is hotter than normal, increasing chances of strong moves; below 50% means low activity and possible indecision.
Delta: Difference between buying and selling volume (if available). A positive delta means buyers dominate; negative means sellers dominate.
ADX (Average Directional Index): Measures trend strength:
Below 20 means weak or no trend;
Above 25 means strong trend;
Between 20-25 is moderate trend.
RSI (Relative Strength Index): Momentum oscillator:
Below 30 = oversold (potential buy);
Above 70 = overbought (potential sell);
Between 40-60 means neutral momentum.
MACD: Confirms momentum direction:
Positive MACD histogram bars indicate bullish momentum;
Negative bars indicate bearish momentum.
Choppiness Index: Measures how much the market is ranging versus trending:
Above 60 = very choppy/sideways market;
Below 40 = trending market.
Consolidation: When true, price is stuck in a narrow range, signaling indecision. Avoid breakout trades during this.
Quick Trading Reminder
Trade only when the trend is clear and volume is above average. Avoid trading in low volume or choppy markets.
Functionally Weighted Moving AverageOVERVIEW
An anchor-able moving average that weights historical prices with mathematical curves (shaping functions) such as Smoothstep , Ease In / Out , or even a Cubic Bézier . This level of configurability lends itself to more versatile price modeling, over conventional moving averages.
SESSION ANCHORS
Aside from VWAP, conventional moving averages do not allow you to use the first bar of each session as an anchor. This can make averages less useful near the open when price is sufficiently different from yesterdays close. For example, in this screenshot the EMA (blue) lags behind the sessionally anchored FWMA (yellow) at the open, making it slower to indicate a pivot higher.
An incrementing length is what makes a moving average anchor-able. VWAP is designed to do this, indefinitely growing until a new anchor resets the average (which is why it doesn't have a length parameter). But conventional MA's are designed to have a set length (they do not increment). Combining these features, the FWMA treats the length like a maximum rather than a set length, incrementing up to it from the anchor (when enabled).
Quick aside: If you code and want to anchor a conventional MA, the length() function in my UtilityLibrary will help you do this.
Incrementing an averages length introduces near-anchor volatility. For this reason, the FWMA also includes an option to saturate the anchor with the source , making values near the anchor more resistant to change. The following screenshot illustrates how saturation affects the average near the anchor when disabled (aqua) and enabled (fuchsia).
AVERAGING MATH
While there's nothing special about the math, it's worth documenting exactly how the average is affected by the anchor.
Average = Dot Product / Sum of Weights
Dot Product
This is the sum of element-wise multiplication between the Price and Weight arrays.
Dot Product = Price1 × Weight1 + Price2 × Weight2 + Price3 × Weight3 ...
When the Price and Weight arrays are equally sized (aka. the length is no longer incrementing from the anchor), there's a 1-1 mapping between Price and Weight indices. Anchoring, however, purges historical data from the Price array, making it temporarily smaller. When this happens, a dot product is synthesized by linearly interpolating for proportional indices (rather than a 1-1 mapping) to maintain the intended shape of weights.
Synthetic Dot Product = FirstPrice × FirstWeight + ... MidPrice × MidWeight ... + LastPrice × LastWeight
Sum of Weights
Exactly what it sounds like, the sum of weights used by the dot product operation. The sum of used weights may be less than the sum of all weights when the dot product is synthesized.
Sum of Weights = Weight1 + Weight2 + Weight3 ...
CALCULATING WEIGHTS
Shaping functions are mathematical curves used for interpolation. They are what give the Functionally Weighted Moving Average its name, and define how each historical price in the look back period is weighted.
The included shaping functions are:
Linear (conventional WMA)
Smoothstep (S curve)
Ease In Out (adjustable S curve)
Ease In (first half of Ease In Out)
Ease Out (second half of Ease In Out)
Ease Out In (eases out and then back in)
Cubic Bézier (aka. any curve you want)
In the following screenshot, the only difference between the three FWMA's is the shaping function (Ease In, Ease In Out, and Ease Out) illustrating how different curves can influence the responsiveness of an average.
And here is the same example, but with anchor saturation disabled .
ADJUSTING WEIGHTS
Each function outputs a range of values between 0 and 1. While you can't expand or shrink the range, you can nudge it higher or lower using the Scalar . For example, setting the scalar to -0.2 remaps to , and +0.2 remaps to . The following screenshot illustrates how -0.2 (lightest blue) and +0.2 (darkest blue) affect the average.
Easing functions can be further adjusted with the Degree (how much the shaping function curves). There's an interactive example of this here and the following illustrates how a degrees 0, 1, and 20 (dark orange, orange, and light orange) affect the average.
This level of configurability completely changes how a moving average models price for a given length, making the FWMA extremely versatile.
INPUTS
You can configure:
Length (how many historical bars to average)
Source (the bar value to average)
Offset (horizontal offset of the plot)
Weight (the shaping function)
Scalar (how much to adjust each weight)
Degree (how much to ease in / out)
Bézier Points (controls shape of Bézier)
Divisor & Anchor parameters
Style of the plot
BUT ... WHY?
We use moving averages to anticipate trend initialization, continuation, and termination. For a given look back period (length) we want the average to represent the data as accurately and smoothly as possible. The better it does this, the better it is at modeling price.
In this screenshot, both the FWMA (yellow) and EMA (blue) have a length of 9. They are both smooth, but one of them more accurately models price.
You wouldn't necessarily want to trade with these FWMA parameters, but knowing it does a better job of modeling price allows you to confidently expand the model to larger timeframes for bigger moves. Here, both the FWMA (yellow) and EMA (blue) have a length of 195 (aka. 50% of NYSE market hours).
INSPIRATION
I predominantly trade ETF derivatives and hold the position that markets are chaotic, not random . The salient difference being that randomness is entirely unpredictable, and chaotic systems can be modeled. The kind of analysis I value requires a very good pricing model.
The term "model" sounds more intimidating than it is. Math terms do that sometimes. It's just a mathematical estimation . That's it. For example, a regression is an "average regressing" model (aka. mean reversion ), and LOWESS (Locally Weighted Scatterplot Smoothing) is a statistically rigorous local regression .
LOWESS is excellent for modeling data. Also, it's not practical for trading. It's computationally expensive and uses data to the right of the point it's averaging, which is impossible in realtime (everything to the right is in the future). But many techniques used within LOWESS are still valuable.
My goal was to create an efficient real time emulation of LOWESS. Specifically I wanted something that was weighted non-linearly, was efficient, left-side only, and data faithful. Incorporate trading paradigms (like anchoring) and you get a Functionally Weighted Moving Average.
The formulas for determining the weights in LOWESS are typically chosen just because they seem to work well. Meaning ... they can be anything, and there's no justification other than "looks about right". So having a variety of functions (aka. kernels) for the FWMA, and being able to slide the weight range higher or lower, allows you to also make it "look about right".
William Cleveland, prominent figure in statistics known for his contributions to LOWESS, preferred using a tri-cube weighting function. Using Weight = Ease Out In with the Degrees = 3 is comparable to this. Enjoy!
Opening Range and Market BoundariesOpening Range and Market Boundaries
This versatile and insightful indicator combines two powerful concepts frequently used by professional traders: Opening Range Analysis and Market Boundaries derived from previous high/low levels. It is specifically designed to support intraday trading strategies and helps you identify key price zones for entries, exits, and breakout confirmations.
🔍 Features & Utility
1. Opening Range Box
What it does:
Highlights the high and low of the first candle after market open (9:15 AM IST) with a shaded box. This box spans the full trading session, from 9:15 AM to 3:30 PM, representing the key price range where the initial balance is formed.
Timeframe Compatibility:
The Opening Range box is optimized for 1-minute to 1-hour charts. It is most effective on lower timeframes (1m, 5m, 15m, 30m) where intraday price movements and breakout patterns can be clearly observed.
Usage Tips:
Breakouts above or below the Opening Range box can signal potential directional bias for the rest of the trading day.
Price consolidating within the range may indicate a choppy or range-bound session.
Works well with volume and momentum indicators for confirmation.
2. Market Boundaries
What it does:
Plots horizontal lines at:
Previous Day High/Low
Previous Week High/Low
Previous Month High/Low
Why it matters:
These levels act as natural support and resistance zones, and are commonly watched by institutional traders, making them crucial for:
Spotting reversals or breakouts
Planning stop-loss and target zones
Avoiding trades around high-rejection areas
Customization Options:
Toggle ON/OFF for Daily, Weekly, and Monthly levels.
Independent colors and line thickness for each level, enabling you to distinguish between different timeframes easily.
🛠️ How to Use Effectively
Use during market open:
Switch to a 5-minute or 15-minute chart during the first few candles of the session. Observe the Opening Range box formation and plan trades based on breakout direction.
Confluence Trading:
Look for price action near previous session highs/lows in confluence with the Opening Range box edges. These intersections often become high-probability zones for breakouts or reversals.
Session Preparation:
Before the market opens, analyze where the price is relative to past high/low boundaries. If it's near a weekly/monthly level, be cautious — those areas can cause whipsaws or false breakouts.
Avoid low-volume breakouts:
Use this indicator in conjunction with volume tools or price action confirmation to validate the strength of a move outside the Opening Range or Market Boundaries.
📌 Summary
This indicator is designed for intraday traders, scalpers, and swing traders who want a reliable structure to guide their decisions. It visually marks the opening balance of the market and essential higher timeframe boundaries, helping you trade with discipline and precision.