TASC 2023.03 Every Little Bit Helps█ OVERVIEW
TASC's February 2023 edition of Traders' Tips includes an article titled "Every Little Bit Helps: Averaging The Open And Close To Reduce Noise" by John Ehlers. This code implements the numerical example from this article.
█ CONCEPTS
Using theories from digital signal processing as a starting point, John Ehlers argues that using the average of the open and close as the source time series of an indicator instead of using only the closing price can often lead to noise reduction in the output. This effect especially applies when there is no gap between the current bar's opening and the previous bar's closing prices. This trick can reduce noise in many common indicators such as the RSI, MACD, and Stochastic.
█ CALCULATIONS
Following the example presented in the original publication, this script illustrates the proposed strategy using the Relative Strength Index (RSI) as a test indicator. It plots two series:
RSI calculated using only closing prices as its source.
RSI of the same length as the first, but calculated using the average of open and close prices as its source, i.e. (open+close)/2 .
This script demonstrates that using the average of open and close as the calculation source results in a smoother indicator. To visually emphasize the advantage of this proposed trick, the script's color scheme is sensitive to both the RSI value and the difference between the two RSI data streams.
Educational
The Perfect Support & ResistanceSupport & Resistance drawn based on overbought & oversold RSI . where the overbought acts as resistance and oversold acts as support.
It has 2 levels (for support and resistance - i call them level_n_high or level_n_low) for each lookback period. it checks the highest pivot and the lowest pivot based on the lookback period then we compare if rsi is higher than the highest pivot or the lowest pivot and we also check if rsi is overbought or oversold and if the statement is true, then we assign the high to the variable level_n_high or level_n_low. n being the number of levels. in total there are 5 levels with both high & low for 5 lookback periods. This is basically how the code works.
these levels can be accessed at any timeframe. the defaults are 5m and 30m.
RSI settings: (default)
-------------------
length - 14
source - close
overbought - 70
oversold - 30
lookback settings: (default)
---------------------
lookback_0 - 200
lookback_1 - 100
lookback_2 - 50
lookback_3 - 20
lookback_4 - 10
Timeframe Settings: (default)
-------------------
htf1 - 5m
htf2 - 30m
Enjoy!
TOMMAR#TOMMAR #MultiMovingAverages #MMAR
Dear fellow traders, this is Tommy, and today I'd like to introduce you to the Multi-Moving Averages Ribbon (MMAR) indicator, which I believe to be one of the best MMAR indicators available on TradingView. Moving Averages is a popular technical analysis tool used to smooth out price data by creating an average of past price data points over a specified time period. They can be used to identify trends and provide a clearer view of price action, as well as generate buy and sell signals by observing crossovers between different moving average lines.
In the MMAR indicator, we have incorporated 12 different types of Moving Averages, including Simple Moving Averages (SMA), Exponential Moving Averages (EMA), Weighted Moving Averages (WMA), Hull Moving Averages (HMA), and Smoothed Moving Averages (SMMA), among others. This allows traders to choose the optimal type for their preferred trading commodities.
One common technique in technical analysis is using multiple Moving Averages with varying lengths, which provides a more comprehensive view of price action. By analyzing multiple Moving Averages with different timeframes, traders can better understand both short- and long-term trends and make more informed trading decisions. Some of the well-known combinations of multiple moving averages used by traders are (5, 9, 14, 21, 45), (6, 11, 16, 22, 51), [8, 13, 21, 55), (50, 100, 200), and (60, 120, 240).
Another way to gauge the strength of the market trend is to look for the arrangement of the Moving Averages. If they are in a sequential order, with the shortest on top and the longest on the bottom, it is most likely a bullish trend. On the other hand, if they are arranged in reverse order, with the shortest on the bottom and the longest on top, it is most likely a bearish trend. The 'Trend Light' in the indicator settings will automatically signal when the Moving Averages are in either an orderly or reverse arrangement.
Lastly, I have added a useful feature to the indicator: the 'MA Projection'. This feature projects and forecasts the Moving Averages in the future, allowing traders to easily identify confluence zones in future candlesticks. Please note that the projection levels may change in the case of extreme price action that significantly affects the Moving Averages.
This is free so any Tradingview users can use this indicator. Just search TOMMAR in the indicator section located on top of the chart.
#TOMMAR #MultiMovingAverages #MMAR
안녕하세요 트레이더 여러분, 토미입니다. 오늘 여러분들에게 소개드릴 지표는 다양한 길이의 이동평균선 조합을 사용할 수 있는 MMAR (Multiple Moving Averages Ribbon)입니다. 아마 제가 만든 MMAR 지표가 트레이딩뷰에서 가장 쓸만할 겁니다. 이동평균선, 줄여서 이평선은 말 그대로 특정 기간 범위 내의 주가들을 평균한 값들로 이루어진 선입니다. 제가 이평선 관련된 강의 자료는 예전에 올려드린 바 있으니 더 자세한 내용이 궁금하신 분들은 아래 링크/이미지 클릭하시길 바랍니다.
본 지표는 Simple Moving Averages (SMA), Exponential Moving Averages (EMA), Weighted Moving Averages (WMA), Hull Moving Averages (HMA), 그리고 Smoothed Moving Averages (SMMA) 등을 포함해 총 12개 종류의 이평선 지표를 사용할 수 있습니다. 또한 각 이평선의 길이들도 하나하나 일일이 설정하실 수 있습니다. 예를 들어 요즘에 자주 보이는 이평선들의 조합이 , , , , 그리고 등등이 존재하는데 여러분의 취향에 맞게 설정하여 사용하시면 됩니다.
몇 가지 주요 기능에 대해서 설명 드리겠습니다. 설정에서 ‘Trend Light’를 키면 이평선들의 정배열 혹은 역배열 여부를 쉽게 볼 수 있습니다. 이평선이 정배열일때는 맨 아래의 이평선에 초록불이, 역배열일때는 맨 위의 이평선에 빨간불이 켜지며 둘 다 아닐 땐 아무 불도 켜지지 않습니다. 또한 ‘MA Projection’을 키면 이평선들의 미래 예측 값들을 확장해줍니다. 당연히 가격 변동이 갑자기 크게 나오면 이평선 예측 확장 레벨들이 확 바뀌겠죠.
지표창에 TOMMAR 검색하시거나 아래 즐겨찾기 인디케이터에 넣기 클릭하시면 누구나 사용하실 수 있습니다~ 여러분의 구독, 좋아요, 댓글은 저에게 큰 힘이 됩니다.
Stochastic Oversold / Overbought Multi Time Frame on CandleAt the suggestion of a friend, I prepared this educational indicator to show how to use a Multi time frames on the chart based on the color of The Candle.
This Script calculates the stochastic oscillator for multiple timeframes and displays the overbought/oversold signals on the chart with color coding.
The stochastic oscillator is a momentum indicator that compares a security's closing price to its high-low range over a set number of periods. The indicator oscillates between 0 and 100, with readings above 80 considered overbought and readings below 20 considered oversold.
The indicator has the following input parameters:
%K Length: the number of periods used to calculate the stochastic oscillator (default is 14).
%K Smoothing: the number of periods used to smooth the stochastic oscillator (default is 1).
Three timeframes: The timeframes for which the stochastic oscillator is calculated can be set as 15-minute, 1-hour, or 4-hour intervals. For each timeframe, the user can choose to display the indicator (or not) and set the color of the candle. The user can also set the overbought and oversold levels (default is 80 and 20, respectively).
The indicator calculates the stochastic oscillator using the ta.stoch function from the built-in ta library in PineScript. It then uses the ta.sma function to smooth the stochastic oscillator if specified. Finally, the indicator uses the TimeframFuction to calculate the stochastic oscillator for different timeframes, which is then displayed on the chart using the barcolor function. The color of the candle is set based on whether the stochastic oscillator is overbought or oversold, as determined by the overbought/oversold levels specified by the user.
Note: This code is example for you to use multi timeframe in your indicator or Strategy , also prevent Repainting Calculation
Volume scaled Price + auto colour change light/dark mode🔶 OVERVIEW
🔹 This script shows price in a similar style as volume . To accomplish this we use the body of the candle ( close - open ), which is placed on a zero line.
This can be useful when comparing volume ~ price .
🔹 3 options are included to show additional lines, to make comparisons easier:
· Percentile nearest rank
· Bollinger Bands (BB)
· Simple Moving Average (SMA)
🔶 SETTINGS
🔹 Option : choose whether to show price (candles) or volume . Adding 2 versions of this indicator on the chart enables you to compare these 2 options:
🔹 Lines:
· (Percentile nearest rank (only the setting mult is used for this option).
· Bollinger Bands (BB) (only the setting % perc. nearest rank is used for this option).
· Simple Moving Average (SMA )
All 3 options will use length , this is the amount of bars used for calculations.
🔹 Show wick will show you... wicks :)
🔶 PERCENTILE NEAREST RANK
🔹 This script has 2 extra types of background color
dvP = volume > volume and z < z and z < prP_ and volume > prV
· In this case:
· volume is higher than previous volume ( volume > volume )
· volume is above 90th percentile rank ( volume > prV )
· price is lower than previous price ( z < z )
· price is below 10th percentile rank ( z < prP_ )
dvV = volume < volume and z > z and z > prP and volume < prV_
· The second type background color is reversed ( volume lower, price higher)
🔶 AUTOMATIC COLOUR CHANGE WHEN SWITCHING DARK/LIGHT MODE
🔹 chart.bg_color returns the color of the chart’s background from the "Chart settings/Appearance/Background" field, while chart.fg_color returns a color providing optimal contrast with chart.bg_color .
· Following technique gives you the possibility to pick your own colour for either dark/light time.
· We first retrieve separately the red, green and blue component of the measured chart.bg_color
r = color.r(chart.bg_color)
g = color.g(chart.bg_color)
b = color.b(chart.bg_color)
The following assumption states when all 3 colour components' values are below 80, we are in the dark mode:
isDark = r < 80 and g < 80 and b < 80
Now we can use isDark to automatically show your own dark/light mode colours (chosen at settings), dependable on the mode:
Cheers!
RSI Multi Symbol/Time Frame DetectorThis code is an implementation of the Relative Strength Index (RSI) indicator, which is a popular momentum indicator used in technical analysis. The RSI measures the strength of an asset's price action and provides information on whether the asset is overbought or oversold. The code also calculates a moving average of the RSI and allows the user to choose the type of moving average to be calculated (SMA, EMA, SMMA, WMA, or VWMA).
The user can select from different time frames (5, 15, 60, or 240), symbols (SP:SPX, OANDA:EURUSD, or OANDA:NZDUSD), RSI lengths, and moving average types and lengths.
The code starts by defining a function called "ma" for calculating different types of moving averages. This function takes as input the source data for the moving average calculation (the RSI), the length of the moving average, and the type of moving average. The function uses a switch statement to return the appropriate calculation based on the inputted moving average type.
Next, the code calculates the RSI and its moving average. The RSI is calculated using the well-known formula for the RSI, which involves calculating the average gains and losses over a specified period of time and then dividing the average gains by the average losses. The moving average is calculated using the "ma" function defined earlier.
Finally, the code allows the user to choose the symbol and time frame to be used in the RSI calculation, as well as the length of the RSI and the moving average, and the type of moving average. The user can choose from three symbols (SP:SPX, OANDA:EURUSD, OANDA:NZDUSD) and four time frames (5, 15, 60, and 240 minutes). The code then uses the "request.security" function to retrieve the RSI calculation for the selected symbol and time frame.
Note: This code is example for you to use multi timeframe/symbol in your indicator or Strategy , also prevent Repainting Calculation
How To Limit Repeating SignalsAn example of how to limit the input number of allowed signals using a function containing a condition counter with a reset.
Bollinger Bands SignalsDescription:
This indicator works well in trendy markets on long runs and in mean-reverting markets, at almost any timeframe.
That said, higher timeframes are much preferred for their intrinsic ability to cut out noise. The example chart is in 3H TF.
Be mindful, the script shows somewhat erratic jigsaw-like behaviour during consolidation periods when the price
jumps up and down in indecision which way to go. Fortunately, there are scripts out there that detect such periods.
You can choose between 4 Moving Averages, Vidya being the default. Period, Deviation and Bands Width parameters
all of them affect the signal generation.
For the Pine Script coder this script is pretty obvious.
It uses a standard technical analysis indicator - Bollinger Bands - and appends it with a 'width' parameter and
a signal generation procedure.
The signal generation procedure is the heart of this script that keeps the script pumping signals.
The BB width is used as a filter.
You can use this procedure in your own scripts and it will continue generate signals according to your rules.
change in rsiThis indicator will show how fast the rsi of a symbol is changing. you can see this as a differentiation function on rsi .
this will show the change in rsi in percentage.
Ex: suppose the rsi of a symbol at present is 60 and the previous value of rsi was 52,
as you can see the rsi has increased, which is a sign of the symbol being bullish .
this indicator will tell by what percentage the rsi of the symbol has increased or decreased.
for the above example, the change in rsi is 15.38% increase.
this is set to default chart time-frame.
InsideBar2.0Inside Bar: Inside Bar is defined as, " when candle body range falls within previous day candle body".
Some of us take the whole prices range . Here i have taken only the price range of the body of tehecandle.
I have created an indicator to identify Inside bras and draw target levels on both the sides. Traders can easily convert it into a strategy and checkout the success rate.
This script is written to identify InsideBar and then plot target 1 and target 2 irrespective the direction of following candles.
Inside Bar is here defined clearly when the whole body( Not high/Low, but Open and Close Only of the candle falls within the whole body of previous candle
Few static Variables are declared for one time use to store the following values
MotherCandle Index
High and Low of MotherCandle
Target 1 equal to size of the body of mother candle
Target 2 equal twice the size of Mother Candle
Depending upon the direction of the trend and breakout of the MotherCandle boundaries, target lines and labels are drawn.
Line.delete function is used to delete all the previous lines to keep the chart clean and not draw line on all every inside-bar detected in the past.
Label.delete function is used to delete all the previous labels for Target levels to clearly show current target levels.
barcolor() function is used to change the inside bar candle changed to "Yellow" .
Trend crossierHello there!
I would like to share my script.
This is S/R levels indicator based on custom range for each step used for computing minimum/maximum of the range.
For example - we predefined step with 50 candles as one, after we have got the minimum and maximum of it - we come to the next 50 candles and do the same to it.
Finaly - we have got 20 lines for 10 steps.
After that - we set the ( SMA * mult) to have step between lines and if N of lines in range of step from eachother(if a+step > b and b+step > c ...) we call it a strong level.
It is not my idea(but my code), so I do not claim the uniqueness of this idea (the customer asked me to code it, but I also read about this method in open sources before).
The second thing - vectors of current trend direction on different timeframes.
For this task I took the same ranges, but ema () of each range. After first step it has an array with N values.
The next thing it does is take out "chain" one by one on each iteration. How does it do that? We take new AVG with neighbor values.
If we have 10 length at start - after iteration it becomes 9. So it repeats computing till length is 2.
After we have 2 points left - we can plot the line using indexes.
This way we can see the trend direction on different timeframes.
Feel free to use, change, put into another scripts. You can even never use it!
The right to publish this particular code was issued by the customer.
Have fun!
Bursa Malaysia Index SeriesERVIEW
This indicator is intend to display Bursa Malaysia Index Series.
█ FEATURES
1. Choose available sector based on Bursa Malaysia Index.
2. Plot close or OHLC.
3. Color of Closing price plot adapt to chart background color.
4. Font size can be selected.
█ EXAMPLES / USAGES
Profit MonitorProfit monitor refers to a tool or system used to track and analyze a company's financial performance, specifically its profitability. This can be in the form of software, spreadsheet, or dashboard that displays key metrics such as revenue, expenses, and net profit over time. The goal of a profit monitor is to give stakeholders, such as business owners, investors, or managers, a clear and up-to-date view of the company's financial health, enabling them to make informed decisions and identify areas for improvement.
Financials - Comparing CompaniesHello All
For a while I have been working on this indicator to compare financials of the companies and sort them accordingly. Finally I completed and published it. I preferred using new object type feature in Pine language™ and I hope it might be an example and helpful for the developers.
First of all, as we have limitation on security calls, the indicator can get and compare financials for 5 companies only. also Chart time frame must be 1Day or higher! ( I recommend 1Day time frame ). if not then the indicator stops and shows the error message: "Please set the time frame 1Day or higher" . More important than others: You should choose the companies from the same sector! Compare apples to apples :)
The Financials in the indicator:
Earnings Per Share
Price to Earnings Ratio
Price to Sales Ratio
Price to Book Ratio
Profit Margin
Dept to Equity
Current Ratio
Market Capitalization
Also more information shown for each stocks:
Closing Price, sets the color accordingly
2 Simple/Exponential moving average, you can set the length, also it checks if it is rising/falling and sets the color accordingly
Volume info
Average volume (20 days), you can set the period
Currency for each security
Lets see some features in it:
it sorts the companies according to the financials:
If you move the mouse onto any header then it shows explanation about the financial:
You can change location and text size:
You can set the type of Moving averages as SMA or EMA and you can also set the length for both . Headers for both are changed automatically by MA type and length
Colors for Closing price and MA cells are set automatically:
For new Objects in Pine language click here
P.S. You can use this indicator while analyzing the financials of the companies in same sector/industry. So please don't ask for the alerts :)
Enjoy!
Global LiquidityPlots the sum of the balance sheets of the world's major central banks - FED, ECB, BoE, PBoC, BOJ, India and Switzerland - in a currency of your choice. Defaults to USD.
Also shows FED net liquidity (balance sheet - tga - rrp) for comparison. Uses a configurable multiplier to make the two lines viewable on the same price scale.
HTF Bar Close CountdownThis simple indicator displays a countdown for the amount of time left until a bar of your chosen timeframe closes.
Displays up to 5 different HTF countdowns.
Fully Customizable to fit any style, change the text colors, background colors, frame colors, display size and border & frame widths.
Flat display option for a sleek look to mesh with your charts.
Notes/Tips:
Higher Time Frames only! This is only intended to view HTF countdowns, will not work when trying to use a timeframe lower than your current chart's.
Some weird timeframes do not work, you'll know when.
Only works on live charts! Will display "Closed" when on an inactive chart.
Does not work for replay! A countdown is pretty pointless on a replay that is not real-time anyways...
Enjoy!
Price Swing Detection - Smart Money ConceptSince my own style is Smart Money Concept and these days I have seen a lot of my friends who are having trouble identifying structures for their indicators and strategies. I wrote this code so they could use it in their strategy . In fact, this type of structure, as one of the strongest technical structures, can increase the success of your strategy according to your personalization.
The script detects swings (i.e. significant highs and lows) in a financial instrument's price action over a specified period. The user can set the lookback period (number of candles to consider) and the colors of the lines representing bullish and bearish trends.
The script has two functions: detectSwing and pivot high. The detectSwing function calculates the swing highs and lows for the specified number of candles. The function uses the ta.highest and ta.lowest functions to find the highest and lowest prices, respectively, over the lookback period. The function also determines the swing state (high or low) of the current candle and returns the calculated swing values.
The pivot high function calculates the pivot high, which is an important step in detecting bullish structures in the market. If a new top (i.e. swing high) is found, the script updates the pivot high values and creates a line from the recent top to the last bar. The script also updates the trailing maximum values, which are used to extend the top extension line.
For Strategy :
The variable "trendDirection" in the code is used to keep track of the trend state, either bullish (up trend) or bearish (down trend), in the market. The variable is initialized to 0 which represents a downtrend. The value of this variable is updated later in the code based on the calculations of swing highs and lows, pivot crosses, and the trailing maximum. If a bullish structure is detected, the value of "trendDirection" is set to 1, indicating an uptrend.
OHLC [TFO]Keep higher timeframe OHLC in mind by watching the candle form on LTF charts. Inspired by ICT concepts, specifically concerning the daily OHLC.
Card DealerThis is a simple educational indicator that draws a pseudo-random new card from the deck every time the bar changes. This indicator is not intended to be used for making trading decisions; it's just for fun. The coding concept is a fork/iteration of the Inspirational Watermark indicator which can be found here
!! DISCLAIMER: The PineScript(v5) function math.random() returns a pseudo-random value. More information here: www.tradingview.com
Sup/Res Levels [QuantVue]Shows basic pivot point of support and resistance levels. Will show alerts for break of sup. or res. Allows for a volume filter for sup. res. breaks as well.
"B" means break of either a Sup. or Res. level with volume greater than the threshold.
"Bull/Bear Wick" means bullish/bearish candle on break.
Left - number of bars left hand side of the pivot .
Right - number of bars right hand side of the pivot .
Volume Thres. - the threshold value (%) for the Volume.
This indicator is useful to filter our insignificant breaks of sup. or res. Can help trader determine when to sit on their hands, or enter a trade.
Peer Performance - NIFTY36STOCKSI have created a peer performance dashboard for:
36 stocks from:
5 sectors of Nifty 100
This kind of dashboard is very useful for traders when they are planing to trade in a stocks and like to see how that is stocks is performing against other stocks in the same sector . Picking outperforming stocks will always give outstanding results when market starts moving. os having view on teh complete sector will always be good for traders before picking a specific stock.
Sectors covered in this indicators are:
Indian Auto Sector
Banking Sector
Oil, Gas and Energy Stocks
Cement Sector
Technology Sector
It will help traders reviewing performance ( stock return in last 1 year) of group of stocks from a particular sector .
Basically 5 functions are used to plot this dashboard
using "if " function to shortlist the stocks and the sector it belongs to.
tablo function to plot a table with specific parameters like number of row and columns, color of the frame of table
Getting yearly return into a series of variables using "request.security" function
str.tostring function is used to convert yearly return into a series of text so that it can inserted into the table cell.
finally plotting all the text and yearly return values using table.cell function
Position Sizer for UltraCap Trading Accreditation PlansWhen you enter a typical trading challenge, you are told that your accreditation assessment demo account is funded up to a certain amount. You are then told that you can only lose a small percentage of that account before you fail the accreditation/challenge. For example, if you are given a $100,000 dollar challenge demo account and are told that you can only lose up to 8% of that account ($8,000), then in reality, you really only have $8,000 to "trade" with before the game is over. That suggests that we need a risk management system that is initially based on the "true" amount of capital that we actually have to work with at the beginning of the assessment rather than an imaginary demo balance the prop firm gives us. Traditional forex risk management principles mandate that you never risk more than 2% of your trading capital on any one trade, the idea being that as long as your win rate is above some abysmally low level, it will take you a (hopefully) long time to run out of trading capital. That’s why the rules for passing an accreditation at the prop firm Ultra Cap mandate that you never risk more than 2% of your balance, or you will fail the assessment. With that in mind, I created this indicator/tool mostly for UltraCap accreditation candidates. In addition to using it to pass a prop firm assessment, you can also use it to increase your chances of surviving in an undercapitalized trading situation with your own money. For example, you could trade an actual $8,000 dollars (money that you really have) as if it were $100,000 (which is basically what any prop firm is asking you to do when they "give" you "$100,000" to trade with but only allow you lose a maximum of $8000). In that particular situation, the algorithm in this pricing model will base your initial risk exposure on an assumed account balance of $8000, and as you increase your balance, it proportionally increases risk exposure in the background until you reach a profit level of 6%, which just so happens to be the profit goal at Ultra Cap that gets you funded! This indicator uses a simple linear equation to progressively increase the risk exposure in the background based on your current stated account balance. Initially, your trade size will seem ridiculously small, but if your win rate holds up, the trade sizes will increase substantially as you get closer to the finish line.
[CLX] Progressbar - LogoThis script is part of the Library Progressbar - Showcase. You can find it under: