6868//@version=5
indicator(title='6868', shorttitle='ICHI', overlay=true)
// Version 1.1
// Created by NgheTrader
TS_D1 = input.int(9, minval=1, title='Tenkan-sen')
KS_D1 = input.int(17, minval=1, title='Kijun-sen')
TS_D2 = input.int(65, minval=1, title='Tenkan-sen')
KS_D2 = input.int(129, minval=1, title='Kijun-sen')
Chikou_Displacement = input.int(25, minval=1, title='Chikou-span')
SB = input.int(26, minval=1, title='Senko Span B')
donchian(len) =>
math.avg(ta.lowest(len), ta.highest(len))
Tenkan = donchian(TS_D1)
Kijun = donchian(KS_D1)
KumoA = math.avg(Tenkan, Kijun)
KumoB = donchian(SB)
DG65 = donchian(TS_D2)
DG129 = donchian(KS_D2)
plot(Tenkan, color=color.new(#0fc7db, 10), title='Tenkan-sen', linewidth=2)
plot(Kijun, color=color.new(#f00f0f, 10), title='Kijun-sen', linewidth=2)
plot(DG65, color=color.new(#f8e804e6, 10), title='dg65', linewidth=2)
plot(DG129, color=color.new(#f99b04, 10), title='DG129', linewidth=2)
plot(close, offset=-Chikou_Displacement, color=color.new(#9c27b0, 10), title='Chikou-span', linewidth=2)
p1 = plot(KumoA, offset=Chikou_Displacement, color=color.new(#0cb71a, 0), linewidth=1, title='Span A')
p2 = plot(KumoB, offset=Chikou_Displacement, color=color.new(#afaaaac5,0), linewidth=1, title='Span B')
fill(p1, p2, color=KumoA > KumoB ? color.new(#106323,80) : color.new(#e4e1e1,0), title='Kumo Cloud')
// Plot Future Lines
Midpoint_future1(len) =>
math.avg(ta.highest(len - 1), ta.lowest(len - 1))
Midpoint_future2(len) =>
math.avg(ta.highest(len - 2), ta.lowest(len - 2))
Midpoint_future3(len) =>
math.avg(ta.highest(len - 3), ta.lowest(len - 3))
Midpoint_future4(len) =>
math.avg(ta.highest(len - 4), ta.lowest(len - 4))
Midpoint_future5(len) =>
math.avg(ta.highest(len - 5), ta.lowest(len - 5))
Midpoint_future6(len) =>
math.avg(ta.highest(len - 6), ta.lowest(len - 6))
Midpoint_future7(len) =>
math.avg(ta.highest(len - 7), ta.lowest(len - 7))
Midpoint_future8(len) =>
math.avg(ta.highest(len - 8), ta.lowest(len - 8))
Midpoint_future9(len) =>
math.avg(ta.highest(len - 9), ta.lowest(len - 9))
Midpoint_future10(len) =>
math.avg(ta.highest(len - 10), ta.lowest(len - 10))
Midpoint_future11(len) =>
math.avg(ta.highest(len - 11), ta.lowest(len - 11))
Midpoint_future12(len) =>
math.avg(ta.highest(len - 12), ta.lowest(len - 12))
Midpoint_future13(len) =>
math.avg(ta.highest(len - 13), ta.lowest(len - 13))
Midpoint_future14(len) =>
math.avg(ta.highest(len - 14), ta.lowest(len - 14))
// Plot Future Daily Kijun
KJ_Next_1 = Midpoint_future1(KS_D1)
KJ_Next_2 = Midpoint_future2(KS_D1)
KJ_Next_3 = Midpoint_future3(KS_D1)
KJ_Next_4 = Midpoint_future4(KS_D1)
KJ_Next_5 = Midpoint_future5(KS_D1)
KJ_Next_6 = Midpoint_future6(KS_D1)
KJ_Next_7 = Midpoint_future7(KS_D1)
KJ_Next_8 = Midpoint_future8(KS_D1)
KJ_Next_9 = Midpoint_future9(KS_D1)
KJ_Next_10 = Midpoint_future10(KS_D1)
plot(KJ_Next_1, color=color.new(#f00f0f, 10), linewidth=1, offset=1, show_last=1, style=plot.style_circles)
plot(KJ_Next_2, color=color.new(#f00f0f, 10), linewidth=1, offset=2, show_last=1, style=plot.style_circles)
plot(KJ_Next_3, color=color.new(#f00f0f, 10), linewidth=1, offset=3, show_last=1, style=plot.style_circles)
plot(KJ_Next_4, color=color.new(#f00f0f, 10), linewidth=1, offset=4, show_last=1, style=plot.style_circles)
plot(KJ_Next_5, color=color.new(#f00f0f, 10), linewidth=1, offset=5, show_last=1, style=plot.style_circles)
plot(KJ_Next_6, color=color.new(#f00f0f, 10), linewidth=1, offset=6, show_last=1, style=plot.style_circles)
plot(KJ_Next_7, color=color.new(#f00f0f, 10), linewidth=1, offset=7, show_last=1, style=plot.style_circles)
plot(KJ_Next_8, color=color.new(#f00f0f, 10), linewidth=1, offset=8, show_last=1, style=plot.style_circles)
plot(KJ_Next_9, color=color.new(#f00f0f, 10), linewidth=1, offset=9, show_last=1, style=plot.style_circles)
plot(KJ_Next_10,color=color.new(#f00f0f, 10), linewidth=1, offset=10, show_last=1, style=plot.style_circles)
// Plot Future Daily Tenkan
TS_Next_1 = Midpoint_future1(TS_D1)
TS_Next_2 = Midpoint_future2(TS_D1)
TS_Next_3 = Midpoint_future3(TS_D1)
TS_Next_4 = Midpoint_future4(TS_D1)
TS_Next_5 = Midpoint_future5(TS_D1)
TS_Next_6 = Midpoint_future6(TS_D1)
TS_Next_7 = Midpoint_future7(TS_D1)
TS_Next_8 = Midpoint_future8(TS_D1)
plot(TS_Next_1, color=color.new(#0fc7db, 10), linewidth=1, offset=1, show_last=1, style=plot.style_circles)
plot(TS_Next_2, color=color.new(#0fc7db, 10), linewidth=1, offset=2, show_last=1, style=plot.style_circles)
plot(TS_Next_3, color=color.new(#0fc7db, 10), linewidth=1, offset=3, show_last=1, style=plot.style_circles)
plot(TS_Next_4, color=color.new(#0fc7db, 10), linewidth=1, offset=4, show_last=1, style=plot.style_circles)
plot(TS_Next_5, color=color.new(#0fc7db, 10), linewidth=1, offset=5, show_last=1, style=plot.style_circles)
plot(TS_Next_6, color=color.new(#0fc7db, 10), linewidth=1, offset=6, show_last=1, style=plot.style_circles)
plot(TS_Next_7, color=color.new(#0fc7db, 10), linewidth=1, offset=7, show_last=1, style=plot.style_circles)
plot(TS_Next_8, color=color.new(#0fc7db, 10), linewidth=1, offset=8, show_last=1, style=plot.style_circles)
// Plot Future Kumo A
Next_KumoA_1 = Midpoint_future1(TS_D2)
Next_KumoA_2 = Midpoint_future2(TS_D2)
Next_KumoA_3 = Midpoint_future3(TS_D2)
Next_KumoA_4 = Midpoint_future4(TS_D2)
Next_KumoA_5 = Midpoint_future5(TS_D2)
Next_KumoA_6 = Midpoint_future6(TS_D2)
Next_KumoA_7 = Midpoint_future7(TS_D2)
Next_KumoA_8 = Midpoint_future8(TS_D2)
Next_KumoA_9 = Midpoint_future9(TS_D2)
plot(Next_KumoA_1, color=color.new(#f8e804e6, 10), linewidth=1, offset=1, show_last=1, style=plot.style_circles)
plot(Next_KumoA_2, color=color.new(#f8e804e6, 10), linewidth=1, offset=2, show_last=1, style=plot.style_circles)
plot(Next_KumoA_3, color=color.new(#f8e804e6, 10), linewidth=1, offset=3, show_last=1, style=plot.style_circles)
plot(Next_KumoA_4, color=color.new(#f8e804e6, 10), linewidth=1, offset=4, show_last=1, style=plot.style_circles)
plot(Next_KumoA_5, color=color.new(#f8e804e6, 10), linewidth=1, offset=5, show_last=1, style=plot.style_circles)
plot(Next_KumoA_6, color=color.new(#f8e804e6, 10), linewidth=1, offset=6, show_last=1, style=plot.style_circles)
plot(Next_KumoA_7, color=color.new(#f8e804e6, 10), linewidth=1, offset=7, show_last=1, style=plot.style_circles)
plot(Next_KumoA_8, color=color.new(#f8e804e6, 10), linewidth=1, offset=8, show_last=1, style=plot.style_circles)
plot(Next_KumoA_9, color=color.new(#f8e804e6, 10), linewidth=1, offset=9, show_last=1, style=plot.style_circles)
// Plot Future Kumo B
KB_Next_1 = Midpoint_future1(KS_D2)
KB_Next_2 = Midpoint_future2(KS_D2)
KB_Next_3 = Midpoint_future3(KS_D2)
KB_Next_4 = Midpoint_future4(KS_D2)
KB_Next_5 = Midpoint_future5(KS_D2)
KB_Next_6 = Midpoint_future6(KS_D2)
KB_Next_7 = Midpoint_future7(KS_D2)
KB_Next_8 = Midpoint_future8(KS_D2)
KB_Next_9 = Midpoint_future9(KS_D2)
KB_Next_10 = Midpoint_future10(KS_D2)
KB_Next_11 = Midpoint_future11(KS_D2)
KB_Next_12 = Midpoint_future12(KS_D2)
KB_Next_13 = Midpoint_future13(KS_D2)
KB_Next_14 = Midpoint_future14(KS_D2)
plot(KB_Next_1, color=color.rgb(253, 173, 0), linewidth=1, offset=1, show_last=1, style=plot.style_circles)
plot(KB_Next_2, color=color.rgb(253, 173, 0), linewidth=1, offset=2, show_last=1, style=plot.style_circles)
plot(KB_Next_3, color=color.rgb(253, 173, 0), linewidth=1, offset=3, show_last=1, style=plot.style_circles)
plot(KB_Next_4, color=color.rgb(253, 173, 0), linewidth=1, offset=4, show_last=1, style=plot.style_circles)
plot(KB_Next_5, color=color.rgb(253, 173, 0), linewidth=1, offset=5, show_last=1, style=plot.style_circles)
plot(KB_Next_6, color=color.rgb(253, 173, 0), linewidth=1, offset=6, show_last=1, style=plot.style_circles)
plot(KB_Next_7, color=color.rgb(253, 173, 0), linewidth=1, offset=7, show_last=1, style=plot.style_circles)
plot(KB_Next_8, color=color.rgb(253, 173, 0), linewidth=1, offset=8, show_last=1, style=plot.style_circles)
plot(KB_Next_9, color=color.rgb(253, 173, 0), linewidth=1, offset=9, show_last=1, style=plot.style_circles)
plot(KB_Next_10, color=color.rgb(253, 173, 0), linewidth=1, offset=10, show_last=1, style=plot.style_circles)
plot(KB_Next_11, color=color.rgb(253, 173, 0), linewidth=1, offset=11, show_last=1, style=plot.style_circles)
plot(KB_Next_12, color=color.rgb(253, 173, 0), linewidth=1, offset=12, show_last=1, style=plot.style_circles)
plot(KB_Next_13, color=color.rgb(253, 173, 0), linewidth=1, offset=13, show_last=1, style=plot.style_circles)
plot(KB_Next_14, color=color.rgb(253, 173, 0), linewidth=1, offset=14, show_last=1, style=plot.style_circles)
var line greenLine = na
var line redLine = na
xGreen = bar_index - 8
xRed = bar_index - 16
// Dùng khoảng 100 nến gần nhất để lấy phạm vi giá hiện hành
lookback = 100
top = ta.highest(high, lookback)
bottom = ta.lowest(low, lookback)
if bar_index > 17
line.delete(greenLine)
line.delete(redLine)
greenLine := line.new( x1 = xGreen, y1 = top, x2 = xGreen, y2 = bottom, color=color.new(#0fc7db, 85), width = 4)
redLine := line.new( x1 = xRed, y1 = top, x2 = xRed, y2 = bottom,color =color.new(#f00f0f, 85), width = 4 )
Indicatori e strategie
EMA Slope FilterEMA SLOPE FILTER....50EMA....You’ll see a line oscillating around zero; when it’s within ±0.1, treat the market as “flat.”
Support & Resistance by O Dinesh BabuThis Script is Specifically Designed to Work with NIFTY, BANKNIFTY & FINNIFTY Indices Only..
For Optimal Results, Please Wait for the 1st 15-Minute Candle to Complete Before Initiating Any Trades..
Wishing All Traders the Very Best in Their Journey..
Warm Regards,
O. Dinesh Babu
Son of Mr. & Mrs. O. Asha Rama Krishna
Price - MA DifferencePlots the difference between the closing price and a moving average (either SMA or EMA) in a separate pane. It includes:
Dropdown to choose between SMA and EMA
Adjustable length (default 21)
Yellow color as default for the plot
Multi-Timeframe EMA50 Overlaythis is EMA50 WD41, means EMA50 weekly, daily, 4h, 1h in one time frame.
So you don't need to check EMA50 every time frame.
When EMA50 daily under EMA50 4h, and 1h i can say it's bullish trend, especially when you see weekly EMA50 under all EMA50.
it's work for bearish trend also, when EMA50 daily above EMA50 4h, and 1h i can say the trend is bearish, espesially when you see weekly EMA50 is above every EMA50.
this indicator help you to understand market is in bullish or bearish trend! happy trading!
Angled Gann Time-Price Squares with S/RThis is a Pine Script indicator that implements Angled Gann Time-Price Squares based on W.D. Gann's trading theory. Here's what it does:
Core Functionality
Detects pivot highs and lows using a configurable lookback period
Creates angled squares by connecting pivot points to current price action when specific geometric conditions are met
Validates square formation by checking if the price movement follows proper Gann angles (typically 45°, 135°, etc.) within a tolerance range
Key Features
Real-time square tracking: Shows both completed squares and forming squares in progress
Support/Resistance levels: Automatically generates S/R lines from:
Square edge extensions
Diagonal extensions (pivot centers)
Quarter/half levels within squares (25%, 50%, 75%)
Visual feedback: Color-coded squares (green for up, red for down, orange for forming)
Projection lines: Predicts where squares might complete based on Gann angle theory
Gann Theory Application
The indicator follows Gann's principle that time and price move in geometric harmony. It looks for price movements that form perfect squares when plotted on a chart, where the diagonal of the square represents the natural flow of price and time at specific angles.
The generated support/resistance levels are particularly valuable because they're based on completed geometric patterns rather than just horizontal price levels, making them potentially more significant according to Gann methodology.
RSI(14) Custom by ChadRSI 14 : this indicator works in low time frame like 1h and 4h, for entry long position and short position. when the line touch 70 mean the price is overbought, when the line touch 50 it"s neutral, and when the line touch 30 mean price is oversold.
2Saucy custom MA'sEMA's 9/21/50/200 - Designated for "scalping" 1m/3m/5m/15/1h/4h. Works best as it EMA's move faster with price.
SMA's 10/20/50/200 - Works more for swing trading and/or finding setups on weekly and daily time frames.
By combining these two simultaneously trading intra-day is made much simpler.
Yours truly,
#2Saucy
Ehlers Two-Pole StochasticThis indicator implements John Ehlers' Two-Pole Stochastic Filter, a smoother alternative to the traditional stochastic oscillator. Instead of relying on raw %K values, it applies a second-order IIR filter (recursive smoothing) to reduce noise and improve trend clarity.
It outputs a single line oscillating between 0 and 1, with less lag and false signals compared to standard stochastic implementations.
Key Features:
Uses a two-pole filter to smooth the normalized stochastic (%K).
Ideal for detecting clean reversals and trend continuations.
Designed for minimal visual noise and greater signal confidence.
Interpretation:
Values near 1.0 may suggest overbought conditions.
Values near 0.0 may suggest oversold conditions.
Crosses above 0.5 can signal bullish shifts, and below 0.5 bearish shifts.
Recommended Settings:
Default smoothing factor (alpha) is 0.7 — higher values make the output more responsive, while lower values smooth further.
Inspired by concepts from Cybernetic Analysis for Stocks and Futures by John F. Ehlers.
Dynamic SL/TP Levels (ATR or Fixed %)This indicator, "Dynamic SL/TP Levels (ATR or Fixed %)", is designed to help traders visualize potential stop loss (SL) and take profit (TP) levels for both long and short positions, refreshing dynamically on each new bar. It assumes entry at the current bar's close price and uses a fixed 1:2 risk-reward ratio (TP is twice the distance of SL in the profit direction). Levels are displayed in a compact table in the chart pane for easy reference, without cluttering the main chart with lines.
Key Features:
Calculation Modes:
ATR-Based (Dynamic): SL distance is derived from the Average True Range (ATR) multiplied by a user-defined factor (default 1.5x). This adapts to the asset's volatility, providing breathing room based on recent price movements.
Fixed Percentage: SL is set as a direct percentage of the current close price (default 0.5%), offering consistent gaps regardless of volatility.
Long and Short Support: Calculates and shows SL/TP for longs (SL below close, TP above) and shorts (SL above close, TP below), with toggles to hide/show each.
Real-Time Updates: Levels recalculate every bar, making them readily available for entry decisions in your trading system.
Display: Outputs to a table in the top-right pane, showing precise values formatted to the asset's tick size (e.g., full decimal places for crypto).
How to Use:
Add the indicator to your chart via TradingView's Pine Editor or library.
Adjust settings:
Toggle "Use ATR?" on/off to switch modes.
Set "ATR Length" (default 14) and "ATR Multiplier for SL" for dynamic mode.
Set "Fixed SL %" for percentage mode.
Enable/disable "Show Long Levels" or "Show Short Levels" as needed.
Interpret the table: Use the displayed SL/TP values when your strategy signals an entry. For risk management, combine with position sizing (e.g., risk 1% of account per trade based on SL distance).
Example: On a volatile asset like BTC, ATR mode might set a wider SL for realism; on stable pairs, fixed % ensures predictability.
This tool promotes disciplined trading by tying levels to price action or fixed rules, but it's not financial advice—always backtest and use with your full strategy. Feedback welcome!
Nadaraya,poly100,MA ribbon,volume nến,RSInadaraya
polynomial 100
volume nến
rsi break out 75,25
MA Ribbon
Alt Szn Oracle - Institutional GradeThe Alt Szn Oracle is a macro-level indicator built to help traders front-run altseason by tracking liquidity, dominance rotation, sentiment, and capital flows—all in one signal. It’s designed for those who don’t just chase pumps, but want to understand when the tide is turning and why. This tool doesn't predict specific coin breakouts—it tells you when the market as a whole is gearing up to rotate into higher beta assets like altcoins, including memes and microcaps.
The index consolidates ten macro inputs into a normalized, smoothed score from 0–100. These include Bitcoin and Ethereum dominance, ETH/BTC, altcoin market cap (Total3), relative volume flows, and stablecoin supply (USDT, USDC, DAI)—which act as proxies for risk-on appetite and dry powder entering the system. It also incorporates manually updated sentiment metrics from Google Trends and the Fear & Greed Index, giving it a behavioral edge that most indicators lack.
The logic is simple but powerful: when BTC dominance is falling, ETH/BTC is rising, altcoin volume increases relative to BTC/ETH, and stablecoins start moving—you're likely in the early innings of rotation. The index is also filtered through a volatility threshold and smoothed with an EMA to eliminate chop and fakeouts.
Use this indicator on macro charts like TOTAL3, TOTAL2, or ETHBTC to gauge market health, or overlay it on specific coins like PEPE, DOGE, or SOL to confirm if the tide is in your favor. Interpreting the score is straightforward: readings above 80 suggest euphoria and signal it’s time to de-risk, 60–80 indicates expansion and confirms altseason is underway, 40–60 is neutral, and 20–40 is a capitulation zone where smart money accumulates.
What sets this apart is that it doesn’t just track price—it reflects the flow of capital, the positioning of liquidity, and the sentiment of the crowd. Most altseason indicators are lagging, overfitted, or too simplistic. This one is modular, forward-looking, and grounded in real capital rotation theory.
If you're a trader who wants to time the cycle, not guess it, this is your tool. Refine it, fork it, or expand it to your niche—DeFi, NFTs, meme coins, or L1s. It’s a framework for reading the macro winds, not a signal service. Use it with discipline, and you’ll catch the wave while others drown in noise.
EMA Reclaim Alert - FVG StrategyThis script identifies momentum-based trend reclaims using two Exponential Moving Averages (EMAs), and plots entry, stop-loss, and take-profit levels for trade signals. It also highlights potential fakeouts.
ShadowStats vs Official CPI YoY%This chart visualizes and compares the year-over-year (YoY) percentage change in the Consumer Price Index (CPI) as calculated by the U.S. government versus the alternative methodology used by ShadowStats, which reflects pre-1980 inflation measurement techniques. The red line represents ShadowStats' CPI YoY% estimates, while the blue line shows the official CPI YoY% reported by government sources. This side-by-side view highlights the divergence in reported inflation rates over time, particularly from the 1980s onward, offering a visual representation of how different calculation methods can lead to vastly different interpretations of inflation and purchasing power loss.
SMA Fecho na Máxima, Mínima e NormalLarry Williams' Strategy - Short Moving Average Channel
✅ Indicators used:
High SMA: 3 periods
Low SMA: 3 periods
30-period Closing SMA: used as a trend filter
Casper sessions + fvgDraws lines for the 5 minute and 30 minute opening candle along with FVG's as per Casper's recent YouTube videos "Stupid Easy" series. There are options to toggle Asia and London ranges on and off as well as the opening candles. All lines reset at 16:30
Chiaroscuro Scalp Model A [Signal + Visuals]This indicator is based on the Chiaroscuro Scalp Model A — a precision-based scalping system that identifies high-probability trade setups during the London and New York sessions. It combines daily range expansion, order blocks, fair value gaps, and W/M reversal patterns to generate 20-pip scalping opportunities with clearly plotted stop loss and take profit levels. Ideal for intraday traders seeking structured, rule-based entries.