MA ClustersBackground :
This study allows to define ranges for contraction and expansion of a defined set of MA to analyse the the momentum at those specific situations.
In general all functions used are very basic but allows the user to set alerts when a cluster of MA enters a defined range within or outside the MAX and MIN of a selected MA cluster. The predefined length of the EMAs were put together by HurstHorns within a trading learning discord group and are designed for 1M timeframe to read the momentum for scalping entries - Thanks again for sharing.
Functions :
currently the following MA are available:
- ema
- sma
- smma
- wma
- vwma
- vma
the variable moving average is based on the calculation from lazybear.
- RSI Stoch Filter
- Wavetrend OB/OS filter
Currently only alerts for contraction are enabled to not overload the study but in case expansion would be from interest this can be added quickly.
Outlook:
Additional filters were added to see if they can add value in. the decision making or by simply filtering out noise. This is still quite experimental. Please share any useful observation I should add as additional filter option to find good setups. in relation to contractions or expansions.
Next version will get Bollinger bands for 1 selectable MA from the list for additional study options.
In case you are interested in more options such as more MA types or vwap.. just let me know. for VMA I need to do more research to add useful function for laddering or things like that.
In general The script itself can be easily extended by additional functions. As this is one of my first scripts the code itself might not be optimal or there are more elegant ways to come to the same goal. However please use for study purposes only and report bugs or enhancement requests.
good luck and happy trading!
Komut dosyalarını "vwap" için ara
NoBrain BreakoutUse 3min. Time frame.
Buy Stock Selection:-
When Close Price Cross Monthly Standard Pivot R1 & Monthly Standard Pivot R1 is Greater than Previous Day High( PDH ) Or Close.
Price must be Above 44 MA ,48 EMA & Vwap
***Buy When 3min Candle closed Above Camarilla R4 or Monthly Standard Pivot R1 whichever is High.
Sell Stock Selection:-
When Close Price Cross Monthly Standard Pivot S1 & Monthly Standard Pivot S1 is Less than Previous Day Low( PDL ) Or Close.
Price must be Below 44 MA ,48 EMA & Vwap
***Sell When 3min Candle closed Below Camarilla S4 or Monthly Standard Pivot S1 whichever is Low.
Trading time for
1st wave 9.30am to 10.45am.
2nd wave 12.45pm to 2.45pm.
(Based on NSE/ BSE India)
Indicators:-
1) Pivot Points Standard - Time Frame monthly.only select R1
2) Pivot Points Camarilla- Only select R4.
3) SMA 44
4) EMA 48
5) Vwap
6) For Trailing Stop Loss use SuperTrend- Length-13 Factor-2.7 or Length-15 Factor-3 (3min Timeframe)
Multi-Timeframe (MTF) Dashboard by RiTzMulti-Timeframe Dashboard
Shows values of different Indiactors on Multiple-Timeframes for the selected script/symbol
VWAP : if LTP is trading above VWAP then Bullish else if LTP is trading below VWAP then Bearish.
ST(21,1) : if LTP is trading above Supertrend (21,1) then Bullish , else if LTP is trading below Supertrend (21,1) then Bearish.
ST(14,2) : if LTP is trading above Supertrend (14,2) then Bullish , else if LTP is trading below Supertrend (14,2) then Bearish.
ST(10,3) : if LTP is trading above Supertrend (10,3) then Bullish , else if LTP is trading below Supertrend (10,3) then Bearish.
RSI(14) : Shows value of RSI (14) for the current timeframe.
ADX : if ADX is > 75 and DI+ > DI- then "Bullish ++".
if ADX is < 75 but >50 and DI+ > DI- then "Bullish +".
if ADX is < 50 but > 25 and DI+ > DI- then "Bullish".
if ADX is above 75 and DI- > DI+ then "Bearish ++".
if ADX is < 75 but > 50 and DI- > DI+ then "Bearish+".
if ADX is < 50 but > 25 and DI- > DI+ then "Bearish".
if ADX is < 25 then "Neutral".
MACD : if MACD line is above Signal Line then "Bullish", else if MACD line is below Signal Line then "Bearish".
PH-PL : "< PH > PL" means LTP is trading between Previous Timeframes High(PH) & Previous Timeframes Low(PL) which indicates Rangebound-ness.
"> PH" means LTP is trading above Previous Timeframes High(PH) which indicates Bullish-ness.
"< PL" means LTP is trading below Previous Timeframes Low(PL) which indicates Bearish-ness.
Alligator : If Lips > Teeth > Jaw then Bullish.
If Lips < Teeth < Jaw then Bearish.
If Lips > Teeth and Teeth < Jaw then Neutral/Sleeping.
If Lips < Teeth and Teeth > Jaw then Neutral/Sleeping.
Settings :
Style settings :-
Dashboard Location: Location of the dashboard on the chart
Dashboard Size: Size of the dashboard on the chart
Bullish Cell Color: Select the color of cell whose value is showing Bullish-ness.
Bearish Cell Color: Select the color of cell whose value is showing Bearish-ness.
Neutral Cell Color: Select the color of cell whose value is showing Rangebound-ness.
Cell Transparency: Select Transparency of cell.
Column Settings :-
You can select which Indicators values should be displayed/hidden.
Timeframe Settings :-
You can select which timeframes values should be displayed/hidden.
Note :- I'm not a pro Developer/Coder , so if there are any mistakes or any suggestions for improvements in the code then do let me know!
Note :- Use in Live market , might show wrong values for timeframes other than current timeframe in closed market!!
Nifty / Banknifty Dashboard by RiTzNifty / Banknifty Dashboard :
Shows Values of different Indicators on current Timeframe for the selected Index & it's main constituents according to weightage in index.
customized for Nifty & Banknifty (You can customize it according to your needs for the markets/indexes you trade in)
Interpretation :-
VWAP : if LTP is trading above VWAP then Bullish else if LTP is trading below VWAP then Bearish.
ST(21,1) : if LTP is trading above Supertrend (21,1) then Bullish , else if LTP is trading below Supertrend (21,1) then Bearish.
ST(14,2) : if LTP is trading above Supertrend (14,2) then Bullish , else if LTP is trading below Supertrend (14,2) then Bearish.
ST(10,3) : if LTP is trading above Supertrend (10,3) then Bullish , else if LTP is trading below Supertrend (10,3) then Bearish.
RSI(14) : Shows value of RSI (14) for the current timeframe.
ADX : if ADX is > 75 and DI+ > DI- then "Bullish ++".
if ADX is < 75 but >50 and DI+ > DI- then "Bullish +".
if ADX is < 50 but > 25 and DI+ > DI- then "Bullish".
if ADX is above 75 and DI- > DI+ then "Bearish ++".
if ADX is < 75 but > 50 and DI- > DI+ then "Bearish+".
if ADX is < 50 but > 25 and DI- > DI+ then "Bearish".
if ADX is < 25 then "Neutral".
MACD : if MACD line is above Signal Line then "Bullish", else if MACD line is below Signal Line then "Bearish".
PDH-PDL : "< PDH > PDL" means LTP is trading between Previous Days High(PDH) & Previous Days Low(PDL) which indicates Rangebound-ness.
"> PDH" means LTP is trading above Previous Days High(PDH) which indicates Bullish-ness.
"< PDL" means LTP is trading below Previous Days Low(PDL) which indicates Bearish-ness.
Alligator : If Lips > Teeth > Jaw then Bullish.
If Lips < Teeth < Jaw then Bearish.
If Lips > Teeth and Teeth < Jaw then Neutral/Sleeping.
If Lips < Teeth and Teeth > Jaw then Neutral/Sleeping.
Settings :
Style settings :-
Dashboard Location: Location of the dashboard on the chart
Dashboard Size: Size of the dashboard on the chart
Bullish Cell Color: Select the color of cell whose value is showing Bullish-ness.
Bearish Cell Color: Select the color of cell whose value is showing Bearish-ness.
Neutral Cell Color: Select the color of cell whose value is showing Rangebound-ness.
Cell Transparency: Select Transparency of cell.
Columns Settings :-
You can select which Indicators values should be displayed/hidden.
Rows Settings :-
You can select which Stocks/Symbols values should be displayed/hidden.
Symbol Settings :-
Here you can select the Index & Stocks/Symbols
Dashboard for Index : select Nifty/Banknifty
if you select Nifty then Nifty spot, Nifty current Futures and the stocks with most weightage in Nifty index will be displayed on the Dashboard/Table.
if you select Banknifty then Banknifty spot, Banknifty current Futures and the stocks with most weightage in Banknifty index will be displayed on the Dashboard/Table.
You can Customise it according to your needs, you can choose any Symbols you want to use.
Note :- This is inspired from "RankDelta" by AsitPati and "Nifty and Bank Nifty Dashboard v2" by cvsk123 (Both these scripts are closed source!)
I'm not a pro Developer/Coder , so if there are any mistakes or any suggestions for improvements in the code then do let me know!
Super scalpThis is scalp strategy based on the confluence of 3 indicators
ema 9 , supertrend and vwap
when supertrend buy signal is generated and the price is above ema and vwap scalp buy signal is generated
when supertrend sell signal is generated and the price is below ema and vwap scalp sell signal is generated
pandas_taLibrary "pandas_ta"
Level: 3
Background
Today is the first day of 2022 and happy new year every tradingviewers! May health and wealth go along with you all the time. I use this chance to publish my 1st PINE v5 lib : pandas_ta
This is not a piece of cake like thing, which cost me a lot of time and efforts to build this lib. Beyond 300 versions of this script was iterated in draft.
Function
Library "pandas_ta"
PINE v5 Counterpart of Pandas TA - A Technical Analysis Library in Python 3 at github.com
The Original Pandas Technical Analysis (Pandas TA) is an easy to use library that leverages the Pandas package with more than 130 Indicators and Utility functions and more than 60 TA Lib Candlestick Patterns.
I realized most of indicators except Candlestick Patterns because tradingview built-in Candlestick Patterns are even more powerful!
I use this to verify pandas_ta python version indicators for myself, but I realize that maybe many may need similar lib for pine v5 as well.
Function Brief Descriptions (Pls find details in script comments)
bton --> Binary to number
wcp --> Weighted Closing Price (WCP)
counter --> Condition counter
xbt --> Between
ebsw --> Even Better SineWave (EBSW)
ao --> Awesome Oscillator (AO)
apo --> Absolute Price Oscillator (APO)
xrf --> Dynamic shifted values
bias --> Bias (BIAS)
bop --> Balance of Power (BOP)
brar --> BRAR (BRAR)
cci --> Commodity Channel Index (CCI)
cfo --> Chande Forcast Oscillator (CFO)
cg --> Center of Gravity (CG)
cmo --> Chande Momentum Oscillator (CMO)
coppock --> Coppock Curve (COPC)
cti --> Correlation Trend Indicator (CTI)
dmi --> Directional Movement Index(DMI)
er --> Efficiency Ratio (ER)
eri --> Elder Ray Index (ERI)
fisher --> Fisher Transform (FISHT)
inertia --> Inertia (INERTIA)
kdj --> KDJ (KDJ)
kst --> 'Know Sure Thing' (KST)
macd --> Moving Average Convergence Divergence (MACD)
mom --> Momentum (MOM)
pgo --> Pretty Good Oscillator (PGO)
ppo --> Percentage Price Oscillator (PPO)
psl --> Psychological Line (PSL)
pvo --> Percentage Volume Oscillator (PVO)
qqe --> Quantitative Qualitative Estimation (QQE)
roc --> Rate of Change (ROC)
rsi --> Relative Strength Index (RSI)
rsx --> Relative Strength Xtra (rsx)
rvgi --> Relative Vigor Index (RVGI)
slope --> Slope
smi --> SMI Ergodic Indicator (SMI)
sqz* --> Squeeze (SQZ) * NOTE: code sufferred from very strange error, code was commented.
sqz_pro --> Squeeze PRO(SQZPRO)
xfl --> Condition filter
stc --> Schaff Trend Cycle (STC)
stoch --> Stochastic (STOCH)
stochrsi --> Stochastic RSI (STOCH RSI)
trix --> Trix (TRIX)
tsi --> True Strength Index (TSI)
uo --> Ultimate Oscillator (UO)
willr --> William's Percent R (WILLR)
alma --> Arnaud Legoux Moving Average (ALMA)
xll --> Dynamic rolling lowest values
dema --> Double Exponential Moving Average (DEMA)
ema --> Exponential Moving Average (EMA)
fwma --> Fibonacci's Weighted Moving Average (FWMA)
hilo --> Gann HiLo Activator(HiLo)
hma --> Hull Moving Average (HMA)
hwma --> HWMA (Holt-Winter Moving Average)
ichimoku --> Ichimoku Kinkō Hyō (ichimoku)
jma --> Jurik Moving Average Average (JMA)
kama --> Kaufman's Adaptive Moving Average (KAMA)
linreg --> Linear Regression Moving Average (linreg)
mgcd --> McGinley Dynamic Indicator
rma --> wildeR's Moving Average (RMA)
sinwma --> Sine Weighted Moving Average (SWMA)
ssf --> Ehler's Super Smoother Filter (SSF) © 2013
supertrend --> Supertrend (supertrend)
xsa --> X simple moving average
swma --> Symmetric Weighted Moving Average (SWMA)
t3 --> Tim Tillson's T3 Moving Average (T3)
tema --> Triple Exponential Moving Average (TEMA)
trima --> Triangular Moving Average (TRIMA)
vidya --> Variable Index Dynamic Average (VIDYA)
vwap --> Volume Weighted Average Price (VWAP)
vwma --> Volume Weighted Moving Average (VWMA)
wma --> Weighted Moving Average (WMA)
zlma --> Zero Lag Moving Average (ZLMA)
entropy --> Entropy (ENTP)
kurtosis --> Rolling Kurtosis
skew --> Rolling Skew
xev --> Condition all
zscore --> Rolling Z Score
adx --> Average Directional Movement (ADX)
aroon --> Aroon & Aroon Oscillator (AROON)
chop --> Choppiness Index (CHOP)
xex --> Condition any
cksp --> Chande Kroll Stop (CKSP)
dpo --> Detrend Price Oscillator (DPO)
long_run --> Long Run
psar --> Parabolic Stop and Reverse (psar)
short_run --> Short Run
vhf --> Vertical Horizontal Filter (VHF)
vortex --> Vortex
accbands --> Acceleration Bands (ACCBANDS)
atr --> Average True Range (ATR)
bbands --> Bollinger Bands (BBANDS)
donchian --> Donchian Channels (DC)
kc --> Keltner Channels (KC)
massi --> Mass Index (MASSI)
natr --> Normalized Average True Range (NATR)
pdist --> Price Distance (PDIST)
rvi --> Relative Volatility Index (RVI)
thermo --> Elders Thermometer (THERMO)
ui --> Ulcer Index (UI)
ad --> Accumulation/Distribution (AD)
cmf --> Chaikin Money Flow (CMF)
efi --> Elder's Force Index (EFI)
ecm --> Ease of Movement (EOM)
kvo --> Klinger Volume Oscillator (KVO)
mfi --> Money Flow Index (MFI)
nvi --> Negative Volume Index (NVI)
obv --> On Balance Volume (OBV)
pvi --> Positive Volume Index (PVI)
dvdi --> Dual Volume Divergence Index (DVDI)
xhh --> Dynamic rolling highest values
pvt --> Price-Volume Trend (PVT)
Remarks
I also incorporated func descriptions and func test script in commented mode, you can test the functino with the embedded test script and modify them as you wish.
This is a Level 3 free and open source indicator library.
Feedbacks are appreciated.
This is not the end of pandas_ta lib publication, but it is start point with pine v5 lib function and I will add more and more funcs into this lib for my own indicators.
Function Name List:
bton()
wcp()
count()
xbt()
ebsw()
ao()
apo()
xrf()
bias()
bop()
brar()
cci()
cfo()
cg()
cmo()
coppock()
cti()
dmi()
er()
eri()
fisher()
inertia()
kdj()
kst()
macd()
mom()
pgo()
ppo()
psl()
pvo()
qqe()
roc()
rsi()
rsx()
rvgi()
slope()
smi()
sqz_pro()
xfl()
stc()
stoch()
stochrsi()
trix()
tsi()
uo()
willr()
alma()
wcx()
xll()
dema()
ema()
fwma()
hilo()
hma()
hwma()
ichimoku()
jma()
kama()
linreg()
mgcd()
rma()
sinwma()
ssf()
supertrend()
xsa()
swma()
t3()
tema()
trima()
vidya()
vwap()
vwma()
wma()
zlma()
entropy()
kurtosis()
skew()
xev()
zscore()
adx()
aroon()
chop()
xex()
cksp()
dpo()
long_run()
psar()
short_run()
vhf()
vortex()
accbands()
atr()
bbands()
donchian()
kc()
massi()
natr()
pdist()
rvi()
thermo()
ui()
ad()
cmf()
efi()
ecm()
kvo()
mfi()
nvi()
obv()
pvi()
dvdi()
xhh()
pvt()
Bogdan Ciocoiu - Looking Glass► Description
The script shows a multi-timeline suite of information for the current ticker. This information refers to configurable moving averages, RSI, Stochastic RSI, VWAP and TSI data. The timeframes reflected in the script vary from 1m to 1h. I recommend the tool for 3m scalping as it provides good visibility upwards.
The headings from the table are:
{Close} - {MA1}
{Close} - {MA2}
{Close} - {MA3}
{MA1} - {MA2}
{MA2} - {MA3}
{RSI}
{Stoch RSI K}
{Stoch RSI D}
{VWAP}
{TSI}
{TSI EMA}
{TSI} - {TSI EMA}
► Originality and usefulness
This tool is helpful because it helps users read a chart much quicker than if they were to navigate between timeframes. The colour coding indicates an accident/descendant trend between any two values (i.e. close vs MA1, MA1-MA2, RSI K vs RSI D, etc.).
► Open-source reuse
www.tradingview.com
www.tradingview.com
www.tradingview.com
www.tradingview.com
www.tradingview.com
+ Time Weighted Average PriceThis is basically NeoButane's script (which should be more popular than it is) with a few additions, those being primarily plotted lines of the closing price of the previous TWAP, however I've also added the optionality of plotting a second TWAP of say, maybe a different resolution if you are so inclined. Also, you may plot shapes across the top or bottom of your chart color based on if current price is above or below the previous closing price of the TWAP, in case you might want to clean the chart up a bit and not plot the actual closing price lines.
But what is TWAP, exactly, you might be saying to yourself. If you're familiar with VWAP then you've probably a pretty good idea of what this is and how it works. TWAP is a calculation that defines the weighted average price over a specific time period. Traders use TWAP as a trading strategy, or more specifically, an execution strategy, to place large orders without excessively impacting the market price. They break down the large orders into several sets of small orders priced near TWAP. Basically it's VWAP but without the volume element, and most traders will likely use it in a similar fashion as they might use VWAP, and that is like a moving average--dynamic support and resistance.
I like to think of it as displaying a price range over a specified time period (such as a month or a week). This is why I think the closes of the previous period or two are so important. Losing the previous closing price or regaining it can often give you an inclination as to whether at least some of the next period (the one you're currently in) may be bearish or bullish.
Above is a more zoomed out view of ADA/USD
And here's the same image with just the closing price for the time period plotted.
Enjoy!
WaveTrend 4h/24mWaveTrend 4h/24m is a trading tool based on two WaveTrend timeframes.
For this script the WaveTrend calculations made by LazyBear were used. WaveTrend is a widely used indicator for finding direction of an asset.
The strategy is developed by Youtuber Jayson Casper. The main strategy on the 4 hour and 24 minute timeframes, this will be the default timeframes. Timeframes can be adjusted in the indicator interface.
With Jaysons' we wait for both timeframes to have last printed a green dot for longs, and both timeframes to have last printed a red dot for shorts. When this occurs a green diamond will be printed for longs, a red diamond for shorts.
Make sure to always use the chart from the smallest timeframe you're using, so by defaults use the 24 minute chart.
Features of the indicator:
- WaveTrend Timeframe 1 (Blue/Lightblue wave).
- WaveTrend Timeframe 2 (Blue/Purple line with filled background between the lines).
- VWAP (Yellow wave which is turned off by default)
- Green/Red Diamonds
What to look for?
This script is all about the Green and Red Diamonds.
A Green diamond will be printed when on both the 4 hour and 24 minute timeframe the last printed dot was a green dot.
A Red diamond will be printed when on both the 4 hour and 24 minute timeframe the last printed dot was a red dot.
What are the Green and Red Diamonds based on?
When both VWAP timeframes are ABOVE 0, a green diamond will be printed. This is equivalent to the last dot on both WaveTrend timeframes being a green dot.
When both VWAP timeframes are BELOW 0, a red diamond will be printed. This is equivalent to the last dot on both WaveTrend timeframes being a red dot.
Happy Trading!
PROFIT INDICATORFirst let me tell you which indicators have been used in this script so that you have the confidence while taking the trade:
(a) Bollinger Band with 20 SMA Inside it - Currently it is off, you can turn it on from settings.
(b) HMA 33, I have added the option of using two HMA's simultaneously. You can use HMA, EMA, SMA as per your settings and it would be color trending.
(c) VWAP- you can turn it on from settings
(d) CPR- you can turn it on from settings
(e) EMA's 20, 50, 200. Currently off, you can turn it on from settings.
(d) SMA's 50 and 200. Currently off, yu can turn it on from settings, if you want to use 20 SMA you can use bollinger band basis that is 20 period SMA.
(f) Trend bar at bottom on the basis of 50 EMA.
(g) Half Trend
(h) Trend strength Detector
(d) EMA 50 high and low to show the pac channel. I am not using this however as per request I have added this. Currently, it is trun on and you can turn it off from settings.
(f) Auto Fib levels
Please use a stick note for few days and mention imp notes before taking trade to check if all the conditions are matching to take the trade.
Buy Condition:-
1. Bolling band should be widely open.
2. Check the support and resistance from CPR. Candle should close above support in green.
3. Check the trend bar at bottom, it should be green, if it is grey in colour dont enter in trade.
4. Candle should be closing above EMA 50 and its upto you if you need additional confirmation, you can use EMA 20, 50, 200 and SMA 50 and 200, this is optional.
5. You can use VWAP as support or resistance and you can turn it on from settings.
6. Trending HMA of 33 should be in green for buy.
7. Half trend Indicator should give buy signal.
8. Trend Strength Indicator for checking the strength of the trend, if the arrow is big upside, you can go for buy.
9. Exit from buy trade when it start showing very small arrow which means trend is about to change.
10.Exit buy trade at 61.8 Fib level
Sell Condition:-
1. Bolling band should be widely open.
2. Check the support and resistance from CPR. Candle should close below resistance in red.
3. Check the trend bar at bottom, it should be red, if it is grey in colour dont enter in trade.
4. Candle should be closing below EMA 50 and its upto you if you need additional confirmation, you can use EMA 20, 50, 200 and SMA 50 and 200, this is optional.
5. You can use VWAP as support or resistance and you can turn it on from settings.
6. Trending HMA of 33 should be in red for sell.
7. Half trend Indicator should give sell signal.
8. Trend Strength Indicator for checking the strength of the trend, if the arrow is big downside, you can go for sell.
9. Exit from sell trade when down arrows start showing very small in size which means trend is about to change.
10.Exit sell trade at 61.8 Fib level
Pulu's 3 Moving Averages
Pulu's 3 Moving Averages
Release version 1, date 2021-09-28
This script allows you to customize three sets of moving averages, turn on/off, set color and parameters. It also tags the start date of the last set of moving average if there is. This, release version 1, supports eight moving average algorithms:
ALMA, Arnaud Legoux Moving Average
EMA, Exponential Moving Average
RMA, Adjusted exponential moving average (aka Wilder’s EMA)
SMA, Simple Moving Average
SWMA, Symmetrically-Weighted Moving Average
VWAP, Volume-Weighted Average Price
VWMA, Volume-Weighted Moving Average
WMA, Weighted Moving Average
The availability and function parameters
Func. Availability Parameters
ALMA
MA1, MA2, MA3
source
length
offset
sigma
EMA
RMA
SMA
VWMA
WMA
MA1, MA2, MA3
source
length
SWMA
VWAP
MA1
source
Parameters
Parameter Description
source the series of values to process. The default is to use the closing price to calculate the moving average.
length an integer value that defines the number of bars to calculate the moving average on. The SWMA and VWAP do not use this parameter.
ALMA offset a floating-point value that controls the tradeoff between smoothness (with a value closer to 1) and responsiveness (with a value closer to 0). This parameter is only used by ALMA.
ALMA sigma a floating-point value that specifies the ALMA’s smoothness. The larger this value, the smoother the moving average is. This parameter is only used by ALMA.
I'm not sure if it is needed, so I do not let the three Moving Averages of the script to have indivial algorithm setting. Because that will involve much complicated condition testing and use up more TradingView script lines limit. If you need to combine different algorithms in the three sets of moving averages, or have other ideas, leave a message to let me know; maybe I will try it in the next update.
我不確定是否需要,所以我沒有讓腳本的三組移動平均線有各別的算法設置。因為這將涉及更多複雜的條件測試,並使用更多 TradingView 腳本列數限制。如果您需要在三組均線中組合不同的算法,或者有其他想法,請留言告訴我;也許我會在下一次更新中嘗試。
Exponential moving averages Convergence to identify Strength of Exponential moving averages Convergence to identify Strength of the stock.
Description:
This script is developed to find Convergences for many indicators. It analyses Convergences of 20days, 50days, 100days, 150days and 200days exponential moving averages. When all the plotted lines are converged and Price of stock is above the Convergence the stock is bullish, similarly if the price of the stock is below the convergence stock is bearish.
This indicator gives you VWAP and EMA’s for convergence along with Bollinger Bands.
VWAP and Bollinger bands and EMA’s can be altered as you required.
In settings menu we can enable and disable VWAP, EMA’S & Bollinger bands and in style menu even we can choose required EMA
It helps for convergence.
TWAP TrendHere we are experimenting with using TWAP for trend analysis. It appears to work better than VWAP on lower timeframes.
TWAP is a tool used by algorithm based traders that allows them to distribute their orders throughout the day without disturbing price or having their positions known to rival traders in the market. It's similar to VWAP and serves the same function, except it lacks the volume aspect. This can be an issue when position entry/exit may be affected by slippage.
The main benefit of TWAP is deciding how to distribute orders throughout the chosen timeframe. However, just like the VWAP traders will normally use it as a moving average or target for price action to pull into.
There is an option to change the timeframe that TWAP is calculated from.
Originally by NeoButane:
Non Parametric Adaptive Moving AverageIntroduction
Not be confused with non-parametric statistics, i define a "non-parametric" indicator as an indicator who does not have any parameter input. Such indicators can be useful since they don't need to go through parameter optimization. I present here a non parametric adaptive moving average based on exponential averaging using a modified ratio of open-close to high-low range indicator as smoothing variable.
The Indicator
The ratio of open-close to high-low range is a measurement involving calculating the ratio between the absolute close/open price difference and the range (high - low) , now the relationship between high/low and open/close price has been studied in econometrics for some time but there are no reason that the ohlc range ratio may be an indicator of volatility, however we can make the hypothesis that trending markets contain less indecision than ranging market and that indecision is measured by the high/low movements, this is an idea that i've heard various time.
Since the range is always greater than the absolute close/open difference we have a scaled smoothing variable in a range of 0/1, this allow to perform exponential averaging. The ratio of open-close to high-low range is calculated using the vwap of the close/high/low/open price in order to increase the smoothing effect. The vwap tend to smooth more with low time frames than higher ones, since the indicator use vwap for the calculation of its smoothing variable, smoothing may differ depending on the time frame you are in.
1 minute tf
1 hour tf
Conclusion
Making non parametric indicators is quite efficient, but they wont necessarily outperform classical parametric indicators. I also presented a modified version of the ratio of open-close to high-low range who can provide a smoothing variable for exponential averaging. I hope the indicator can help you in any way.
Thanks for reading !
Enhanced Retail vs Institutional ActivityThis script highlights market activity in real-time, making it easier to infer the type of market participants driving price and volume changes.
Here’s a list of what the script analyzes:
Volume:
Current volume of the candle.
Moving average of volume over a specified number of periods.
Volume spikes: Current volume compared to a threshold multiple of the moving average.
Price Movement:
Percentage change in price between the current and previous candle.
Identifies significant price changes based on a user-defined threshold.
Institutional Activity:
High volume spikes combined with significant price movements.
Retail Activity:
Periods without volume spikes or significant price changes.
VWAP (Volume-Weighted Average Price):
The average traded price over a specified lookback period, weighted by volume, used as a benchmark.
Market Context Visualization:
Background colors to differentiate institutional (red) and retail (green) activity.
Overlays for:
-Volume bars.
-Average volume line.
-VWAP line.
In summary:
Red = Institutional activity: High volume + significant price change.
Green = Retail activity: Low volume or insignificant price change.
---------------------------------------------------------------------------------------------------------------------
Analysis Explanation:
I’m forecasting that Bitcoin will retest its November 12th low (~$85,098.75) around January 20th, 2025, where the horizontal support line intersects with the downtrend line. This conclusion is based on the following:
Trend Analysis:
The chart shows a clear downtrend with price respecting the descending trendline.
The intersection of the horizontal support and the downtrend line on January 20th indicates a confluence point where price action may gravitate.
Volume and Activity Insights:
Using the Retail vs Institutional Activity indicator, the chart highlights periods dominated by institutional (red background) or retail (green background) activity.
Current price action is in a green zone, suggesting predominantly retail participation with lower volume and insignificant price movements.
Retail vs Institutional Dynamics:
Institutional activity (red zones) aligns with significant price movements and volume spikes, often marking key turning points or trends.
The recent green retail-dominated periods suggest a lack of strong momentum, which may lead to continued price decline until institutions re-enter around the confluence area.
Volume Observations:
Volume remains relatively low during the current retail phase, indicating weak buying pressure.
A potential surge in institutional activity (red zones) near the support level could trigger a rebound or breakdown.
I expect Bitcoin’s price to drop further and test the November 12th low near $85,098.75 on January 20th, 2025. This projection is supported by the convergence of the downtrend line and horizontal support, low retail-driven volume, and historical institutional activity patterns observed using the "Retail vs Institutional Activity" indicator.
OHOL_VWAP_STIts all about OH and OL concept for Nifty Future.
1.When OH candle formed and breaks the high we can enter the position, candle should be below supertrend , moving average and vwap .
2..When OL candle formed and breaks the high we can enter the position, candle should be above supertrend , moving average and vwap .
Volume Weighted Average Price with 4 EMAsThe Volume Weighted Average Price (VWAP) with EMAs indicator combines the VWAP, which provides the average price of a security weighted by volume, with four Exponential Moving Averages (EMAs) of customizable lengths (default: 9, 20, 50, 200). This indicator helps traders identify trends, potential support and resistance levels, and make informed trading decisions based on price action relative to volume and moving averages.
Hilega-Milega-RSI-EMA-WMA indicator designed by NKThis indicator is works on RSI, Price and volume to give leading Indicator to Buy or Sell.
This indicator works on all financial markets
Hilega-Milega-RSI-EMA-WMA indicator designed by Nitish Sir
For intraday trade, enter with 15 mins chart.
For positional trade, enter with 1-hour chart.
For Investment this system can be used with daily/weekly/monthly chart.
• RED line is for Volume.
• Green line is for the Price.
• Black line is for the RSI (9).
SELL Trade
1. When Volume (RED line) is above/crossed above Price (Green line) and Strength (Black line), then stock price will go down. This means we will SELL.
2. When there is a GAP in the RED line and the Green line till the time price will go down.
Exit criteria
Whenever Red line exit the shaded area of Oversold zone OR Red line cross over the Green and black line then we will exit.
In case of the SELL trade, after the entry we will monitor the trade in 5 min chart, if the candle is closed above the VWAP then exit.
If the price is crossed the 50 SMA then we will exit trade.
BUY Trade
1. When Volume (RED line) is below/crossed below Price (Green line) and Strength (Black line), then stock price will go up. This means we will BUY.
2. When there is a GAP in the RED line and the Green line till the time price will go down.
Exit criteria
Whenever Red line exit the shaded area of Overbought zone OR Red line cross over the Green and black line then we will exit.
In case of the Buy trade, after the entry we will monitor the trade candle is closed below the VWAP then exit.
If the price is crossed the 50 SMA then we will exit trade.
DeepSignalFilterHelpersLibrary "DeepSignalFilterHelpers"
filter_intraday_intensity(useIiiFilter)
Parameters:
useIiiFilter (bool)
filter_vwma(src, length, useVwmaFilter)
Parameters:
src (float)
length (int)
useVwmaFilter (bool)
filter_nvi(useNviFilter)
Parameters:
useNviFilter (bool)
filter_emv(length, emvThreshold, useEmvFilter, useMovingAvg)
EMV filter for filtering signals based on Ease of Movement
Parameters:
length (int) : The length of the EMV calculation
emvThreshold (float) : The EMV threshold
useEmvFilter (bool) : Whether to apply the EMV filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_adi(length, threshold, useAdiFilter, useMovingAvg)
ADI filter for filtering signals based on Accumulation/Distribution Index
Parameters:
length (int) : The length of the ADI moving average calculation
threshold (float) : The ADI threshold
useAdiFilter (bool) : Whether to apply the ADI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_mfi(length, mfiThreshold, useMfiFilter, useMovingAvg)
MFI filter for filtering signals based on Money Flow Index
Parameters:
length (int) : The length of the MFI calculation
mfiThreshold (float) : The MFI threshold
useMfiFilter (bool) : Whether to apply the MFI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
detect_obv_states(obvThresholdStrong, obvThresholdModerate, lookbackPeriod, obvMode)
detect_obv_states: Identify OBV states with three levels (Strong, Moderate, Weak) over a configurable period
Parameters:
obvThresholdStrong (float) : Threshold for strong OBV movements
obvThresholdModerate (float) : Threshold for moderate OBV movements
lookbackPeriod (int) : Number of periods to analyze OBV trends
obvMode (string) : OBV mode to filter ("Strong", "Moderate", "Weak")
Returns: OBV state ("Strong Up", "Moderate Up", "Weak Up", "Positive Divergence", "Negative Divergence", "Consolidation", "Weak Down", "Moderate Down", "Strong Down")
filter_obv(src, length, obvMode, threshold, useObvFilter, useMovingAvg)
filter_obv: Filter signals based on OBV states
Parameters:
src (float) : The source series (default: close)
length (int) : The length of the OBV moving average calculation
obvMode (string) : OBV mode to filter ("Strong", "Moderate", "Weak")
threshold (float) : Optional threshold for additional filtering
useObvFilter (bool) : Whether to apply the OBV filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_cmf(length, cmfThreshold, useCmfFilter, useMovingAvg)
CMF filter for filtering signals based on Chaikin Money Flow
Parameters:
length (int) : The length of the CMF calculation
cmfThreshold (float) : The CMF threshold
useCmfFilter (bool) : Whether to apply the CMF filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_vwap(useVwapFilter)
VWAP filter for filtering signals based on Volume-Weighted Average Price
Parameters:
useVwapFilter (bool) : Whether to apply the VWAP filter
Returns: Filtered result indicating whether the signal should be used
filter_pvt(length, pvtThreshold, usePvtFilter, useMovingAvg)
PVT filter for filtering signals based on Price Volume Trend
Parameters:
length (int) : The length of the PVT moving average calculation
pvtThreshold (float) : The PVT threshold
usePvtFilter (bool) : Whether to apply the PVT filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_vo(shortLength, longLength, voThreshold, useVoFilter, useMovingAvg)
VO filter for filtering signals based on Volume Oscillator
Parameters:
shortLength (int) : The length of the short-term volume moving average
longLength (int) : The length of the long-term volume moving average
voThreshold (float) : The Volume Oscillator threshold
useVoFilter (bool) : Whether to apply the VO filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_cho(shortLength, longLength, choThreshold, useChoFilter, useMovingAvg)
CHO filter for filtering signals based on Chaikin Oscillator
Parameters:
shortLength (int) : The length of the short-term ADI moving average
longLength (int) : The length of the long-term ADI moving average
choThreshold (float) : The Chaikin Oscillator threshold
useChoFilter (bool) : Whether to apply the CHO filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_fi(length, fiThreshold, useFiFilter, useMovingAvg)
FI filter for filtering signals based on Force Index
Parameters:
length (int) : The length of the FI calculation
fiThreshold (float) : The Force Index threshold
useFiFilter (bool) : Whether to apply the FI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_garman_klass_volatility(length, useGkFilter)
Parameters:
length (int)
useGkFilter (bool)
filter_frama(src, length, useFramaFilter)
Parameters:
src (float)
length (int)
useFramaFilter (bool)
filter_bollinger_bands(src, length, stdDev, useBollingerFilter)
Parameters:
src (float)
length (int)
stdDev (float)
useBollingerFilter (bool)
filter_keltner_channel(src, length, atrMult, useKeltnerFilter)
Parameters:
src (float)
length (simple int)
atrMult (float)
useKeltnerFilter (bool)
regime_filter(src, threshold, useRegimeFilter)
Regime filter for filtering signals based on trend strength
Parameters:
src (float) : The source series
threshold (float) : The threshold for the filter
useRegimeFilter (bool) : Whether to apply the regime filter
Returns: Filtered result indicating whether the signal should be used
regime_filter_v2(src, threshold, useRegimeFilter)
Regime filter for filtering signals based on trend strength
Parameters:
src (float) : The source series
threshold (float) : The threshold for the filter
useRegimeFilter (bool) : Whether to apply the regime filter
Returns: Filtered result indicating whether the signal should be used
filter_adx(src, length, adxThreshold, useAdxFilter)
ADX filter for filtering signals based on ADX strength
Parameters:
src (float) : The source series
length (simple int) : The length of the ADX calculation
adxThreshold (int) : The ADX threshold
useAdxFilter (bool) : Whether to apply the ADX filter
Returns: Filtered result indicating whether the signal should be used
filter_volatility(minLength, maxLength, useVolatilityFilter)
Volatility filter for filtering signals based on volatility
Parameters:
minLength (simple int) : The minimum length for ATR calculation
maxLength (simple int) : The maximum length for ATR calculation
useVolatilityFilter (bool) : Whether to apply the volatility filter
Returns: Filtered result indicating whether the signal should be used
filter_ulcer(src, length, ulcerThreshold, useUlcerFilter)
Ulcer Index filter for filtering signals based on Ulcer Index
Parameters:
src (float) : The source series
length (int) : The length of the Ulcer Index calculation
ulcerThreshold (float) : The Ulcer Index threshold (default: average Ulcer Index)
useUlcerFilter (bool) : Whether to apply the Ulcer Index filter
Returns: Filtered result indicating whether the signal should be used
filter_stddev(src, length, stdDevThreshold, useStdDevFilter)
Standard Deviation filter for filtering signals based on Standard Deviation
Parameters:
src (float) : The source series
length (int) : The length of the Standard Deviation calculation
stdDevThreshold (float) : The Standard Deviation threshold (default: average Standard Deviation)
useStdDevFilter (bool) : Whether to apply the Standard Deviation filter
Returns: Filtered result indicating whether the signal should be used
filter_macdv(src, shortLength, longLength, signalSmoothing, macdVThreshold, useMacdVFilter)
MACD-V filter for filtering signals based on MACD-V
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
macdVThreshold (float) : The MACD-V threshold (default: average MACD-V)
useMacdVFilter (bool) : Whether to apply the MACD-V filter
Returns: Filtered result indicating whether the signal should be used
filter_atr(length, atrThreshold, useAtrFilter)
ATR filter for filtering signals based on Average True Range (ATR)
Parameters:
length (simple int) : The length of the ATR calculation
atrThreshold (float) : The ATR threshold (default: average ATR)
useAtrFilter (bool) : Whether to apply the ATR filter
Returns: Filtered result indicating whether the signal should be used
filter_candle_body_and_atr(length, bodyThreshold, atrThreshold, useFilter)
Candle Body and ATR filter for filtering signals
Parameters:
length (simple int) : The length of the ATR calculation
bodyThreshold (float) : The threshold for candle body size (relative to ATR)
atrThreshold (float) : The ATR threshold (default: average ATR)
useFilter (bool) : Whether to apply the candle body and ATR filter
Returns: Filtered result indicating whether the signal should be used
filter_atrp(length, atrpThreshold, useAtrpFilter)
ATRP filter for filtering signals based on ATR Percentage (ATRP)
Parameters:
length (simple int) : The length of the ATR calculation
atrpThreshold (float) : The ATRP threshold (default: average ATRP)
useAtrpFilter (bool) : Whether to apply the ATRP filter
Returns: Filtered result indicating whether the signal should be used
filter_jma(src, length, phase, useJmaFilter)
Parameters:
src (float)
length (simple int)
phase (float)
useJmaFilter (bool)
filter_cidi(src, rsiLength, shortMaLength, longMaLength, useCidiFilter)
Parameters:
src (float)
rsiLength (simple int)
shortMaLength (int)
longMaLength (int)
useCidiFilter (bool)
filter_rsi(src, length, rsiThreshold, useRsiFilter)
Parameters:
src (float)
length (simple int)
rsiThreshold (float)
useRsiFilter (bool)
filter_ichimoku_oscillator(length, threshold, useFilter)
Ichimoku Oscillator filter for filtering signals based on Ichimoku Oscillator
Parameters:
length (int) : The length of the Ichimoku Oscillator calculation
threshold (float) : The threshold for the filter (default: average Ichimoku Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_cmb_composite_index(src, shortLength, longLength, threshold, useFilter)
CMB Composite Index filter for filtering signals based on CMB Composite Index
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for CMB calculation
longLength (simple int) : The long length for CMB calculation
threshold (float) : The threshold for the filter (default: average CMB Composite Index)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_connors_rsi(src, rsiLength, rocLength, streakLength, threshold, useFilter)
Connors RSI filter for filtering signals based on Connors RSI
Parameters:
src (float) : The source series
rsiLength (simple int) : The length for RSI calculation
rocLength (int) : The length for ROC calculation
streakLength (simple int) : The length for streak calculation
threshold (float) : The threshold for the filter (default: average Connors RSI)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_coppock_curve(src, roc1Length, roc2Length, wmaLength, threshold, useFilter)
Coppock Curve filter for filtering signals based on Coppock Curve
Parameters:
src (float) : The source series
roc1Length (int) : The length for the first ROC calculation
roc2Length (int) : The length for the second ROC calculation
wmaLength (int) : The length for the WMA calculation
threshold (float) : The threshold for the filter (default: average Coppock Curve)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_pmo(src, pmoLength, smoothingLength, threshold, useFilter)
DecisionPoint Price Momentum Oscillator filter for filtering signals based on PMO
Parameters:
src (float) : The source series
pmoLength (simple int) : The length for PMO calculation
smoothingLength (simple int) : The smoothing length for PMO
threshold (float) : The threshold for the filter (default: average PMO Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_macd(src, shortLength, longLength, signalSmoothing, threshold, useFilter)
MACD filter for filtering signals based on MACD
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
threshold (float) : The threshold for the filter (default: average MACD)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_macd_histogram(src, shortLength, longLength, signalSmoothing, threshold, useFilter)
MACD-Histogram filter for filtering signals based on MACD-Histogram
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
threshold (float) : The threshold for the filter (default: average MACD-Histogram)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_kst(src, r1, r2, r3, r4, sm1, sm2, sm3, sm4, signalLength, threshold, useFilter)
Pring's Know Sure Thing filter for filtering signals based on KST
Parameters:
src (float) : The source series
r1 (int) : The first ROC length
r2 (int) : The second ROC length
r3 (int) : The third ROC length
r4 (int) : The fourth ROC length
sm1 (int) : The first smoothing length
sm2 (int) : The second smoothing length
sm3 (int) : The third smoothing length
sm4 (int) : The fourth smoothing length
signalLength (int) : The signal line smoothing length
threshold (float) : The threshold for the filter (default: average KST Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_special_k(src, r1, r2, r3, r4, sm1, sm2, sm3, sm4, threshold, useFilter)
Pring's Special K filter for filtering signals based on Special K
Parameters:
src (float) : The source series
r1 (int) : The first ROC length
r2 (int) : The second ROC length
r3 (int) : The third ROC length
r4 (int) : The fourth ROC length
sm1 (int) : The first smoothing length
sm2 (int) : The second smoothing length
sm3 (int) : The third smoothing length
sm4 (int) : The fourth smoothing length
threshold (float) : The threshold for the filter (default: average Special K)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_roc_momentum(src, rocLength, momentumLength, threshold, useFilter)
ROC and Momentum filter for filtering signals based on ROC and Momentum
Parameters:
src (float) : The source series
rocLength (int) : The length for ROC calculation
momentumLength (int) : The length for Momentum calculation
threshold (float) : The threshold for the filter (default: average ROC and Momentum)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_rrg_relative_strength(src, length, threshold, useFilter)
RRG Relative Strength filter for filtering signals based on RRG Relative Strength
Parameters:
src (float) : The source series
length (int) : The length for RRG Relative Strength calculation
threshold (float) : The threshold for the filter (default: average RRG Relative Strength)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_alligator(useFilter)
Parameters:
useFilter (bool)
filter_wyckoff(useFilter)
Parameters:
useFilter (bool)
filter_squeeze_momentum(bbLength, bbStdDev, kcLength, kcMult, useFilter)
Parameters:
bbLength (int)
bbStdDev (float)
kcLength (simple int)
kcMult (float)
useFilter (bool)
filter_atr_compression(length, atrThreshold, useFilter)
Parameters:
length (simple int)
atrThreshold (float)
useFilter (bool)
filter_low_volume(length, useFilter)
Parameters:
length (int)
useFilter (bool)
filter_nvi_accumulation(useFilter)
Parameters:
useFilter (bool)
filter_ma_slope(src, length, slopeThreshold, useFilter)
Parameters:
src (float)
length (int)
slopeThreshold (float)
useFilter (bool)
filter_adx_low(len, lensig, adxThreshold, useFilter)
Parameters:
len (simple int)
lensig (simple int)
adxThreshold (int)
useFilter (bool)
filter_choppiness_index(length, chopThreshold, useFilter)
Parameters:
length (int)
chopThreshold (float)
useFilter (bool)
filter_range_detection(length, useFilter)
Parameters:
length (int)
useFilter (bool)
Volume Based Price Prediction [EdgeTerminal]This indicator combines price action, volume analysis, and trend prediction to forecast potential future price movements. The indicator creates a dynamic prediction zone with confidence bands, helping you visualize possible price trajectories based on current market conditions.
Key Features
Dynamic price prediction based on volume-weighted trend analysis
Confidence bands showing potential price ranges
Volume-based candle coloring for enhanced market insight
VWAP and Moving Average overlay
Customizable prediction parameters
Real-time updates with each new bar
Technical Components:
Volume-Price Correlation: The indicator analyzes the relationship between price movements and volume, Identifies stronger trends through volume confirmation and uses Volume-Weighted Average Price (VWAP) for price equilibrium
Trend Strength Analysis: Calculates trend direction using exponential moving averages, weights trend strength by relative volume and incorporates momentum for improved accuracy
Prediction Algorithm: combines current price, trend, and volume metrics, projects future price levels using weighted factors and generates confidence bands based on price volatility
Customizable Parameters:
Moving Average Length: Controls the smoothing period for calculations
Volume Weight Factor: Adjusts how much volume influences predictions
Prediction Periods: Number of bars to project into the future
Confidence Band Width: Controls the width of prediction bands
How to use it:
Look for strong volume confirmation with green candles, watch for prediction line slope changes, use confidence bands to gauge potential volatility and compare predictions with key support/resistance levels
Some useful tips:
Start with default settings and adjust gradually
Use wider confidence bands in volatile markets
Consider prediction lines as zones rather than exact levels
Best applications of this indicator:
Trend continuation probability assessment
Potential reversal point identification
Risk management through confidence bands
Volume-based trend confirmation
CSVParser█ OVERVIEW
The library contains functions for parsing and importing complex CSV configurations (with a special simple syntax) into a special hierarchical object (of type objProps ) as follows:
Functions:
parseConfig() - reads CSV text into an objProps object.
toT() - displays the contents of an objProps object in a table form, which allows to check the CSV text for syntax errors.
getPropAr() - returns objProps.arS array for child object with `prop` key in mpObj map (or na if not found)
This library is handy in allowing users to store presets for the scripts and switch between them (see, e.g., my HTF moving averages script where users can switch between several preset configuations of 24 MA's across 5 timeframes).
█ HOW THE SCRIPT WORKS.
The script works as follows:
all values read from config text are stored as strings
Nested brackets in config text create a named nested objects of objProps0, ... , objProps9 types.
objProps objects of each level have the following fields:
- array arS for storing values without names (e.g. "12, 23" will be imported into a string array arS as )
- map mpS for storing items with names (e.g. "tf = 60, length = 21" will be imported as <"tf", "60"> and <"length", "21"> pairs into mpS )
- map mpObj for storing nested objects (e.g. "TF1(tf=60, length(21,50,100))" creates a <"TF1, objProps0 object> pair in mpObj map property of the top level object (objProps) , "tf=60" is stored as <"tf", "60"> key-value pair in mpS map property of a next level object (objProps0) and "length (...)" creates a <"length", objProps1> pair in objProps0.mpObj map while length values are stored in objProps1.arS array as strings. Every opening bracket creates a next level objProps object.
If objects or properties with duplicate names are encountered only the latest is imported
(e.g. for "TF1(length(12,22)), TF1(tf=240)" only "TF1(tf=240)" will be imported
Line breaks are not regarded as part of syntax (i.e. values are imported with line breaks, you can supply
symbols "(" , ")" , "," and "=" are special characters and cannot be used within property values (with the exception of a quoted text as a value of a property as explained below)
named properties can have quoted text as their value. In that case special characters within quotation marks are regarded as normal characters. Text between "=" and opening quotation mark as well as text following the closing quotation mark and until next property value is ignored. E.g. "quote = ignored "The quote" also ignored" will be imported as <"quote", "The quote">. Quotation marks within quotes must be excaped with "\" .
if a key names happens to be a multi-line then only first line containing non-space characters (trimmed from spaces) is taken as a key.
")," or ") ," and similar do not create an empty ("") array item while ",," does. (",)" creates an "" array item)
█ CSV CONFIGURATION SYNTAX
Unnamed values: just list them comma separated and they will be imported into arS of the object of the current level.
Named values: use "=" sign as follows: "property1=value1, property2 = value2"
Value of several objects: Use brackets after the name of the object ant list all object properties within the brackets (including its child objects if necessary). E.g. "TF1(tf =60, length(21,200), TF2(tf=240, length(50,200)"
Named and unnamed values as well as objects can go in any order. E.g. "12, tf=60, 21" will be imported as follows: "12", "21" will go to arS array and <"tf", "60"> will go to mpS maP of objProps (the top level object).
You can play around and test your config text using demo in this library, just edit your text in script settings and see how it is parsed into objProps objects.
█ USAGE RECOMMENDATIONS AND SAMPLE USE
I suggest the following approach:
- create functions for your UDT which can set properties by name.
- create enumerator functions which iterates through all the property names (supplied as a const string array) and imports their values into the object
█ SAMPLE USE
A sample use of this library can be seen in my Multi-timeframe 24 moving averages + BB+SAR+Supertrend+VWAP script where settings for the MAs across many timeframes are imported from CSV configurations (presets).
█ FULL LIST OF FUNCTIONS AND PROPERTIES
nzs(_s, nz)
Like nz() but for strings. Returns `nz` arg (default = "") if _s is na.
Parameters:
_s (string)
nz (string)
method init(this)
Initializes objProps obj (creates child maps and arrays)
Namespace types: objProps
Parameters:
this (objProps)
method toT(this, nz)
Outputs objProps to string matrices for further display using autotable().
Namespace types: objProps, objProps1, ..., objProps9
Parameters:
this (objProps/objProps1/..../objProps9)
nz (string)
Returns: A tuple - value, merge and color matrix (autotable() parameters)
method parseConfig(this, s)
Reads config text into objProps (unnamed values into arS, named into mpS, sub-levels into mpObj)
Namespace types: objProps
Parameters:
this (objProps)
s (string)
method getPropArS(this, prop)
Returns a string array of values for a given property name `prop`. Looks for a key `prop` in objProps.mpObj
if finds pair returns obj.arS, otherwise returns na. Returns a reference to the original, not a copy.
Namespace types: objProps, objProps1, ..., objProps8
Parameters:
this (objProps/objProps1/..../objProps8)
prop (string)
method getPropVal(this, prop, id)
Checks if there is an array of values for property `prop` and returns its `id`'s element or na if not found
Namespace types: objProps, objProps1, ..., objProps8
Parameters:
this (objProps/objProps1/..../objProps8) : objProps object containing array of property values in a child objProp object corresponding to propertty name.
prop (string) : (string) Name of the property
id (int) : (int) Id of the element to be returned from the array pf property values
objProps9 type
Object for storing values read from CSV relating to a particular object or property name.
Fields:
mpS (map) : (map() Stores property values as pairs
arS (array) : (string ) Array of values
objProps, objProps0, ... objProps8 types
Object for storing values read from CSV relating to a particular object or property name.
Fields:
mpS (map) : (map() Stores property values as pairs
arS (array) : (string ) Array of values
mpObj (map) : (map() Stores objProps objects containing properties's data as pairs
TCLC(TraderChitra Learning Class)-Option ChainThis indicator plots the Option chain data of the following instruments and columns..
It plots 11 rows ,
5 Rows above the input strike price
1 Row for the input strike price
5 Rows below the input strike price
Instruments :
1. NIFTY
2. BANKNIFTY
3. FINNIFTY
4. MIDCPNifty
Columns :
1. StrikePrice
2.CMP
3.Volume
4.VWAP
5.Diff (Open-Close)
Traders need to change the expiry date to check the premium of the corresponding instruments...
There are few key things,
1. Rows in yellow are marked as ATM strike price
2. Cell values in red / green indicates the prices are trading above / below the VWAP
The prices are expected to be bullish when cmp trades above VWAP and we can gauge the trend
The column Volume provides the details in which strike price more traders are actively traded..
The far month contracts can also be changed in the settings and it helps the swing/positional traders
The Strike price can be modified to check the appropriate strikes
Overlay-ChartOverlay-Chart Indicator
The Overlay-Chart Indicator is an advanced script designed for scalpers and day traders, providing comprehensive insights into daily, weekly, monthly, and previous period price levels. This indicator helps traders visualize critical price levels and make informed decisions based on historical and current data.
Key Features:
Drawing Future Lines with Labels:
The script uses the drawFutureLine function to plot future price levels with customizable labels. This helps traders anticipate and react to key price points.
Daily Levels:
Displays the open, low, high, close, and equilibrium (EQ) prices for the current day. This provides a quick reference for daily trading ranges and significant price points.
Weekly Levels:
Shows the open, low, high, close, and equilibrium prices for the current week, offering a broader view of market trends and key weekly price levels.
Monthly Levels:
Illustrates the open, low, high, close, and equilibrium prices for the current month, enabling traders to understand long-term trends and significant monthly price points.
Previous Day, Week, and Month Levels:
Historical data from previous periods (day, week, month) is displayed, allowing traders to compare past and present price levels to identify patterns and potential support/resistance levels.
Customizable Colors:
Traders can choose colors for daily, weekly, monthly, and previous day levels to enhance chart readability and personalization.
Flexible Display Options:
Users can select which price levels (Open, Low, High, Close, EQ) to display for each period (daily, weekly, monthly, previous day, week, month).
How It Works:
The script fetches historical and current price data using the request.security function. It then uses these data points to draw lines on the chart representing significant price levels. These lines are drawn into the future to help traders visualize where these levels will be in upcoming bars. Labels are added to these lines for easy identification.
How to Use:
Configure Inputs:
Enable or disable the display of daily, weekly, monthly, and previous period levels using the input options.
Customize colors for different levels to match your charting preferences.
Analyze Key Levels:
Observe the plotted lines and labels to understand critical price points for the current and past periods.
Use this information to identify potential entry and exit points, support and resistance levels, and overall market trends.
Future Planned Features:
The script includes several features that are currently commented out but planned for future updates:
Volume Weighted Average Price (VWAP):
Display VWAP for daily, weekly, and monthly periods to provide an average price based on volume.
Point of Control (POC):
Show the price level with the highest trading volume for daily, weekly, and monthly periods.
Value Area High (VAH) and Low (VAL):
Display the upper and lower boundaries of the value area where most trading activity occurs for daily, weekly, and monthly periods.
These enhancements will offer additional insights into volume distribution and market sentiment, further improving the utility of the Overlay-Chart Indicator for traders.
This script is specifically designed to cater to the needs of scalpers and day traders who require precise, visually intuitive data for their trading strategies. The planned features will further enhance its effectiveness, providing a comprehensive tool for market analysis.