MTF DSS (Double Smoothed Stochastic) [TH]The Double Smoothed Stochastic indicator was created by William Blau.
The DSS ranges from 0 to 100, like the standard Stochastic Oscillator.
The same rules of interpretation apply to Stochastics can be applied to DSS, although the DSS offers a much smoother curve than the raw Stochastic.
How it works:
It applies Exponential Moving Averages (EMAs) of two different periods to a standard Stochastic %K.
The components that construct the Stochastic Oscillator are first smoothed with the two EMAs.
Then, the smoothed components are plugged into the standard Stochastic formula to calculate the indicator.
Calculation:
EMA of the ( EMA of the (Close – Lowest Low for the specified period) )
Divided by
EMA of the ( EMA of the (Highest High for the specified period – Lowest Low for the specified period) )
X 100
How to add alerts:
Check off each piece of criteria you want for the alerts, then select Okay.
Then go to 'Create Alert' and set the condition to 'MTF DSS', select create.
Cari dalam skrip untuk "想象图:箱线图+折线组合,横轴为国家,纵轴为响应指数(0-100),箱线显示均值±标准差,叠加红色虚线标注各国确诊高峰时间点"
Buy/Sell on the levelsThis script is generally
My describe is:
There are a lot of levels we would like to buy some crypto.
When the price has crossed the level-line - we buy, but only if we have the permission in array(2)
When we have bought the crypto - we lose the permission for buy for now(till we will sell it on the next higher level)
When we sell some crypto(on the buying level + 1) we have the permission again.
There also are 2 protect indicators. We can buy if these indicators both green only(super trend and PIVOT )
Jun 12
Release Notes: Hello there,
Uncomment this section before use for real trade:
if array.get(price_to_sellBue, i) >= open and array.get(price_to_sellBue, i) <= close// and
//direction < 0 and permission_for_buy != 0
Here is my script.
In general - this is incredible simple script to use and understand.
First of all You can see this script working with only long orders, it means we going to get money if crypto grows only. Short orders we need to close the position on time.
In this script we buy crypto and sell with step 1% upper.
You can simply change the step by changing the price arrays.
Please note, if You want to see where the levels of this script is You Have to copy the next my indicator called LEVEL 1%
In general - if the price has across the price-level we buy some crypto and loose permission for buying for this level till we sell some crypto. There is ''count_of_orders" array field with value 2. When we bought some crypto the value turns to 0. 0 means not allowed to by on this level!!! The script buy if the bar is green only(last tick).
The script check every level(those we can see in "price_to_sellBue" array).
If the price across one of them - full script runs. After buying(if it possible) we check is there any crypto for sell on the level.
We check all levels below actual level( of actual level - ''i'' than we check all levels from 0 to i-1).
If there is any order that has value 0 in count of orders and index <= i-1 - we count it to var SELL amount and in the end of loop sell all of it.
Pay attention - it sells only if price across the level with red bar AND HAS ORDERS TO SELL WHICH WAS BOUGHT BELOW!!!
In Strategy tester it shows not-profitables orders sometimes, because if You have old Long position - it sells it first. First in - first out.
If the price goes down for a long time and You sell after 5 buys You sell the first of it with the highest value.
There is 2 protection from horrible buying in this strategy. The first one - Supertrend. If the supertrend is red - there is no permission for buy.
The second one - something between PIVOT and supertrend but with switcher.
If the price across last minimum - switcher is red - no permission for buy and the actual price becomes last minimum . The last maximum calculated for last 100 bars.
When the price across last maximum - switcher is green, we can buy. The last minimum calculation for last 100 bars, last maximum is actual price.
This two protections will save You from buying if price get crash down.
Enjoy my script.
Should You need the code or explanation, You have any ideas how to improve this crypt, contact me.
Vladyslav.
Jun 12
Release Notes: Here has been uncommented the protection for buy in case of price get down.
5 hours ago
Release Notes: Changed rages up to actual price to make it work
CCI and ADX_by RMCCI and ADX
ENTRY:
Buy: When CCI crosses -100 level from -200 level(1hr/15min Time Frame)
Short: When CCI crosses 100 level from 200 level (1hr/15min Time Frame)
Closing of Position : 1:1 OR 1:2 (Or As per Value Zone)
Price Displacement - Candlestick (OHLC) CalculationsA Magical little helper friend for Candle Math.
When composing scripts, it is often necessary to manipulate the math around the OHLC. At times, you want a scalar (absolute) value others you want a vector (+/-). Sometimes you want the open - close and sometimes you want just the positive number of the body size. You might want it in ticks or you might want it in points or you might want in percentages. And every time you try to put it together you waste precious time and brain power trying to think about how to properly structure what you're looking for. Not to mention it's normally not that aesthetically pleasing to look at in the code.
So, this fixes all of that.
Using this library. A function like 'pd.pt(_exp)' can call any kind of candlestick math you need. The function returns the candlestick math you define using particular expressions.
Candle Math Functions Include:
Points:
pt(_exp) Absolute Point Displacement. Point quantity of given size parameters according to _exp.
vpt(_exp) Vector Point Displacement. Point quantity of given size parameters according to _exp.
Ticks:
tick(_exp) Absolute Tick Displacement. Tick quantity of given size parameters according to _exp.
vtick(_exp) Vector Tick Displacement. Tick quantity of given size parameters according to _exp.
Percentages:
pct(_exp, _prec) Absolute Percent Displacement. (w/rounding overload). Percent quantity of bar range of given size parameters according to _exp.
vpct(_exp, _prec) Vector Percent Displacement (w/rounding overload). Percent quantity of bar range of given size parameters according to _exp.
Expressions You Can Use with Formulas:
The expressions are simple (simple strings that is) and I did my best to make them sensible, generally using just the ohlc abreviations. I also included uw, lw, bd, and rg for when you're just trying to pull a candle component out. That way you don't have to think about which of the ohlc you're trying to get just use pd.tick("uw") and now the variable is assigned the length of the upper wick, absolute value, in ticks. If you wanted the vector in pts its pd.vpt("uw"). It also makes changing things easy too as I write it out.
Expression List:
Combinations
"oh" = open - high
"ol" = open - low
"oc" = open - close
"ho" = high - open
"hl" = high - low
"hc" = high - close
"lo" = low - open
"lh" = low - high
"lc" = low - close
"co" = close - open
"ch" = close - high
"cl" = close - low
Candle Components
"uw" = Upper Wick
"bd" = Body
"lw" = Lower Wick
"rg" = Range
Pct() Only
"scp" = Scalar Close Position
"sop" = Scalar Open Position
"vcp" = Vector Close Position
"vop" = Vector Open Position
The attributes are going to be available in the pop up dialogue when you mouse over the function, so you don't really have to remember them. I tried to make that look as efficient as possible. You'll notice it follows the OHLC pattern. Thus, "oh" precedes "ho" (heyo) because "O" would be first in the OHLC. Its a way to help find the expression you're looking for quickly. Like looking through an alphabetized list for traders.
There is a copy/paste console friendly helper list in the script itself.
Additional Notes on the Pct() Only functions:
This is the original reason I started writing this. These concepts place a rating/value on the bar based on candle attributes in one number. These formulas put a open or close value in a percentile of the bar relative to another aspect of the bar.
Scalar - Non-directional. Absolute Value.
Scalar Position: The position of the price attribute relative to the scale of the bar range (high - low)
Example: high = 100. low = 0. close = 25.
(A) Measure price distance C-L. How high above the low did the candle close (e.g. close - low = 25)
(B) Divide by bar range (high - low). 25 / (100 - 0) = .25
Explaination: The candle closed at the 25th percentile of the bar range given the bar range low = 0 and bar range high = 100.
Formula: scp = (close - low) / (high - low)
Vector = Directional.
Vector Position: The position of the price attribute relative to the scale of the bar midpoint (Vector Position at hl2 = 0)
Example: high = 100. low = 0. close = 25.
(A) Measure Price distance C-L: How high above the low did the candle close (e.g. close - low = 25)
(B) Measure Price distance H-C: How far below the high did the candle close (e.g. high - close = 75)
(C) Take Difference: A - B = C = -50
(D) Divide by bar range (high - low). -50 / (100 - 0) = -0.50
Explaination: Candle close at the midpoint between hl2 and the low.
Formula: vcp = { / (high - low) }
Thank you for checking this out. I hope no one else has already done this (because it took half the day) and I hope you find value in it. Be well. Trade well.
Library "PD"
Price Displacement
pt(_exp) Absolute Point Displacement. Point quantity of given size parameters according to _exp.
Parameters:
_exp : (string) Price Parameter
Returns: Point size of given expression as an absolute value.
vpt(_exp) Vector Point Displacement. Point quantity of given size parameters according to _exp.
Parameters:
_exp : (string) Price Parameter
Returns: Point size of given expression as a vector.
tick(_exp) Absolute Tick Displacement. Tick quantity of given size parameters according to _exp.
Parameters:
_exp : (string) Price Parameter
Returns: Tick size of given expression as an absolute value.
vtick(_exp) Vector Tick Displacement. Tick quantity of given size parameters according to _exp.
Parameters:
_exp : (string) Price Parameter
Returns: Tick size of given expression as a vector.
pct(_exp, _prec) Absolute Percent Displacement (w/rounding overload). Percent quantity of bar range of given size parameters according to _exp.
Parameters:
_exp : (string) Expression
_prec : (int) Overload - Place value precision definition
Returns: Percent size of given expression as decimal.
vpct(_exp, _prec) Vector Percent Displacement (w/rounding overload). Percent quantity of bar range of given size parameters according to _exp.
Parameters:
_exp : (string) Expression
_prec : (int) Overload - Place value precision definition
Returns: Percent size of given expression as decimal.
Stop Loss With Average True Range (ATR)Stop Loss With Average True Range (ATR)
It simplifies the calculation of stop loss price for stop loss method using the average true range (ATR).
For example;
You want to stop loss below 3 ATR. Let's assume the price is 100, the average true range is 5. You will multiply the average true range by 3 and subtract from the price and enter a stop loss order at the 85 price you have reached. Instead of doing this calculation every time, you just need to use this script and set the multiplier to 3. A stop loss line will be drawn below the price candles.
You can set the method to be used when averaging the true range. Methods you can use to average: EMA (exponentially moving average), HMA (hull moving average), RMA (moving average used in RSI), SMA (simple moving average), SWMA (symmetrically weighted moving average), VWMA (volume-weighted moving average), WMA (weighted moving average).
You can set the length to be used when averaging the true range.
You can set the multiplier to be used when determining the stop loss price.
Turkish
Ortalama Gerçek Aralıkla (ATR) Zarar Durdurma
Gerçek aralığın ortalamasını kullanarak zarar durdurma yöntemi için zarar durdurma fiyatının hesaplanmasını kolaylaştırır.
Örneğin;
3 ATR kadar aşağıda zarar durdurmak istiyorsunuz. Fiyatın 100, ortalama gerçek aralığın 5 olduğunu varsayalım. Ortalama gerçek aralığı 3 ile çarparak fiyattan çıkaracaksınız ve ulaştığınız 85 fiyatına zarar durdurma emri gireceksiniz. Bu hesabı her seferinde yapmak yerine bu betiği kullanmanız ve çarpanı 3 olarak ayarlamanız yeterli. Bu sayede fiyat mumlarının altına zarar durdurma çizgisi çizilecektir.
Gerçek aralığın ortalaması alınırken kullanılacak yöntemi ayarlayabilirsiniz. Ortalama almak için seçebileceğiniz yöntemler: EMA (üstel hareketli ortalama), HMA (gövde hareketli ortalama), RMA (göreceli hareketli ortalama), SMA (basit hareketli ortalama), SWMA (simetrik ağırlıklı hareketli ortalama), VWMA (hacim ağırıklı hareketli ortalama), WMA (ağırlıklı hareketli ortalama).
Gerçek aralığın ortalaması alınırken kullanılacak periyot uzunluğunu ayarlayabilirsiniz.
Zarar durdurma fiyatını belirlerken kullanılacak çarpanı ayarlayabilirsiniz.
Volume Spikes & Growing Volume Signals With Alerts & ScannerVOLUME SPIKES & GROWING VOLUME SIGNALS WITH ALERTS & SCANNER
This indicator shows arrows when there is a volume spike. It also paints the background when volume is growing. There is also a volume scanner for 8 tickers that will change color in real time when your other favorite tickers see volume growth and spikes.
You can customize the length of DMI, the number of bars to calculate the current volume average from, the number of bars back to get the overall volume average from, the multiple that needs to be hit to give a signal, the position of the scanner table and which tickers are used in the scanner. There are detailed directions as tooltips in the indicator settings you can read to understand exactly what each input does.
All features are customizable as well as which tickers the screener uses.
***HOW TO USE***
Watch for volume to pick up before placing trades as this will help you stay out of the markets when price is choppy. Volume usually brings volatility so watch for the volume signals to show up on the chart. Typically when price has made a big move one direction or is consolidating and you see the volume indicator start giving signals, the market is ready to reverse or continue its current trend but move faster in that direction.
Volume Spikes
When there is a volume spike that is larger than the average of volume over the last 100+ bars(depending on your settings) multiplied by the volume amount multiplier(in your settings) then an arrow will show up on the chart. This arrow will be green if DMI is bullish and red if DMI is bearish.
Volume Growth
A Background color will appear when the average volume over the last 5 bars(depending on your settings) is higher than the average volume over the last 100+ bars(depending on your settings) and is greater than your multiple. It will also paint the background when the volume moving average has increased over the last 3 bars consecutively. The background colors will be red or green depending on buy & sell pressure(DMI). If the background color appears, then you know volume is growing and volatility is near.
Volume Scanner
The scanner can be customized to have all of your favorite tickers by changing the tickers used in the indicator settings at the bottom. When no volume growth or spikes are detected, the ticker will show as light blue. When volume spikes or growth is detected, the ticker will turn orange to notify you.
Alerts
You can set up alerts as well when there is volume growth, bullish volume spikes and bearish volume spikes on any chart or timeframe.
Indicator Settings
Settings will need to be adjusted across different tickers as some have large swings in volume and some stay pretty even, so make sure to set up different chart layouts with settings that work for each ticker and save them individually so you don’t have to reset these values every time you switch charts.
***MARKETS***
This indicator can be used as a signal on all markets, including stocks, crypto, futures and forex as long as Tradingview has volume and DMI data for that ticker.
***TIMEFRAMES***
This volume spike indicator can be used on all timeframes as long as there is enough data for Tradingview to use for calculations.
***TIPS***
Try using numerous indicators of ours on your chart so you can instantly see the bullish or bearish trend of multiple indicators in real time without having to analyze the data. Some of our favorites are our Auto Fibonacci, Volume Profile, Momentum, Auto Support And Resistance and Money Flow Index in combination with this Volume Growth indicator. They all have real time Bullish and Bearish labels as well so you can immediately understand each indicator's trend.
Williams %R - SmoothedFrom TradingView's description:
Williams %R (%R) is a momentum-based oscillator used in technical analysis, primarily to identify overbought and oversold conditions. The %R is based on a comparison between the current close and the highest high for a user defined look back period. %R Oscillates between 0 and -100 (note the negative values) with readings closer to zero indicating more overbought conditions and readings closer to -100 indicating oversold. Typically %R can generate set ups based on overbought and oversold conditions as well overall changes in momentum.
What's special?
This indicator adds two additional EMA lines to the original Williams %R indicator. Default EMA lengths are 5 and 13. The result is 2 smoother average lines, which are easier to read.
This indicator includes:
- signals for EMA crosses. EMA crosses can help indicate confirmed trend changes. Default colors are green and red
- signals for trend reversals on the faster EMA line. Default colors are blue and orange
Alerts available for bullish/bearish crossovers and reversals.
Enjoy~~!
Viral Force IndexBased on the Elder Force Index (EFI) indicator, the Viral Force Index (VFI) attempts to normalize the original indicator by plotting EFI on the interval ]-100, 100 [.
VFI comes with a bar coloring feature, allowing users to get an idea of the current value of the indicator without having to look away from the chart.
Additionally, the linear regression line provides a simple way to filter out the noise with little to no additional 'lag'.
License tl;dr: Don't sell it, or distribute it without permission, and you'll be fine.
If you find a bug, or you have feedback, feel free to leave a comment.
Relative Strength Super Smoother by lastguruA better version of Apirine's RS EMA by using a superior MA: Ehlers Super Smoother.
In January 2022 edition of TASC Vitaly Apirine introduced his Relative Strength Exponential Moving Average. A concept not entirely new, as Tushar Chande used a similar calculation for his VIDYA moving average. Both are based on the idea to change EMA length depending on the absolute RSI value, so the moving average would speed up then RSI is going up or down from the center value (when there is a significant directional price movement), and slow down when RSI returns to the center value (when there is a neutral or sideways movement). That way EMA responsiveness would increase where it matters most, but decrease where there is a high probability of whipsaw.
There are only two main differences between VIDYA and RS EMA:
RSI internal smoothing - VIDYA uses SMA, as Chande's CMO is an RSI with SMA; RS EMA uses EMA
Change direction - VIDYA sets the fastest length; RS EMA sets the slowest length
Both algorithms use EMA as the base of their calculation. As John F. Ehlers has shown in his article "Predictive and Successful Indicators" (January 2014 issue of TASC), EMA is not a very efficient filter, as it introduces a significant lag if sufficient smoothing is required. He describes a new smoothing filter called SuperSmoother, "that sharply attenuates aliasing noise while minimizing filtering lag." In other words, it provides better smoothing with lower lag than EMA.
In this script, I try to get the best of all these approaches and present to you Relative Strength Super Smoother. It uses RS EMA algorithm to calculate the SuperSmoother length. Unlike the original RS EMA algorithm, that has an abstract "multiplier" setting to scale the period variance (without this parameter, RSI would only allow it to speed up twice; Vitaly Apirine sets the multiplier to 10 by default), my implementation has explicit lower bound setting, so you can specify the exact range of calculated length.
Settings:
Lower Bound - fastest SuperSmoother length (when RSI is +100 or -100)
Upper Bound - slowest SuperSmoother length (when RSI is 0)
RSI Length - underlying RSI length. Unlike the original RSI that uses RMA as an internal smoothing algorithm, Vitaly Apirine uses EMA, which is approximately twice as fast (that is needed because he uses a generally long RSI length and RMA would be too slow for this). It is the same as the Upper Bound by default (0), as in the original implementation
The original RS EMA is also shown on the chart for comparison. The default multiplier of 10 for RS EMA means that the fastest EMA period is around 4. I use the fastest period of 8 by default. It does not introduce too much of a lag in comparison, but the curve is much smoother.
This script is just an interface for my public libraries. Check them out for more information.
Heikin Ashi CountObjective:
This indicator aims to obtain an oscillator indicating the trend of a market by minimizing noise through the use of Heikin Ashi candles.
The idea is to make the oscillator tend towards 100 at each bullish Heikin Ashi candle, and inversely towards 0 when bearish.
The advantage is that this indicator has little noise compared to the RSI, but also little lag compared to the Schaff Trend Cycle, which are the two indicators that inspired me to create this one.
Usage:
As a general rule, below 15, HA Count indicates an oversell and above 85 an overbuy.
Setting the length for the candle count results in an indicator that is less sensitive when close to 1 and more sensitive when it is at 2 or higher.
Chosen as the default value, 1.15 seems to give the best indications, regardless of the market or time period.
Also it looks very similar to the values that the RSI could give set over 14 periods, so it can be used in the same way. Especially with regard to divergences.
---- FR ----
Objectif :
Cet indicateur vise à obtenir un oscillateur indicant la tendance d'un marché en minimisant le bruit grace à l'utilisation des bougies Heikin Ashi.
L'idée est de faire tendre l'oscillateur vers 100 à chaque bougie Heikin Ashi haussière, et inversement vers 0 lorsque baissière.
L'avantage est que cet indicateur a peu de bruit comparé au RSI, mais peu de lag aussi comparé au Schaff Trend Cycle, qui sont les deux indicateurs qui m'ont inspiré pour la création de celui-ci.
Utilisation :
En régle général, en dessous de 15 HA Count indique une sur-vente et au-dessus de 85 un sur-achat.
Le paramétrage de la longueur pour le comptage de bougie permet d'obtenir un indicateur moins sensible lorsque proche de 1 et plus sensible lorsqu'il est à 2 ou supérieur.
Choisie comme valeur par défaut, 1.15 semble donner les meilleures indications, peu importe le marché ou la période de temps.
En outre cela ressemble beaucoup aux valeurs que pourrait donner le RSI régler sur 14 périodes, ainsi il peut être utilisé de la même manière. Notamment pour ce qui est des divergences.
K's Reversal Indicator IK's reversal indicator I is a special combination between Bollinger bands and the MACD oscillator. It is a contrarian indicator that depends on the following conditions:
• A buy signal is generated whenever the current market price is below the 100-period lower Bollinger band while simultaneously, the MACD value must be above its signal line. At the same time, the previous MACD value must be below its previous signal line.
• A sell (short) signal is generated whenever the current market price is above the 100-period upper Bollinger band while simultaneously, the MACD value must be below its signal line. At the same time, the previous MACD value must be above its previous signal line.
The way to use K's reversal indicator is to combine it with your already long/short bias in a sideways/range market in order to maximize the probability of success.
Limitations of the indicator include the following:
• There are no clear exit rules that work well on average across the markets. Even though K’s reversal indicator gives contrarian signals, it does not show when to exit the positions.
• As with other indicators, it underperforms on some markets and is not to be used everywhere.
• False signals tend to occur during trending markets but there is no proven way to detect a false signal.
CanvasLibrary "Canvas"
A library implementing a kind of "canvas" using a table where each pixel is represented by a table cell and the pixel color by the background color of each cell.
To use the library, you need to create a color matrix (represented as an array) and a canvas table.
The canvas table is the container of the canvas, and the color matrix determines what color each pixel in the canvas should have.
max_canvas_size() Function that returns the maximum size of the canvas (100). The canvas is always square, so the size is equal to rows (as opposed to not rows multiplied by columns).
Returns: The maximum size of the canvas (100).
get_bg_color(color_matrix) Get the current background color of the color matrix. This is the default color used when erasing pixels or clearing a canvas.
Parameters:
color_matrix : The color matrix.
Returns: The current background color.
get_fg_color(color_matrix) Get the current foreground color of the color matrix. This is the default color used when drawing pixels.
Parameters:
color_matrix : The color matrix.
Returns: The current foreground color.
set_bg_color(color_matrix, bg_color) Set the background color of the color matrix. This is the default color used when erasing pixels or clearing a canvas.
Parameters:
color_matrix : The color matrix.
bg_color : The new background color.
set_fg_color(color_matrix, fg_color) Set the foreground color of the color matrix. This is the default color used when drawing pixels.
Parameters:
color_matrix : The color matrix.
fg_color : The new foreground color.
color_matrix_rows(color_matrix, rows) Function that returns how many rows a color matrix consists of.
Parameters:
color_matrix : The color matrix.
rows : (Optional) The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
Returns: The number of rows a color matrix consists of.
pixel_color(color_matrix, x, y, rows) Get the color of the pixel at the specified coordinates.
Parameters:
color_matrix : The color matrix.
x : The X coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
y : The Y coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
rows : (Optional) The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
Returns: The color of the pixel at the specified coordinates.
draw_pixel(color_matrix, x, y, pixel_color, rows) Draw a pixel at the specified X and Y coordinates. Uses the specified color.
Parameters:
color_matrix : The color matrix.
x : The X coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
y : The Y coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
pixel_color : The color of the pixel.
rows : (Optional) The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
draw_pixel(color_matrix, x, y, rows) Draw a pixel at the specified X and Y coordinates. Uses the current foreground color.
Parameters:
color_matrix : The color matrix.
x : The X coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
y : The Y coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
rows : (Optional) The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
erase_pixel(color_matrix, x, y, rows) Erase a pixel at the specified X and Y coordinates, replacing it with the background color.
Parameters:
color_matrix : The color matrix.
x : The X coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
y : The Y coordinate for the pixel. Must be between 0 and "color_matrix_rows() - 1".
rows : (Optional) The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
init_color_matrix(rows, bg_color, fg_color) Create and initialize a color matrix with the specified number of rows. The number of columns will be equal to the number of rows.
Parameters:
rows : The number of rows the color matrix should consist of. This can be omitted, but if used, can speed up execution. It can never be greater than "max_canvas_size()".
bg_color : (Optional) The initial background color. The default is black.
fg_color : (Optional) The initial foreground color. The default is white.
Returns: The array representing the color matrix.
init_canvas(color_matrix, pixel_width, pixel_height, position) Create and initialize a canvas table.
Parameters:
color_matrix : The color matrix.
pixel_width : (Optional) The pixel width (in % of the pane width). The default width is 0.35%.
pixel_height : (Optional) The pixel width (in % of the pane height). The default width is 0.60%.
position : (Optional) The position for the table representing the canvas. The default is "position.middle_center".
Returns: The canvas table.
clear(color_matrix, rows) Clear a color matrix, replacing all pixels with the current background color.
Parameters:
color_matrix : The color matrix.
rows : The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
update(canvas, color_matrix, rows) This updates the canvas with the colors from the color matrix. No changes to the canvas gets plotted until this function is called.
Parameters:
canvas : The canvas table.
color_matrix : The color matrix.
rows : The number of rows of the color matrix. This can be omitted, but if used, can speed up execution.
SRJ RSI Outperformer StrategyFor Daily timeframe use 100, 40, 21, 200 in input settings.
For 15 Minute time frame use 14, 28, 21, 100 in input settings
Bank Zone V2This indicator finds the current price and dynamically plots bank zone levels that's incremented by 50 or 100 pips.
Levels are displayed on all time frames and will work for ALL forex pairs and indices.
How to use this indicator.
Select Pair - Choose a pair that's in your watchlist
Increment By - Plots lines in increments of 50 or 100 pips
Rainbow Oscillator The Rainbow Oscillator is a technical indicator that shows prices in overbought or oversold areas. That allows you to catch the price reversal point.
---------------
FEATURES
---------------
.:: Dynamic levels ::.
The indicator levels are divided into several zones, which have a fibonacci ratio. Zones determine the overbought/oversold level. Blue and green level zones are better for buying, red and orange for selling. Dynamic levels are used as replacements for classic levels such as -100 and 100 for the CCI indicator or 30 and 70 for the RSI indicator. Dynamic levels work much better than static levels, as they are more adaptive to the current market situation.
.:: Composite oscillator (3 in 1) ::.
The main signal line of the indicator includes all three oscillators RSI, CCI, Stoch in different ratios. In the settings, you can change the proportions or completely remove one of the oscillators by setting its weight to 0
.:: CCI + RSI + Stoch ratio setting ::.
Each of the oscillators has its own weight in the calculation formula: w2 * cci ( + w1 * ( rsi - 50) + (1 - w2 - w1) * ( stoch - 50), this allows you to create the resulting oscillator from all indicators, depending on the weight of each of them. Each weight value must be between 0 and 1 so that the sum of all weights does not exceed 1.
.:: Smoothing levels and lines of the oscillator ::.
Smoothing the oscillator readings allows you to filter out the noise and get more accurate data. Level offset allows you to customize the support for inputs.
.:: Market Flat ::.
Dynamic creation of levels allows you to find in the price reversal zone, even when the price is in a flat
.:: Sources ::.
You can change the data source for the indicator to the number of longs and shorts for the selected asset. For example, BTCUSDLONGS / BTCUSDSHORTS is perfect for Bitcoin, then the oscillator will work on this data and will not use the quote price.
.:: Trend Detection ::.
The main line of the oscillator has 2 colors - green and red. Red means downtrend, green means uptrend. Trend reversal points are most often found in overbought and oversold zones.
.:: Alerts ::.
Alerts inside for next events: Buy (blue point) Sell (red point) and TrendReversal (change line color)
----------------
TRADING
—-------------
There are several possible entry points for the indicator, let's consider them all.
1) Trend reversal.
Long entry: The indicator line is in the green zone below 0 (oversold), while the line changes color from red (downward) to green (upward)
Short entry: The indicator line is in the red zone above the 0 (overbought) mark, while the line changes color from green to red.
2) Red and blue dots.
Long entry: Blue dot
Short Entry: Red Dot
I prefer to use the first trading method.
----------------
SETTINGS
----------------
.:: Trend Filter (checkbox) ::.
Use trend confirmation for red/blue dots. When enabled, the blue dot requires an uptrend, red dot requires downtrend confirmation before appearing.
.:: Use long/shorts (checkbox) ::.
Change formula to use longs and shorts positions as data source (instead of quote price)
.:: RSI weight / CCI weight / Stoch weight ::.
Weight control coefficients for RSI and CCI indicators, respectively. When you set RSI Weight = 0, equalize the combo of CCI and Stoch , when RSI Weight is zero and CCI Weight is equal to the oscillator value will be plotted
only from Stoch . Intermediate values have a high degree of measurement of each of the three oscillators in percentage terms from 0 to 100. The calculation uses the formula: w2 * cci ( + w1 * ( rsi - 50) + (1 - w2 - w1) * ( stoch - 50),
where w1 is RSI Weight and w2 is CCI Weight, Stoch weight is calculated on the fly as (1 - w2 - w1), so the sum of w1 + w2 should not exceed 1, in this case Stoch will work as opposed to CCI and RSI .
.:: Oscillograph fast and slow periods ::.
The fast period is the period for the moving average used to smooth CCI, RSI and Stoch. The slow period is the same. The fast period must always be less than the slow period.
.:: Oscillograph samples period::.
The period of smoothing the total values of indicators - creates a fast and slow main lines of the oscillator.
.:: Oscillograph samples count::.
How many times smoothing applied to source data.
.:: Oscillator samples type ::.
Smoothing line type e.g. EMA, SMA, RMA …
.:: Level period ::.
Periodically moving averages used to form the levels (zone) of the Rainbow Oscillator indicator
.:: Level offset ::.
Additional setting for shifting levels from zero points. Can be useful for absorbing levels and filtering input signals. The default is 0.
.:: Level redundant ::.
It characterizes the severity of the state at each iteration of the level of the disease. If set to 1 - the levels will not decrease when the oscillator values fall. If it has a value of 0.99 - the levels are reduced by 0.01
each has an oscillator in 1% of cases and is pressed to 0 by more aggressive ones.
.:: Level smooth samples ::.
setting allows you to set the number of strokes per level. Measuring the number of averages with the definition of the type of moving averages
.:: Level MA Type ::.
Type of moving average, average for the formation of a smoothing overbought and oversold zone
MFI + RSI + MOM With Bull & Bear Trend LabelMOMENTUM + MONEY FLOW INDEX + RELATIVE STRENGTH INDEX WITH BULL & BEAR LABELS
This is a combination of 3 popular indicators. Momentum(MOM), Money Flow Index(MFI) and Relative Strength Index(RSI) along with color changing labels that tell you each indicator's current trend.
The middle white line shows the level that each indicator needs to stay above to be bullish and below for bearish. Watch for all three indicators to cross and hold above or below the mid line for big moves.
It is important to note that these indicators do not need to be going up to be bullish or down to be bearish. They just need to hold above or below the mid line to understand the overall trend.
The momentum indicator is the most relevant in my opinion. If it is holding above the mid line steadily, usually the overall trend will continue upwards so look to buy the dips if the momentum cloud is staying above the white line and vice versa.
It is also important to note that the default settings for this indicator are the 100 period as I find it to be super relevant across most charts but these numbers can be changed in the indicator settings.
Since momentum swings wildly past the normal 0-100 range, it is important to note that the momentum line has been “normalized” to stay within this same range as the rsi and mfi. So if you look at a normal momentum indicator side by side with this indicator it will not look the same however, I find it to be a very good indicator of overall direction so I know the current market sentiment even when price is diverging from the indicator directions.
All of the colors, sources and lengths can be easily customized in the indicator settings input tab.
***HOW TO USE***
When Momentum is above the mid line, it is bullish. When Momentum is below the mid line, it is bearish.
A label on the right side will update in real time to tell you if momentum is Bullish or Bearish for faster recognition of the trend.
When RSI is above the mid line, it is bullish. When Momentum is below the mid line it is bearish.
A label on the right side will update in real time to tell you if RSI is Bullish or Bearish for faster recognition of the trend.
When MFI is above the mid line, it is bullish. When MFI is below the mid line it is bearish.
A label on the right side will update in real time to tell you if MFI is Bullish or Bearish for faster recognition of the trend.
This indicator was built to help you quickly identify the Bullish or Bearish nature of the current trend with a live color changing label so you can glance at the label and understand it's direction without analyzing the indicator data.
***MARKETS***
This indicator can be used as a signal on all markets, including stocks, crypto, futures and forex.
***TIMEFRAMES***
This mom + mfi + rsi indicator can be used on all timeframes.
***TIPS***
Try using numerous indicators of ours on your chart so you can instantly see the bullish or bearish trend of multiple indicators in real time without having to analyze the data. Some of our favorites are our Auto Fibonacci, Directional Movement Index, Volume Profile, Auto Support And Resistance and Money Flow Index in combination with this indicator. They all have real time Bullish and Bearish labels as well so you can immediately understand each indicator's trend.
BTC Composite Man V.1Wyckoff's theory t is one of the most influential theories of market expression, and the most important components of which are lateral movement areas and trends. This theory turns the graph into something like Dots and lines (stations and paths).
After getting acquainted with Wyckoff's theory, I read several books on the subject, hoping that they could help me identify this area of lateral movement, the area of accumulation, or distribution. But there was a fundamental drawback. It is challenging to diagnose this issue. The rules discussed in these books are highly interpretive and subjective, and two different individual traders may come to exactly opposite conclusions based on their interpretation.
But as I became more familiar with the onchain analysis, an idea came to my mind that might be useful for more objectively recognizing charts based on Wyckoff's theory.
Composite Man: Wyckoff proposed a theory to help understand stock price movements. this is the “Composite Man” theory. (The same concept of whales or strong hands.)
he said: “…all the fluctuations in the market and all the various stocks should be studied as if they were the result of one man’s operations. Let us call him the Composite Man, who, in theory, sits behind the scenes and manipulates the stocks to your disadvantage if you do not understand the game as he plays it; and to your great profit if you do understand it.” (The Richard D. Wyckoff Course in Stock Market Science and Technique, section 9, p. 1-2)
Composite Man is a hypothetical man who has so much money and stocks that when he wants he can gradually increase the price by buying stocks and creating demand, and when the price goes high enough he sells his stock and lower the price. The composite man is the main player in the market. Wyckoff says that if you want to make a good profit from the market, figure out what a composite man game is.
Having a way of showing us where the Composite Man is in the market, can help us understand future trends
Who are the strong hands in the cryptocurrency market? (I use the strong hand word here instead of the composite man)
Some buy or sell more per capita than other market participants (retailers).
To understand this in the bitcoin market, I have used 3 charts and concepts:
1- Sending Addresses: The number of coins addresses making inflow transactions to the exchange.
Indicates the number of sellers' wallets (number of sellers)
2- buyers Addresses: The number of coins addresses making outflow transactions from the exchange.
Indicates the number of buyers' wallets (number of buyers)
3- Pay attention to this issue: the volume of transactions shows both the volume of sales and the buy ( Volume of buy and sale is equal in the market)
The Composite Man indicator is created by dividing the Receiving Addresses of bitcoin by the Sending Addresses. After dividing these addresses, the moving average of Alma was calculated for them and compared with the moving average of 100 days.
Considering the above 3 issues, it can be concluded:
- If the number of Receiving Addresses is higher than the Sending Addresses (the number of people who bought compared to the number of those who sold), it indicates that more people bought and fewer people sold (given that the volume of sales and buys are the same) So the sellers were stronger hands. In such a situation, the composite man is on the sales side.
- If the number of Sending Addresses is higher than the Receiving Addresses (number of people who have sold more than the number of people who have bought), it indicates that more people have been sellers and fewer people have been buyers (given that the volume of sales and buys are the same) so the buyers were stronger hands. In such a situation, the Composite man is on the buying side.
Accordingly, if the swing line is above the 100-day moving average line, it indicates that stronger addresses are being sold and retailers are buying, and vice versa.
VIX Reversal Scalper by Trend Friend - Stocks OnlyVIX REVERSAL SCALPER BY TREND FRIEND - STOCKS ONLY
This indicator is built for scalping, but can be used for swing trades by adjusting the signal settings to a higher number.
This indicator is meant for stocks with a lot of price action and volatility, so for best results, use it on charts that move similar to the S&P 500 or other similar charts.
This indicator uses real time data from the stock market overall, so it should only be used on stocks and will only give a few signals during after hours. It does work ok for crypto, but will not give signals when the US stock market is closed.
**HOW TO USE**
When the VIX Volatility Index trend changes direction, it will give a bull or bear signal on the chart depending on which way the VIX is now trending. Follow these when price is near support/resistance or fibonacci levels.
For more signals with earlier entries, go into settings and reduce the number. 10-100 is best for scalping. For less signals with later entries, change the number to a higher value. Use 100-500 for swing trades. Can go higher for long swing trades.
***MARKETS***
This indicator should only be used on the US stock markets as signals are given based on the VIX volatility index which measures volatility of the US Stock Markets.
***TIMEFRAMES***
This indicator works on all time frames.
**NOTE**
Repainting does happen but it is seldom. If I get enough requests to remove repainting I will, but since it is built for early entries, preventing it from repainting will make the signals show up later than normal.
Due to various factors, this indicator might not give exit signals every time it should, so be sure to watch the price action for entries/exits and don't rely solely on this indicator.
**INVERSE CHARTS**
If you are using this on an inverse ETF and the signals are showing backwards, please comment with what chart it is and I will configure the indicator to give the correct signals. I have included over 50 inverse ETFs into the code to show the correct signals on inverse charts, but I'm sure there are some that I have missed so feel free to let me know and I will update the script with the requested tickers.
***TIPS***
Try using numerous indicators of ours on your chart so you can instantly see the bullish or bearish trend of multiple indicators in real time without having to analyze the data. Some of our favorites are our Auto Fibonacci, Directional Movement Index, Volume Profile, Auto Support And Resistance and Money Flow Index in combination with this Vix Reversal Scalper. They all have real time Bullish and Bearish labels as well so you can immediately understand each indicator's trend.
BB Order BlocksUsing the Bollinger Band to mark areas of Support and Resistance
The scrip finds the highest and lowest levels of the bands to mark up futures areas of interest.
If the High/Lows are being broken on the Bollinger band, or if the look back range has expired without finding new levels, the script will stop plotting them until new levels are found
I have found many combinations which work well
Changing the band length to to levels 20,50,100 or 200 seem to give interesting results
Aswell as this changing the standard deviation to 3 instead of 2 marks up key levels.
The look back range seems to show better levels on 50,100 and 200
Let me know any changes or updates you think you could make an impact , this was just a quick basic script I wanted to share.
Mansfield RSHello,
I hope you like this representation of the Mansfield Relative Strength Indicator.
The calculations have been made based on the following formulas:
Standard Relative Performance indicator
RP = ( stock_close / index_close ) * 100
Mansfield Relative Performance indicator
MRP = (( RP (today) / sma ( RP (today), n)) - 1 ) * 100
Where:
RP = Standard Relative Performance indicator (see above)
SMA = Simple moving average over n days.
n = 52 for weekly charts, and n = 200 on daily charts
Thanks,
KINSKI RSI/RSX DivergenceThe Relative Strength Index (RSI) is a momentum indicator that measures the magnitude of recent price changes to analyse overbought or oversold conditions. RSI values range from 0 to 100.
The Relative Strength Index (RSI) is calculated using the following formula: RSI = 100 - 100 / (1 + RS) Where RS = average gain of upward phases during the specified time frame / average loss of downward phases during the specified time frame.
An asset price is considered overbought (due for a correction) if the RSI is above 70 and oversold (due for a recovery) if it is below 30. More extreme values (80/20) are also used to avoid false readings.
In a strong uptrend, the RSI often reaches 70 and above for long periods, and downtrends can remain at 30 or below for long periods.
Divergence detection in RSI is one of the important functions of this indicator. The reason is that an RSI divergence is a more reliable signal than the overbought and oversold indicators themselves. You will get overbought and oversold signals all the time. However, the divergence is a rare event.
In general, RSI divergence means that the RSI indicator is moving in the opposite direction compared to the price. So while the price is moving, the RSI is telling us in advance to expect a change in direction.
Positive RSI divergence
A positive RSI divergence is when the price trend has lower lows and lower highs, while the RSI indicator does the opposite - higher highs and higher lows. The price continues to fall while the RSI indicator begins to rise.
Negative RSI divergence
Negative RSI divergence is the opposite of positive divergence. It applies to uptrends where the price reaches higher highs and higher lows. However, the RSI shows lower highs and lower lows - the price goes up but the RSI goes down. The price closes with higher highs and higher lows, while the RSI indicator does the opposite - lower lows and lower highs, confirming a negative divergence. As a result, there is a sharp decline in the price.
RSX Indicator - Base script: SharkCIA by Jaggedsoft (Linked in the source code)
The RSX is the noise-free variant of the more popular RSI oscillator. Typically, any indicator can be smoothed by applying a moving average. However, a major disadvantage of such a method is that there is a time lag between the indicator and the price. RSX Indicator attempts to do this without signal delay.
What distinguishes this indicator from others of this type?
Display of RSI indicator together/alone with RSX and RSI smoothed
display of the RSI indicator (option: "RSI: On/Off")
display of the RSX indicator (option: "RSX: On/Off")
display of the RSI indicator as smoothed version (option: "RSI Smoothed: On/Off")
offers the possibility to choose between different view variants
many settings for additional information, layout and divergence identification
enables completely new comparison possibilities and insights with the additional RSI variants
Binance Open InterestIntro
A free and open source indicator that shows you open interest for Binance USDT and coin margin perpetual swap contracts, plotted as candlesticks.
Open interest means the total number of outstanding derivatives contracts, or in plain and simple English: the total amount of positions that traders have opened and still remain open.
Instructions
I've included data for a variety of cryptocurrencies that are quite popular right now.
However, since it's open source you can of course add any coin you want.
It's important to know that coin margin contracts have their open interest denominated in USD.
So if, for example, the ETH/USD perp shows a value of 470 million, that means 470 mil USD.
Tether margin contracts on the other hand are denominated in the coin itself.
So if, for example, the SOL/USDT perp shows a value of 1 million, that means 1 mil SOL worth of open contracts.
This is how the exchange created and denominated the contracts and I kept it this way to keep the data clean.
You could multiply that 1 mil SOL by the SOL price and it would show you the total open interest in USD terms of course, but that would make the candles look a bit funky.
If you look at the code you can see that for the coin margin contracts I've multiplied BTC open interest by a 100 and for altcoins I multiplied it by 10.
This is because of the Binance contract specifications, they use a multiplier of a 100 for bitcoin and altcoins have a multiplier of 10.
If you google "Binance Trading Rules of coin-margined Contracts" you'll find this info.
Some coins only have a USDT margin perp and not a coin margin perp.
YFI for example doesn't have a coin margin perp, but it is included in the list.
So if you select YFI and choose "coin margin" the indicator won't show anything.
The indicator still works, just select a different contract and you'll see open interest data appear again.
Access
It's free so just favourite it and you'll be able to add it to your chart and use it.
And it's also open source so you could just copy the code and make your own version of it.
Cheers.
vix_vx_regressionAn example of the linear regression library, showing the regression of VX futures on the VIX. The beta might help you weight VX futures when hedging SPX vega exposure. A VX future has point multiplier of 1000, whereas SPX options have a point multiplier of 100. Suppose the front month VX future has a beta of 0.6 and the front month SPX straddle has a vega of 8.5. Using these approximations, the VX future will underhedge the SPX straddle, since (0.6 * 1000) < (8.5 * 100). The position will have about 2.5 ($250) vega. Use the R^2 (coefficient of determination) to check how well the model fits the relationship between VX and VIX. The further from one this value, the less useful the model.
(Note that the mini, VXM futures also have a 100 point multiplier).