Typical Price Difference - TPD © with reversal zones and signalsv1.0 NOTE: The maths have been tested only for BTC and weekly time frame.
This is a concept that I came through after long long hours of VWAP trading and scalping.
The idea is pretty simple:
1) Typical Price is calculated by (h+l+c) / 3. If we take this price and adjust it to volume we get the VWAP value. The difference between this value and the close value, i call it " Typical Price Difference - TPD ".
2) We get the Historical Volatility as calculated by TradingView script and we add it up to TPD and divide it by two (average). This is what I call " The Source - TS ".
3) We apply the CCI formula to TS .
4) We calculate the Rate of Change (roc) of the CCI formula.
5) We apply the VIX FIX of Larry Williams (script used is from ChrisMoody - CM_Williams_Vix_Fix Finds Market Bottoms) *brilliant script!!!
How to use it:
a) When the (3) is over the TPD we have a bullish bias (green area). When it's under we have a bearish bias (red area).
b) If the (1) value goes over or under a certain value (CAUTION!!! it varies in different assets or timeframes) we get a Reversal Zone (RZ). Red/Green background.
c) If we are in a RZ and the VIX FIX gives a strong value (look for green bars in histogram) and roc (4) goes in the opposite direction, we get a reversal signal that works for the next week(s).
I applied this to BTC on a weekly time frame and after some corrections, it gives pretty good reversal zones and signals. Especially bottoms. Also look for divergences in the zones/signals.
As I said I have tested and confirmed it only on BTC/weekly. I need more time with the maths and pine to automatically adjust it to other time frames. You can play with it in different assets or time frames to find best settings by hand.
Feel free to share your thoughts or ideas on this.
P.S. I realy realy realy try to remember when or how or why I came up with the idea to combine typical price with historical volatility and CCI. I can't! It doesn't make any sense LOL
Cerca negli script per "CCI"
Trend Indicator with RSI and Fibbonacci Band 0.702 crossingsToday we have a new Indicator set, which I created using inspiration from the Trend Magic Indicator from KivancOzbilgic and adding several new aspects to it and a slightly modified calculation of the trend indicator itself.
You can change the inputs by changing the pre set values in the settings, but I found the current settings quite accurate. Feel free to experiment to fine tune the indicators.
Here are the details of the script:
Trend indicated within candles and as a line
- bullish and bearish trends are now also indicated within the candle based on the CCI calculation.
- Bullish is indicated by a green circle below the candle or as one may call it a "dot"
- bearish trend is indicated by a red circle above the candle
Entry Signal based on RSI crossing its EMA
- my motivation was to have a clearer entry signal besides highlighting a trend, which can not really be used to identify a good entry but to give confidence or when loosing trend to give an exit signal.
- after studiying the RSI and how it works together with its EMA it looks quite interesting as an entry or exit signal. But be cautios if the EMA and RSI values are moving in a narrow area we get a lot of crosses and therefore signals which should rather be ignored rather to be act on. So the the range where the cross happens is also quite important. But this aspect is not yet reflected as a rule/ logic.
But I am thinking of adding something.. or alternativly best to switch to another timeframe to get some better data
RSI overbought and oversold as Diamonds
- I also added key indications of oversold or overbought as Blue and Pink diamonds, can be considered as additional information to maybe identify a short term top or bottom.. but its not very accurate.
Entry signal based on crossing Fibbonachi Band 0.702
- So far the 0.702 seems to be quite an interesting retracement level which seems to be met a lot of times
- based on the assumption the price will evantually hit the 0.702 either direction I wanted to get a signal when this happens
- BUT! a big but, unfortunalty the Fibbonachi bands tend to bloat up in case of high volatility so it is not easy to find the crossing on higher timeframes
Here are the standard value which I found quite accurate for the assets I use this indicator set:
CCI Period = 5
ATR Multiplier = 1
ATR Period = 1
Source = High Low Close (hlc3 average value of the candle
Here the inputs used for the RSI Crossing signal (here you should play around a little to see which entry would have been best..)
RSI Length = 14
RSI Oversold = 25 (to be used for the "golden" entry signal based on the FBB crossing)
RSI Overbought = 80 (to be used for the "golden" entry signal based on the FBB crossing)
RSI Moving Average Length
In future versions I will add options to activate or deactive some of the plotting and espacially this golden dot when the fibbonachi band is being crossed needs some fine tuning..
And lets see if there is a way to fix the bloating of those bands..
DANIEL AGA INDICATOR BBThis is a custom trading indicator that combines several popular technical indicators such as EMA (exponential moving average), CCI (commodity channel index), RSI (relative strength index), MFI (money flow index), High-Low Bars, and ATR (average true range). This indicator can be used to identify buying and selling opportunities in the digital currency market. The code presented is an implementation of this indicator in the PineScript programming language, used on trading platforms. Users can customize the indicator by entering different values for different parameters (such as the EMA period, CCI, RSI, MFI thresholds, etc.). The indicator will display buy or sell signals through rectangle labels and can be set to generate alerts if trading opportunities are detected.
MLExtensionsLibrary "MLExtensions"
normalizeDeriv(src, quadraticMeanLength)
Returns the smoothed hyperbolic tangent of the input series.
Parameters:
src : The input series (i.e., the first-order derivative for price).
quadraticMeanLength : The length of the quadratic mean (RMS).
Returns: nDeriv The normalized derivative of the input series.
normalize(src, min, max)
Rescales a source value with an unbounded range to a target range.
Parameters:
src : The input series
min : The minimum value of the unbounded range
max : The maximum value of the unbounded range
Returns: The normalized series
rescale(src, oldMin, oldMax, newMin, newMax)
Rescales a source value with a bounded range to anther bounded range
Parameters:
src : The input series
oldMin : The minimum value of the range to rescale from
oldMax : The maximum value of the range to rescale from
newMin : The minimum value of the range to rescale to
newMax : The maximum value of the range to rescale to
Returns: The rescaled series
color_green(prediction)
Assigns varying shades of the color green based on the KNN classification
Parameters:
prediction : Value (int|float) of the prediction
Returns: color
color_red(prediction)
Assigns varying shades of the color red based on the KNN classification
Parameters:
prediction : Value of the prediction
Returns: color
tanh(src)
Returns the the hyperbolic tangent of the input series. The sigmoid-like hyperbolic tangent function is used to compress the input to a value between -1 and 1.
Parameters:
src : The input series (i.e., the normalized derivative).
Returns: tanh The hyperbolic tangent of the input series.
dualPoleFilter(src, lookback)
Returns the smoothed hyperbolic tangent of the input series.
Parameters:
src : The input series (i.e., the hyperbolic tangent).
lookback : The lookback window for the smoothing.
Returns: filter The smoothed hyperbolic tangent of the input series.
tanhTransform(src, smoothingFrequency, quadraticMeanLength)
Returns the tanh transform of the input series.
Parameters:
src : The input series (i.e., the result of the tanh calculation).
smoothingFrequency
quadraticMeanLength
Returns: signal The smoothed hyperbolic tangent transform of the input series.
n_rsi(src, n1, n2)
Returns the normalized RSI ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the RSI calculation).
n1 : The length of the RSI.
n2 : The smoothing length of the RSI.
Returns: signal The normalized RSI.
n_cci(src, n1, n2)
Returns the normalized CCI ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the CCI calculation).
n1 : The length of the CCI.
n2 : The smoothing length of the CCI.
Returns: signal The normalized CCI.
n_wt(src, n1, n2)
Returns the normalized WaveTrend Classic series ideal for use in ML algorithms.
Parameters:
src : The input series (i.e., the result of the WaveTrend Classic calculation).
n1
n2
Returns: signal The normalized WaveTrend Classic series.
n_adx(highSrc, lowSrc, closeSrc, n1)
Returns the normalized ADX ideal for use in ML algorithms.
Parameters:
highSrc : The input series for the high price.
lowSrc : The input series for the low price.
closeSrc : The input series for the close price.
n1 : The length of the ADX.
regime_filter(src, threshold, useRegimeFilter)
Parameters:
src
threshold
useRegimeFilter
filter_adx(src, length, adxThreshold, useAdxFilter)
filter_adx
Parameters:
src : The source series.
length : The length of the ADX.
adxThreshold : The ADX threshold.
useAdxFilter : Whether to use the ADX filter.
Returns: The ADX.
filter_volatility(minLength, maxLength, useVolatilityFilter)
filter_volatility
Parameters:
minLength : The minimum length of the ATR.
maxLength : The maximum length of the ATR.
useVolatilityFilter : Whether to use the volatility filter.
Returns: Boolean indicating whether or not to let the signal pass through the filter.
backtest(high, low, open, startLongTrade, endLongTrade, startShortTrade, endShortTrade, isStopLossHit, maxBarsBackIndex, thisBarIndex)
Performs a basic backtest using the specified parameters and conditions.
Parameters:
high : The input series for the high price.
low : The input series for the low price.
open : The input series for the open price.
startLongTrade : The series of conditions that indicate the start of a long trade.`
endLongTrade : The series of conditions that indicate the end of a long trade.
startShortTrade : The series of conditions that indicate the start of a short trade.
endShortTrade : The series of conditions that indicate the end of a short trade.
isStopLossHit : The stop loss hit indicator.
maxBarsBackIndex : The maximum number of bars to go back in the backtest.
thisBarIndex : The current bar index.
Returns: A tuple containing backtest values
init_table()
init_table()
Returns: tbl The backtest results.
update_table(tbl, tradeStatsHeader, totalTrades, totalWins, totalLosses, winLossRatio, winrate, stopLosses)
update_table(tbl, tradeStats)
Parameters:
tbl : The backtest results table.
tradeStatsHeader : The trade stats header.
totalTrades : The total number of trades.
totalWins : The total number of wins.
totalLosses : The total number of losses.
winLossRatio : The win loss ratio.
winrate : The winrate.
stopLosses : The total number of stop losses.
Returns: Updated backtest results table.
Commodity Channel Relative StrengthNew concept(I think atleast) I've joined the Standard RSI and CCI at the hip with another plotcandle, which gives a picture of a larger candle With more interesting movement imo. Includes Fib Retracement Levels, High/Low and a couple of coppock curves for more confirmation. Broadening candles seem to indicate a weakening of trend strength (from what i've seen atleast) although exceptions do occur. Vice versa for tapering to a lesser degree I imagine. RSI has been shifted down to 0 to align the center point with the CCI , so the usual 30/70 RSI Levels are now -20/20 (although I have 30/-30 instead for the hlines).
All TimeFrame OscillatorsI have always fighted to understand the market direction because it looks different on different timeframes.
I wanted an indicator where I can see all the different timeframes at once.
This indicator shows already existing oscillators but not only in the current chart's timeframe, but all the most important higer timeframes at once.
I have started with the stoch, then added as many oscillators as I could.
Experimenting with this I have saw that confluence of 4H 1D and 1W Stoch can be very interesting and can highlight higher timeframe take profit areas and sometimes major tops/bottoms.
Also bounces can be interesting when a lower timeframe stoch is bounced or rejected from a higher one.
Oscillators:
Stoch - Stochastic Oscillator
SMI - Stochastic Momentum Index
Rsi - Relative Strength Index
StochRsi - Stochastic RSI
WaveTrend - Vumanchu alias Market Cypher Wave Trend line
CCI - Commodity Channel Index
CCIStoch - Stochastic CCI
Williams Percent Range - Williams %R
Norm. MACD - Normalized Moving Average Convergence Divergence
Norm. MACD Hist - Normalized MACD Histogramm
PVT - Normalized Price Volume Trend
MFI - Money Flow Index
CMF - Chaikin Money Flow
Chande Momentum - Chande Momentum
Volume - Normalized Volume
CandleValue - Vumanchu alias Market Cypher MoneyFlow
BBWP - Bollinger Band Width Percentile
Line Type
Smooth: lines are smoothed, but the actualy not closed values are not shown
Step: Step lines, the actually open timeframes are calculated as they closed at the current values
Plot Oscillator or it's Slope:
its possible to not plot the oscillator but it's slope
Print dots when:
Cross Up/Down oversold/overbougt level - best for most oscillators. for example when Stoch crosses above 20 or below 80
Cross os/ob and the one higher TF is about to cross - when it's crosses beolw 80 and the higher timeframe oscillator is still above ans sloping down
Cross above/below middle line - for example on RSI being above or below 50 can be interesting
Print triangles when:
All Slope Match - all visible timeframe lines are pointing up or down at the same time
All above/belove middle line - all visible lines are above or belove the middle line
All above/belove middle line and slope match - like the previous one and the slope direction is the same
All above/below oversold/overbougt - all lines are above or below os/ ob. this is the default. it can be a very important confluence
Lower TF in order - 5, 15, 30, 60 minute timeframes are in order.
Higher TF in order - 4H 1D 1W in order (like 4H above 1D abd 1D above 1W). can be interesting at RSI
4H-1D in order - 4H 1D in order .
Print triangles
Print all triangles - print all triangles when the condition is met
Print only first triangles - only show when the condition starts to met
Print only last triangles - small triangles when the condition met first, large when last. tis is the default.
Timeframes to show:
You can turn on/off different timeframs to show or not from the list below:
1m 5m 15m 30m 1H 4H D 5D W M
This is for experimenting/ understanding the market direction on multiple timeframes at once.
Don't take it's signals (and any other indicator's) as exact trade signals. use it as confirmation instead.
Any comments, insights, ideas are welcome.
Sell alert [Crypto_BCT]Hello everybody!
I bring to your attention an indicator for determining the point of sell.
It is based on oscillators and a moving average.
Signal Condition Settings:
ATR
The current candle is larger than the ATR for this period
EMA
The signal must be above the EMA of the specified period
MFI High
The MFI index is higher than this value
CCI High
The CCI index is higher than this value
RSI High
The RSI index is higher than this value
Highest bar from
The closing of the current bar is higher than the closing of bars in this range
Highest EMA bar ago
At a given distance back, the EMA value only increased
I hope it will be useful!
Buy alert [Crypto_BCT]Hello everyone!
I bring to your attention a simple indicator to determine the point of purchase.
It is based on oscillators and a moving average.
It can be used to work with bots, for example 3COMMAS DCA bot.
Signal Condition Settings:
ATR
The current candle is larger than the ATR for this period
EMA
The signal is necessarily below the EMA of the specified period
MFI low
The MFI index is below this value
CCI low
CCI index is below this value
RSI low
The RSI index is below this value
Lowest bar from
The closing of the current bar is lower than the closing of the bars back in this range
Lowest EMA bar ago
During a given distance back, the EMA value only decreased
I hope it will be useful!
Indicator Functions with Factor and HeikinAshiHello all,
This indicator returns below selected indicators values with entered parameters.
Also you can add factorization, functions candles, function HeikinAshi and more to the plot.
VERSION:
Version 1: returns series only source and Length with already defined default values
Version 2: returns series with source, Length, p1 and p2 parameters according to the indicator definition (ex: )
PARAMETERS p1 p2
for defining multi arguments (See indicators list) indicator input value usable with verison=V2 selected.. ex: for alma( src , len ,offset=0.85,sigma=6), set source=source, len=length, p1=0.85 an p2=6
FACTOR:
Add double triple, Quadruple factors to selected indicator (like converting EMA to 2-DEMA, 3-TEMA, 4-QEMA...)
1-Original
2-Double
3-Triple
4-Quadruple
LOG
Log: Use log, log10 on function entries
PLOTTING:
PType: Plotting type of the function on the screen
Original :use original values
Org. Range (-1,1): usable for indicators between range -1 and 1
Stochastic: Convert indicator values by using stochastic calculation between -1 & 1. (use AT/% length to better view)
PercentRank: Convert indicator values by using Percent Rank calculation between -1 & 1. (use AT/% length to better view)
ST/%: length for plotting Type for stochastic and Percent Rank options
Smooth: Use SWMA for smoothing the function
DISPLAY TYPES
Plot Candles: Display the selected indicator as candle by implementing values
Plot Ind: Display result of indicator with selected source
HeikinAshi: Display Selected indicator candles with Heikin Ashi calculation
INDICATOR LIST:
hide = 'DONT DISPLAY', //Dont display & calculate the indicator. (For my framework usage)
alma = 'alma( src , len ,offset=0.85,sigma=6)', // Arnaud Legoux Moving Average
ama = 'ama( src , len ,fast=14,slow=100)', //Adjusted Moving Average
acdst = 'accdist()', // Accumulation/distribution index.
cma = 'cma( src , len )', //Corrective Moving average
dema = 'dema( src , len )', // Double EMA (Same as EMA with 2 factor)
ema = 'ema( src , len )', // Exponential Moving Average
gmma = 'gmma( src , len )', //Geometric Mean Moving Average
hghst = 'highest( src , len )', //Highest value for a given number of bars back.
hl2ma = 'hl2ma( src , len )', //higest lowest moving average
hma = 'hma( src , len )', // Hull Moving Average .
lgAdt = 'lagAdapt( src , len ,perclen=5,fperc=50)', //Ehler's Adaptive Laguerre filter
lgAdV = 'lagAdaptV( src , len ,perclen=5,fperc=50)', //Ehler's Adaptive Laguerre filter variation
lguer = 'laguerre( src , len )', //Ehler's Laguerre filter
lsrcp = 'lesrcp( src , len )', //lowest exponential esrcpanding moving line
lexp = 'lexp( src , len )', //lowest exponential expanding moving line
linrg = 'linreg( src , len ,loffset=1)', // Linear regression
lowst = 'lowest( src , len )', //Lovest value for a given number of bars back.
pcnl = 'percntl( src , len )', //percentile nearest rank. Calculates percentile using method of Nearest Rank.
pcnli = 'percntli( src , len )', //percentile linear interpolation. Calculates percentile using method of linear interpolation between the two nearest ranks.
rema = 'rema( src , len )', //Range EMA (REMA)
rma = 'rma( src , len )', //Moving average used in RSI . It is the exponentially weighted moving average with alpha = 1 / length.
sma = 'sma( src , len )', // Smoothed Moving Average
smma = 'smma( src , len )', // Smoothed Moving Average
supr2 = 'super2( src , len )', //Ehler's super smoother, 2 pole
supr3 = 'super3( src , len )', //Ehler's super smoother, 3 pole
strnd = 'supertrend( src , len ,period=3)', //Supertrend indicator
swma = 'swma( src , len )', //Sine-Weighted Moving Average
tema = 'tema( src , len )', // Triple EMA (Same as EMA with 3 factor)
tma = 'tma( src , len )', //Triangular Moving Average
vida = 'vida( src , len )', // Variable Index Dynamic Average
vwma = 'vwma( src , len )', // Volume Weigted Moving Average
wma = 'wma( src , len )', //Weigted Moving Average
angle = 'angle( src , len )', //angle of the series (Use its Input as another indicator output)
atr = 'atr( src , len )', // average true range . RMA of true range.
bbr = 'bbr( src , len ,mult=1)', // bollinger %%
bbw = 'bbw( src , len ,mult=2)', // Bollinger Bands Width . The Bollinger Band Width is the difference between the upper and the lower Bollinger Bands divided by the middle band.
cci = 'cci( src , len )', // commodity channel index
cctbb = 'cctbbo( src , len )', // CCT Bollinger Band Oscilator
chng = 'change( src , len )', //Difference between current value and previous, source - source.
cmo = 'cmo( src , len )', // Chande Momentum Oscillator . Calculates the difference between the sum of recent gains and the sum of recent losses and then divides the result by the sum of all price movement over the same period.
cog = 'cog( src , len )', //The cog (center of gravity ) is an indicator based on statistics and the Fibonacci golden ratio.
cpcrv = 'copcurve( src , len )', // Coppock Curve. was originally developed by Edwin "Sedge" Coppock (Barron's Magazine, October 1962).
corrl = 'correl( src , len )', // Correlation coefficient . Describes the degree to which two series tend to deviate from their ta. sma values.
count = 'count( src , len )', //green avg - red avg
dev = 'dev( src , len )', //ta.dev() Measure of difference between the series and it's ta. sma
fall = 'falling( src , len )', //ta.falling() Test if the `source` series is now falling for `length` bars long. (Use its Input as another indicator output)
kcr = 'kcr( src , len ,mult=2)', // Keltner Channels Range
kcw = 'kcw( src , len ,mult=2)', //ta.kcw(). Keltner Channels Width. The Keltner Channels Width is the difference between the upper and the lower Keltner Channels divided by the middle channel.
macd = 'macd( src , len )', // macd
mfi = 'mfi( src , len )', // Money Flow Index
nvi = 'nvi()', // Negative Volume Index
obv = 'obv()', // On Balance Volume
pvi = 'pvi()', // Positive Volume Index
pvt = 'pvt()', // Price Volume Trend
rise = 'rising( src , len )', //ta.rising() Test if the `source` series is now rising for `length` bars long. (Use its Input as another indicator output)
roc = 'roc( src , len )', // Rate of Change
rsi = 'rsi( src , len )', // Relative strength Index
smosc = 'smi_osc( src , len ,fast=5, slow=34)', //smi Oscillator
smsig = 'smi_sig( src , len ,fast=5, slow=34)', //smi Signal
stdev = 'stdev( src , len )', //Standart deviation
trix = 'trix( src , len )' , //the rate of change of a triple exponentially smoothed moving average .
tsi = 'tsi( src , len )', //True Strength Index
vari = 'variance( src , len )', //ta.variance(). Variance is the expectation of the squared deviation of a series from its mean (ta. sma ), and it informally measures how far a set of numbers are spread out from their mean.
wilpc = 'willprc( src , len )', // Williams %R
wad = 'wad()', // Williams Accumulation/Distribution .
wvad = 'wvad()' //Williams Variable Accumulation/Distribution
I will update the indicator list when I will update the library
Thanks to tradingview, @RodrigoKazuma for their open source indicators
Dual Commodity Channel IndexThis simple script is a modification of the built-in CCI that adds a second CCI indicator of independent length. It also provides a Zero line for reference in addition to the built-in Upper/Lower Band.
lib_Indicators_v2_DTULibrary "lib_Indicators_v2_DTU"
This library functions returns included Moving averages, indicators with factorization, functions candles, function heikinashi and more.
Created it to feed as backend of my indicator/strategy "Indicators & Combinations Framework Advanced v2 " that will be released ASAP.
This is replacement of my previous indicator (lib_indicators_DT)
I will add an indicator example which will use this indicator named as "lib_indicators_v2_DTU example" to help the usage of this library
Additionally library will be updated with more indicators in the future
NOTES:
Indicator functions returns only one series :-(
plotcandle function returns candle series
INDICATOR LIST:
hide = 'DONT DISPLAY', //Dont display & calculate the indicator. (For my framework usage)
alma = 'alma(src,len,offset=0.85,sigma=6)', //Arnaud Legoux Moving Average
ama = 'ama(src,len,fast=14,slow=100)', //Adjusted Moving Average
acdst = 'accdist()', //Accumulation/distribution index.
cma = 'cma(src,len)', //Corrective Moving average
dema = 'dema(src,len)', //Double EMA (Same as EMA with 2 factor)
ema = 'ema(src,len)', //Exponential Moving Average
gmma = 'gmma(src,len)', //Geometric Mean Moving Average
hghst = 'highest(src,len)', //Highest value for a given number of bars back.
hl2ma = 'hl2ma(src,len)', //higest lowest moving average
hma = 'hma(src,len)', //Hull Moving Average.
lgAdt = 'lagAdapt(src,len,perclen=5,fperc=50)', //Ehler's Adaptive Laguerre filter
lgAdV = 'lagAdaptV(src,len,perclen=5,fperc=50)', //Ehler's Adaptive Laguerre filter variation
lguer = 'laguerre(src,len)', //Ehler's Laguerre filter
lsrcp = 'lesrcp(src,len)', //lowest exponential esrcpanding moving line
lexp = 'lexp(src,len)', //lowest exponential expanding moving line
linrg = 'linreg(src,len,loffset=1)', //Linear regression
lowst = 'lowest(src,len)', //Lovest value for a given number of bars back.
pcnl = 'percntl(src,len)', //percentile nearest rank. Calculates percentile using method of Nearest Rank.
pcnli = 'percntli(src,len)', //percentile linear interpolation. Calculates percentile using method of linear interpolation between the two nearest ranks.
rema = 'rema(src,len)', //Range EMA (REMA)
rma = 'rma(src,len)', //Moving average used in RSI. It is the exponentially weighted moving average with alpha = 1 / length.
sma = 'sma(src,len)', //Smoothed Moving Average
smma = 'smma(src,len)', //Smoothed Moving Average
supr2 = 'super2(src,len)', //Ehler's super smoother, 2 pole
supr3 = 'super3(src,len)', //Ehler's super smoother, 3 pole
strnd = 'supertrend(src,len,period=3)', //Supertrend indicator
swma = 'swma(src,len)', //Sine-Weighted Moving Average
tema = 'tema(src,len)', //Triple EMA (Same as EMA with 3 factor)
tma = 'tma(src,len)', //Triangular Moving Average
vida = 'vida(src,len)', //Variable Index Dynamic Average
vwma = 'vwma(src,len)', //Volume Weigted Moving Average
wma = 'wma(src,len)', //Weigted Moving Average
angle = 'angle(src,len)', //angle of the series (Use its Input as another indicator output)
atr = 'atr(src,len)', //average true range. RMA of true range.
bbr = 'bbr(src,len,mult=1)', //bollinger %%
bbw = 'bbw(src,len,mult=2)', //Bollinger Bands Width. The Bollinger Band Width is the difference between the upper and the lower Bollinger Bands divided by the middle band.
cci = 'cci(src,len)', //commodity channel index
cctbb = 'cctbbo(src,len)', //CCT Bollinger Band Oscilator
chng = 'change(src,len)', //Difference between current value and previous, source - source .
cmo = 'cmo(src,len)', //Chande Momentum Oscillator. Calculates the difference between the sum of recent gains and the sum of recent losses and then divides the result by the sum of all price movement over the same period.
cog = 'cog(src,len)', //The cog (center of gravity) is an indicator based on statistics and the Fibonacci golden ratio.
cpcrv = 'copcurve(src,len)', //Coppock Curve. was originally developed by Edwin "Sedge" Coppock (Barron's Magazine, October 1962).
corrl = 'correl(src,len)', //Correlation coefficient. Describes the degree to which two series tend to deviate from their ta.sma values.
count = 'count(src,len)', //green avg - red avg
dev = 'dev(src,len)', //ta.dev() Measure of difference between the series and it's ta.sma
fall = 'falling(src,len)', //ta.falling() Test if the `source` series is now falling for `length` bars long. (Use its Input as another indicator output)
kcr = 'kcr(src,len,mult=2)', //Keltner Channels Range
kcw = 'kcw(src,len,mult=2)', //ta.kcw(). Keltner Channels Width. The Keltner Channels Width is the difference between the upper and the lower Keltner Channels divided by the middle channel.
macd = 'macd(src,len)', //macd
mfi = 'mfi(src,len)', //Money Flow Index
nvi = 'nvi()', //Negative Volume Index
obv = 'obv()', //On Balance Volume
pvi = 'pvi()', //Positive Volume Index
pvt = 'pvt()', //Price Volume Trend
rise = 'rising(src,len)', //ta.rising() Test if the `source` series is now rising for `length` bars long. (Use its Input as another indicator output)
roc = 'roc(src,len)', //Rate of Change
rsi = 'rsi(src,len)', //Relative strength Index
smosc = 'smi_osc(src,len,fast=5, slow=34)', //smi Oscillator
smsig = 'smi_sig(src,len,fast=5, slow=34)', //smi Signal
stdev = 'stdev(src,len)', //Standart deviation
trix = 'trix(src,len)' , //the rate of change of a triple exponentially smoothed moving average.
tsi = 'tsi(src,len)', //True Strength Index
vari = 'variance(src,len)', //ta.variance(). Variance is the expectation of the squared deviation of a series from its mean (ta.sma), and it informally measures how far a set of numbers are spread out from their mean.
wilpc = 'willprc(src,len)', //Williams %R
wad = 'wad()', //Williams Accumulation/Distribution.
wvad = 'wvad()' //Williams Variable Accumulation/Distribution.
}
f_func(string, float, simple, float, float, float, simple) f_func Return selected indicator value with different parameters. New version. Use extra parameters for available indicators
Parameters:
string : FuncType_ indicator from the indicator list
float : src_ close, open, high, low,hl2, hlc3, ohlc4 or any
simple : int length_ indicator length
float : p1 extra parameter-1. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p2 extra parameter-2. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p3 extra parameter-3. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
simple : int version_ indicator version for backward compatibility. V1:dont use extra parameters p1,p2,p3 and use default values. V2: use extra parameters for available indicators
Returns: float Return calculated indicator value
fn_heikin(float, float, float, float) fn_heikin Return given src data (open, high,low,close) as heikin ashi candle values
Parameters:
float : o_ open value
float : h_ high value
float : l_ low value
float : c_ close value
Returns: float heikin ashi open, high,low,close vlues that will be used with plotcandle
fn_plotFunction(float, string, simple, bool) fn_plotFunction Return input src data with different plotting options
Parameters:
float : src_ indicator src_data or any other series.....
string : plotingType Ploting type of the function on the screen
simple : int stochlen_ length for plotingType for stochastic and PercentRank options
bool : plotSWMA Use SWMA for smoothing Ploting
Returns: float
fn_funcPlotV2(string, float, simple, float, float, float, simple, string, simple, bool, bool) fn_funcPlotV2 Return selected indicator value with different parameters. New version. Use extra parameters fora available indicators
Parameters:
string : FuncType_ indicator from the indicator list
float : src_data_ close, open, high, low,hl2, hlc3, ohlc4 or any
simple : int length_ indicator length
float : p1 extra parameter-1. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p2 extra parameter-2. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p3 extra parameter-3. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
simple : int version_ indicator version for backward compatibility. V1:dont use extra parameters p1,p2,p3 and use default values. V2: use extra parameters for available indicators
string : plotingType Ploting type of the function on the screen
simple : int stochlen_ length for plotingType for stochastic and PercentRank options
bool : plotSWMA Use SWMA for smoothing Ploting
bool : log_ Use log on function entries
Returns: float Return calculated indicator value
fn_factor(string, float, simple, float, float, float, simple, simple, string, simple, bool, bool) fn_factor Return selected indicator's factorization with given arguments
Parameters:
string : FuncType_ indicator from the indicator list
float : src_data_ close, open, high, low,hl2, hlc3, ohlc4 or any
simple : int length_ indicator length
float : p1 parameter-1. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p2 parameter-2. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p3 parameter-3. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
simple : int version_ indicator version for backward compatibility. V1:dont use extra parameters p1,p2,p3 and use default values. V2: use extra parameters for available indicators
simple : int fact_ Add double triple, Quatr factor to selected indicator (like converting EMA to 2-DEMA, 3-TEMA, 4-QEMA...)
string : plotingType Ploting type of the function on the screen
simple : int stochlen_ length for plotingType for stochastic and PercentRank options
bool : plotSWMA Use SWMA for smoothing Ploting
bool : log_ Use log on function entries
Returns: float Return result of the function
fn_plotCandles(string, simple, float, float, float, simple, string, simple, bool, bool, bool) fn_plotCandles Return selected indicator's candle values with different parameters also heikinashi is available
Parameters:
string : FuncType_ indicator from the indicator list
simple : int length_ indicator length
float : p1 parameter-1. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p2 parameter-2. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
float : p3 parameter-3. active on Version 2 for defining multi arguments indicator input value. ex: lagAdapt(src_, length_,LAPercLen_=p1,FPerc_=p2)
simple : int version_ indicator version for backward compatibility. V1:dont use extra parameters p1,p2,p3 and use default values. V2: use extra parameters for available indicators
string : plotingType Ploting type of the function on the screen
simple : int stochlen_ length for plotingType for stochastic and PercentRank options
bool : plotSWMA Use SWMA for smoothing Ploting
bool : log_ Use log on function entries
bool : plotheikin_ Use Heikin Ashi on Plot
Returns: float
Multpile strategies [LUPOWN]///English
This indicator contains many indicators that together can form different strategies, by default there is the Latin trading strategy with the points of the cipher by @Vumanchu indicator that actually these points appear when a lazy bear indicator gives the signal, the white shadow that It is seen by default is the MFI, this adaptation is the same as the one with the indicator cipher by @Vumanchu, if the white shadow is above the 0 point we can search for a buy position, this helping us with the squeeze momentum and the ADX (information in the panel), you can even enter before the buy or sell panel if the green dot appears, this is one of several strategies that can be formed with this indicator.
Other hidden indicators by default are the CCi, Koncorde (adapted thanks to the version of @inversiones por el mundo and modified by @ lkdml), MACD, stochastic, Awesome Oscillator, Elliot Oscillator, which, as I say, combined can be good strategies.
The indicator also shows divergences, both in the RSI and in the Squeeze momentum and in the Awesome Oscillator if it is on the chart, the divergence code is from @madoqa and I adapted it for the different indicators.
The panel shows the status of the chart according to the Trading Latino strategy
You can hide and show the indicators you want through the settings.
///// Spanish
Este indicador contiene muchos indicadores que en conjunto pueden formar diversas estrategias, por default esta la estrategia de trading latino con los puntos del indicador cipher by @Vumanchu que en realidad estos puntos aparecen cuando un indicador de lazy bear da la señal, la sombra blanca que se ve por default es el MFI esta adaptación es la misma a la que tiene el indicador cipher by @Vumanchu, si la sombra blanca esta por encima del punto 0 podemos buscar entradas en compra, esto ayudándonos del squeeze momentum y el ADX (información en el panel), incluso se puede entrar antes que el panel nos de compra o venta si el punto verde aparece, esta es una de varias estrategias que se pueden formar con este indicador.
Otros indicadores ocultos por default están el CCi, Koncorde (adaptado gracias a la versión de @inversiones por el mundo y modificado por @ lkdml), MACD, estocastico , Awesome Oscillator, Elliot Oscilator, que como digo combinados se pueden hacer buenas estrategias.
En el indicador también se muestran divergencias, tanto en el RSI como en el Squeeze momentum y en el Awesome Oscillator si es que esta en el grafico, el código de divergencias es de @madoqa yo lo adapte para los diferentes indicadores.
El panel muestra el estatus del grafico según la estrategia de Trading Latino
Puedes ocultar y mostrar los indicadores que quieras mediante las configuraciones.
All in one [Liubam]Hey tradingviewers!
This is an All in one Indicator for those who can't add too many indicators on your charts. Inspired by ©LonesomeTheBlue "Indicators all in one" script. I found a lot of very interesting scripts on the public library and I decided to make a tool with some of the greatest IMO, adding some modifications to improve the indicators. With this tool you can plot 1 of 6 different indicators by selecting it from a drop-down list (on the indicator settings).
All the credit goes to it's respective owners (taggeds).
THIS INDICATOR INCLUDES:
1. Classic RSI with some OB/OS tools:
The relative strength index (RSI) is a popular momentum indicator displayed as an oscillator (a line graph that moves between two extremes) that measures the magnitude of recent price changes to evaluate overbought or oversold conditions, in other words it shows signals about bullish and bearish price momentum. I added some visual improvements to help you finding the OB/OS zones.
2. Classic CCI with some OB/OS tools.
The Commodity Channel Index (CCI) is a momentum-based oscillator used as market indicator to help determine market movements that may indicate buying or selling. Added some vistual improvements to the chart.
3. ADX and DMI oscillator with the keylevel coded by @console:
The Average Directional Index (ADX) is non-directional indicator used by some traders to determine the strength of a trend. When the ADX line is rising (Above the keylevel) trend strength is increasing, and the price moves in the direction of the trend whether up or down. Otherwise, low ADX (Below the keylevel) is usually a sign of accumulation or distribution (Range). Non-trending doesn't mean the price isn't moving. It may not be, but the price could also be making a trend change or is too volatile for a clear direction to be present.
Suggested settings of the keylevel is 23-25.... REMEMBER: The trend may be your friend.
4. MFI
The Money Flow Index (MFI) is a technical oscillator for identifying overbought or oversold signals in an asset. Unlike conventional oscillators such as the RSI, the Money Flow Index incorporates both price and volume data, as opposed to just price. It can also be used to spot divergences which warn of a trend change in price.
5. Stochastic:
A stochastic oscillator is range-bound, meaning it is always between 0 and 100. This makes it a useful indicator of overbought and oversold conditions. Traditionally, readings over 80 are considered in the overbought range, and readings under 20 are considered oversold. However, these are not always indicative of impending reversal; very strong trends can maintain overbought or oversold conditions for an extended period. Instead, traders should look to changes in the stochastic oscillator for clues about future trend shifts. I added some features for this popular indicator to show the stochastic crosses.
6. The famous Squeeze momentum Indicator made by @Lazybear:
This is derivate of John Carter's "TTM Squeeze" volatility indicator and its very strong when using with trending indicator such a ADX. Black line (or no-line) on the midline show that the market just entered a squeeze ( Bollinger Bands are with in Keltner Channel). This signifies low volatility , market preparing itself for an explosive move (up or down). Gray line signify "Squeeze release". Mr.Carter suggests waiting till the gray line after a blackline, and taking a position in the direction of the momentum (for ex., if momentum value is above zero, go long). Exit the position when the momentum changes.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
This script is source code protected, but you can add to your favorite list to use it. Also you can add twice to use 2 different indicators at the same time (E.g. Squeeze Momentum Indicator + ADX)
An additional indicator I made (MA Hunterz + InfoPanel) is needed to not miss good entry points.
Your valuable comment and feedback is much appreciated...
And remember indicators can be really helpfull but always use Price Action.
Ehlers Adaptive Commodity Channel Index V1 [CC]The Adaptive Commodity Channel Index V1 was created by John Ehlers (Rocket Science For Traders pgs 236-237) and this is the typical Commodity Channel formula with the introduction of adaptive lengths based on his earlier work with indicators such as the Mother of Adaptive Moving Averages. For longer term signals you would get a bullish signal when CCI is above 0 and a bearish signal when CCI falls below 0. For shorter term signals you would get a bullish signal when crosses over it's overbought level or when it crosses above it's oversold level or vice versa. I have included both signals to make it easier.
Let me know if you want a custom script written or if you have a special request for me
Price Action Trading System v0.3 by JustUncleL with modifcationsThe base of this script is the Price Action Trading System from JustUncle .
I have first combined it with script ADX and DI by BeikabuOyaji to indicate when the +DI is above the -DI and the ADX is above 20. This is represented by crosses at the top of the page: green indicating that the +DI is above the -DI and ADX above 20, and red if -DI is above the +DI and ADX above 20. If the ADX is increasing in slope while the +DI is above the -DI, an up green arrow is shown at the bottom of the page, indicating an increase in this trend, and the slope of the ADX is increasing and the -DI is above the +DI, a down arrow is shown at the bottom. One could think to a green cross with a green up arrow as a potential buy opportunity, and a red cross with a red down arrow as a potential sell opportunity.
Next, I have combined this script with the Indicator: WaveTrend Oscillator from Lazybear . If the oscillator has readings below -45 and the slope of the line is increasing, a green diamond appears above the chart. This indicates a potential buy opportunity. If the oscillator has readings above 50 and the slope of the line is decreasing, a red diamond appears above the chart. This indicates a potential sell opportunity. Now if the slope of the oscillator is rising significantly but does not hit the -45 threshold to start its increase, but is negative in value, a green flag appears at the top of the page. This represents a potential buy opportunity. If the slope of the oscillator is significantly decreasing and is positive in value, a red flag appears at the bottom of the page. This represents a potential sell opportunity.
The base of this script, the Price Action Trading System v0.3 by JustUncle , has many of its own features that I have kept. If the MACD is positive, the background colour is green. If it is negative, the colour is red. If the CCI and RSI indicate an oversold opportunity and the MACD is positive, you get an up olive arrow below the chart. If they indicate an overbought opportunity and the MACD is negative, you get a red down arrow above the chart. If the CCI value stays oversold after a green arrow, the candle chart turns turquoise, and if overbought, turns black after a red arrow.
You can use these indicators in combination to help you with your trading strategy.
GRAB or TrendStrength Bars with Highlights[Salty]GRAB or TrendStrength Bars with Propulsion Dots and Highlights for Squeeze Pro, CCI-Arrows, and SlowStoch
This indicator shows GRAB or TrendStrength candles and allows several moving averages to be displayed at the same time.
It has arrows and diamonds above or below the candles to show CCI values above 100 or below -100 with the arrow pointing in the direction of the momentum.
Diamonds indicate slightly weaker momentum than arrows, but still consider strong.
It has background coloring that is light green to show bullish trends and light red to show bearish trends that are derived from slow stochastics.
In general Darker colors are used for down moves and lighter colors are use to show up moves. Also, red indicates bearish, and green indicates bullish throughout.
It has yellow background to show squeezes with additional Squeeze Pro information shown at the bottom of the chart in the form of letters and momentum arrows.
L = Low compression squeeze, S = Normal Squeeze, and H = High Compression Squeeze.
It has a set of propulsion dots for each Moving Average. The trend is consider bullish when green colored dots print, and bearish when red dots print.
3 ATR Keltner channels are printed. The first two show the values used by the squeeze by default
2 Bolinger Bands are displayed based on the values used by the Squeeze by default.
1 VWAP line may be displayed.
TIP: overlaying the TICK symbol is great for confirming a bias where positive values are bullish and negative values are bearish.
Underworld Hunter Backtesting AlgorhitmThis strategy is built to prove the profitability of my Underworld Hunter indicator . It tests two different strategies. I won't be going into the calculation again since it is part of the original script. I just made a few adjustments.
First one is clearly visual. It plots slimmer twin-coloured lines now and has a different colour for every extreme level. Second is less obvious - I switched Relative Strength Index for Commodity Channel Index.
Extreme levels are as follows: green 100 -► 120, yellow 120 -► 140, orange 140 -► 160, red 160 -► 180 and purple above 180, I will have a special separate algorithm for testing optimal CCI levels someday, in this script, these values are only meant to help you with manual operations and do not influence results of the strategy in any way.
#Trending strategy
The trending strategy opens a position whenever the price leaves the bands and holds it until two consecutive bars are closed within the bands. The picture shows one winning position that hasn't yet been resulted. It also shows a few fakeouts. For this strategy, you want to keep the length below 110, the deviation should be below 2 and you probably want to play lower timeframes.
#Within the bands
The second strategy is pretty much the opposite. It opens a position when the price reaches outer bands and holds it until two consecutive bars are closed within the bands and current bar closes below previous bars low in case of long. It is working on hourly timeframes and you need higher length and deviation to succeed. The picture shows a few positions on EURUSD. Each of them is profitable but would be much higher if you closed it manually when it was time. You need to enable this strategy, which automatically disables the other one.
When using my script, you need to bear in mind that the first strategy doesn't detect optimal levels to close the price. A trend is often followed by a less volatile and boring correction which causes bands to shrink and lower your profits if you don't close manually as it will take longer till bands are reached.
On the other hand, second script literally has no stop-loss. As long as the price is outside the range, it will never close which will cause major drawdowns, unless you control the trade manually. CCI is here to help you with both.
I also recommend combining this with Market Profile (on TW, there is only Volume Profile, which can be used in a similar way) and trading day theory (trending with multiple distributions, trending day, normal day, a variation on a normal day, non-trending day or neutral day). Always keep in mind that it is up to traders to be profitable, indicators can support a good trader, but they will not fix a bad one.
Multi momentum indicatorScript contains couple momentum oscillators all in one pane
List of indicators:
RSI
Stochastic RSI
MACD
CCI
WaveTrend by LazyBear
MFI
Default active indicators are RSI and Stochastic RSI
Other indicators are disabled by default
RSI, StochRSI and MFI are modified to be bounded to range from 100 to -100. That's why overbought is 40 and 60 instead 70 and 80 while oversold -40 and -60 instead 30 and 20.
MACD and CCI as they are not bounded to 100 or 200 range, they are limited to 100 - -100 by default when activated (extras are simply hidden) but there is an option to show full indicator.
In settings there are couple more options like show crosses or show only histogram.
Default source for all indicators is close (except WaveTrend and MFI which use hlc3) and it could be changed but for all indicators.
There is an option for 2nd RSI which can be set for any timeframe and background calculated by Fibonacci levels.
cii strategy파인스크립트 공부한다고 만들어봤는데 혼자하니깐 피드백이 안되서 올려봅니다.
원리는 짧은 기간의 cci(14)가 긴 기간의 cci(56)을 뚫으면 매수, 뚫리면 매도하게 해놨습니다.
단기 분봉에는 거의 안 맞고 3시간봉 12시간봉에 맞춰서 쓰시면 됩니다. 횡보장때 승률이 많이 낮습니다..
Kringold2[WOZDUX] gold equivalentThe indicator is a tool for global analysis. The default is the price of gold. The price of the instrument from the main window is divided by the price of gold. The result is the price of the instrument in units of gold. The screen uses the Dow Jones index as an example. In the indicator window, the price of the index in units of gold or the so-called gold Dow Jones. The use of the gold equivalent makes it possible to see more truthful trends. The Indicator has the ability to change gold to any other equivalent. It is enough to change the name of the exchange and the name of the instrument in the options tool and exchange. In addition, in the settings, the second box on top allows you to view the graph in a linear or logarithmic scale. The first box at the top switches the line chart or the CCI =WT indicator to this chart.
-------------------------------------------
Индикатор это инструмент для глобального анализа. По умолчанию используется цена золота. Цена инструмента из основного окна делится на цену золота. В результате получается цена инструмента в единицах золота. На экране для примера используется индекс Доу джонса. В окне индикатора цена индекса в единицах золота или так называемый золотой Доу Джонс. Использование золотого эквивалента дает возможность видеть более правдивые тенденции движения. В Индикаторе есть возможность поменять золото на любой другой эквивалент. Достаточно в опциях инструмент и биржа изменить название биржи и название инструмента. Кроме того, в настройках, второй бокс сверху дает возможность смотреть график в линейном или логарифмическом масштабе. Первый бокс сверу переключает линейный график или индикатор CCI =WT к данному графику.
APEX - Tester - Buy/Sell Strategies - BasicThis is a simple study for backtesting your strategy for the APEX trading bot. It encorporates the following strategies and script created individually :
- Moving averages -
- Bollinger Bands -
- MACD -
- RSI -
- SRSI -
- Stochastic -
- CCI -
- Percentage Change -
- VWAP -
Be aware that the buy points will in no way be exactly the same as APEX. Some buys will be missed by apex (Spikes).
It also encorporates basic riskmangement:
TP - Take profit
SL - Stop Loss
TSL - Trailing Stop Loss
please select at minimum TP and SL combination or TSL (only TP alone wont be enough)
Additional information:
green buy triangle is the basic buy strategy
green sell is casue by TP TSL
orange sell is casue by sell strategy
orange sell is casue by sell strategy
SL red line
TP green line
TSL purple
- Riskmanagement thanks to JustUncleL
- Added S/R lines thanks to buydipsonly ( blue and yellow line )
drnk_CCIClassical CCI gives the mean deviation of typical price ((high+low+close)/3) value to the simple moving average of typical price
drnk_CCI is using the same mathematical formula but configuration let you choose average type to calculate the mean deviation.
Default values gives the classic CCI
Physics MACD double// Physics MACD double 12, 26 and 5, 15
// with rsi and cci rise green on bottom
// with macd 15 rising above 0 with macd 26 below 0 green on top
// with macd 15 below 0 and macd 26 above 0 red on top
// CCI low and increasing lime bottom
// low and high volume change red green bottom circle
// use with Physics Bollinger Bands