Day's First Candle High & Low and + or - 10 pointThis code is an indicator that calculates and plots the high and low of the first candle of the day, along with parallel lines. The purpose of the indicator is to help traders identify potential support and resistance levels for the day.
The code checks if a new day has started and, if so, calculates the high and low of the first candle of the day. It then plots the high and low as well as parallel lines that are 200 ticks (10 points) above and below the first candle's high and low, respectively.
The resulting plot shows the first candle's high and low, as well as the upper and lower boundaries that may act as support and resistance levels throughout the trading day.
Educational
Session Filter [Trendoscope]🎲 Session Filter: A Customisable Trading Indicator for Defining Preferred Trade Sessions
Session Filter is a simple trading indicator that enables traders to define their preferred trading sessions and optimise their approach based on individual preferences. By providing a range of flexible customisation options, Session Filter can help traders reduce risk, increase accuracy, by helping them to adhere to their trading sessions. Features include
🎯 Customisable Trading Sessions
One of the key features of Session Filter is the ability to select from four different trading sessions. These sessions are designed to be flexible, making it easy to tailor your approach to specific markets, assets, and trading styles. By selecting the sessions that are most relevant to your strategy, you can reduce the risk of making trades during less favourable market conditions.
For example, if you prefer to trade during the Asian session, you can set the session times to "Asian Session" in input settings. This will highlight the specific times when the Asian markets are open, allowing you to focus your trading activity during these periods. By doing so, you can avoid trading during times when the market is less active or more volatile.
🎯 Customisable Timezone and Days of the Week:
In addition to customisable trading sessions, Session Filter also allows users to select a timezone and specific days of the week. This ensures that the displayed trading zones and signals are aligned with your local time, and that you can tailor your approach to your preferred schedule. This is particularly useful for traders who have other commitments, or who prefer to focus on specific markets or assets on certain days.
For example, if you are based in New York and prefer to trade during the European session, you can select the "European Session" option in Session Filter and adjust the timezone to reflect your local time. You can also select specific days of the week when you prefer to trade during the European session, such as Tuesday through Thursday. This allows you to optimize your approach based on your personal preferences and schedule.
🎯 Easy Visual Interpretation:
Session Filter uses green and red overlays on the chart to indicate the trading zones, making it easy for users to visually identify their trading sessions
For example, when a green overlay is displayed on the chart, this indicates that the market is within the selected trading session and that it may be a good time to start trade. Conversely, when a red overlay is displayed, this indicates that the market is outside of the selected trading session and that it may be a good time close all trading. By providing this visual feedback, Session Filter helps traders stay focused and disciplined, and avoid making impulsive trading decisions.
🎯Force Exit Signal for Risk Management:
Session Filter also offers the ability to generate a force exit signal when not in any of the selected sessions. This can be used in conjunction with alerts to exit all trades outsize session zone.
For example, if you are using Session Filter to trade during the European session, but the market is particularly volatile during a specific day, the force exit signal will be generated to indicate that it may be a good time to exit your trade. This helps you avoid potential losses and stay disciplined during periods of market turbulence.
🎯External Signal Plots:
In addition to the chart overlays, Session Filter also plots signals on the data window that can be used as external inputs in other indicators and strategies. This feature allows traders to incorporate the signals generated by Session Filter into their existing trading systems and this can be used as additional filters on an existing strategy or methodology.
🎯Alerts using Alert Conditions
Alerts are provided for start and end of session so that users can make use of it to set auto turn on or off their bots.
Settings are pretty simple and are explained here.
Swing Data - ADR% / RVol / PVol / Float % / Avg $ VolThis table presents consolidated data that swing traders can refer to quickly for their benefit. I am of the firm belief that the information provided in this uncomplicated table is precisely what you require to optimize your trading efficiency, and ultimately, profitability.
The data includes;
1. Market Capitalization - a measure of the total value of a publicly traded company's outstanding shares.
2. Float % - the percentage of a company's outstanding shares that are available for trading on the open market. It is calculated by dividing the number of a company's outstanding shares that are available for trading on the open market by the total number of outstanding shares. A lower float percentage generally means that there are fewer shares available for trading, which can lead to increased volatility in the stock price. On the other hand, a higher float percentage generally means that there are more shares available for trading, which can lead to greater stability in the stock price.
3. ADR% - a technical analysis indicator that measures the average daily price movement as a percentage of its current price. It is calculated by taking the difference between the average high and low prices for a time period, and then dividing it by the current price. The resulting value is then multiplied by 100 to give the ADR% for that day. The ADR% can be useful for traders to assess the potential volatility of a stock. A higher ADR% indicates a greater potential for price movement.
4. ATR - measures the range of price movements of an asset over a specified period of time, taking into account any gaps in price. It is calculated by taking the highest value of the following three values:
The difference between the current high and the current low
The absolute value of the difference between the current high and the previous close
The absolute value of the difference between the current low and the previous close
The resulting value is then averaged over the specified period of time to create the ATR value. This indicator is reflects the average volatility of the asset over the specified period of time.
5. LoD dist. - also refer to Low Of Day distance, a range level gauge of current price based on historical volatility of the price movement, in this case I use ATR. for the historical volatility. Please find below as example for the calculation.
eg. LoD dist. = 104%
Current price (A) = $24.49
Low Price (B) = $22.16
Difference (A) - (B) = $2.33
ATR = $2.25
LoD dist = $2.33 / $2.25 = 103.55% (round up to nearest whole number = 104%)
6. Average Daily $ Volume - used to measure the average amount of money that is traded in a stock or a security over a particular period of time, typically a day. It is calculated by multiplying the average daily trading volume of a security by its average price.
7. Average Daily Volume - used to measure the average no. of share that is traded in a stock or a security over a particular period of time, typically a day.
8. Projected Volume - an estimate of the total volume of trading activity that is expected to occur for the day (from the specific time data), based on an average volume over a specific period of time. Projected volume can be used by traders and investors to help make informed decisions about buying or selling securities, and can also be used as an indicator of market sentiment and volatility. However, it's important to note that projected volume is an estimate and actual trading activity may vary.
9. Relative Volume - a measure of the volume of a stock that is trading at the specific time, relative to its average trading volume over a longer period. It is expressed as a percentage and is often used by traders and investors to identify stocks that are trading with higher or lower than usual volume.
Risk Reward Calculator [lovealgotrading]
OVERVIEW:
This Risk Reward Calculator strategy can help you maximize your RR value with help of algorithmic trading.
INDICATOR:
I wanted to setup my trades more easier with this indicator, I didn't want to calculate everytime before orders, with help this indicator we can calculate R:R value, avarage price, stoploss price, take-profit price, order prices, all position cost and more ...
Our strategy is a risk revard calculation indicator that is made easy to use by using visualized lines and panels, and also has algorithmic trading support.
With the help of this indicator, we can quickly and easily calculate our risk reward values and enter the positions.
If we want to ensure that our balance grows regularly while trading in the stock market, we need to manage the risks and rewards otherwise we may fall below our initial balance at the end of the day, even if we seem to be winning.
What is the Risk-Reward value ?
This value is a value that shows how many times the amount of risk we take when entering the position is successful, we will earn.
- For example, you risked $100 while entering the trade, so if your trade stops, you will lose 100 $.
Your Risk-Reward(RR) value is 2 means that if your position is successful, you will have 200 $ in your pocket.
A trader's success is determined by the amount of R he earns monthly or yearly, not how much money he makes.
What is different in this indicator ?
I want to say thank you to © EvoCrypto. His Calculator (weighted) – evo indicator helped me when I was developed my indicator.
I want to explain what I have improved:
1-In this strategy, we can determine the time period in which we want to open our positions.
2-We can open a maximum of 4 positions in the same direction and close our positions at a single level. StopLoss or TakeProfit
3-This indicator, which works in the form of a strategy, shows where our positions have been opened or closed. With the help of this, it helps us to determine our strategy in our future positions more accurately.
4-The most important improvement is that we do not miss our positions with the help of alarms (WEB HOOK). if we want, we receive by quickly connecting all these positions to our robot, the software can enter and exit the position while we are busy.
IMPLEMENTATION DETAILS – SETTINGS:
1 - We can set the start and end dates of the positions we will take.
2- We can set our take profit, stoploss levels.
3- If your trade is stopped, we can determine the amount of the trade that we will lose.
4- We can adjust our entry levels to positions and our position sizes at entry levels.
(Sum of positions weight must be 100%)
5- We can receive our positions even if we are busy with the help of algorithmic trading. For this, we must paste our Jshon codes into the fields specified in the settings panel.
6- Finally, we can change the settings we want and don't want to have in our visual elements.
Let's make a LONG side example together
We have determined our positions to enter stoploss, take profit and long positions. We did not forget to set the start time of our strategy
Our strategy appear on the graph as follows.
Our strategy has calculated the total position size, our R-R value, the distance of the current price to the stop and take profit levels, in short, a lot of things we could look visually.
Notes:
If you're going to connect this bot to an automatic Long or Short direction,
Don’t forget! you need to Webhook URL,
Don’t miss paste this code to your message window {{strategy.order.alert_message}}
ALSO:
If you have any ideas what to add to my work to add more sources or make calculations cooler, feel free to write me.
Dynamic Stop Loss DemoWhat does this script do ?
This script is for pine script programmers and explains how to implement a dynamic stop-loss strategy. It is different from trailing stop-loss. Trailing stop-loss can only set the retracement value, but this script can take profit on part of the position at a fixed price and allows users to decide whether to take profit on all positions based on whether a certain track is breached or other conditions author want. In this demo, it use rsi crossover and crossunder to decide the strategy condition, and use close price as open price, and use lowest low / highest high as stop price, and use 1.5 risk ratio to calculate the fixed first profit price. It will take 50% position size when the first profit price was reached. Then it will close all rest positions when the inverse condition come out or the dynamic stop(calculated by ATR) breached or when the price back to the open price or the stop price.
How is this script implemented
When start strategy by strategy.entry , it gives a custom id which contains direction, openPrice, stopPrice, profitPrice, qty, etc. It can be get from the global variable strategy.posiition_entry_name .
Simple ICT Market Structure by toodegreesThis Simple ICT Market Structure is based on the teachings of ICT, specifically in his episode 12 of the Public 2022 Mentorship.
The only omission here is the peculiar calculation of Intermediate Term points, for which I am not using the concept of repricing imbalances – this can be added later!
Feel free to use this tool, however it is quite simple and market structure is something we all know very well how to spot. In my opinion it is helpful to display the long term swing points to identify more mature pools of liquidity.
The reason for coding this tool is to help new coders understand PineScript (I have a video tutorial where I code this from start to finish), as well as fostering some algorithmic thinking in your trading of ICT Concepts and Algorithmic Delivery.
If you have any questions about the code, shoot me a message!
Hope you learn something and GLGT!
3D BowlingIntroducing the "3D Bowling Game" – a fun and interactive demo scene project in Pine Script, powered by a custom 3D engine! This bowling game showcases the potential of Pine Script for developing engaging and immersive experiences, even within the confines of a trading platform.
To play the game, you'll first be prompted to choose where you want to throw the ball. Next, you'll be asked to draw a line indicating the direction you want the ball to go. Sit back and enjoy as the game takes care of the rest!
The source code features various sections, including:
Types and helper functions to manipulate vectors, matrices, and angles
Routines for calculating cross products, dot products, and vector normalization
Transformation matrices for rotation and scaling
Functions for perspective transformation, mesh transformations, and face normal calculations
Culling and shading algorithms to provide a more realistic visual experience
The project's source code is an excellent starting point for anyone interested in exploring the capabilities of Pine Script beyond the typical trading indicators and strategies. The 3D Bowling Game demonstrates the flexibility of Pine Script and its potential for creating interactive experiences in a seemingly unconventional environment.
So, what are you waiting for? Dive into the source code, tweak it to your liking, or build upon it to create your own interactive 3D experiences. Enjoy the game, and happy coding!
With light. I will say there is an issue with the fact that you cant draw as may linefills as you can lines.
TradeBee Percent Gap AlertA simple script to enable adding a trigger when a stock reaches 'X' percent, the 'X' can be configured.
The script also displays current tickers gap %, this is particularly helpful when you have 2 or more panels on a chart
Strategy DesignerHello traders.
Thanks to the tool I have published, everyone who knows or does not know coding will be able to create strategies and see the results instantly on the screen. Yes it looks very nice :)
What does this script do?
Thanks to this tool, even if you don't know any coding, you will be able to create your own strategies. You can add and remove indicators.
Entrance
The first thing you need to do is to set a strategy in your mind.
Then you need to adjust the settings of the indicators installed in the system. Please set the indicators first, because later they are forgotten.
The screen for entering the parameters of the indicators will be as follows.
After entering the parameters there is an important part . In this section, we can adjust the strategy settings.
First we choose between which dates we want the strategy to run. We then choose whether we want the strategy results to be displayed in a table or not.
We choose how the Terms should be linked together. For example, if you have a condition that is expected to produce more than one receive signal, select whether these conditions are connected to each other with and or with the connector.
In this way, you can determine whether all or any of the rules in your strategy should apply.
Next, we choose whether our strategy will work in the spot market or in a bidirectional market. Yes, you can design a strategy for both spot and bidirectional trades :)
At the bottom of the above image, we see a screen where we can adjust the stop level and tp level. As a standard, adjustments are made according to the percentage level you enter. However, if you remove the tick next to the percent sign, the previous stop level and the next profit level are determined as much as the value you entered.
At the bottom is the trailing stop. When you open the trailing stop, the trailing stop becomes active in your strategy.
Very important, when the trailing stop and the stop are active at the same time, the trailing stop value is valid.
It's time to design our strategy. Each chapter that begins with an exclamation point is a separate fiction.
If you do not mark the Active button, that condition will not be included in the calculation.
Direction = It is the direction for which the fiction in this region is valid.
We came to the indicator setting screen. Here, there is a screen where we can select two different indicators on the right and left.
We choose the first indicator starting with 1.
Then we choose from the middle region how we want these two indicators to interact.
We choose our second indicator from the place starting with 2.
If you want an indicator to interact with any value, tick the box where it says Value and fill in the value in the blank. When Value is ticked, the second indicator does not work.
Educational Strategy : TRIPLE DRAG-ON SYSTEM V.1The Triple Dragon System is a technical trading strategy that uses a combination of three different indicators to identify potential buy and sell signals in the market. The three indicators used in this strategy are the Extended Price Volume Trend (EPVT), the Donchian Channels, and the Parabolic SAR. Each of these indicators provides different types of information about the market, and by combining them, we can create a more comprehensive trading system.
The EPVT is used to identify potential trend changes and measure the strength of a trend. The Donchian Channels are used to identify the direction of the trend, while the Parabolic SAR is used to provide additional confirmation of trend changes and help determine potential entry and exit points.
In this strategy, we first use the EPVT and Donchian Channels to identify the direction of the trend. When the EPVT is above its baseline and the price is above the upper Donchian Channel, it suggests an uptrend. Conversely, when the EPVT is below its baseline and the price is below the lower Donchian Channel, it suggests a downtrend.
Once we have identified the trend direction, we use the Parabolic SAR to help determine potential entry and exit points. When the Parabolic SAR is below the price and flips to above the price, it suggests a potential buy signal. Conversely, when the Parabolic SAR is above the price and flips to below the price, it suggests a potential sell signal.
To further refine our trading signals, we use multiple timeframes to confirm the trend direction and ensure that we are not entering the market during a period of high volatility. We also use multiple take-profit levels to lock in profits and manage risk.
Overall, the Triple Dragon System is a comprehensive technical trading strategy that combines multiple indicators to provide clear entry and exit signals. By using a combination of trend-following and momentum indicators, we can identify potential trading opportunities while minimizing risk. Please note that this strategy is for educational purposes only and should not be taken as financial advice.
Custom Trading Session HighlighterThe Custom Trading Session Highlighter is a simple yet powerful indicator that allows you to visualize specific trading sessions on your chart by highlighting the background within the specified time range. This indicator can be helpful for traders who want to focus on specific market hours or analyze the market behavior during certain time periods.
Features:
>Customizable start and end times: Input your desired trading session start and end times using the format "HHMM" (e.g., "0930" for 9:30 AM). The indicator allows you to select the time range in 30-minute intervals.
>Trading session background color: The specified trading session will be highlighted with a semi-transparent green color, making it easy to differentiate the session from the rest of the chart.
>Overlay: The indicator overlays on the price chart, so it doesn't take up any additional space on your screen.
How to use:
>Add the Custom Trading Session Highlighter to your chart.
>Configure the start and end times of the session you want to highlight using the input fields in the indicator settings.
>Observe the highlighted trading session on your chart to analyze market behavior within that specific time range.
Multi-Time Period Chart[1] 3 overlays w/ Halfbacks These are 3 High-Low ranges that uses the code of TradingView's built-in Multi-Time Period Chart indicator as well as adds on optional midpoint (or "halfback") to the overlays. Finally, there are labels offset on the right margin that indicate the open price for each of those timeframes. One thing I adjusted is that range of each timeframe is omitted. This is because the original TV indicator's boxes have their right edge completely covering the wicks (Thus, the title for this indicator). This script has plenty of utility, but it designed specifically with the STRAT (Rob Smith) methodology in mind.
Sessions Indicator [CodeDNL]A sessions indicator that doesn't cover the whole trading screen, and continues into the future.
Made to be easier on the eyes than existing solutions.
Murder Algo Stats: last portion of Indices closing hour (S&P)Stats regarding the 'murder algo' (last 10mins of the closing hour). Works on all sub-1hr timeframes. Best used on 5min, 10min 15min timeframe. Ideal use on 10min timeframe.
Can be applied to other user input sessions also
What i'm calling the 'Murder Algo' is the tendency of dynamic lower time frame price action in the final 10minutes of the S&P closing hour (or any of the three major US indices: S&P, Nasdaq, Dow).
If there are un-met liquidity targets (i.e. clean highs or lows) as we come into the last portion of the closing hour, price has a tendency to stretch up or down to reach these targets, swiftly.
These statisitics are somewhat experimental/research; trying to quantify this tendency. Please comment below if you think of some additions / modifications that may prove useful.
//Purpose:
-To get statistics of the tendency to 'reach' of the final bar (10minute bar in the above) of the closing hour in Indices (3pm - 4pm NY time).
-Specifically to see how often price reaches for HH or LL in the final bar of the closing hour (most of the time); and to see how far it reaches one way when it does (Mean, median, mode).
//Notes:
-Two sets of historical stats; one is based on the 'solo reach' of the last bar; the other is based on the reach of the last bar from the average price of the preceding bars of the session (purple line in the above)
-Works on any timeframe below hourly. Ideally used on 10min timeframe, but may be interesting to plot on 15min or 5min timeframe also.
-Should also work on custom user-defined session; though this indicator was explicly designed to investigate the 'murder algo': that final rush and/or whipsaw tendency of price in the last few minutes of Regular trading on Indices.
-For S&P, best used on SPX, which gives the longest history of all the S&P variants due to only showing Regular trading hours bars (500 days of history on 10min timeframe, for premium users)
-For most stats, i've rounded to ES1! mintick (i.e. rounded to nearest quarter dollar) =>> This allows more meaningful values for 'mode' statistical measure.
-I trade S&P; but this 'muder algo' phenomenon also obviously presents in Nasdaq and Dow.
//User Inputs:
-Session time input (defaults to closing hour 3pm - 4pm NY time)
-Average method (for the average of all the input session EXCEPT the final bar)
-Toggle on/off Average line.
-other formatting options: text color, table position, line color/style/size.
Example usage with annotations on SPX 500 chart 15m timeframe; using closing hour (3pm-4pm NY time) as our session:
Papercuts Price Distance TravelledPapercuts Price Distance Travelled
aka
Maximum Per-Share Profit Potential
For: Intraday swing and scalp Traders.
This is a simple idea i wanted to explore where you could visualize the data of how much a price actually moves during the day.
Measuring through Daily ATR is helpful, but it only measures OHLC of the day, and way more tradeable movement happens than that.
So this measures movement a different way to increase perspective and awareness of price action.
Its like taking a pleated filter and unpleating it, which reveals a way longer structure.
It does this by aggregating the path of travel of an RSVAEMA (Relative Strength Volume Adjusted EMA) and returns the absolute value of its results.
Then it resets this daily, and returns the peak into an array that gets averaged.
This is helpful for seeing how normal or abnormal a days move might actually be. Many days feel extreme, but they are not, and vice versa.
This can be utilized to see how much movement actually happens at different levels. TSLA on 5m is an average daily movement of around 20$, but TSLA 15sec chart shows an average movement of around 100$. Pretty insane.
Arbitrage SpreadThis indicator helps to find spreads between cryptocurrencies, assess their correlation, spread, z score and atr z score.
The graphs are plotted as a percentage. Because of the limitation in pine tradingview for 5000 bars a period was introduced (after which a new starting point of the graph construction will be started), if you want it can be disabled
The multiplier parameter affects only the construction of the joint diagram on which z score and atr z score are calculated (construction of the diagram is done by dividing one pair by another and multiplying by the multiplier parameter) is shown with a red line
To create a notification you have to specify the data for parameters other than zero which you want to monitor. For parameters z score and atr z score data are counted in both directions
The data can be tracked via the data window
Link to image of the data window prnt.sc
Rounded Forex Levels: Big-Figure, Mid-Figure, 80-20 levels, BFRNSimple indicator to show Rounded levels in typical Forex pairs: Big figure, Mid-figure, 80-20 Insitutional Levels, 10pip levels, 5pip levels
Wrote this indicator because other ones out there seem to clutter the chart. This is simple, low-clutter and can be set by user to have arbitrary start and end points for the lines.
I wanted the ability for lines to plot discreetly to the right hand side of price as in the chart above, since in my opinion, these are only of secondary consideration to a trader, an extra confirmation/confluence to an existing idea.
//Purpose & Usage:
-Big-figure levels (100pips) & Mid-figure levels (50pips) will have a senstitivity to price, that can be an additional tool when looking for confluence for a target or an entry.
-As well as BF levels and MF levels; Institutional levels (20pips below and 20 pips above a Big Figure level) and standard 10pip or 5pip levels, can be useful in the right context (i.e added confirmation that of a minor sweep target; added conviction in an idea if the level aligns with another seperately derived level).
//User inputs:
-Toggle on/off each of the types of level.
-Line spacing: choose pip spacing of lines .
-Number of lines above/below (i.e. setting of 5 will be 11 lines. One central, 5 above, 5 below).
-Formatting: for each class of lines, code by color, style and width (as per the example chart below).
-Line start offset and line end offset: bars forward/back for each of start point and end point. So lines could be spread right across chart; or neatly pushed to the far right or left of the chart.
//Notes:
-Designed for typical Forex pairs with units close to 1.0 (like Eur/Usd, Usd/Cad, Aud/Usd, Gbp/Usd, Eur/Gbp, Nzd/Usd).
-Lines are based from the rounded close of the previous bar, Updating (if applicable) on each new bar.
Demo Plotting levels in the past; Dialog box example display:
Inversion GapsAn inverted fair value gap (FVG) occurs when candles start closing below a bullish FVG or above a bearish FVG and in this case, support FVGs become resistances and vice versa. This is a smart money concept introduced by ICT. While we a number of have indicators for FVGs, we don't have any for inversion FVGs. This indicator is just for that - it shows FVGs only after they're inverted.
The meat of it comes from being able to plot HTF inverted FVGs in LTF. In the above BTC chart, you can see M15 inverted FVGs plotted on M1 chart and you can see price respecting them. Mitigations can also be shown as lines (as you can see in the chart).
You can also setup alerts for formation and mitigation of such inversion FVGs.
ICT Concepts [LuxAlgo]The ICT Concepts indicator regroups core concepts highlighted by trader and educator "The Inner Circle Trader" (ICT) into an all-in-one toolkit. Features include Market Structure (MSS & BOS), Order Blocks, Imbalances, Buyside/Sellside Liquidity, Displacements, ICT Killzones, and New Week/Day Opening Gaps.
🔶 SETTINGS
🔹 Mode
When Present is selected, only data of the latest 500 bars are used/visualized, except for NWOG/NDOG
🔹 Market Structure
Enable/disable Market Structure.
Length: will set the lookback period/sensitivity.
In Present Mode only the latest Market Structure trend will be shown, while in Historical Mode, previous trends will be shown as well:
You can toggle MSS/BOS separately and change the colors:
🔹 Displacement
Enable/disable Displacement.
🔹 Volume Imbalance
Enable/disable Volume Imbalance.
# Visible VI's: sets the amount of visible Volume Imbalances (max 100), color setting is placed at the side.
🔹 Order Blocks
Enable/disable Order Blocks.
Swing Lookback: Lookback period used for the detection of the swing points used to create order blocks.
Show Last Bullish OB: Number of the most recent bullish order/breaker blocks to display on the chart.
Show Last Bearish OB: Number of the most recent bearish order/breaker blocks to display on the chart.
Color settings.
Show Historical Polarity Changes: Allows users to see labels indicating where a swing high/low previously occurred within a breaker block.
Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.
Change in Order Blocks style:
🔹 Liquidity
Enable/disable Liquidity.
Margin: sets the sensitivity, 2 points are fairly equal when:
'point 1' < 'point 2' + (10 bar Average True Range / (10 / margin)) and
'point 1' > 'point 2' - (10 bar Average True Range / (10 / margin))
# Visible Liq. boxes: sets the amount of visible Liquidity boxes (max 50), this amount is for Sellside and Buyside boxes separately.
Colour settings.
Change in Liquidity style:
🔹 Fair Value Gaps
Enable/disable FVG's.
Balance Price Range: this is the overlap of latest bullish and bearish Fair Value Gaps.
By disabling Balance Price Range only FVGs will be shown.
Options: Choose whether you wish to see FVG or Implied Fair Value Gaps (this will impact Balance Price Range as well)
# Visible FVG's: sets the amount of visible FVG's (max 20, in the same direction).
Color settings.
Change in FVG style:
🔹 NWOG/NDOG
Enable/disable NWOG; color settings; amount of NWOG shown (max 50).
Enable/disable NDOG ; color settings; amount of NDOG shown (max 50).
🔹 Fibonacci
This tool connects the 2 most recent bullish/bearish (if applicable) features of your choice, provided they are enabled.
3 examples (FVG, BPR, OB):
Extend lines -> Enabled (example OB):
🔹 Killzones
Enable/disable all or the ones you need.
Time settings are coded in the corresponding time zones.
🔶 USAGE
By default, the indicator displays each feature relevant to the most recent price variations in order to avoid clutter on the chart & to provide a very similar experience to how a user would contruct ICT Concepts by hand.
Users can use the historical mode in the settings to see historical market structure/imbalances. The ICT Concepts indicator has various use cases, below we outline many examples of how a trader could find usage of the features together.
In the above image we can see price took out Sellside liquidity, filled two bearish FVGs, a market structure shift, which then led to a clean retest of a bullish FVG as a clean setup to target the order block above.
Price then fills the OB which creates a breaker level as seen in yellow.
Broken OBs can be useful for a trader using the ICT Concepts indicator as it marks a level where orders have now been filled, indicating a solidified level that has proved itself as an area of liquidity. In the image above we can see a trade setup using a broken bearish OB as a potential entry level.
We can see the New Week Opening Gap (NWOG) above was an optimal level to target considering price may tend to fill / react off of these levels according to ICT.
In the next image above, we have another example of various use cases where the ICT Concepts indicator hypothetically allow traders to find key levels & find optimal entry points using market structure.
In the image above we can see a bearish Market Structure Shift (MSS) is confirmed, indicating a potential trade setup for targeting the Balanced Price Range imbalance (BPR) below with a stop loss above the buyside liquidity.
Although what we are demonstrating here is a hindsight example, it shows the potential usage this toolkit gives you for creating trading plans based on ICT Concepts.
Same chart but playing out the history further we can see directly after price came down to the Sellside liquidity & swept below it...
Then by enabling IFVGs in the settings, we can see the IFVG retests alongside the Sellside & Buyside liquidity acting in confluence.
Which allows us to see a great bullish structure in the market with various key levels for potential entries.
Here we can see a potential bullish setup as price has taken out a previous Sellside liquidity zone and is now retesting a NWOG + Volume Imbalance.
Users also have the option to display Fibonacci retracements based on market structure, order blocks, and imbalance areas, which can help place limit/stop orders more effectively as well as finding optimal points of interest beyond what the primary ICT Concepts features can generate for a trader.
In the above image we can see the Fibonacci extension was selected to be based on the NWOG giving us some upside levels above the buyside liquidity.
🔶 DETAILS
Each feature within the ICT Concepts indicator is described in the sub sections below.
🔹 Market Structure
Market structure labels are constructed from price breaking a prior swing point. This allows a user to determine the current market trend based on the price action.
There are two types of Market Structure labels included:
Market Structure Shift (MSS)
Break Of Structure (BOS)
A MSS occurs when price breaks a swing low in an uptrend or a swing high in a downtrend, highlighting a potential reversal. This is often labeled as "CHoCH", but ICT specifies it as MSS.
On the other hand, BOS labels occur when price breaks a swing high in an uptrend or a swing low in a downtrend. The occurrence of these particular swing points is caused by retracements (inducements) that highlights liquidity hunting in lower timeframes.
🔹 Order Blocks
More significant market participants (institutions) with the ability of placing large orders in the market will generally place a sequence of individual trades spread out in time. This is referred as executing what is called a "meta-order".
Order blocks highlight the area where potential meta-orders are executed. Bullish order blocks are located near local bottoms in an uptrend while bearish order blocks are located near local tops in a downtrend.
When price mitigates (breaks out) an order block, a breaker block is confirmed. We can eventually expect price to trade back to this breaker block offering a new trade opportunity.
🔹 Buyside & Sellside Liquidity
Buyside / Sellside liquidity levels highlight price levels where market participants might place limit/stop orders.
Buyside liquidity levels will regroup the stoploss orders of short traders as well as limit orders of long traders, while Sellside liquidity levels will regroup the stoploss orders of long traders as well as limit orders of short traders.
These levels can play different roles. More informed market participants might view these levels as source of liquidity, and once liquidity over a specific level is reduced it will be found in another area.
🔹 Imbalances
Imbalances highlight disparities between the bid/ask, these can also be defined as inefficiencies, which would suggest that not all available information is reflected by the price and would as such provide potential trading opportunities.
It is common for price to "rebalance" and seek to come back to a previous imbalance area.
ICT highlights multiple imbalance formations:
Fair Value Gaps: A three candle formation where the candle shadows adjacent to the central candle do not overlap, this highlights a gap area.
Implied Fair Value Gaps: Unlike the fair value gap the implied fair value gap has candle shadows adjacent to the central candle overlapping. The gap area is constructed from the average between the respective shadow and the nearest extremity of their candle body.
Balanced Price Range: Balanced price ranges occur when a fair value gap overlaps a previous fair value gap, with the overlapping area resulting in the imbalance area.
Volume Imbalance: Volume imbalances highlight gaps between the opening price and closing price with existing trading activity (the low/high overlap the previous high/low).
Opening Gap: Unlike volume imbalances opening gaps highlight areas with no trading activity. The low/high does not reach previous high/low, highlighting a "void" area.
🔹 Displacement
Displacements are scenarios where price forms successive candles of the same sentiment (bullish/bearish) with large bodies and short shadows.
These can more technically be identified by positive auto correlation (a close to open change is more likely to be followed by a change of the same sign) as well as volatility clustering (large changes are followed by large changes).
Displacements can be the cause for the formation of imbalances as well as market structure, these can be caused by the full execution of a meta order.
🔹 Kill Zones
Killzones represent different time intervals that aims at offering optimal trade entries. Killzones include:
- New York Killzone (7:9 ET)
- London Open Killzone (2:5 ET)
- London Close Killzone (10:12 ET)
- Asian Killzone (20:00 ET)
🔶 Conclusion & Supplementary Material
This script aims to emulate how a trader would draw each of the covered features on their chart in the most precise representation to how it's actually taught by ICT directly.
There are many parallels between ICT Concepts and Smart Money Concepts that we released in 2022 which has a more general & simpler usage:
ICT Concepts, however, is more specifically aligned toward the community's interpretation of how to analyze price 'based on ICT', rather than displaying features to have a more classic interpretation for a technical analyst.
Regression Channel Alternative MTF V2█ OVERVIEW
This indicator is a predecessor to Regression Channel Alternative MTF , which is coded based on latest update of type, object and method.
█ IMPORTANT NOTES
This indicator is NOT true Multi Timeframe (MTF) but considered as Alternative MTF which calculate 100 bars for Primary MTF, can be refer from provided line helper.
The timeframe scenarios are defined based on Position, Swing and Intraday Trader.
Suppported Timeframe : W, D, 60, 15, 5 and 1.
Channel drawn based on regression calculation.
Angle channel is NOT supported.
█ INSPIRATIONS
These timeframe scenarios are defined based on Harmonic Trading : Volume Three written by Scott M Carney.
By applying channel on each timeframe, MW or ABCD patterns can be easily identified manually.
This can also be applied on other chart patterns.
█ CREDITS
Scott M Carney, Harmonic Trading : Volume Three (Reaction vs. Reversal)
█ TIMEFRAME EXPLAINED
Higher / Distal : The (next) longer or larger comparative timeframe after primary pattern has been identified.
Primary / Clear : Timeframe that possess the clearest pattern structure.
Lower / Proximate : The (next) shorter timeframe after primary pattern has been identified.
Lowest : Check primary timeframe as main reference.
█ FEATURES
Color is determined by trend or timeframe.
Some color is depends on chart contrast color.
Color is determined by trend or timeframe.
█ EXAMPLE OF USAGE / EXPLAINATION
Zigzag Array ExperimentalThis is experimental script for zigzag which uses type, method and array. Not recommend for actual usage, for pine script study maybe useful.
In this experiment, I use type as coded below. It seems have limitation as specially when push as array. As Trading View recommendation, pushing float and int into array especially for type not guarantee to work. I agree with that. Preferred to push array as line or label especially for types.
// @type Used for point especially for array
// @field x int value for bar_index
// @field y float value for price
// @field sty label style
// @field col color for text label
// @field str high or low string
type point
int x = na
float y = na
string sty = na
color col = na
string str = na
I simulate the arrays as below.
var dirLine = array.new()
var dirLabel = array.new()
var dirPoint = array.new()
....
dirPoint.unshift(zigzag.createPoint(0))
dirLabel.unshift(zigzag.createLabel(fontSize, 0, true))
dirLine.unshift(zigzag.createLine(width, switchLine, 0, true))
Here are some results.
Watermark° (Quote, Name, Timeframe, Date)I have been asked for this a lot, so here it is!
It's an easy script to read, and for all you aspiring Pinescript coders out there it might serve as a little introduction on Tables , switch operator, and a bit of UI/UX!
Description:
This is just a watermark, which follows my personal style an aesthetic when it comes to Pinescript tools. I like to keep my charts clean to focus on Time and price, and I love to have a reminder to remain disciplined.
Homo Faber Fortunae Suae is a Latin maxim which loosely translates to: Humans Are The Makers Of Their Own Destiny.
So make your own destiny, master yourself and the charts!
Indicator Features:
– Display symbol ticker, timeframe and date all in one place.
– Make it look nice 🤗
– Protect your TV username ID, by having your chart show a custom username (if you are sharing charts outside of Tradingview, and are known under a different alias there)
Note: no matter what, by exporting images from TV (copy image/copy link to chart) your TV username will appear in the top left corner of the image
👇👁
Strategy Template + Performance & Returns table + ExtrasA script I've been working on since summer 2022. A template for any strategy so you just have to write or paste the code and go straight into risk management settings
Features:
>Signal only Longs/only Shorts/Both
>Leverage system
>Proper fees calculation (even with leverage on)
>Different Stop Loss systems: Simple percentage, 4 different "move to Break Even" systems and Scaling SL after each TP order (read the disclaimer at the bottom regarding this and the TV % profitable metric)
>2 Take Profit systems: Simple percentages, or Risk/reward ratios based on SL level
>Additional option on TP so last one "rides free" until closure of position or Stoploss is hit (for more than 1 orders)
>Up to 5 TP orders
>Show or hide SL/TP levels on demand
>2 date filters. Manual filter is nothing new, enter two dates/hours and filter will turn on. BUT automatic filter is another thing (thanks to user @bfr_ for his help in codingthis feature)
>AUTOMATIC DATE FILTER. Allows you to split all historical data on the chart in X periods, then choose the range of periods used. Up to 10 but that can be changed, instructions included. Useful for WalkForward simulations, haven't seen a script in TradingView that allows you to do this and test your strategy on "unseen data" automatically
EXTRA SETTINGS
Besides, some additions I like to add to my codes:
>Returns table for monthly and weekly performance. Requires recalculation on every tick. This is a modified version of @QuantNomad's work. May add lower TF options later on
>Volume Based S/R system. Original work from @shtcoinr
>One feature that was made by me, the "portfolio table". Yields info and metrics of your strategy, current position and balance. You're able to turn it off and change its size
Should anyone find an error, or have any idea on how to improve this code, please contact me. Future updates could come, stay tuned
DISCLAIMER:
In order to have accurate StopLoss hit, I had to change the previous system, which was a "close position on candle close" instead at actual stoploss level. It was fixed, but resulted on inflation of the number of trading orders, thus reducing the percent profitable and making it strongly biased and unreal. Keep that in mind, that "real" profitability could be 2x or 3x the metric TradingView says. If your strategy has a really high trading frequency, resulting in 3000+ orders, might be a problem. Try to make use of the automatic/manual date filter as workaround, I have no means of changing this, seems it is not a bug but an intended design of the PineScript Code