Measure Volume, Momentum, Trend, VolatilityThis script displays the following indicators in one pane to quickly determine several important factors regarding price action. It allows the user to quickly see all of most important factors surrounding price action in one pane with one quick glance. This should be incredibly helpful and allow things like double divergence and trend confirmation to be spotted much more quickly. I personally use the data in this indicator to replace four separate indicators and it has brought my win rate and profit factor significantly higher. I hadn't seen any place where all of the best J. Welles Wilder indicators such as RSI, Parabolic SAR, and DMI/ADX were brought into one easy to use interface. This is my attempt at fixing that gap. For a much deeper understanding of how to use these indicators, I recommend reading New Concepts in Technical Trading Systems written by J. Welles Wilder.
Momentum via RSI (Relative Strength Index)
Volume via MFI (Money Flow Index)
Volatility via DMI/ADX (Direction Movement Index/Average Directional Index)
Trend via Parabolic SAR (Parabolic Stop and Reverse)
It is worth noting that DMI/ADX and Parabolic SAR can both help determine trend strength and volatility.
The Volatility mechanism is measured by DMI and ADX and displayed at the top of the pane using circles. The top, tiny circles reflect if show if positive DI or negative DI has a higher value. The small circles directly underneath indicate whether or not the ADX is above 20 (configurable, some may choose to increase this to 25 or even 30).
The Momentum mechanism is shown as standard RSI with the default being a white line and default period of 14, which is all configurable.
The Volume mechanism is shown as standard MFI with the default being a fuchsia line and default period of 14, which is also configurable.
The momentum and volume oscillators should be used in conjunction to help spot whether the trend is strong or weak using divergences and the middle, overbought, and oversold levels. These levels are also configurable.
The Trend mechanism is measured by Parabolic SAR and displayed at the bottom of the pane using diamonds. The default is red diamonds when in a bear trend, green when in an uptrend which is configurable. When price is above the Parabolic SAR, it is considered to be an uptrend. When price is below the Parabolic SAR, it is considered to be a downtrend. The way price is measured is also configurable (i.e. open, close, ohlc4, hlc3, etc.). When price crossed above or below the Parabolic SAR, the diamonds will change colors.
All the indicators displayed should be used in a well rounded strategy. For instance, I only trade when ADX is above 20 and rarely trade against the trend shown via PSAR. When trend shifts and divergences helped indicate a trend shift would occur using the RSI and MFI, it can be a great spot to take an entry. RSI/MFI can also confirm the trend is strong when they are not showing divergences and inline with price action. All of this data should be used in conjunction with good fundamental data and technical levels. Divergences with RSI and MFI on double tops or bottoms can also be incredibly powerful. There is no right or wrong way to use all the data displayed in this indicator, however using all four pillars of trading (Momentum, Volume, Trend, Volatility) will help ensure only the best trades are taken.
Search in scripts for "TAKE"
VIX SPX & XJOVix is a volatility indicator that lets traders know when to be cautious.
This indicator shows the volatility for the US market as well as the Australian market on seperate lines.
Blue lines are Vix for SPX (S&P 500)
If blue indicator goes above 30, high volatility is present and caution should be taken.
Green lines are Vix for XJO (ASX 200)
If green indicator goes above 20, high volatility is present and caution should be taken.
Swing Trades Validator - The One TraderThis swing trading strategy validator is built on the original strategy taught in my bootcamp for swing traders.
The strategy is simple and follows a trend trading pattern on prices reacting to Exponential Moving Averages over a multiple time-frame analysis.
The details of the strategy are as follows:
- Holding Period : Upto a couple of months
- Time-frames to be analysed : Month - Week - Day
- Trade Execution : Daily Time-frame
Analysis Details:
Step 1 : On the Monthly time-frame, the candle needs to be bullish with the latest close being higher than the opening price of the month.
Step 2 : The price needs to be above the 8ema on the Monthly time-frame.
Step 3 : The 8ema must be above the 20ema on the Monthly time-frame.
The above steps indicate a bullish strength in the instrument on the Monthly time-frame.
Step 4 : On the Weekly time-frame, the candle needs to be bullish with the latest close being higher than the opening price of the week.
Step 5 : The price needs to be above the 8ema on the Weekly time-frame.
Step 6 : The 8ema must be above the 20ema on the Weekly time-frame.
The above steps indicate a bullish strength in the instrument on the Weekly time-frame.
Step 7 : On the Daily time-frame, the candle needs to be bullish with the latest close being higher than the opening price of the day.
Step 8 : The price needs to be above the 8ema on the Daily time-frame.
Step 9 : The 8ema must be above the 20ema on the Daily time-frame.
The above steps indicate a bullish strength in the instrument on the Daily time-frame.
Step 10 : While the 8ema is above the 20ema on the Daily time-frame, the price must be allowed to rise before a pullback is seen towards the moving averages, indicating a bearish move trying to change the trend.
Step 11 : These pullback candles need to form a pattern called the Ring Low with the second pullback candle having a lower high and lower low and the low of the last pullback candle being lesser than or equal to the fat ema on the Daily time-frame.
Step 12 : If the stock is still bullish and the trend is displaying a strength in the underlying bullish direction, then there will be a resumption candle that will have a closing price higher than the previous day's high price.
This trend continuation signal is a confirmation that the instrument will continue in the underlying trend direction and we will be able to enter if this condition is satisfied.
The profit and loss percentages are set at a default 10% as this can be a minimum risk : reward for swing trades on average, but the inputs have been made available to the users in order to adjust the risk : reward to find the most optimum breathing room for each individual stock or instrument. This will give the user a highly custom overview of the strategy on individual instruments based on their volatility and price movements.
The strategy tester will auto back-test this strategy historically and find all the trades that were taken based on this strategy and populate a performance summary.
The most important data in V1.0 of this script are as follows:
1. No. of Trades Taken : We want to see many trades being taken on this strategy in that particular instrument. This shows us a healthy report on the number of winning vs. losing trades.
2. Percentage Profitable : We want to see that this strategy has worked out in the past and is giving us a high probability of return. This in no way an indication that the strategy will definitely work out in the future as well, but gives us an idea of whether or not we should enter this trade.
3. No. of Winning Trades vs. Losing Trades : We would like to see a significantly higher number of winning trades.
4. Avg. # of bars in a trade : This gives us an idea of how long on average we might have to wait to see the results of this strategy either in favor of our reward or against our desired direction. Some trades can be completed in around 15-20 bars on average and some trades have shown to take upto 45 days to reach desired reward. This is in line with our planned holding period, but gives the trader a sense of time and increased level of patience.
The future updates will have more utility of the various elements of the strategy tester and the entire exit strategy will be integrated into the script.
This script is not to be used as a standalone method and must be studied well in order to execute trades. I have not hidden visibility on other time-frames, but since order execution is done on the Daily time-frame, the script must run on the Daily time-frame only.
There are many other factors to be taken into consideration before entering a trade and proper risk management and position sizing rules must be followed.
Our bootcamp participants will use this strategy tester in conjunction with the invite-only Trading Toolkit assigned to them.
The development of this script will be ongoing and all comments and feedback are welcome.
Supertrend + Stoch StrategyA strategy using ema , supertrend and stochastic .
Long entry conditions:
1. EMA 25 > EMA 50 and EMA 100 > EMA 100.
2. Supertrend indicator is green.
3. Stochastic k line cross over d line.
Long stop: the lowest price of the last k
Ichimoku Kinko Hyo [DM]Ichimoku Kinko Hyo PineV5
Definition
The Ichimoku Cloud is a package of multiple technical indicators that signal support, resistance, market trend, and market momentum. It is one of the few indicators out there that attempts to convey a number of meaningful insights into one. For that reason it can be hard to understand at first glance, but is commonly used among professional traders and market participants.
History
In the late 1960s, Goichi Hosada introduced the Ichimoku Cloud. It took several years for its adoption and understanding to take off, but today it is commonly known and used as an indicator in the field of technical analysis.
Calculations
The Ichimoku Cloud can be calculated in several different ways. It depends on your timeframe, needs, and expertise in technical analysis.
Takeaways
The Cloud is an integral part of the technical indicator as a whole and helps traders and investors identify the specific calculations made to the chart. Price below the cloud indicates a downward trend, whereas price above the cloud indicates an uptrend. These trend signals can strengthen if both the cloud and the price are moving in the same direction. Similarly, the signals can weaken if the cloud is moving in the opposite direction.
What to look for
By using various averages, the Ichimoku Cloud indicator gives traders and investors key and extensive data information. Trends are high when price is above the cloud, weak when price is below the cloud, or transitioning when price is seen inside the cloud.
As was mentioned in the Calculation section above, when Leading Span A falls below Leading Span B, we can confirm a downtrend. The cloud, in this case, displays a red hue. When Leading Span A is above Leading Span B, we can confirm an uptrend. The cloud, in this case, displays a green hue.
The Ichimoku cloud can be used with other technical indicators in order to better assess risk. By looking at larger trends, with the help of multiple indicators, traders are able to see how smaller trends can fit within the general market picture as a whole.
Limitations
With all of the lines and cloud shading and data points, the chart can look a little crowded and stuffy. In order to work through this, there’s software that can hide these lines so the chart looks cleaner for traders and all the information you’d like to see is at the forefront of the chart. At TradingView, we have special features available for all our users. Anyone using our platform can pick which lines and backgrounds they’d like shown and can also customize the color, line thickness, and opacity with a simple click.
more info: ichimoku.org
MACD AdvancedHello traders!
As you know, MACD is one of the oldest and the most popular indicators for trading. It seems to be a «Hello world indicator» of most technical analysis beginners. It’s easy to interpret and rather useful for many styles of trading. There are many arguments about its accuracy but in my opinion, this indicator can show very good results. However, you should squeeze every drop of its opportunities and we'll help you with it. We invented this script to make the lives of both professionals and freshmen easier.
Our new indicator uses all the opportunities that MACD gives. It takes into consideration divergencies, crossovers, the MACD, and signal line location. It seems to be rather difficult to take into consideration all MACD signals when you don’t use algorithmic trading, but it’ll be trivial using our script. We have integrated some innovations that’ll make traders’ staff easier. As you know, the crossover is considered to be a false signal in conjunction with hidden divergence which predicts another movement. Thus, we catch all types of divergencies and if it’s hidden of another «value» we skip it. However, if there's a crossover with bullish divergence or cross under with bearish, the signal seems to be strong and accurate. In this case, divergence is playing for us and makes the point of entrance more trustable. Our script takes into consideration this case and the innovative divergence chaser doesn’t give any mistakes. Moreover, if crossover takes place above zero line and crosses under bellow it, these signals are considered to be false too. It’s a trivial task comparing with the previous, thus it’s extremely simple for our script. We called it MACD Advanced cause it uses all the power of MACD with the power of invasive divergence chasers. The usage of it is trivial. Just add it to the chart, tune the parameters like MACD and tune the divergence chaser and get very accurate signals. We decided not to draw the bars to make signals more visible. It seems to be very nice!
I hope guys you'll enjoy it and it'll become a part of your trading staff.
EMA pullback strategyA solid EMA pullback strategy for cryptos 15 min chart that uses EMA crossing as signal and pullback as stop loss.
EMA1: shortest period for finding crossing (I find period = 33 profitable for BTCUSD, you can adjust it for other cryptos)
EMA2: 5x period of EMA1, for filtering out some trend reversals
EMA3: 11x period of EMA1, for determining trend direction
Rules are:
Long:
close price > EMA3
EMA1 > EMA3
close price pullbacks below EMA1 and then crosses up EMA1, enter at the first close price above EMA1
lowest pullback close price < EMA2 at the cross up
Short:
close price < EMA3
EMA1 < EMA3
close price pullbacks above EMA1 and then crosses down EMA1, enter at the first close price below EMA1
highest pullback close price > EMA2 at the cross down
Stop-loss at lowest/highest pullback price for long/short
Take profit = 2x stop-loss
Risk management: risk range can be set in the inspector. If the risk is lower than the range, the trade is not taken. if the risk is higher than the range, the position size is adjusted to keep the risk within range.
BTC VIP EMA CROSS Buy/Sell (GC & DC)EMA cross 5&10 standard-setting with add on of BUY/SELL signal ( GC & DC) which will make the traders have an indication of buy and sell easily and clearly.
An exponential moving average strategy, or EMA strategy, is used to identify the predominant trend in the market. It can also provide the support and resistance level to execute your trade. Indicators: v4 (default setting), EMA 5 10 Crossover (default setting)
Preferred Time Frame(s):15-Minute, 30-Minute, 1-Hour, 4-Hour, 1-Day
Strategy
Long Entry Rules
Enter a buy in the market if the following indicator or chart pattern takes center stage:
If the blue upward pointing arrow of the EMA 5 10 Crossover custom indicator gets aligned just somewhat below the candlesticks as seen in Fig. 1.0, the market sentiment is said to be bullish, hence a trigger to go long on the pair of interest.
If the light blue line of the custom indicator gets outlined just below price bars as illustrated in Fig. 1.0, price is said to be pushed somewhat higher i.e. a trigger to buy the asset of focus.
Exit Strategy/Take Profit for Buy Entry
Exit or take profit if the following rules or conditions takes precedence:
If the red downward pointing arrow of the EMA 5 10 Crossover custom indicator forms above price bars as depicted in Fig. 1.0 while a buy signal is ongoing in the market, a possible price dip is said to be looming, as such an exit or take profit is advised.
If the red line of the custom indicator forms above the candlestick during a bullish trend, it is a pointer to a possible price dip, hence an exit or take profit is advised.
SMT - Smart Money Thursday Boxes
The Smart Money Trading Thursday - is a very specific trading system. You only trade it on a Thursday.
The script/indicator will color Thursdays as two boxes. If you just want one color, use same color for
both boxes. The boxes is there to indicate London/New York sessions.
SETTINGS
In the setting you find a numeric value as 1700-0400:5
The "5" indicate Thursday. You can change that if you prefer to color another specific day.
For example "4" would indicate Wednesday. And you can change the hours to fit your
sessions and trading style.
You can also use the 2 boxes on different days. If you for example would like to color up
London for Wednesday and Thursday. Then set hours to fit London session and adjust the
:5 to 4 on the 1st box and 5 on the 2nd.
HOW TO USE IT?
The Smart Money works in a way retail trading does not. Smart Money has an objective
to locate retail patterns, where there will be a lot of stop loss volume to be grabbed.
So when a retail trader see a setup like a "Double Top / Bottom". The Institutional
will see $$$ of dumb money, ready to be taken. The best moves happen on a Thursday
but if you are a skilled trader, you can see the move also occur on Wednesday or Friday.
The first thing that will happen, is that the Smart Money Breaks out of session. Meaning
they will leave the current weeks high/low range. To start collect negative contracts
of the retail volume.
When you see that happen. And you see a breakout that consist of 4 in a row 1 hour
chart candles. Then you have your first rule meet.
#1 Thursday breakout of current weeks high/low. And the move is a clean 4 hour move
as 4x H1 candles. The move can start within range. But must end clearly outside.
Visual Example:
#2 Next, we await an engulf at peak or near peak. That is where Institutional
may have problem to match any more contracts, and since they used their own
money to make this move. They must now mitigate orders, and return back to
the original retail pattern as most retail traders are now stopped out.
(Normally this is a long/clear candle out of range. they rarely go lower
then retail traders entry in the 1st push. This to not save any souls :)
#3 Price returns back to where the breakout from the retail happens.
You can now take your profit as a Smart Money Trader. Trading with less risk,
you can take profit of the return of that latest 4x H1 candle move. (Order
Block)
CONCLUSION
The best trade is when you can combine a retail pattern, followed by a
breakout which holds 4x 1 hour candles in the outbreak direction.
2nd best is when you have the 4x H1 breakout and really no clear retail
pattern. Still is the same game. Just not as clear as the one above.
Study the steps in this image and you see what to look after:
Good Luck with your trading!
Regards,
The Hunter Trading Group
CCI Strategy v2This was a strategy I found based on MT4. It takes CCI readings, then transforms them into a weighted moving average illustration. This is represented as:
Red Line - A six period moving average taken from CCI (NOT PRICE)
Green Line - A sixty-six period moving average taken from CCI (NOT PRICE)
Blue Line - CCI plotted
I have also added some levels and bollinger bands to highlight changes in activity.
The strategy is:
BUY - When the red line crosses upwards over green line.
SELL - When the red line crosses downwards over green line.
Extra confirmation is available by watching the blue line, it should be above red to buy, below red to sell. If the blue line drops in the opposite direction, this may be an opportunity to buy on a pull back.
If you wish for any modications to be applied, please do not hesitate to contact me.
Delta Volume Columns Pro [LucF]█ OVERVIEW
This indicator displays volume delta information calculated with intrabar inspection on historical bars, and feed updates when running in realtime. It is designed to run in a pane and can display either stacked buy/sell volume columns or a signal line which can be calculated and displayed in many different ways.
Five different models are offered to reveal different characteristics of the calculated volume delta information. Many options are offered to visualize the calculations, giving you much leeway in morphing the indicator's visuals to suit your needs. If you value delta volume information, I hope you will find the time required to master Delta Volume Columns Pro well worth the investment. I am confident that if you combine a proper understanding of the indicator's information with an intimate knowledge of the volume idiosyncrasies on the markets you trade, you can extract useful market intelligence using this tool.
█ WARNINGS
1. The indicator only works on markets where volume information is available,
Please validate that your symbol's feed carries volume information before asking me why the indicator doesn't plot values.
2. When you refresh your chart or re-execute the script on the chart, the indicator will repaint because elapsed realtime bars will then recalculate as historical bars.
3. Because the indicator uses different modes of calculation on historical and realtime bars, it's critical that you understand the differences between them. Details are provided further down.
4. Calculations using intrabar inspection on historical bars can only be done from some chart timeframes. See further down for a list of supported timeframes.
If the chart's timeframe is not supported, no historical volume delta will display.
█ CONCEPTS
Chart bars
Three different types of bars are used in charts:
1. Historical bars are bars that have already closed when the script executes on them.
2. The realtime bar is the current, incomplete bar where a script is running on an open market. There is only one active realtime bar on your chart at any given time.
The realtime bar is where alerts trigger.
3. Elapsed realtime bars are bars that were calculated when they were realtime bars but have since closed.
When a script re-executes on a chart because the browser tab is refreshed or some of its inputs are changed, elapsed realtime bars are recalculated as historical bars.
Why does this indicator use two modes of calculation?
Historical bars on TradingView charts contain OHLCV data only, which is insufficient to calculate volume delta on them with any level of precision. To mine more detailed information from those bars we look at intrabars , i.e., bars from a smaller timeframe (we call it the intrabar timeframe ) that are contained in one chart bar. If your chart Is running at 1D on a 24x7 market for example, most 1D chart bars will contain 24 underlying 1H bars in their dilation. On historical bars, this indicator looks at those intrabars to amass volume delta information. If the intrabar is up, its volume goes in the Buy bin, and inversely for the Sell bin. When price does not move on an intrabar, the polarity of the last known movement is used to determine in which bin its volume goes.
In realtime, we have access to price and volume change for each update of the chart. Because a 1D chart bar can be updated tens of thousands of times during the day, volume delta calculations on those updates is much more precise. This precision, however, comes at a price:
— The script must be running on the chart for it to keep calculating in realtime.
— If you refresh your chart you will lose all accumulated realtime calculations on elapsed realtime bars, and the realtime bar.
Elapsed realtime bars will recalculate as historical bars, i.e., using intrabar inspection, and the realtime bar's calculations will reset.
When the script recalculates elapsed realtime bars as historical bars, the values on those bars will change, which means the script repaints in those conditions.
— When the indicator first calculates on a chart containing an incomplete realtime bar, it will count ALL the existing volume on the bar as Buy or Sell volume,
depending on the polarity of the bar at that point. This will skew calculations for that first bar. Scripts have no access to the history of a realtime bar's previous updates,
and intrabar inspection cannot be used on realtime bars, so this is the only to go about this.
— Even if alerts only trigger upon confirmation of their conditions after the realtime bar closes, they are repainting alerts
because they would perhaps not have calculated the same way using intrabar inspection.
— On markets like stocks that often have different EOD and intraday feeds and volume information,
the volume's scale may not be the same for the realtime bar if your chart is at 1D, for example,
and the indicator is using an intraday timeframe to calculate on historical bars.
— Any chart timeframe can be used in realtime mode, but plots that include moving averages in their calculations may require many elapsed realtime bars before they can calculate.
You might prefer drastically reducing the periods of the moving averages, or using the volume columns mode, which displays instant values, instead of the line.
Volume Delta Balances
This indicator uses a variety of methods to evaluate five volume delta balances and derive other values from those balances. The five balances are:
1 — On Bar Balance : This is the only balance using instant values; it is simply the subtraction of the Sell volume from the Buy volume on the bar.
2 — Average Balance : Calculates a distinct EMA for both the Buy and Sell volumes, and subtracts the Sell EMA from the Buy EMA.
3 — Momentum Balance : Starts by calculating, separately for both Buy and Sell volumes, the difference between the same EMAs used in "Average Balance" and
an SMA of double the period used for the "Average Balance" EMAs. The difference for the Sell side is subtracted from the difference for the Buy side,
and an RSI of that value is calculated and brought over the −50/+50 scale.
4 — Relative Balance : The reference values used in the calculation are the Buy and Sell EMAs used in the "Average Balance".
From those, we calculate two intermediate values using how much the instant Buy and Sell volumes on the bar exceed their respective EMA — but with a twist.
If the bar's Buy volume does not exceed the EMA of Buy volume, a zero value is used. The same goes for the Sell volume with the EMA of Sell volume.
Once we have our two intermediate values for the Buy and Sell volumes exceeding their respective MA, we subtract them. The final "Relative Balance" value is an ALMA of that subtraction.
The rationale behind using zero values when the bar's Buy/Sell volume does not exceed its EMA is to only take into account the more significant volume.
If both instant volume values exceed their MA, then the difference between the two is the signal's value.
The signal is called "relative" because the intermediate values are the difference between the instant Buy/Sell volumes and their respective MA.
This balance flatlines when the bar's Buy/Sell volumes do not exceed their EMAs, which makes it useful to spot areas where trader interest dwindles, such as consolidations.
The smaller the period of the final value's ALMA, the more easily you will see the balance flatline. These flat zones should be considered no-trade zones.
5 — Percent Balance : This balance is the ALMA of the ratio of the "On Bar Balance" value, i.e., the volume delta balance on the bar (which can be positive or negative),
over the total volume for that bar.
From the balances and marker conditions, two more values are calculated:
1 — Marker Bias : It sums the up/down (+1/‒1) occurrences of the markers 1 to 4 over a period you define, so it ranges from −4 to +4, times the period.
Its calculation will depend on the modes used to calculate markers 3 and 4.
2 — Combined Balances : This is the sum of the bull/bear (+1/−1) states of each of the five balances, so it ranges from −5 to +5.
█ FEATURES
The indicator has two main modes of operation: Columns and Line .
Columns
• In Columns mode you can display stacked Buy/Sell volume columns.
• The buy section always appears above the centerline, the sell section below.
• The top and bottom sections can be colored independently using eight different methods.
• The EMAs of the Buy/Sell values can be displayed (these are the same EMAs used to calculate the "Average Balance").
Line
• Displays one of seven signals: the five balances or one of two complementary values, i.e., the "Marker Bias" or the "Combined Balances".
• You can color the line and its fill using independent calculation modes to pack more information in the display.
You can thus appraise the state of 3 different values using the line itself, its color and the color of its fill.
• A "Divergence Levels" feature will use the line to automatically draw expanding levels on divergence events.
Default settings
Using the indicator's default settings, this is the information displayed:
• The line is calculated on the "Average Balance".
• The line's color is determined by the bull/bear state of the "Percent Balance".
• The line's fill gradient is determined by the advances/declines of the "Momentum Balance".
• The orange divergence dots are calculated using discrepancies between the polarity of the "On Bar Balance" and the chart's bar.
• The divergence levels are determined using the line's level when a divergence occurs.
• The background's fill gradient is calculated on advances/declines of the "Marker Bias".
• The chart bars are colored using advances/declines of the "Relative Balance". Divergences are shown in orange.
• The intrabar timeframe is automatically determined from the chart's timeframe so that a minimum of 50 intrabars are used to calculate volume delta on historical bars.
Alerts
The configuration of the marker conditions explained further is what determines the conditions that will trigger alerts created from this script. Note that simply selecting the display of markers does not create alerts. To create an alert on this script, you must use ALT-A from the chart. You can create multiple alerts triggering on different conditions from this same script; simply configure the markers so they define the trigger conditions for each alert before creating the alert. The configuration of the script's inputs is saved with the alert, so from then on you can change them without affecting the alert. Alert messages will mention the marker(s) that triggered the specific alert event. Keep in mind, when creating alerts on small chart timeframes, that discrepancies between alert triggers and markers displayed on your chart are to be expected. This is because the alert and your chart are running two distinct instances of the indicator on different servers and different feeds. Also keep in mind that while alerts only trigger on confirmed conditions, they are calculated using realtime calculation mode, which entails that if you refresh your chart and elapsed realtime bars recalculate as historical bars using intrabar inspection, markers will not appear in the same places they appeared in realtime. So it's important to understand that even though the alert conditions are confirmed when they trigger, these alerts will repaint.
Let's go through the sections of the script's inputs.
Columns
The size of the Buy/Sell columns always represents their respective importance on the bar, but the coloring mode for tops and bottoms is independent. The default setup uses a standard coloring mode where the Buy/Sell columns are always in the bull/bear color with a higher intensity for the winning side. Seven other coloring modes allow you to pack more information in the columns. When choosing to color the top columns using a bull/bear gradient on "Average Balance", for example, you will have bull/bear colored tops. In order for the color of the bottom columns to continue to show the instant bar balance, you can then choose the "On Bar Balance — Dual Solid Colors" coloring mode to make those bars the color of the winning side for that bar. You can display the averages of the Buy and Sell columns. If you do, its coloring is controlled through the "Line" and "Line fill" sections below.
Line and Line fill
You can select the calculation mode and the thickness of the line, and independent calculations to determine the line's color and fill.
Zero Line
The zero line can display dots when all five balances are bull/bear.
Divergences
You first select the detection mode. Divergences occur whenever the up/down direction of the signal does not match the up/down polarity of the bar. Divergences are used in three components of the indicator's visuals: the orange dot, colored chart bars, and to calculate the divergence levels on the line. The divergence levels are dynamic levels that automatically build from the line's values on divergence events. On consecutive divergences, the levels will expand, creating a channel. This implementation of the divergence levels corresponds to my view that divergences indicate anomalies, hesitations, points of uncertainty if you will. It precludes any attempt to identify a directional bias to divergences. Accordingly, the levels merely take note of divergence events and mark those points in time with levels. Traders then have a reference point from which they can evaluate further movement. The bull/bear/neutral colors used to plot the levels are also congruent with this view in that they are determined by the line's position relative to the levels, which is how I think divergences can be put to the most effective use. One of the coloring modes for the line's fill uses advances/declines in the line after divergence events.
Background
The background can show a bull/bear gradient on six different calculations. As with other gradients, you can adjust its brightness to make its importance proportional to how you use it in your analysis.
Chart bars
Chart bars can be colored using seven different methods. You have the option of emptying the body of bars where volume does not increase, as does my TLD indicator, and you can choose whether you want to show divergences.
Intrabar Timeframe
This is the intrabar timeframe that will be used to calculate volume delta using intrabar inspection on historical bars. You can choose between four modes. The three "Auto-steps" modes calculate, from the chart's timeframe, the intrabar timeframe where the said number of intrabars will make up the dilation of chart bars. Adjustments are made for non-24x7 markets. "Fixed" mode allows you to select the intrabar timeframe you want. Checking the "Show TF" box will display in the lower-right corner the intrabar timeframe used at any given moment. The proper selection of the intrabar timeframe is important. It must achieve maximal granularity to produce precise results while not unduly slowing down calculations, or worse, causing runtime errors. Note that historical depth will vary with the intrabar timeframe. The smaller the timeframe, the shallower historical plots you will be.
Markers
Markers appear when the required condition has been confirmed on a closed bar. The configuration of the markers when you create an alert is what determines when the alert will trigger. Five markers are available:
• Balances Agreement : All five balances are either bullish or bearish.
• Double Bumps : A double bump is two consecutive up/down bars with +/‒ volume delta, and rising Buy/Sell volume above its average.
• Divergence confirmations : A divergence is confirmed up/down when the chosen balance is up/down on the previous bar when that bar was down/up, and this bar is up/down.
• Balance Shifts : These are bull/bear transitions of the selected signal.
• Marker Bias Shifts : Marker bias shifts occur when it crosses into bull/bear territory.
Periods
Allows control over the periods of the different moving averages used to calculate the balances.
Volume Discrepancies
Stock exchanges do not report the same volume for intraday and daily (or higher) resolutions. Other variations in how volume information is reported can also occur in other markets, namely Forex, where volume irregularities can even occur between different intraday timeframes. This will cause discrepancies between the total volume on the bar at the chart's timeframe, and the total volume calculated by adding the volume of the intrabars in that bar's dilation. This does not necessarily invalidate the volume delta information calculated from intrabars, but it tells us that we are using partial volume data. A mechanism to detect chart vs intrabar timeframe volume discrepancies is provided. It allows you to define a threshold percentage above which the background will indicate a difference has been detected.
Other Settings
You can control here the display of the gray dot reminder on realtime bars, and the display of error messages if you are using a chart timeframe that is not greater than the fixed intrabar timeframe, when you use that mode. Disabling the message can be useful if you only use realtime mode at chart timeframes that do not support intrabar inspection.
█ RAMBLINGS
On Volume Delta
Volume is arguably the best complement to interpret price action, and I consider volume delta to be the most effective way of processing volume information. In periods of low-volatility price consolidations, volume will typically also be lower than normal, but slight imbalances in the trend of the buy/sell volume balance can sometimes help put early odds on the direction of the break from consolidation. Additionally, the progression of the volume imbalance can help determine the proximity of the breakout. I also find volume delta and the number of divergences very useful to evaluate the strength of trends. In trends, I am looking for "slow and steady", i.e., relatively low volatility and pauses where price action doesn't look like world affairs are being reassessed. In my personal mythology, this type of trend is often more resilient than high-volatility breakouts, especially when volume balance confirms the general agreement of traders signaled by the low-volatility usually accompanying this type of trend. The volume action on pauses will often help me decide between aggressively taking profits, tightening a stop or going for a longer-term movement. As for reversals, they generally occur in high-volatility areas where entering trades is more expensive and riskier. While the identification of counter-trend reversals fascinates many traders to no end, they represent poor opportunities in my view. Volume imbalances often precede reversals, but I prefer to use volume delta information to identify the areas following reversals where I can confirm them and make relatively low-cost entries with better odds.
On "Buy/Sell" Volume
Buying or selling volume are misnomers, as every unit of volume transacted is both bought and sold by two different traders. While this does not keep me from using the terms, there is no such thing as “buy only” or “sell only” volume. Trader lingo is riddled with peculiarities.
Divergences
The divergence detection method used here relies on a difference between the direction of a signal and the polarity (up/down) of a chart bar. When using the default "On Bar Balance" to detect divergences, however, only the bar's volume delta is used. You may wonder how there can be divergences between buying/selling volume information and price movement on one bar. This will sometimes be due to the calculation's shortcomings, but divergences may also occur in instances where because of order book structure, it takes less volume to increase the price of an asset than it takes to decrease it. As usual, divergences are points of interest because they reveal imbalances, which may or may not become turning points. To your pattern-hungry brain, the divergences displayed by this indicator will — as they do on other indicators — appear to often indicate turnarounds. My opinion is that reality is generally quite sobering and I have no reliable information that would tend to prove otherwise. Exercise caution when using them. Consequently, I do not share the overwhelming enthusiasm of traders in identifying bullish/bearish divergences. For me, the best course of action when a divergence occurs is to wait and see what happens from there. That is the rationale underlying how my divergence levels work; they take note of a signal's level when a divergence occurs, and it's the signal's behavior from that point on that determines if the post-divergence action is bullish/bearish.
Superfluity
In "The Bed of Procrustes", Nassim Nicholas Taleb writes: To bankrupt a fool, give him information . This indicator can display lots of information. While learning to use a new indicator inevitably requires an adaptation period where we put it through its paces and try out all its options, once you have become used to it and decide to adopt it, rigorously eliminate the components you don't use and configure the remaining ones so their visual prominence reflects their relative importance in your analysis. I tried to provide flexible options for traders to control this indicator's visuals for that exact reason — not for window dressing.
█ LIMITATIONS
• This script uses a special characteristic of the `security()` function allowing the inspection of intrabars — which is not officially supported by TradingView.
It has the advantage of permitting a more robust calculation of volume delta than other methods on historical bars, but also has its limits.
• Intrabar inspection only works on some chart timeframes: 3, 5, 10, 15 and 30 minutes, 1, 2, 3, 4, 6, and 12 hours, 1 day, 1 week and 1 month.
The script’s code can be modified to run on other resolutions.
• When the difference between the chart’s timeframe and the intrabar timeframe is too great, runtime errors will occur. The Auto-Steps selection mechanisms should avoid this.
• All volume is not created equally. Its source, components, quality and reliability will vary considerably with sectors and instruments.
The higher the quality, the more reliably volume delta information can be used to guide your decisions.
You should make it your responsibility to understand the volume information provided in the data feeds you use. It will help you make the most of volume delta.
█ NOTES
For traders
• The Data Window shows key values for the indicator.
• While this indicator displays some of the same information calculated in my Delta Volume Columns ,
I have elected to make it a separate publication so that traders continue to have a simpler alternative available to them. Both code bases will continue to evolve separately.
• All gradients used in this indicator determine their brightness intensities using advances/declines in the signal—not their relative position in a pre-determined scale.
• Volume delta being relative, by nature, it is particularly well-suited to Forex markets, as it filters out quite elegantly the cyclical volume data characterizing the sector.
If you are interested in volume delta, consider having a look at my other "Delta Volume" indicators:
• Delta Volume Realtime Action displays realtime volume delta and tick information on the chart.
• Delta Volume Candles builds volume delta candles on the chart.
• Delta Volume Columns is a simpler version of this indicator.
For coders
• I use the `f_c_gradientRelativePro()` from the PineCoders Color Gradient Framework to build my gradients.
This function has the advantage of allowing begin/end colors for both the bull and bear colors. It also allows us to define the number of steps allowed for each gradient.
I use this to modulate the gradients so they perform optimally on the combination of the signal used to calculate advances/declines,
but also the nature of the visual component the gradient applies to. I use fewer steps for choppy signals and when the gradient is used on discrete visual components
such as volume columns or chart bars.
• I use the PineCoders Coding Conventions for Pine to write my scripts.
• I used functions modified from the PineCoders MTF Selection Framework for the selection of timeframes.
█ THANKS TO:
— The devs from TradingView's Pine and other teams, and the PineCoders who collaborate with them. They are doing amazing work,
and much of what this indicator does could not be done without their recent improvements to Pine.
— A guy called Kuan who commented on a Backtest Rookies presentation of their Volume Profile indicator using a `for` loop.
This indicator started from the intrabar inspection technique illustrated in Kuan's snippet.
— theheirophant , my partner in the exploration of the sometimes weird abysses of `security()`’s behavior at intrabar timeframes.
— midtownsk8rguy , my brilliant companion in mining the depths of Pine graphics.
Market EKGShort Summary
This indicator takes the differences in the previous 4 period OHLC inputs, and compares them to the previously closed candle input. The difference is then placed into an oscillator that when all four inputs are scrolled back on, shows an EKG appearing oscillator / volatility measure for traders to use on indexes, tickers and markets that do not allow typical volume based indicators.
Full Summary
Named for its similar appearance to an EKG medical chart, this script takes the difference in relative averages of previous periods in a trend , and compares it to the most recent period input. This can be used as a price based volatility measure, useful in markets that may be limited by no valume measures or other indexes where volatility is useful to meeasure but will not allow volume initializations.
Steps taken
Taking Previous Period OHLC
Taking Previous 3 Periods OHLC Avgs
Difference Between #1 & #2 (Comparing most recent confirmation to relative trend
Plot Results
This RSI Script is intended for public use and can be shared / implemented as needed
Questions? I do not monitor my TradingView inbox. See email address in signature at the bottom of this page for contact information.
Use this script and its calculations as needed! No permission required.
Cheers,
VFI - Volume Flow Indicator [UTS]The Volume Flow Indicator (VFI) indicator was first introduced in my June 2004 and is is based on the popular On Balance Volume (OBV) but with three very important modifications:
Unlike the OBV, indicator values are no longer meaningless. Positive readings are bullish and negative bearish.
The calculation is based on the day's median instead of the closing price.
A volatility threshold takes into account minimal price changes and another threshold eliminates excessive volume.
The indicator takes into account only the latest 6 month volume action and not the entire data loaded in the chart.
General Usage
A simplified interpretation of the VFI is that values above zero indicate a bullish state and the crossing of the zero line is the trigger or buy signal.
The strongest signal with all money flow indicators is of course divergence.
The classic form of divergence is when the indicator refuses to follow the price action and makes lower highs while price makes higher highs (negative divergence). If price reaches a new low but the indicator fails to do so, then price probably traveled lower than it should have. In this instance, you have positive divergence.
Default settings
130 VFI Length
0.2 Coef
2.5 Volume cutoff
3 Smoothing Period
Further setting examples can be found on www.precisiontradingsystems.com
Trend Visualisation
Optional Setting:
If the trend direction is DOWN the moving average is painted red. If the trend direction is UP the moving average is painted in green.
If the movement is FLAT then the color is grey.
Moving Averages
4 different types of Moving Averages are available for both FVI and the optional Moving Average of the FVI.
ALMA (Arnaud Legoux Moving Average)
EMA (Exponential Moving Average)
SMA (Simple Moving Average)
WMA (Weighted Moving Average)
Notes
This indicator is using the exact formula from mkatsanos.com where EMA has been taken as default value for FVI smoothing calculation.
Backtesting & Trading Engine [PineCoders]The PineCoders Backtesting and Trading Engine is a sophisticated framework with hybrid code that can run as a study to generate alerts for automated or discretionary trading while simultaneously providing backtest results. It can also easily be converted to a TradingView strategy in order to run TV backtesting. The Engine comes with many built-in strats for entries, filters, stops and exits, but you can also add you own.
If, like any self-respecting strategy modeler should, you spend a reasonable amount of time constantly researching new strategies and tinkering, our hope is that the Engine will become your inseparable go-to tool to test the validity of your creations, as once your tests are conclusive, you will be able to run this code as a study to generate the alerts required to put it in real-world use, whether for discretionary trading or to interface with an execution bot/app. You may also find the backtesting results the Engine produces in study mode enough for your needs and spend most of your time there, only occasionally converting to strategy mode in order to backtest using TV backtesting.
As you will quickly grasp when you bring up this script’s Settings, this is a complex tool. While you will be able to see results very quickly by just putting it on a chart and using its built-in strategies, in order to reap the full benefits of the PineCoders Engine, you will need to invest the time required to understand the subtleties involved in putting all its potential into play.
Disclaimer: use the Engine at your own risk.
Before we delve in more detail, here’s a bird’s eye view of the Engine’s features:
More than 40 built-in strategies,
Customizable components,
Coupling with your own external indicator,
Simple conversion from Study to Strategy modes,
Post-Exit analysis to search for alternate trade outcomes,
Use of the Data Window to show detailed bar by bar trade information and global statistics, including some not provided by TV backtesting,
Plotting of reminders and generation of alerts on in-trade events.
By combining your own strats to the built-in strats supplied with the Engine, and then tuning the numerous options and parameters in the Inputs dialog box, you will be able to play what-if scenarios from an infinite number of permutations.
USE CASES
You have written an indicator that provides an entry strat but it’s missing other components like a filter and a stop strategy. You add a plot in your indicator that respects the Engine’s External Signal Protocol, connect it to the Engine by simply selecting your indicator’s plot name in the Engine’s Settings/Inputs and then run tests on different combinations of entry stops, in-trade stops and profit taking strats to find out which one produces the best results with your entry strat.
You are building a complex strategy that you will want to run as an indicator generating alerts to be sent to a third-party execution bot. You insert your code in the Engine’s modules and leverage its trade management code to quickly move your strategy into production.
You have many different filters and want to explore results using them separately or in combination. Integrate the filter code in the Engine and run through different permutations or hook up your filtering through the external input and control your filter combos from your indicator.
You are tweaking the parameters of your entry, filter or stop strat. You integrate it in the Engine and evaluate its performance using the Engine’s statistics.
You always wondered what results a random entry strat would yield on your markets. You use the Engine’s built-in random entry strat and test it using different combinations of filters, stop and exit strats.
You want to evaluate the impact of fees and slippage on your strategy. You use the Engine’s inputs to play with different values and get immediate feedback in the detailed numbers provided in the Data Window.
You just want to inspect the individual trades your strategy generates. You include it in the Engine and then inspect trades visually on your charts, looking at the numbers in the Data Window as you move your cursor around.
You have never written a production-grade strategy and you want to learn how. Inspect the code in the Engine; you will find essential components typical of what is being used in actual trading systems.
You have run your system for a while and have compiled actual slippage information and your broker/exchange has updated his fees schedule. You enter the information in the Engine and run it on your markets to see the impact this has on your results.
FEATURES
Before going into the detail of the Inputs and the Data Window numbers, here’s a more detailed overview of the Engine’s features.
Built-in strats
The engine comes with more than 40 pre-coded strategies for the following standard system components:
Entries,
Filters,
Entry stops,
2 stage in-trade stops with kick-in rules,
Pyramiding rules,
Hard exits.
While some of the filter and stop strats provided may be useful in production-quality systems, you will not devise crazy profit-generating systems using only the entry strats supplied; that part is still up to you, as will be finding the elusive combination of components that makes winning systems. The Engine will, however, provide you with a solid foundation where all the trade management nitty-gritty is handled for you. By binding your custom strats to the Engine, you will be able to build reliable systems of the best quality currently allowed on the TV platform.
On-chart trade information
As you move over the bars in a trade, you will see trade numbers in the Data Window change at each bar. The engine calculates the P&L at every bar, including slippage and fees that would be incurred were the trade exited at that bar’s close. If the trade includes pyramided entries, those will be taken into account as well, although for those, final fees and slippage are only calculated at the trade’s exit.
You can also see on-chart markers for the entry level, stop positions, in-trade special events and entries/exits (you will want to disable these when using the Engine in strategy mode to see TV backtesting results).
Customization
You can couple your own strats to the Engine in two ways:
1. By inserting your own code in the Engine’s different modules. The modular design should enable you to do so with minimal effort by following the instructions in the code.
2. By linking an external indicator to the engine. After making the proper selections in the engine’s Settings and providing values respecting the engine’s protocol, your external indicator can, when the Engine is used in Indicator mode only:
Tell the engine when to enter long or short trades, but let the engine’s in-trade stop and exit strats manage the exits,
Signal both entries and exits,
Provide an entry stop along with your entry signal,
Filter other entry signals generated by any of the engine’s entry strats.
Conversion from strategy to study
TradingView strategies are required to backtest using the TradingView backtesting feature, but if you want to generate alerts with your script, whether for automated trading or just to trigger alerts that you will use in discretionary trading, your code has to run as a study since, for the time being, strategies can’t generate alerts. From hereon we will use indicator as a synonym for study.
Unless you want to maintain two code bases, you will need hybrid code that easily flips between strategy and indicator modes, and your code will need to restrict its use of strategy() calls and their arguments if it’s going to be able to run both as an indicator and a strategy using the same trade logic. That’s one of the benefits of using this Engine. Once you will have entered your own strats in the Engine, it will be a matter of commenting/uncommenting only four lines of code to flip between indicator and strategy modes in a matter of seconds.
Additionally, even when running in Indicator mode, the Engine will still provide you with precious numbers on your individual trades and global results, some of which are not available with normal TradingView backtesting.
Post-Exit Analysis for alternate outcomes (PEA)
While typical backtesting shows results of trade outcomes, PEA focuses on what could have happened after the exit. The intention is to help traders get an idea of the opportunity/risk in the bars following the trade in order to evaluate if their exit strategies are too aggressive or conservative.
After a trade is exited, the Engine’s PEA module continues analyzing outcomes for a user-defined quantity of bars. It identifies the maximum opportunity and risk available in that space, and calculates the drawdown required to reach the highest opportunity level post-exit, while recording the number of bars to that point.
Typically, if you can’t find opportunity greater than 1X past your trade using a few different reasonable lengths of PEA, your strategy is doing pretty good at capturing opportunity. Remember that 100% of opportunity is never capturable. If, however, PEA was finding post-trade maximum opportunity of 3 or 4X with average drawdowns of 0.3 to those areas, this could be a clue revealing your system is exiting trades prematurely. To analyze PEA numbers, you can uncomment complete sets of plots in the Plot module to reveal detailed global and individual PEA numbers.
Statistics
The Engine provides stats on your trades that TV backtesting does not provide, such as:
Average Profitability Per Trade (APPT), aka statistical expectancy, a crucial value.
APPT per bar,
Average stop size,
Traded volume .
It also shows you on a trade-by-trade basis, on-going individual trade results and data.
In-trade events
In-trade events can plot reminders and trigger alerts when they occur. The built-in events are:
Price approaching stop,
Possible tops/bottoms,
Large stop movement (for discretionary trading where stop is moved manually),
Large price movements.
Slippage and Fees
Even when running in indicator mode, the Engine allows for slippage and fees to be included in the logic and test results.
Alerts
The alert creation mechanism allows you to configure alerts on any combination of the normal or pyramided entries, exits and in-trade events.
Backtesting results
A few words on the numbers calculated in the Engine. Priority is given to numbers not shown in TV backtesting, as you can readily convert the script to a strategy if you need them.
We have chosen to focus on numbers expressing results relative to X (the trade’s risk) rather than in absolute currency numbers or in other more conventional but less useful ways. For example, most of the individual trade results are not shown in percentages, as this unit of measure is often less meaningful than those expressed in units of risk (X). A trade that closes with a +25% result, for example, is a poor outcome if it was entered with a -50% stop. Expressed in X, this trade’s P&L becomes 0.5, which provides much better insight into the trade’s outcome. A trade that closes with a P&L of +2X has earned twice the risk incurred upon entry, which would represent a pre-trade risk:reward ratio of 2.
The way to go about it when you think in X’s and that you adopt the sound risk management policy to risk a fixed percentage of your account on each trade is to equate a currency value to a unit of X. E.g. your account is 10K USD and you decide you will risk a maximum of 1% of it on each trade. That means your unit of X for each trade is worth 100 USD. If your APPT is 2X, this means every time you risk 100 USD in a trade, you can expect to make, on average, 200 USD.
By presenting results this way, we hope that the Engine’s statistics will appeal to those cognisant of sound risk management strategies, while gently leading traders who aren’t, towards them.
We trade to turn in tangible profits of course, so at some point currency must come into play. Accordingly, some values such as equity, P&L, slippage and fees are expressed in currency.
Many of the usual numbers shown in TV backtests are nonetheless available, but they have been commented out in the Engine’s Plot module.
Position sizing and risk management
All good system designers understand that optimal risk management is at the very heart of all winning strategies. The risk in a trade is defined by the fraction of current equity represented by the amplitude of the stop, so in order to manage risk optimally on each trade, position size should adjust to the stop’s amplitude. Systems that enter trades with a fixed stop amplitude can get away with calculating position size as a fixed percentage of current equity. In the context of a test run where equity varies, what represents a fixed amount of risk translates into different currency values.
Dynamically adjusting position size throughout a system’s life is optimal in many ways. First, as position sizing will vary with current equity, it reproduces a behavioral pattern common to experienced traders, who will dial down risk when confronted to poor performance and increase it when performance improves. Second, limiting risk confers more predictability to statistical test results. Third, position sizing isn’t just about managing risk, it’s also about maximizing opportunity. By using the maximum leverage (no reference to trading on margin here) into the trade that your risk management strategy allows, a dynamic position size allows you to capture maximal opportunity.
To calculate position sizes using the fixed risk method, we use the following formula: Position = Account * MaxRisk% / Stop% [, which calculates a position size taking into account the trade’s entry stop so that if the trade is stopped out, 100 USD will be lost. For someone who manages risk this way, common instructions to invest a certain percentage of your account in a position are simply worthless, as they do not take into account the risk incurred in the trade.
The Engine lets you select either the fixed risk or fixed percentage of equity position sizing methods. The closest thing to dynamic position sizing that can currently be done with alerts is to use a bot that allows syntax to specify position size as a percentage of equity which, while being dynamic in the sense that it will adapt to current equity when the trade is entered, does not allow us to modulate position size using the stop’s amplitude. Changes to alerts are on the way which should solve this problem.
In order for you to simulate performance with the constraint of fixed position sizing, the Engine also offers a third, less preferable option, where position size is defined as a fixed percentage of initial capital so that it is constant throughout the test and will thus represent a varying proportion of current equity.
Let’s recap. The three position sizing methods the Engine offers are:
1. By specifying the maximum percentage of risk to incur on your remaining equity, so the Engine will dynamically adjust position size for each trade so that, combining the stop’s amplitude with position size will yield a fixed percentage of risk incurred on current equity,
2. By specifying a fixed percentage of remaining equity. Note that unless your system has a fixed stop at entry, this method will not provide maximal risk control, as risk will vary with the amplitude of the stop for every trade. This method, as the first, does however have the advantage of automatically adjusting position size to equity. It is the Engine’s default method because it has an equivalent in TV backtesting, so when flipping between indicator and strategy mode, test results will more or less correspond.
3. By specifying a fixed percentage of the Initial Capital. While this is the least preferable method, it nonetheless reflects the reality confronted by most system designers on TradingView today. In this case, risk varies both because the fixed position size in initial capital currency represents a varying percentage of remaining equity, and because the trade’s stop amplitude may vary, adding another variability vector to risk.
Note that the Engine cannot display equity results for strategies entering trades for a fixed amount of shares/contracts at a variable price.
SETTINGS/INPUTS
Because the initial text first published with a script cannot be edited later and because there are just too many options, the Engine’s Inputs will not be covered in minute detail, as they will most certainly evolve. We will go over them with broad strokes; you should be able to figure the rest out. If you have questions, just ask them here or in the PineCoders Telegram group.
Display
The display header’s checkbox does nothing.
For the moment, only one exit strategy uses a take profit level, so only that one will show information when checking “Show Take Profit Level”.
Entries
You can activate two simultaneous entry strats, each selected from the same set of strats contained in the Engine. If you select two and they fire simultaneously, the main strat’s signal will be used.
The random strat in each list uses a different seed, so you will get different results from each.
The “Filter transitions” and “Filter states” strats delegate signal generation to the selected filter(s). “Filter transitions” signals will only fire when the filter transitions into bull/bear state, so after a trade is stopped out, the next entry may take some time to trigger if the filter’s state does not change quickly. When you choose “Filter states”, then a new trade will be entered immediately after an exit in the direction the filter allows.
If you select “External Indicator”, your indicator will need to generate a +2/-2 (or a positive/negative stop value) to enter a long/short position, providing the selected filters allow for it. If you wish to use the Engine’s capacity to also derive the entry stop level from your indicator’s signal, then you must explicitly choose this option in the Entry Stops section.
Filters
You can activate as many filters as you wish; they are additive. The “Maximum stop allowed on entry” is an important component of proper risk management. If your system has an average 3% stop size and you need to trade using fixed position sizes because of alert/execution bot limitations, you must use this filter because if your system was to enter a trade with a 15% stop, that trade would incur 5 times the normal risk, and its result would account for an abnormally high proportion in your system’s performance.
Remember that any filter can also be used as an entry signal, either when it changes states, or whenever no trade is active and the filter is in a bull or bear mode.
Entry Stops
An entry stop must be selected in the Engine, as it requires a stop level before the in-trade stop is calculated. Until the selected in-trade stop strat generates a stop that comes closer to price than the entry stop (or respects another one of the in-trade stops kick in strats), the entry stop level is used.
It is here that you must select “External Indicator” if your indicator supplies a +price/-price value to be used as the entry stop. A +price is expected for a long entry and a -price value will enter a short with a stop at price. Note that the price is the absolute price, not an offset to the current price level.
In-Trade Stops
The Engine comes with many built-in in-trade stop strats. Note that some of them share the “Length” and “Multiple” field, so when you swap between them, be sure that the length and multiple in use correspond to what you want for that stop strat. Suggested defaults appear with the name of each strat in the dropdown.
In addition to the strat you wish to use, you must also determine when it kicks in to replace the initial entry’s stop, which is determined using different strats. For strats where you can define a positive or negative multiple of X, percentage or fixed value for a kick-in strat, a positive value is above the trade’s entry fill and a negative one below. A value of zero represents breakeven.
Pyramiding
What you specify in this section are the rules that allow pyramiding to happen. By themselves, these rules will not generate pyramiding entries. For those to happen, entry signals must be issued by one of the active entry strats, and conform to the pyramiding rules which act as a filter for them. The “Filter must allow entry” selection must be chosen if you want the usual system’s filters to act as additional filtering criteria for your pyramided entries.
Hard Exits
You can choose from a variety of hard exit strats. Hard exits are exit strategies which signal trade exits on specific events, as opposed to price breaching a stop level in In-Trade Stops strategies. They are self-explanatory. The last one labelled When Take Profit Level (multiple of X) is reached is the only one that uses a level, but contrary to stops, it is above price and while it is relative because it is expressed as a multiple of X, it does not move during the trade. This is the level called Take Profit that is show when the “Show Take Profit Level” checkbox is checked in the Display section.
While stops focus on managing risk, hard exit strategies try to put the emphasis on capturing opportunity.
Slippage
You can define it as a percentage or a fixed value, with different settings for entries and exits. The entry and exit markers on the chart show the impact of slippage on the entry price (the fill).
Fees
Fees, whether expressed as a percentage of position size in and out of the trade or as a fixed value per in and out, are in the same units of currency as the capital defined in the Position Sizing section. Fees being deducted from your Capital, they do not have an impact on the chart marker positions.
In-Trade Events
These events will only trigger during trades. They can be helpful to act as reminders for traders using the Engine as assistance to discretionary trading.
Post-Exit Analysis
It is normally on. Some of its results will show in the Global Numbers section of the Data Window. Only a few of the statistics generated are shown; many more are available, but commented out in the Plot module.
Date Range Filtering
Note that you don’t have to change the dates to enable/diable filtering. When you are done with a specific date range, just uncheck “Date Range Filtering” to disable date filtering.
Alert Triggers
Each selection corresponds to one condition. Conditions can be combined into a single alert as you please. Just be sure you have selected the ones you want to trigger the alert before you create the alert. For example, if you trade in both directions and you want a single alert to trigger on both types of exits, you must select both “Long Exit” and “Short Exit” before creating your alert.
Once the alert is triggered, these settings no longer have relevance as they have been saved with the alert.
When viewing charts where an alert has just triggered, if your alert triggers on more than one condition, you will need the appropriate markers active on your chart to figure out which condition triggered the alert, since plotting of markers is independent of alert management.
Position sizing
You have 3 options to determine position size:
1. Proportional to Stop -> Variable, with a cap on size.
2. Percentage of equity -> Variable.
3. Percentage of Initial Capital -> Fixed.
External Indicator
This is where you connect your indicator’s plot that will generate the signals the Engine will act upon. Remember this only works in Indicator mode.
DATA WINDOW INFORMATION
The top part of the window contains global numbers while the individual trade information appears in the bottom part. The different types of units used to express values are:
curr: denotes the currency used in the Position Sizing section of Inputs for the Initial Capital value.
quote: denotes quote currency, i.e. the value the instrument is expressed in, or the right side of the market pair (USD in EURUSD ).
X: the stop’s amplitude, itself expressed in quote currency, which we use to express a trade’s P&L, so that a trade with P&L=2X has made twice the stop’s amplitude in profit. This is sometimes referred to as R, since it represents one unit of risk. It is also the unit of measure used in the APPT, which denotes expected reward per unit of risk.
X%: is also the stop’s amplitude, but expressed as a percentage of the Entry Fill.
The numbers appearing in the Data Window are all prefixed:
“ALL:” the number is the average for all first entries and pyramided entries.
”1ST:” the number is for first entries only.
”PYR:” the number is for pyramided entries only.
”PEA:” the number is for Post-Exit Analyses
Global Numbers
Numbers in this section represent the results of all trades up to the cursor on the chart.
Average Profitability Per Trade (X): This value is the most important gauge of your strat’s worthiness. It represents the returns that can be expected from your strat for each unit of risk incurred. E.g.: your APPT is 2.0, thus for every unit of currency you invest in a trade, you can on average expect to obtain 2 after the trade. APPT is also referred to as “statistical expectancy”. If it is negative, your strategy is losing, even if your win rate is very good (it means your winning trades aren’t winning enough, or your losing trades lose too much, or both). Its counterpart in currency is also shown, as is the APPT/bar, which can be a useful gauge in deciding between rivalling systems.
Profit Factor: Gross of winning trades/Gross of losing trades. Strategy is profitable when >1. Not as useful as the APPT because it doesn’t take into account the win rate and the average win/loss per trade. It is calculated from the total winning/losing results of this particular backtest and has less predictive value than the APPT. A good profit factor together with a poor APPT means you just found a chart where your system outperformed. Relying too much on the profit factor is a bit like a poker player who would think going all in with two’s against aces is optimal because he just won a hand that way.
Win Rate: Percentage of winning trades out of all trades. Taken alone, it doesn’t have much to do with strategy profitability. You can have a win rate of 99% but if that one trade in 100 ruins you because of poor risk management, 99% doesn’t look so good anymore. This number speaks more of the system’s profile than its worthiness. Still, it can be useful to gauge if the system fits your personality. It can also be useful to traders intending to sell their systems, as low win rate systems are more difficult to sell and require more handholding of worried customers.
Equity (curr): This the sum of initial capital and the P&L of your system’s trades, including fees and slippage.
Return on Capital is the equivalent of TV’s Net Profit figure, i.e. the variation on your initial capital.
Maximum drawdown is the maximal drawdown from the highest equity point until the drop . There is also a close to close (meaning it doesn’t take into account in-trade variations) maximum drawdown value commented out in the code.
The next values are self-explanatory, until:
PYR: Avg Profitability Per Entry (X): this is the APPT for all pyramided entries.
PEA: Avg Max Opp . Available (X): the average maximal opportunity found in the Post-Exit Analyses.
PEA: Avg Drawdown to Max Opp . (X): this represents the maximum drawdown (incurred from the close at the beginning of the PEA analysis) required to reach the maximal opportunity point.
Trade Information
Numbers in this section concern only the current trade under the cursor. Most of them are self-explanatory. Use the description’s prefix to determine what the values applies to.
PYR: Avg Profitability Per Entry (X): While this value includes the impact of all current pyramided entries (and only those) and updates when you move your cursor around, P&L only reflects fees at the trade’s last bar.
PEA: Max Opp . Available (X): It’s the most profitable close reached post-trade, measured from the trade’s Exit Fill, expressed in the X value of the trade the PEA follows.
PEA: Drawdown to Max Opp . (X): This is the maximum drawdown from the trade’s Exit Fill that needs to be sustained in order to reach the maximum opportunity point, also expressed in X. Note that PEA numbers do not include slippage and fees.
EXTERNAL SIGNAL PROTOCOL
Only one external indicator can be connected to a script; in order to leverage its use to the fullest, the engine provides options to use it as either an entry signal, an entry/exit signal or a filter. When used as an entry signal, you can also use the signal to provide the entry’s stop. Here’s how this works:
For filter state: supply +1 for bull (long entries allowed), -1 for bear (short entries allowed).
For entry signals: supply +2 for long, -2 for short.
For exit signals: supply +3 for exit from long, -3 for exit from short.
To send an entry stop level with an entry signal: Send positive stop level for long entry (e.g. 103.33 to enter a long with a stop at 103.33), negative stop level for short entry (e.g. -103.33 to enter a short with a stop at 103.33). If you use this feature, your indicator will have to check for exact stop levels of 1.0, 2.0 or 3.0 and their negative counterparts, and fudge them with a tick in order to avoid confusion with other signals in the protocol.
Remember that mere generation of the values by your indicator will have no effect until you explicitly allow their use in the appropriate sections of the Engine’s Settings/Inputs.
An example of a script issuing a signal for the Engine is published by PineCoders.
RECOMMENDATIONS TO ASPIRING SYSTEM DESIGNERS
Stick to higher timeframes. On progressively lower timeframes, margins decrease and fees and slippage take a proportionally larger portion of profits, to the point where they can very easily turn a profitable strategy into a losing one. Additionally, your margin for error shrinks as the equilibrium of your system’s profitability becomes more fragile with the tight numbers involved in the shorter time frames. Avoid <1H time frames.
Know and calculate fees and slippage. To avoid market shock, backtest using conservative fees and slippage parameters. Systems rarely show unexpectedly good returns when they are confronted to the markets, so put all chances on your side by being outrageously conservative—or a the very least, realistic. Test results that do not include fees and slippage are worthless. Slippage is there for a reason, and that’s because our interventions in the market change the market. It is easier to find alpha in illiquid markets such as cryptos because not many large players participate in them. If your backtesting results are based on moving large positions and you don’t also add the inevitable slippage that will occur when you enter/exit thin markets, your backtesting will produce unrealistic results. Even if you do include large slippage in your settings, the Engine can only do so much as it will not let slippage push fills past the high or low of the entry bar, but the gap may be much larger in illiquid markets.
Never test and optimize your system on the same dataset , as that is the perfect recipe for overfitting or data dredging, which is trying to find one precise set of rules/parameters that works only on one dataset. These setups are the most fragile and often get destroyed when they meet the real world.
Try to find datasets yielding more than 100 trades. Less than that and results are not as reliable.
Consider all backtesting results with suspicion. If you never entertained sceptic tendencies, now is the time to begin. If your backtest results look really good, assume they are flawed, either because of your methodology, the data you’re using or the software doing the testing. Always assume the worse and learn proper backtesting techniques such as monte carlo simulations and walk forward analysis to avoid the traps and biases that unchecked greed will set for you. If you are not familiar with concepts such as survivor bias, lookahead bias and confirmation bias, learn about them.
Stick to simple bars or candles when designing systems. Other types of bars often do not yield reliable results, whether by design (Heikin Ashi) or because of the way they are implemented on TV (Renko bars).
Know that you don’t know and use that knowledge to learn more about systems and how to properly test them, about your biases, and about yourself.
Manage risk first , then capture opportunity.
Respect the inherent uncertainty of the future. Cleanse yourself of the sad arrogance and unchecked greed common to newcomers to trading. Strive for rationality. Respect the fact that while backtest results may look promising, there is no guarantee they will repeat in the future (there is actually a high probability they won’t!), because the future is fundamentally unknowable. If you develop a system that looks promising, don’t oversell it to others whose greed may lead them to entertain unreasonable expectations.
Have a plan. Understand what king of trading system you are trying to build. Have a clear picture or where entries, exits and other important levels will be in the sort of trade you are trying to create with your system. This stated direction will help you discard more efficiently many of the inevitably useless ideas that will pop up during system design.
Be wary of complexity. Experienced systems engineers understand how rapidly complexity builds when you assemble components together—however simple each one may be. The more complex your system, the more difficult it will be to manage.
Play! . Allow yourself time to play around when you design your systems. While much comes about from working with a purpose, great ideas sometimes come out of just trying things with no set goal, when you are stuck and don’t know how to move ahead. Have fun!
@LucF
NOTES
While the engine’s code can supply multiple consecutive entries of longs or shorts in order to scale positions (pyramid), all exits currently assume the execution bot will exit the totality of the position. No partial exits are currently possible with the Engine.
Because the Engine is literally crippled by the limitations on the number of plots a script can output on TV; it can only show a fraction of all the information it calculates in the Data Window. You will find in the Plot Module vast amounts of commented out lines that you can activate if you also disable an equivalent number of other plots. This may be useful to explore certain characteristics of your system in more detail.
When backtesting using the TV backtesting feature, you will need to provide the strategy parameters you wish to use through either Settings/Properties or by changing the default values in the code’s header. These values are defined in variables and used not only in the strategy() statement, but also as defaults in the Engine’s relevant Inputs.
If you want to test using pyramiding, then both the strategy’s Setting/Properties and the Engine’s Settings/Inputs need to allow pyramiding.
If you find any bugs in the Engine, please let us know.
THANKS
To @glaz for allowing the use of his unpublished MA Squize in the filters.
To @everget for his Chandelier stop code, which is also used as a filter in the Engine.
To @RicardoSantos for his pseudo-random generator, and because it’s from him that I first read in the Pine chat about the idea of using an external indicator as input into another. In the PineCoders group, @theheirophant then mentioned the idea of using it as a buy/sell signal and @simpelyfe showed a piece of code implementing the idea. That’s the tortuous story behind the use of the external indicator in the Engine.
To @admin for the Volatility stop’s original code and for the donchian function lifted from Ichimoku .
To @BobHoward21 for the v3 version of Volatility Stop .
To @scarf and @midtownsk8rguy for the color tuning.
To many other scripters who provided encouragement and suggestions for improvement during the long process of writing and testing this piece of code.
To J. Welles Wilder Jr. for ATR, used extensively throughout the Engine.
To TradingView for graciously making an account available to PineCoders.
And finally, to all fellow PineCoders for the constant intellectual stimulation; it is a privilege to share ideas with you all. The Engine is for all TradingView PineCoders, of course—but especially for you.
Look first. Then leap.
ATR Percentile BiznesFilosofThis script was created based on statistics and market research. Here you can see the increase in the activity of large players. Those. when they begin to take out "extra passengers", gaining a position for a strong trend movement in the aftermath. Also they can be found with stops and takeprofit (their value for the most likely operation).
By default, the red line stands at around 190. But then you can edit it for the current situation. Ideally, it should be at the lowest level of volatility (ATR).
The gray zone is favorable for setting stops and calculating the take-profit.
If you reduce the scale of the chart, you can see the red zone of market activity. This helps to understand when there is a lull in the big players (whales) and when they are again activated for the new pampas.
In more detail, I'm talking about this indicator on my channel in Youtube.
===
Этот скрипт создан, исходя из статистики и исследований рынка. Здесь можно увидеть повышение активности крупных игроков. Т.е. когда начинают выносить "лишних пассажиров", набирают позицию для сильного трендового движения в последствии. Также на основании данного индикатора можно определиться со стопами и тейкпрофитом (их величиной для наиболее вероятного срабатывания).
По умолчанию красная линия стоит на отметке 190. Но потом её можно отредактировать под текущую ситуацию. В идеале она должна быть на самом нижнем уровне волатильности (ATR).
Серая зона благоприятная для установки стопов и расчета тейкпрофита.
Если уменьшить масштаб графика, то можно увидеть красные зоны активности рынка. Это помогает понять, когда происходит затишье крупных игроков (китов) и когда опять они активируются для нового пампа.
Более подробно я рассказываю про этот индикатор на своём канале в Ютуб.
JNSARJust Nifty SAR strategy has been developed by our Master Ilangovan.
Trading based on JNSAR:
JNSAR is a number based on market’s strength and weakness as well as the balance of demand and supply. Whatever the number may be, a choppy market could whipsaw the number occasionally to shake off your confidence in them. However, staying with one method brings you consistent winnings.
Step:1: As the JNSAR for yesterday was xxxx and the previous trade taken was a sell @ yyyy on “previous” day, the moment Nifty breached xxxx yesterday, you close out your earlier short and take a long position in minimum 2 lots – Stop and reverse (SAR).
Step:2: If after triggering a reversal long trade @ xxxx and markets fall again, you keep a filter of 20 to 30 points to JNSAR and manage them. Knowing key support numbers closer to JNSAR help in filtering out the whipsaws during long trades and Knowing key resistance numbers closer to JNSAR help in filtering out the whipsaws during short trades.
Step:3:Once a new trade is taken in with a minimum of 2 lots, you book on one lot with a profit of 50, 100+ points and keep the 2nd lot till a reverse trade is triggered based on each subsequent day’s JNSAR.
Step:4: After booking out on the 1st lot, if Nifty climbs back(retraces) substantially and start to fall again, take a new trade(rebuying) again. Rebuying the part booked trade is done at 50% to 61.8% of last segment of rise ( Reselling the part booked trade is done at 50% to 61.8% of last segment of fall) OR at critical 21 or 34 HrSmas. This step is optional and suited for the experienced.
Step:5: You may use the filter of 25 to 30 points on JNSAR for 2 days once JNSAR new trade is taken to give the new trade a fighting chance & survive. For eg: For the new long trade taken @ xxxx yesterday, the JNSAR of today @ zzzz may be altered to zzzz-30.
Step:6: Do not count your winnings. Stay focussed on each trade.
Get Rich Slowly & Quietly.
(Mr. Ilangovan)
JC_MacD_RSI_Candle_Strat_public//
// Author : Jacques CRETINON
// Last Version : V1.0 11-22-2016
//
// Risk disclaimer : Do not use this script in production environment. We assume no liability or responsibility for any damage to you, your computer, or your other property, due to the use of this script.
//
// Purpose of this script :
// 1- use same pine code for strategy or study script (with simple modifications)
// 2- be able to send alerts : enterlong, entershort, exitlong, exitshort, stoplosslong, stoplossshort, takeprofitlong, takeprofitshort in a study script like a strategy script should do
// 3- do not repaint (I HOPE)
//
// RoadMap :
// 1- manage : Trailing Stop Loss and Trailing Stop Loss offset
//
// I use this script :
// 1- with default value for XAUUSD, current chart resolution : 1mn, large timeframe : 15mn.
// 2- That's why I hard code MACD5 (5mn average), MACD15 (15mn average), MACD60 (1h average) ...
// 3- MACD, RSI (1mn and 15mn) and Candles info are my inputs to take any decisions
//
// I do not publish my enterLong, enterShort, exitLong and exitShort conditions (lines 204 to 207 are sample !) as they are not as perfect as I'd like. Fell free to use your own conditions :)
//
// Please, report me any bug, fell free to discuss and share. English is not my natural language, so be clement ;) Happy safe trading :)
BTCCNY premiums over BTCUSD - yuan devaluationBitcoin as an alternative to capital outflows, with a market cap of just 2 billion can easily be up by multiples from the outflow of yuan from mainland China alone.
People simply do not want yuan if their purchasing power is going down over time.
Current methods of taking capital off mainland China via overseas cash withdrawals are quickly being closed out by the communist government.
------------------------------------------------------------
www.zerohedge.com
China has capped the amount of money Chinese holders of bank and credit cards can withdraw outside the country, in its latest effort to discourage people from moving badly needed capital offshore.
China’s foreign-exchange regulator put a new annual cap on overseas cash withdrawals using China UnionPay Co. bank cards, a UnionPay official said on Tuesday. Under the new rules, UnionPay cardholders can withdraw up to 50,000 yuan ($7,854) overseas during the last three months of this year, and the amount will be capped at 100,000 yuan for all of next year, the official said.
State-run UnionPay has a virtual monopoly on processing card transactions in China, meaning the limits extend to nearly all Chinese bank- and credit-card holders. It wasn’t clear when the new cap was issued.
The new cap is in addition to an existing 10,000 yuan daily withdrawal limit, part of China’s curbs on how much money can flow across its borders.
The move by China’s State Administration of Foreign Exchange is the latest by Beijing to scrutinize capital outflows.
The People’s Bank of China, the country’s central bank, said earlier this month that its foreign-exchange reserves fell by $93.9 billion, the biggest monthly drop ever, after it surprised the market on Aug. 11 with its decision to devalue the yuan by around 2%.
Key takeaway from the yuan devaluation and capital control:
The collapse of 2 bubbles: housing and stock market.
Weakness in commodities such as steel, copper and oil are seen which signals a weakening economy of which China are the core driver of that expansion since 2008. I suspect that China's GDP is never 8% as it is reported, but rather near 2~4% right now.
China have spent over 100 billion USD in US treasury proceeds to stabilize the yuan collapsing faster due to speculators. The amount of reserves spent at the current rate is unsustainable, it will take just 2 years for them to be used up completely.
Over time yuan will still be heading downwards.
CarolTradeLibLibrary "CarolTradeLib"
f_generateSignalID(strategyName)
Parameters:
strategyName (string)
f_buildJSON(orderType, action, symbol, price, strategyName, apiKey, additionalFields, indicatorJSON)
Parameters:
orderType (string)
action (string)
symbol (string)
price (float)
strategyName (string)
apiKey (string)
additionalFields (string)
indicatorJSON (string)
sendSignal(action, symbol, price, strategyName, apiKey, indicatorJSON)
Parameters:
action (string)
symbol (string)
price (float)
strategyName (string)
apiKey (string)
indicatorJSON (string)
marketOrder(action, symbol, price, strategyName, apiKey, stopLoss, takeProfit, rrRatio, size, indicatorJSON)
Parameters:
action (string)
symbol (string)
price (float)
strategyName (string)
apiKey (string)
stopLoss (float)
takeProfit (float)
rrRatio (float)
size (float)
indicatorJSON (string)
limitOrder(action, symbol, price, strategyName, apiKey, limitPrice, size, indicatorJSON)
Parameters:
action (string)
symbol (string)
price (float)
strategyName (string)
apiKey (string)
limitPrice (float)
size (float)
indicatorJSON (string)
stopLimitOrder(action, symbol, price, strategyName, apiKey, stopPrice, limitPrice, size, indicatorJSON)
Parameters:
action (string)
symbol (string)
price (float)
strategyName (string)
apiKey (string)
stopPrice (float)
limitPrice (float)
size (float)
indicatorJSON (string)
BOCS Channel Scalper Indicator - Mean Reversion Alert System# BOCS Channel Scalper Indicator - Mean Reversion Alert System
## WHAT THIS INDICATOR DOES:
This is a mean reversion trading indicator that identifies consolidation channels through volatility analysis and generates alert signals when price enters entry zones near channel boundaries. **This indicator version is designed for manual trading with comprehensive alert functionality.** Unlike automated strategies, this tool sends notifications (via popup, email, SMS, or webhook) when trading opportunities occur, allowing you to manually review and execute trades. The system assumes price will revert to the channel mean, identifying scalp opportunities as price reaches extremes and preparing to bounce back toward center.
## INDICATOR VS STRATEGY - KEY DISTINCTION:
**This is an INDICATOR with alerts, not an automated strategy.** It does not execute trades automatically. Instead, it:
- Displays visual signals on your chart when entry conditions are met
- Sends customizable alerts to your device/email when opportunities arise
- Shows TP/SL levels for reference but does not place orders
- Requires you to manually enter and exit positions based on signals
- Works with all TradingView subscription levels (alerts included on all plans)
**For automated trading with backtesting**, use the strategy version. For manual control with notifications, use this indicator version.
## ALERT CAPABILITIES:
This indicator includes four distinct alert conditions that can be configured independently:
**1. New Channel Formation Alert**
- Triggers when a fresh BOCS channel is identified
- Message: "New BOCS channel formed - potential scalp setup ready"
- Use this to prepare for upcoming trading opportunities
**2. Long Scalp Entry Alert**
- Fires when price touches the long entry zone
- Message includes current price, calculated TP, and SL levels
- Notification example: "LONG scalp signal at 24731.75 | TP: 24743.2 | SL: 24716.5"
**3. Short Scalp Entry Alert**
- Fires when price touches the short entry zone
- Message includes current price, calculated TP, and SL levels
- Notification example: "SHORT scalp signal at 24747.50 | TP: 24735.0 | SL: 24762.75"
**4. Any Entry Signal Alert**
- Combined alert for both long and short entries
- Use this if you want a single alert stream for all opportunities
- Message: "BOCS Scalp Entry: at "
**Setting Up Alerts:**
1. Add indicator to chart and configure settings
2. Click the Alert (⏰) button in TradingView toolbar
3. Select "BOCS Channel Scalper" from condition dropdown
4. Choose desired alert type (Long, Short, Any, or Channel Formation)
5. Set "Once Per Bar Close" to avoid false signals during bar formation
6. Configure delivery method (popup, email, webhook for automation platforms)
7. Save alert - it will fire automatically when conditions are met
**Alert Message Placeholders:**
Alerts use TradingView's dynamic placeholder system:
- {{ticker}} = Symbol name (e.g., NQ1!)
- {{close}} = Current price at signal
- {{plot_1}} = Calculated take profit level
- {{plot_2}} = Calculated stop loss level
These placeholders populate automatically, creating detailed notification messages without manual configuration.
## KEY DIFFERENCE FROM ORIGINAL BOCS:
**This indicator is designed for traders seeking higher trade frequency.** The original BOCS indicator trades breakouts OUTSIDE channels, waiting for price to escape consolidation before entering. This scalper version trades mean reversion INSIDE channels, entering when price reaches channel extremes and betting on a bounce back to center. The result is significantly more trading opportunities:
- **Original BOCS**: 1-3 signals per channel (only on breakout)
- **Scalper Indicator**: 5-15+ signals per channel (every touch of entry zones)
- **Trade Style**: Mean reversion vs trend following
- **Hold Time**: Seconds to minutes vs minutes to hours
- **Best Markets**: Ranging/choppy conditions vs trending breakouts
This makes the indicator ideal for active day traders who want continuous alert opportunities within consolidation zones rather than waiting for breakout confirmation. However, increased signal frequency also means higher potential commission costs and requires disciplined trade selection when acting on alerts.
## TECHNICAL METHODOLOGY:
### Price Normalization Process:
The indicator normalizes price data to create consistent volatility measurements across different instruments and price levels. It calculates the highest high and lowest low over a user-defined lookback period (default 100 bars). Current close price is normalized using: (close - lowest_low) / (highest_high - lowest_low), producing values between 0 and 1 for standardized volatility analysis.
### Volatility Detection:
A 14-period standard deviation is applied to the normalized price series to measure price deviation from the mean. Higher standard deviation values indicate volatility expansion; lower values indicate consolidation. The indicator uses ta.highestbars() and ta.lowestbars() to identify when volatility peaks and troughs occur over the detection period (default 14 bars).
### Channel Formation Logic:
When volatility crosses from a high level to a low level (ta.crossover(upper, lower)), a consolidation phase begins. The indicator tracks the highest and lowest prices during this period, which become the channel boundaries. Minimum duration of 10+ bars is required to filter out brief volatility spikes. Channels are rendered as box objects with defined upper and lower boundaries, with colored zones indicating entry areas.
### Entry Signal Generation:
The indicator uses immediate touch-based entry logic. Entry zones are defined as a percentage from channel edges (default 20%):
- **Long Entry Zone**: Bottom 20% of channel (bottomBound + channelRange × 0.2)
- **Short Entry Zone**: Top 20% of channel (topBound - channelRange × 0.2)
Long signals trigger when candle low touches or enters the long entry zone. Short signals trigger when candle high touches or enters the short entry zone. Visual markers (arrows and labels) appear on chart, and configured alerts fire immediately.
### Cooldown Filter:
An optional cooldown period (measured in bars) prevents alert spam by enforcing minimum spacing between consecutive signals. If cooldown is set to 3 bars, no new long alert will fire until 3 bars after the previous long signal. Long and short cooldowns are tracked independently, allowing both directions to signal within the same period.
### ATR Volatility Filter:
The indicator includes a multi-timeframe ATR filter to avoid alerts during low-volatility conditions. Using request.security(), it fetches ATR values from a specified timeframe (e.g., 1-minute ATR while viewing 5-minute charts). The filter compares current ATR to a user-defined minimum threshold:
- If ATR ≥ threshold: Alerts enabled
- If ATR < threshold: No alerts fire
This prevents notifications during dead zones where mean reversion is unreliable due to insufficient price movement. The ATR status is displayed in the info table with visual confirmation (✓ or ✗).
### Take Profit Calculation:
Two TP methods are available:
**Fixed Points Mode**:
- Long TP = Entry + (TP_Ticks × syminfo.mintick)
- Short TP = Entry - (TP_Ticks × syminfo.mintick)
**Channel Percentage Mode**:
- Long TP = Entry + (ChannelRange × TP_Percent)
- Short TP = Entry - (ChannelRange × TP_Percent)
Default 50% targets the channel midline, a natural mean reversion target. These levels are displayed as visual lines with labels and included in alert messages for reference when manually placing orders.
### Stop Loss Placement:
Stop losses are calculated just outside the channel boundary by a user-defined tick offset:
- Long SL = ChannelBottom - (SL_Offset_Ticks × syminfo.mintick)
- Short SL = ChannelTop + (SL_Offset_Ticks × syminfo.mintick)
This logic assumes channel breaks invalidate the mean reversion thesis. SL levels are displayed on chart and included in alert notifications as suggested stop placement.
### Channel Breakout Management:
Channels are removed when price closes more than 10 ticks outside boundaries. This tolerance prevents premature channel deletion from minor breaks or wicks, allowing the mean reversion setup to persist through small boundary violations.
## INPUT PARAMETERS:
### Channel Settings:
- **Nested Channels**: Allow multiple overlapping channels vs single channel
- **Normalization Length**: Lookback for high/low calculation (1-500, default 100)
- **Box Detection Length**: Period for volatility detection (1-100, default 14)
### Scalping Settings:
- **Enable Long Scalps**: Toggle long alert generation on/off
- **Enable Short Scalps**: Toggle short alert generation on/off
- **Entry Zone % from Edge**: Size of entry zone (5-50%, default 20%)
- **SL Offset (Ticks)**: Distance beyond channel for stop (1+, default 5)
- **Cooldown Period (Bars)**: Minimum spacing between alerts (0 = no cooldown)
### ATR Filter:
- **Enable ATR Filter**: Toggle volatility filter on/off
- **ATR Timeframe**: Source timeframe for ATR (1, 5, 15, 60 min, etc.)
- **ATR Length**: Smoothing period (1-100, default 14)
- **Min ATR Value**: Threshold for alert enablement (0.1+, default 10.0)
### Take Profit Settings:
- **TP Method**: Choose Fixed Points or % of Channel
- **TP Fixed (Ticks)**: Static distance in ticks (1+, default 30)
- **TP % of Channel**: Dynamic target as channel percentage (10-100%, default 50%)
### Appearance:
- **Show Entry Zones**: Toggle zone labels on channels
- **Show Info Table**: Display real-time indicator status
- **Table Position**: Corner placement (Top Left/Right, Bottom Left/Right)
- **Long Color**: Customize long signal color (default: darker green for readability)
- **Short Color**: Customize short signal color (default: red)
- **TP/SL Colors**: Customize take profit and stop loss line colors
- **Line Length**: Visual length of TP/SL reference lines (5-200 bars)
## VISUAL INDICATORS:
- **Channel boxes** with semi-transparent fill showing consolidation zones
- **Colored entry zones** labeled "LONG ZONE ▲" and "SHORT ZONE ▼"
- **Entry signal arrows** below/above bars marking long/short alerts
- **TP/SL reference lines** with emoji labels (⊕ Entry, 🎯 TP, 🛑 SL)
- **Info table** showing channel status, last signal, entry/TP/SL prices, risk/reward ratio, and ATR filter status
- **Visual confirmation** when alerts fire via on-chart markers synchronized with notifications
## HOW TO USE:
### For 1-3 Minute Scalping with Alerts (NQ/ES):
- ATR Timeframe: "1" (1-minute)
- ATR Min Value: 10.0 (for NQ), adjust per instrument
- Entry Zone %: 20-25%
- TP Method: Fixed Points, 20-40 ticks
- SL Offset: 5-10 ticks
- Cooldown: 2-3 bars to reduce alert spam
- **Alert Setup**: Configure "Any Entry Signal" for combined long/short notifications
- **Execution**: When alert fires, verify chart visuals, then manually place limit order at entry zone with provided TP/SL levels
### For 5-15 Minute Day Trading with Alerts:
- ATR Timeframe: "5" or match chart
- ATR Min Value: Adjust to instrument (test 8-15 for NQ)
- Entry Zone %: 20-30%
- TP Method: % of Channel, 40-60%
- SL Offset: 5-10 ticks
- Cooldown: 3-5 bars
- **Alert Setup**: Configure separate "Long Scalp Entry" and "Short Scalp Entry" alerts if you trade directionally based on bias
- **Execution**: Review channel structure on alert, confirm ATR filter shows ✓, then enter manually
### For 30-60 Minute Swing Scalping with Alerts:
- ATR Timeframe: "15" or "30"
- ATR Min Value: Lower threshold for broader market
- Entry Zone %: 25-35%
- TP Method: % of Channel, 50-70%
- SL Offset: 10-15 ticks
- Cooldown: 5+ bars or disable
- **Alert Setup**: Use "New Channel Formation" to prepare for setups, then "Any Entry Signal" for execution alerts
- **Execution**: Larger timeframes allow more analysis time between alert and entry
### Webhook Integration for Semi-Automation:
- Configure alert webhook URL to connect with platforms like TradersPost, TradingView Paper Trading, or custom automation
- Alert message includes all necessary order parameters (direction, entry, TP, SL)
- Webhook receives structured data when signal fires
- External platform can auto-execute based on alert payload
- Still maintains manual oversight vs full strategy automation
## USAGE CONSIDERATIONS:
- **Manual Discipline Required**: Alerts provide opportunities but execution requires judgment. Not all alerts should be taken - consider market context, trend, and channel quality
- **Alert Timing**: Alerts fire on bar close by default. Ensure "Once Per Bar Close" is selected to avoid false signals during bar formation
- **Notification Delivery**: Mobile/email alerts may have 1-3 second delay. For immediate execution, use desktop popups or webhook automation
- **Cooldown Necessity**: Without cooldown, rapidly touching price action can generate excessive alerts. Start with 3-bar cooldown and adjust based on alert volume
- **ATR Filter Impact**: Enabling ATR filter dramatically reduces alert count but improves quality. Track filter status in info table to understand when you're receiving fewer alerts
- **Commission Awareness**: High alert frequency means high potential trade count. Calculate if your commission structure supports frequent scalping before acting on all alerts
## COMPATIBLE MARKETS:
Works on any instrument with price data including stock indices (NQ, ES, YM, RTY), individual stocks, forex pairs (EUR/USD, GBP/USD), cryptocurrency (BTC, ETH), and commodities. Volume-based features are not included in this indicator version. Multi-timeframe ATR requires higher-tier TradingView subscription for request.security() functionality on timeframes below chart timeframe.
## KNOWN LIMITATIONS:
- **Indicator does not execute trades** - alerts are informational only; you must manually place all orders
- **Alert delivery depends on TradingView infrastructure** - delays or failures possible during platform issues
- **No position tracking** - indicator doesn't know if you're in a trade; you must manage open positions independently
- **TP/SL levels are reference only** - you must manually set these on your broker platform; they are not live orders
- **Immediate touch entry can generate many alerts** in choppy zones without adequate cooldown
- **Channel deletion at 10-tick breaks** may be too aggressive or lenient depending on instrument tick size
- **ATR filter from lower timeframes** requires TradingView Premium/Pro+ for request.security()
- **Mean reversion logic fails** in strong breakout scenarios - alerts will fire but trades may hit stops
- **No partial closing capability** - full position management is manual; you determine scaling out
- **Alerts do not account for gaps** or overnight price changes; morning alerts may be stale
## RISK DISCLOSURE:
Trading involves substantial risk of loss. This indicator provides signals for educational and informational purposes only and does not constitute financial advice. Past performance does not guarantee future results. Mean reversion strategies can experience extended drawdowns during trending markets. Alerts are not guaranteed to be profitable and should be combined with your own analysis. Stop losses may not fill at intended levels during extreme volatility or gaps. Never trade with capital you cannot afford to lose. Consider consulting a licensed financial advisor before making trading decisions. Always verify alerts against current market conditions before executing trades manually.
## ACKNOWLEDGMENT & CREDITS:
This indicator is built upon the channel detection methodology created by **AlgoAlpha** in the "Smart Money Breakout Channels" indicator. Full credit and appreciation to AlgoAlpha for pioneering the normalized volatility approach to identifying consolidation patterns. The core channel formation logic using normalized price standard deviation is AlgoAlpha's original contribution to the TradingView community.
Enhancements to the original concept include: mean reversion entry logic (vs breakout), immediate touch-based alert generation, comprehensive alert condition system with customizable notifications, multi-timeframe ATR volatility filtering, cooldown period for alert management, dual TP methods (fixed points vs channel percentage), visual TP/SL reference lines, and real-time status monitoring table. This indicator version is specifically designed for manual traders who prefer alert-based decision making over automated execution.
MC WITH ALERTS DINESH SETHIYAManipulation Candle (MC): A candlestick that initially suggests price movement in one direction but then reverses, manipulating liquidity and closing in the opposite direction.
Types of MCs:
Bullish MC: Takes out the previous candle's low, reverses, takes out the previous candle's high, and closes above it.
Bearish MC: Takes out the previous candle's high, reverses, takes out the previous candle's low, and closes below it.
Ideal MC Characteristic: The rejection wick (bottom wick for bullish MC, top wick for bearish MC) should be larger than the directional wick.
Katz Calypso Indicator (Refactored)Overview
The Katz Calypso Indicator is a comprehensive momentum oscillator designed to identify potential entry and exit points in the market. At its core, it uses the True Strength Index (TSI) to gauge the strength and direction of a trend. To enhance signal accuracy and reduce false positives, the indicator integrates several optional filters, including the Waddah Attar Explosion, an EMA filter, and an ATR filter. It also provides an optional RVGI-based exit signal system.
This tool is designed to provide a clear, visual representation of market momentum, with customizable filters to adapt to various trading styles and market conditions.
How to Use the Indicator
The indicator is displayed in a separate pane below the main price chart.
TSI Line (Blue): This is the main oscillator line. Its position relative to the zero line indicates the overall trend bias (above 0 is bullish, below is bearish).
Signal Line (Red): A moving average of the TSI line. Crossovers between the TSI and Signal Line are the primary triggers for trade signals.
Zero Line: The centerline of the oscillator. A cross of the Zero Line can indicate a significant shift in momentum.
Overbought/Oversold Levels: These user-defined levels (defaulting to 65 and -65) help identify potential exhaustion points in a trend, which can be used for taking profits.
On-Chart Signals: The indicator plots shapes directly on the chart to make signals easy to spot:
Green Triangles (Up): Indicate long entry or continuation signals.
Red Triangles (Down): Indicate short entry or continuation signals.
Yellow Triangles: Suggest taking profits.
Maroon/Lime Triangles: Indicate an exit based on a signal cross (like RVGI or the Zero Line).
Trading Rules
Long Trade Rules
Entry: A long trade is signaled when ALL of the following conditions are met:
The blue TSI Line crosses above the red Signal Line.
The blue TSI Line is above the 0 Zero Line.
All enabled filters (Waddah Attar, EMA, ATR) confirm bullish conditions.
A green triangle labeled "Long" will appear below the price.
Exit (Take Profit): A take-profit signal for a long trade is generated when either of these occurs:
The TSI Line crosses below the Overbought level.
The TSI Line crosses back below the Signal Line while still above zero.
A yellow triangle labeled "TPL" (Take Profit Long) will appear above the price.
Exit (Stop/Reverse): A signal to exit a long trade is generated when either of these occurs:
The TSI Line crosses below the 0 Zero Line.
The RVGI Exit filter is enabled and generates a bearish crossover signal.
A maroon triangle labeled "Exit Long" will appear above the price.
Short Trade Rules
Entry: A short trade is signaled when ALL of the following conditions are met:
The blue TSI Line crosses below the red Signal Line.
The blue TSI Line is below the 0 Zero Line.
All enabled filters (Waddah Attar, EMA, ATR) confirm bearish conditions.
A red triangle labeled "Short" will appear above the price.
Exit (Take Profit): A take-profit signal for a short trade is generated when either of these occurs:
The TSI Line crosses above the Oversold level.
The TSI Line crosses back above the Signal Line while still below zero.
A yellow triangle labeled "TPS" (Take Profit Short) will appear below the price.
Exit (Stop/Reverse): A signal to exit a short trade is generated when either of these occurs:
The TSI Line crosses above the 0 Zero Line.
The RVGI Exit filter is enabled and generates a bullish crossover signal.
A lime green triangle labeled "Exit Short" will appear below the price.
Optional Filters
You can enable or disable these filters in the indicator's settings to fine-tune its sensitivity.
Waddah Attar Explosion Filter: This filter measures trend strength and volatility. When enabled, it ensures that entries are only taken during periods of strong, confirmed momentum, helping to avoid sideways or choppy markets.
EMA Price Filter: A classic trend filter. When enabled, it will only allow long entries if the price is above the specified Exponential Moving Average and short entries only if the price is below it.
ATR Filter: This acts as a volatility-based filter to prevent chasing a move. It helps ensure that you are not entering a long trade when the price has already moved too far above its EMA, or vice-versa for a short trade.
RVGI Exit Filter: The Relative Vigor Index (RVGI) is used here exclusively as an exit signal. When enabled, a crossover of the RVGI and its signal line can provide an earlier exit signal before the TSI crosses the zero line, potentially locking in profits sooner.
Disclaimer: This indicator is provided for educational and informational purposes only. It is not financial advice. Trading carries a high level of risk, and you can lose more than your initial investment. You should use this indicator at your own risk and discretion. Always conduct your own research and consider your risk tolerance before making any trading decisions.
The Best Strategy Template[LuciTech]Hello Traders,
This is a powerful and flexible strategy template designed to help you create, backtest, and deploy your own custom trading strategies. This template is not a ready-to-use strategy but a framework that simplifies the development process by providing a wide range of pre-built features and functionalities.
What It Does
The LuciTech Strategy Template provides a robust foundation for building your own automated trading strategies. It includes a comprehensive set of features that are essential for any serious trading strategy, allowing you to focus on your unique trading logic without having to code everything from scratch.
Key Features
The LuciTech Strategy Template integrates several powerful features to enhance your strategy development:
•
Advanced Risk Management: This includes robust controls for defining your Risk Percentage per Trade, setting a precise Risk-to-Reward Ratio, and implementing an intelligent Breakeven Stop-Loss mechanism that automatically adjusts your stop to the entry price once a specified profit threshold is reached. These elements are crucial for capital preservation and consistent profitability.
•
Flexible Stop-Loss Options: The template offers adaptable stop-loss calculation methods, allowing you to choose between ATR-Based Stop-Loss, which dynamically adjusts to market volatility, and Candle-Based Stop-Loss, which uses structural price points from previous candles. This flexibility ensures the stop-loss strategy aligns with diverse trading styles.
•
Time-Based Filtering: Optimize your strategy's performance by restricting trading activity to specific hours of the day. This feature allows you to avoid unfavorable market conditions or focus on periods of higher liquidity and volatility relevant to your strategy.
•
Customizable Webhook Alerts: Stay informed with advanced notification capabilities. The template supports sending detailed webhook alerts in various JSON formats (Standard, Telegram, Concise Telegram) to external platforms, facilitating real-time monitoring and potential integration with automated trading systems.
•
Comprehensive Visual Customization: Enhance your analytical clarity with extensive visual options. You can customize the colors of entry, stop-loss, and take-profit lines, and effectively visualize market inefficiencies by displaying and customizing Fair Value Gap (FVG) boxes directly on your chart.
How It Does It
The LuciTech Strategy Template is meticulously crafted using Pine Script, TradingView's powerful and expressive programming language. The underlying architecture is designed for clarity and modularity, allowing for straightforward integration of your unique trading signals. At its core, the template operates by taking user-defined entry and exit conditions and then applying a sophisticated layer of risk management, position sizing, and trade execution logic.
For instance, when a longCondition or shortCondition is met, the template dynamically calculates the appropriate position size. This calculation is based on your specified risk_percent of equity and the stop_distance (the distance between your entry price and the calculated stop-loss level). This ensures that each trade adheres to your predefined risk parameters, a critical component of disciplined trading.
The flexibility in stop-loss calculation is achieved through a switch statement that evaluates the sl_type input. Whether you choose an ATR-based stop, which adapts to market volatility, or a candle-based stop, which uses structural price points, the template seamlessly integrates these methods. The ATR calculation itself is further refined by allowing various smoothing methods (RMA, SMA, EMA, WMA), providing granular control over how volatility is measured.
Time-based filtering is implemented by comparing the current bar's time with user-defined start_hour, start_minute, end_hour, and end_minute inputs. This allows the strategy to activate or deactivate trading during specific market sessions or periods of the day, a valuable tool for optimizing performance and avoiding unfavorable conditions.
Furthermore, the template incorporates advanced webhook alert functionality. When a trade is executed, a customizable JSON message is formatted based on your webhook_format selection (Standard, Telegram, or Concise Telegram) and sent via alert function. This enables seamless integration with external services for real-time notifications or even automated trade execution through third-party platforms.
Visual feedback is paramount for understanding strategy behavior. The template utilizes plot and fill functions to clearly display entry prices, stop-loss levels, and take-profit targets directly on the chart. Customizable colors for these elements, along with dedicated options for Fair Value Gap (FVG) boxes, enhance the visual analysis during backtesting and live trading, making it easier to interpret the strategy's actions.
How It's Original
The LuciTech Strategy Template distinguishes itself in the crowded landscape of TradingView scripts through its unique combination of integrated, advanced risk management features, highly flexible stop-loss methodologies, and sophisticated alerting capabilities, all within a user-friendly and modular framework. While many templates offer basic entry/exit signal integration, LuciTech goes several steps further by providing a robust, ready-to-use infrastructure for managing the entire trade lifecycle once a signal is generated.
Unlike templates that might require users to piece together various risk management components or code complex stop-loss logic from scratch, LuciTech offers these critical functionalities out-of-the-box. The inclusion of dynamic position sizing based on a user-defined risk percentage, a configurable risk-to-reward ratio, and an intelligent breakeven mechanism significantly elevates its utility. This comprehensive approach to capital preservation and profit targeting is a cornerstone of professional trading and is often overlooked or simplified in generic templates.
Furthermore, the template's provision for multiple stop-loss calculation types—ATR-based for volatility adaptation, and candle-based for structural support/resistance—demonstrates a deep understanding of diverse trading strategies. The underlying code for these calculations is already implemented, saving developers considerable time and effort. The subtle yet powerful inclusion of FVG (Fair Value Gap) related inputs also hints at advanced price action concepts, offering a sophisticated layer of analysis and execution that is not commonly found in general-purpose templates.
The advanced webhook alerting system, with its support for various JSON formats tailored for platforms like Telegram, showcases an originality in catering to the needs of modern, automated trading setups. This moves beyond simple TradingView pop-up alerts, enabling seamless integration with external systems for real-time trade monitoring and execution. This level of external connectivity and customizable data output is a significant differentiator.
In essence, the LuciTech Strategy Template is original not just in its individual features, but in how these features are cohesively integrated to form a powerful, opinionated, yet highly adaptable system. It empowers traders to focus their creative energy on developing their core entry/exit signals, confident that the underlying framework will handle the complexities of risk management, trade execution, and external communication with precision and flexibility. It's a comprehensive solution designed to accelerate the development of robust and professional trading strategies.
How to Modify the Logic to Apply Your Strategy
The LuciTech Strategy Template is designed with modularity in mind, making it exceptionally straightforward to integrate your unique trading strategy logic. The template provides a clear separation between the core strategy management (risk, position sizing, exits) and the entry signal generation. This allows you to easily plug in your own buy and sell conditions without altering the robust underlying framework.
Here’s a step-by-step guide on how to adapt the template to your specific trading strategy:
1.
Locate the Strategy Logic Section:
Open the Pine Script editor in TradingView and navigate to the section clearly marked with the comment //Strategy Logic Example:. This is where the template’s placeholder entry conditions (a simple moving average crossover) are defined.
2.
Define Your Custom Entry Conditions:
Within this section, you will find variables such as longCondition and shortCondition. These are boolean variables that determine when a long or short trade should be initiated. Replace the existing example logic with your own custom buy and sell conditions. Your conditions can be based on any combination of indicators, price action patterns, candlestick formations, or other market analysis techniques. For example, if your strategy involves a combination of RSI and MACD, you would define longCondition as (rsi > 50 and macd_line > signal_line) and shortCondition as (rsi < 50 and macd_line < signal_line).
3.
Leverage the Template’s Built-in Features:
Once your longCondition and shortCondition are defined, the rest of the template automatically takes over. The integrated risk management module will calculate the appropriate position size based on your Risk % input and the chosen Stop Loss Type. The Risk:Reward ratio will determine your take-profit levels, and the Breakeven at R feature will manage your stop-loss dynamically. The time filter (Use Time Filter) will ensure your trades only occur within your specified hours, and the webhook alerts will notify you of trade executions.