DePriExchange weighted price for cryptocurrencies
DECENTRALIZED PRICE CHART FOR DECENTRALIZED WORLD
See non-manipulated , globally price action that comes from whole liquidity!
The main idea behind this script is that...
The value of each trading pair finally determined globally and the price displayed in exchanges is its own and not global! differences between exchanges, reduced to near zero gradually by market makers and arbitrages, so..
Every min tick price changes Must be backed by liquidity to be part of the global fluctuations
more liquidity gives it more credibility
more credibility give it more weight
..Against opposing movements.
This script can collect price of crypto pairs from 12 exchanges that listed on TV and have effective volume.
In the first step, summarizes the volume of all exchanges and creates the total volume
In the next step, divide each exchange volume to total volume to obtain relative weight of each exchange.
In the final step, multiply each exchange price to weight of itself and summarizes these numbers .. now, we have Exchange weighted price!
The results on high liquidity pairs like BTCUSDT, ETHUSDT, is not much differ then simple chart but when you apply it on lower liquidity, lower time frames of altcoins, you realize its benefits and usefulness. Altcoins chart in composite and simple mode is very differ, I hope you enjoy from TRUE CHART.
With this, also you can..
Filter and smooth candlestick chart with SMA or EMA
Plot a line chart of pair at your desired frame separate from the main chart for monitor important price levels
Get realtime report of whole volume of pair on included exchanges
Get realtime report of each exchange weight and share
Note.1:
some of pairs queted on more than one like BTCUSD, BTCUSDT, BTCUSDC and etc. In this pairs we choose the one that usually has more volume on that exchange.
Note.2:
At this time, supported queted currencies are BTC, ETH, USD, USDT, BUSD, USDC, USDK.
Note.3:
This script is relatively heavy! This is not cuz of bad coding.
Each bar compution contains at least one plot and some of security calls, so 10 to 15 seconds is normal load time.
Note.4:
You can combine this with your price action base scripts and use balanced OHLCV. The necessary explanations about this are available in the code.
Note.5:
You must only include exchanges that support your ticker, Otherwise you will receive an error.
I hope it comes useful to you.
Search in scripts for "Candlestick"
Multi MA on candlestick volume indicatorUses 5 volume moving averages to change the candlestick color depending on how high above average volume is.
The volumes plotted at the bottom of the chart are set to the same settings as the indicator, you can see the volume bars that stick higher above the orange moving average are a different color on the chart to the smaller ones.
Any volume bar that is below the moving average is colored purple.
HeikinAshi - Candlestick % Difference This script shows the price difference ( %) between heikin ashi and candlestick for all investment instruments as Close, Open, High and Low. (Switchable )
In this way, you can see which instruments can easily use heikin ashi .
And by taking averages you can find the opportunity to compare which investment tools are more risk-free.
Doji Backtest This is a candlestick where the open and close are the same.
WARNING:
- For purpose educate only
- This script to change bars colors.
Retrospective Candlestick ChartWhen i was in Japan with some traders colleagues we talked about traditional charting tools from this country and how they changed the way we look at our charts today. Then suddenly one of the japanese traders i have met earlier said "Why not making another charting tool ? Smoother than Heikin-Ashi and including all the information a trader may need but easier to interpret".
So i had the idea of averaging the input and the output of the respective close / open / high and low price using a recursive exponential window functions, each values will be closer to their true value if they are volatile, if they are not then those values will look smoother, the length input represents the reactivity of the candles, high values represents smoother results but less reactive.The goal of those candles is to make all the information easier to interpret by a trader.
500 input length , the price look smoother, supports and resistances are easier to make.
The interpretation of highs and lows are important, the Retrospective Candlestick Chart save you time by showing only huge movements.
RSI-candlestick StrategyThe script follows a modified rsi strategy and orders are placed if a candlestick pattern is identified in the current or previous candle.
(For optimized results you can add or remove the strategy entry and exits based on the chart you wish to apply the script to).
Percent Change per CandleThis indicator allows you to quickly view the true % change per candlestick (prev close > current close), but it also has 3 other customizable values for you to set your own % change conditions (such as open > high). Feel free to edit the script to suit your own needs as well.
Price Action Doji Harami v0.2 by JustUncleLThis is an updated and final version of this indicator. This version distinguishes between the true Harami and the other Doji candlestick patterns as used with the Heikin Ashi candle charts. These candle patterns indicate a potential trend reversal or pullback.
The patterns identified are:
- Bearish Harami (Red Highlight above Bar):
One to three (default 3) large body Bull (green) candles followed by a small (red)
or no body candle (less than 0.5pip) with wicks top and bottom that are at least 60% of candle.
- Bullish Harami (Green Highlight below Bar):
One to three (default 3) large body Bear (red) candles followed by a small (green)
or no body candle (less than 0.5pip) with wicks top and bottom that are at least 60% of candle.
- Bearish Doji (Fuchsia Highlight above Bar):
One to three (default 3) large body Bull (green) candles followed by a small (green)
with wicks top and bottom that are at least 60% of candle.
- Bullish Doji (Aqua Highlight below Bar):
One to three (default 3) large body Bear (red) candles followed by a small (red)
with wicks top and bottom that are at least 60% of candle.
You can optionally specify how large the candles prior to Harami/Doji are in pips, default is 0 pip.
If you set this to zero then it will have no candle size consideration. You can also specify how many look back candles (1-3) are used in Harami/Doji calculations (default 3).
Included option to perform Calculations purely on Heikin Ashi candles, this helps when you want to see the HA Doji/Harami bars with the normal candle stick chart.
Also can optionally set an alert condition for when Harami/Doji found, this also displays a circle on the bottom of the screen when alert is triggered.
Candles Pattens (v. 1.14)This script sows you candlestick patterns in real-time.
At that moment script knows Bearish/Bullish Engulf and Doji Points.
You can recommend me which pattens you want to see in next version at comment section below
Adaptive Ergodic Candlestick Oscillator [LazyBear]This updates Blau's excellent Candlestick oscillator to be adaptive by using the length of a scaled stochastic indicator and an exponent (for calculating the smoothing coefficient) to obtain the moving average.
Check out the options page for configurable variables.
More info on Ergodic Oscillator:
Book: "Momentum, Direction and Divergence" by William Blau
List of my public indicators: bit.ly
List of my app-store indicators: blog.tradingview.com
Binary Option Arrows (example) [TheMightyChicken]An example of binary option arrows for candlestick patterns bearish and bullish harami. With results as colored background and an option to choose your expiration (one candle by default). It's just an example for those who has their own strategy and wants to make nice arrows in their chart. All you need to do is rewrite piece of script in lines 9:13 - feel free to ask me for any help, but I believe it's all clear.
Disclaimer: It's just an example how to script arrows for binary option and I am not responsible for any loss of money by using this particular strategy.
I wish happy and successful trading! ;)
ET/Candlestick 1website: www.ersoytoptas.com
Newspaper : tr.investing.com
Please ... First !!! Your analysis after sicript
Indicator: Intrady Momentum IndexThe Intraday Momentum Index (IMI), developed by Tushar Chande, is a cross-breed between RSI and candlestick analysis. IMI determines the candle type that dominated the recent price action, using that to pinpoint the extremes in intraday momentum.
As the market tries to bottom after a sell off, there are gradually more candles with green bodies, even though prices remain in a narrow range. IMI can be used to detect this shift, because its values will increase towards 70. Similarly, as the market begins to top, there will be more red candles, causing IMI to decline towards 20. When the market is in trading range, IMI values will be in the neutral range of 40 to 60.
Usually intraday momentum leads interday momentum. QStick can show interday momentum, it complements IMI. You will find it in my published indicators.
I have added volatility bands based OB/OS, in addition to static OB/OS levels. You can also turn on IMI Ehlers smoothing. BTW, all parameters are configurable, so do check out the options page.
List of my other indicators:
-
- Google doc: docs.google.com
Relative Volume Spike (Bullish vs Bearish)relative volume compared to 20day averages
used to detect when big money is coming in.
Combined Triggers Dashboard//@version=6
indicator("Combined Triggers Dashboard", overlay=true)
// ======================= INPUTS =======================
// Daily Trigger
shortDEMA_D = input.int(10, "Daily 10 DEMA")
longDEMA_D = input.int(20, "Daily 20 DEMA")
volAvgLen_D = input.int(20, "Daily 20-day Avg Volume")
volMultiplier_D = input.float(3, "Daily Volume Multiplier")
weekDEMAlen_D = input.int(10, "10-Week DEMA Reference for Daily Trigger")
// Weekly Trigger
shortDEMA_W = input.int(10, "Weekly 10 W DEMA")
longDEMA_W = input.int(20, "Weekly 20 W DEMA")
volAvgLen_W = input.int(50, "50-day Avg Volume for Weekly Trigger")
volMultiplier_W = input.float(3, "Weekly Volume Multiplier")
// Original Trigger (example)
shortDEMA_O = input.int(10, "Original 10 DEMA")
longDEMA_O = input.int(20, "Original 20 DEMA")
volAvgLen_O = input.int(20, "Original 20-day Avg Volume")
volMultiplier_O = input.float(3, "Original Volume Multiplier")
// ======================= FUNCTIONS =======================
f_dema(_src, _len) =>
ema1 = ta.ema(_src, _len)
ema2 = ta.ema(ema1, _len)
2 * ema1 - ema2
// ======================= DAILY TRIGGER =======================
dema10D = f_dema(close, shortDEMA_D)
dema20D = f_dema(close, longDEMA_D)
dailyVol = volume
avgVol20 = ta.sma(dailyVol, volAvgLen_D)
volCondition_D = dailyVol > volMultiplier_D * avgVol20
priceCondition_D = close > dema10D
demaCondition_D = dema10D > dema20D
weeklyClose_D = request.security(syminfo.tickerid, "W", close)
dema10W_D = ta.ema(weeklyClose_D, weekDEMAlen_D) * 2 - ta.ema(ta.ema(weeklyClose_D, weekDEMAlen_D), weekDEMAlen_D)
trigger_D = priceCondition_D and demaCondition_D and volCondition_D
plotshape(trigger_D, title="Daily Trigger", style=shape.triangleup, location=location.abovebar,
text="DTRG", textcolor=color.white, color=color.new(#FF4500, 0), size=size.small)
alertcondition(trigger_D, title="Daily DEMA Trigger Alert", message="Daily DEMA trigger detected")
// ======================= WEEKLY TRIGGER =======================
weeklyClose_W = request.security(syminfo.tickerid, "W", close)
dema10W = f_dema(weeklyClose_W, shortDEMA_W)
dema20W = f_dema(weeklyClose_W, longDEMA_W)
dailyVolW = volume
avgVol50 = ta.sma(dailyVolW, volAvgLen_W)
volCondition_W = dailyVolW > volMultiplier_W * avgVol50
priceCondition_W = close > dema20W
demaCondition_W = dema10W > dema20W
trigger_W = priceCondition_W and demaCondition_W and volCondition_W
plotshape(trigger_W, title="Weekly Trigger", style=shape.triangledown, location=location.abovebar,
text="WTRG", textcolor=color.white, color=color.new(#1E90FF, 0), size=size.small)
alertcondition(trigger_W, title="Weekly DEMA Trigger Alert", message="Weekly DEMA trigger detected")
// ======================= ORIGINAL TRIGGER =======================
dema10O = f_dema(close, shortDEMA_O)
dema20O = f_dema(close, longDEMA_O)
dailyVolO = volume
avgVolO = ta.sma(dailyVolO, volAvgLen_O)
volCondition_O = dailyVolO > volMultiplier_O * avgVolO
priceCondition_O = close > dema10O
demaCondition_O = dema10O > dema20O
trigger_Orig = priceCondition_O and demaCondition_O and volCondition_O
plotshape(trigger_Orig, title="Original Trigger", style=shape.labelup, location=location.belowbar,
text="TRG", textcolor=color.white, color=color.new(#32CD32, 0), size=size.small)
// ======================= COMBINED TABLE =======================
var table dash = table.new(position.top_right, 2, 20, border_width=1)
if barstate.islast
// --- DAILY TRIGGER (rows 0-4) ---
table.cell(dash, 0, 0, "Daily Trigger", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 0, trigger_D ? "YES ✅" : "NO ❌", text_color=color.white, bgcolor=trigger_D ? color.new(#FF4500, 0) : color.new(#555555, 50))
table.cell(dash, 0, 1, "CMP > 10D DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 1, str.tostring(close, format.price), text_color=color.white, bgcolor=priceCondition_D ? color.new(#32CD32, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 2, "10D > 20D DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 2, str.tostring(dema10D, format.price) + " > " + str.tostring(dema20D, format.price), text_color=color.white, bgcolor=demaCondition_D ? color.new(#FFFF00, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 3, "Daily Vol > 3x20D Avg", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 3, str.tostring(dailyVol, format.volume) + " / " + str.tostring(avgVol20, format.volume), text_color=color.white, bgcolor=volCondition_D ? color.new(#FF00FF, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 4, "10W DEMA Ref", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 4, str.tostring(dema10W_D, format.price), text_color=color.white, bgcolor=color.new(#00FFFF, 0))
// --- WEEKLY TRIGGER (rows 5-9) ---
table.cell(dash, 0, 5, "Weekly Trigger", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 5, trigger_W ? "YES ✅" : "NO ❌", text_color=color.white, bgcolor=trigger_W ? color.new(#1E90FF, 0) : color.new(#555555, 50))
table.cell(dash, 0, 6, "CMP > 20W DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 6, str.tostring(close, format.price), text_color=color.white, bgcolor=priceCondition_W ? color.new(#32CD32, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 7, "10W > 20W DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 7, str.tostring(dema10W, format.price) + " > " + str.tostring(dema20W, format.price), text_color=color.white, bgcolor=demaCondition_W ? color.new(#FFFF00, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 8, "Daily Vol > 3x50D Avg", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 8, str.tostring(dailyVolW, format.volume) + " / " + str.tostring(avgVol50, format.volume), text_color=color.white, bgcolor=volCondition_W ? color.new(#FF00FF, 0) : color.new(#AAAAAA, 50))
// --- ORIGINAL TRIGGER (rows 10-14) ---
table.cell(dash, 0, 10, "Original Trigger", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 10, trigger_Orig ? "YES ✅" : "NO ❌", text_color=color.white, bgcolor=trigger_Orig ? color.new(#32CD32, 0) : color.new(#555555, 50))
table.cell(dash, 0, 11, "CMP > 10D DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 11, str.tostring(close, format.price), text_color=color.white, bgcolor=priceCondition_O ? color.new(#32CD32, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 12, "10D > 20D DEMA", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 12, str.tostring(dema10O, format.price) + " > " + str.tostring(dema20O, format.price), text_color=color.white, bgcolor=demaCondition_O ? color.new(#FFFF00, 0) : color.new(#AAAAAA, 50))
table.cell(dash, 0, 13, "Daily Vol > 3x20D Avg", text_color=color.white, bgcolor=color.new(#555555, 30))
table.cell(dash, 1, 13, str.tostring(dailyVolO, format.volume) + " / " + str.tostring(avgVolO, format.volume), text_color=color.white, bgcolor=volCondition_O ? color.new(#FF00FF, 0) : color.new(#AAAAAA, 50))
Volume Quintile Candle ColorsRecolors the candles based on the quintile of volume in that candle compared to the most recent 100 candles
Dynamic Percentage High LowThis script gives a clear percentage wise view of visible high and low on all time frames in your view. It's dynamic.
STRAT Pattern Scanner - All 22 PatternsSTRAT Candle call outs. A learning tool created to help me identify different STRAT candle types while learning The STRAT strategy designed by the late Rob Smith. Feel free to change the code or add to it for personalized use.
Engulfing Bars - StrictIdentifies strict definition engulfing bars with a close in the leading 20% of the range.
Session First 5-Min High/LowHere's a professional description for your indicator:
Session First 5-Min High/Low Marker
This indicator automatically identifies and marks the high and low price levels established during the first 5 minutes of major trading sessions, helping traders identify key intraday support and resistance zones.
Key Features:
Tracks three major trading sessions in IST (Indian Standard Time):
Asian Session: 5:30 AM - 5:35 AM
London Session: 12:30 PM - 12:35 PM
New York Session: 5:30 PM - 5:35 PM
Draws horizontal lines at the highest and lowest prices reached during each session's opening 5-minute window
Color-coded for easy identification (Yellow for Asian, Blue for London, Red for New York)
Lines extend across the chart to help track price reactions throughout the day
Clean, minimal design with optional labels
Best Used For:
Identifying key intraday support and resistance levels
Session breakout trading strategies
Understanding institutional order flow at market opens
Works on 1-minute timeframe for precise tracking
Customizable Settings:
Toggle line extensions on/off
Adjust line width (1-5)
Change colors for each session
Show/hide session labels
Perfect for day traders and scalpers who trade around major session openings and want to identify high-probability support/resistance zones established during peak liquidity periods.
This description explains what the indicator does, its practical applications, and its key features in a way that's clear for TradingView users.RetryClaude can make mistakes. Please double-check responses.
Asia Session Mechanical Entry This indicator executes fully mechanical trades at the start of the Asian session (default: 20:00 Argentina time).
Core logic:
Compares the closing prices of the previous two sessions at 20:00 and 09:00 to determine bias.
If both days move in the same direction, the indicator takes a mean-reversion trade (opposite to the last two days’ move).
If the days move in opposite directions, the trade follows the most recent day’s direction.
Execution details:
Entry price: exact session open or delayed by a user-defined number of candles.
Stop Loss: nearest swing high/low ± ATR multiplier buffer.
Take Profit: calculated from entry to SL distance, multiplied by user-defined RR ratio.
ATR value plotted for volatility reference.
Works on H1 charts for consistent candle timing.
Features:
Adjustable start/end session times.
Configurable ATR multiplier, RR ratio, and delay before entry.
Manual overrides for SL/TP levels.
Automatic daily reset for next session's logic.
Notes:
This tool is based on a classic session-reversion model enhanced with ATR-based filters, flexible timing, and manual overrides. It is designed for systematic execution and quick visual backtesting.