Multiple Horizontal Lines_SanHorizontal lines can be drawn with given coordinates with defined intervals
Indicadores e estratégias
CODEX OB V1CODEX OB V1 is a multi-purpose Smart Money Concepts (SMC) indicator that automatically detects and visualizes key institutional trading elements such as Order Blocks, Fair Value Gaps, Rejection Blocks, Break of Structure, Pivots, High Volume Bars, and several qualitative SMC signals.
This tool helps traders identify institutional footprints and displacement-based setups with high clarity.
Directional Movement Index (SHADED)Shaded red in between DMI lines when DMI- > DMI+
Shaded blue in between DMI lines when DMI+ > DMI-
Gamma & Volatility Levels [Pro]General Purpose
This indicator analyzes volatility levels and expected price movements, combining gamma concepts (financial options) with volatility analysis to identify support and resistance zones.
Main Components
High Volatility Level (HVL): Calculates a volatility level based on the simple moving average (SMA) of the price plus one standard deviation. This level is represented by an orange line showing where volatility is concentrated.
Expected Movement (Movimiento Esperante): Uses the Average True Range (ATR) multiplied by an adjustable factor to project potential upward and downward movement ranges from the current price. It is drawn in green (upward) and red (downward).
Gamma Levels (Nivelas Gamma): Identifies two key levels: the call resistance (highest high of the last 50 periods) in blue, and the put support (lowest low) in purple. These are based on recent extreme prices.
Additional Information: The indicator calculates the percentage distance between the current price and the HVL, displaying it in a label.
Visual Elements
Colored lines on the chart for each level.
Labels with exact values next to each line.
A table in the upper right corner summarizing all calculated values.
Options to show or hide each element according to preference.
This is a useful tool for traders who work with options or seek to identify levels of extreme volatility and dynamic support/resistance zones.
Resampling Reverse Engineering Bands XRREB X: Visual Oscillator Projection Bands
Based on the innovative "Resampling Reverse Engineering" concept pioneered by Donovan Wall, this enhanced script fixes the core mathematical symmetry and provides anchored, non-repainting bands for reliable analysis.
This indicator transforms any RSI, Stochastic, or CCI calculation directly onto your price chart as dynamic support/resistance bands. Instead of watching an oscillator below your chart, you see its overbought/oversold levels projected as price levels the market must reach.
RREB X reverses standard oscillator formulas to answer one question: "What price must the market reach for my chosen oscillator to hit an extreme level like RSI=70, Stoch=80, or CCI=100?" It then plots these levels as actionable bands.
Key Improvements
Adjustable Oscillator Values - While the original was hard coded the reverse engineered oscillator length which limited its usefulness, this script finally allows you to visualize any length oscillator as dynamic OB/OS regions directly on the chart.
Dynamic OB/OS levels: This version also lets you dynamically adjust the OB/OS levels location, making bands tighter or wider as your strategy demands.
Mathematical Symmetry: Outer bands are perfect mirrors, providing reliable projected levels.
Fixed Anchoring: Bands don't repaint historically, offering stable reference lines.
Direct Price Translation: Oscillator overbought/oversold conditions are visualized as clear price levels.
The Band Calculation Type switch lets you project different oscillator logics, each with unique characteristics for different market conditions.
RRSI - General trend & momentum. Change RSI Period (e.g., 7 for fast, 21 for slow). Adjust OB/OS (e.g., 80/20 for strong trends). The bands show the price needed to push your custom RSI into overbought/oversold territory.
RStoch - Ranging markets & short-term reversals. Focus on the Stochastic Period. The projected bands are highly sensitive to recent highs/lows. Excellent for spotting reversals at the edges of a range.
RCCI - Strong trends & volatile markets. Use a higher Outer Bands Multiplier. CCI's lack of upper/lower bounds means bands reflect extreme momentum shifts. Great for identifying explosive breakout or breakdown levels in trends.
Use Middle Band as Filter: Price above the white middle band suggests a bullish bias for long setups; below suggests bearish for shorts. Same as the 50 midline on the RSI or Stochastic or 0 for CCI.
Customizing the Calculation:
The power lies in changing the oscillator lengths that the bands reflect. Adjust these in the settings:
Change from 14 to 7 for faster, more reactive bands, or to 21 for slower, smoother bands.
Overbought/Oversold: Change from 70/30 to 80/20 for stronger-trend filters, or to 60/40 for more frequent signals.
Trading the Bands:
Bands as Dynamic S/R: The solid cyan (Upper 100) and magenta (Lower 0) bands act as dynamic support and resistance. A touch and reversal can signal a trade.
Gradient as Momentum: The colored fills between bands visually represent the "pressure" needed to reach the next oscillator level.
Middle Band as Trend Filter: Price above the white middle band suggests a bullish bias for long setups; below suggests bearish for short setups.
S&R Detector by Rakesh SharmaSupport & Resistance Auto-Detector
Automatically identifies key Support and Resistance levels with strength ratings
✨ Key Features:
🎯 Intelligent S/R Detection
Automatically finds Support and Resistance levels based on swing highs/lows
Shows strength rating (Very Strong, Strong, Medium, Weak)
Displays number of touches at each level
📅 Key Time-Based Levels
Previous Day High/Low (PDH/PDL) - Blue lines
Previous Week High/Low (PWH/PWL) - Purple lines
Optional Round Numbers for psychological levels
⚙️ Fully Customizable
Adjust sensitivity (5-20 pivot length)
Filter by minimum touches (1-10)
Control maximum levels displayed (3-20)
Optional S/R zones (shaded areas)
📊 Live Dashboard
Shows nearest Support/Resistance
Distance to key levels
Total S/R levels detected
🔔 Smart Alerts
PDH/PDL breakout signals
Visual markers on chart
Perfect for: Intraday traders, Swing traders, Price action analysis
S&R Detector by Rakesh Sharma📊 Support & Resistance Auto-Detector
Automatically identifies key Support and Resistance levels with strength ratings
✨ Key Features:
🎯 Intelligent S/R Detection
Automatically finds Support and Resistance levels based on swing highs/lows
Shows strength rating (Very Strong, Strong, Medium, Weak)
Displays number of touches at each level
📅 Key Time-Based Levels
Previous Day High/Low (PDH/PDL) - Blue lines
Previous Week High/Low (PWH/PWL) - Purple lines
Optional Round Numbers for psychological levels
⚙️ Fully Customizable
Adjust sensitivity (5-20 pivot length)
Filter by minimum touches (1-10)
Control maximum levels displayed (3-20)
Optional S/R zones (shaded areas)
📊 Live Dashboard
Shows nearest Support/Resistance
Distance to key levels
Total S/R levels detected
🔔 Smart Alerts
PDH/PDL breakout signals
Visual markers on chart
Perfect for: Intraday traders, Swing traders, Price action analysis
Ultimate Reversion BandsURB – The Smart Reversion Tool
URB Final filters out false breakouts using a real retest mechanism that most indicators miss. Instead of chasing wicks that fail immediately, it waits for price to confirm rejection by retesting the inner band—proving sellers/buyers are truly exhausted.
Eliminates fakeouts – The retest filter catches only genuine reversions
Triple confirmation – Wick + retest + optional volume/RSI filters
Clear visuals – Outer bands show extremes, inner bands show retest zones
Works on any timeframe – From scalping to swing trading
Perfect for traders tired of getting stopped out by false breakouts.
Core Construction:
Smart Dynamic Bands:
Basis = Weighted hybrid EMA of HLC3, SMA, and WMA
Outer Bands = Basis ± (ATR × Multiplier)
Inner Bands = Basis ± (ATR × Multiplier × 0.5) → The "retest zone"
The Unique Filter: The Real Retest
Step 1: Identify an extreme wick touching the outer band
Step 2: Wait 1-3 bars for price to return and touch the inner band
Why it works: Most false breakouts never retest. A genuine reversal shows seller/buyer exhaustion by allowing price to come back to the "halfway" level.
Optional Confirmations:
Volume surge filter (default ON)
RSI extremes filter (optional)
Each can be toggled ON/OFF
How to Use:
Watch for extreme wicks touching the red/lime outer bands
Wait for the retest – price must return to touch the inner band (dotted line) within 3 bars
Enter on confirmation with built-in volume/RSI filters
Set stops beyond the extreme wick
NQ 300+ Point Day Checklist (Bias + Alerts + Markers)This indicator helps identify high-range (≥300-point) days on Nasdaq-100 futures (NQ / MNQ) using a clear, rule-based checklist.
It evaluates volatility, compression, price displacement, prior-day structure, and overnight activity to generate a daily expansion score (0–6). Higher scores signal an increased likelihood of a strong trending or expansion day.
The script also provides:
Expansion probability levels (Normal / Watch / High-Prob)
Bullish, bearish, or neutral bias
On-chart markers and background highlights
Optional alerts for early awareness
Best used on the Daily timeframe to help traders focus on high-opportunity days and avoid overtrading during consolidation.
This is a context and probability tool — not a trade signal.
Ahmed Gold Signals - 5M LIVE (Frequent)📈 Gold (XAUUSD) Trading Signals – Precision-Based Strategy
Our Gold signals are built on pure price action, not random indicators or guesswork.
🔍 How our signals are generated
We focus on:
🧲 Liquidity Sweeps
Identifying when price grabs stop-losses above highs or below lows and then reverses
📊 Clear trend direction using EMA 50 & EMA 200
✅ Strong confirmation candles after the sweep
🎯 Entries only in the direction of the trend to increase accuracy
🔵 BUY Signals
Bullish market structure
Price sweeps liquidity below recent lows
Strong bullish confirmation candle closes
➡️ High-probability BUY setup
🔴 SELL Signals
Bearish market structure
Price sweeps liquidity above recent highs
Strong bearish confirmation candle closes
➡️ High-probability SELL setup
⏱️ Timeframe
5-minute chart (5M)
Fast, precise signals ideal for scalping Gold
🛡️ Risk Management
Stop loss placed beyond the liquidity sweep
Clear take-profit targets
Risk-to-reward typically 1:2 or better
⚠️ Important Notes
We do not trade every move
We wait for confirmation
Quality over quantity — always
Al Brooks - EMA20Instead of simply fetching data from the 60-minute or 15-minute charts, this script mathematically simulates the internal logic of those EMAs directly on your current timeframe.
Just for fun.
LSTM-Inspired BB Mean Reversion// ============================================================================
// BOLLINGER BANDS MEAN REVERSION STRATEGY
// Based on LSTM Model True Positive Signal Characteristics
// ============================================================================
// Model learned to identify:
// 1. Price at/below Lower Bollinger Band (100% of TP signals)
// 2. RSI < 30 (Oversold) (75% of TP signals)
// 3. High volatility (wide BB bands)
// 4. Below average volume (contrarian)
// ============================================================================
Nooner's Heikin-Ashi/Bull-Bear CandlesCandles are colored red and green when Heikin-Ashi and Bull/Bear indicator agree. They are colored yellow when they disagree.
Alertes Trading Manuel//@version=6
indicator("Signal simple +0.5% LONG", overlay = true)
// --- Paramètres ---
tpPctInput = input.float(0.5, "TP (%)", step = 0.1) // objectif pour toi : 0.5%
slPctInput = input.float(0.3, "SL (%)", step = 0.1) // SL indicatif : 0.3%
tpPct = tpPctInput / 100.0
slPct = slPctInput / 100.0
emaLenFast = input.int(50, "EMA rapide (intraday)", minval = 1)
emaLenSlow = input.int(200, "EMA lente (intraday)", minval = 1)
volLen = input.int(20, "Période moyenne Volume", minval = 1)
// --- Tendance daily : MA200 jours ---
ma200D = request.security(syminfo.tickerid, "D", ta.sma(close, 200))
above200D = close > ma200D
// --- Tendance intraday ---
emaFast = ta.ema(close, emaLenFast)
emaSlow = ta.ema(close, emaLenSlow)
upTrendIntraday = close > emaFast and emaFast > emaSlow
// --- MACD & RSI ---
= ta.macd(close, 12, 26, 9)
rsi = ta.rsi(close, 14)
macdOK = macdLine > macdSignal
rsiOK = rsi > 49 and rsi < 75
// --- Volume ---
volMa = ta.sma(volume, volLen)
volOK = volume > volume and volume > volMa
// --- Signal LONG simple ---
longSignal = above200D and upTrendIntraday and macdOK and rsiOK and volOK
// --- Affichage du signal ---
plotshape(
longSignal,
title = "Signal LONG",
location = location.belowbar,
style = shape.triangleup,
color = color.lime,
size = size.small,
text = "LONG"
)
// --- Lignes TP / SL indicatives basées sur le dernier signal ---
var float tpLine = na
var float slLine = na
if longSignal
tpLine := close * (1 + tpPct)
slLine := close * (1 - slPct)
// Les lignes restent jusqu'au prochain signal
plot(tpLine, "TP indicatif", color = color.new(color.green, 50), style = plot.style_linebr)
plot(slLine, "SL indicatif", color = color.new(color.red, 50), style = plot.style_linebr)
// --- Affichage des moyennes ---
plot(emaFast, "EMA rapide", color = color.new(color.blue, 40))
plot(emaSlow, "EMA lente", color = color.new(color.orange, 40))
plot(ma200D, "MA200 jours (daily)", color = color.new(color.fuchsia, 0), linewidth = 2)
Kernel EnvelopeKernel Envelope is a non-repainting dynamic band system designed to identify price overextension, trend exhaustion, volatility expansion, and high-probability reversal points.
Using a kernel-based smoothing technique, the indicator builds adaptive upper and lower envelopes that respond fluidly to market structure while maintaining exceptional stability for systematic trading.
These envelopes form the core of the system and allow traders to:
Detect bullish rebounds from the lower band
Detect bearish rejections from the upper band
Filter trend-following entries using volatility context
Identify zones where price is statistically stretched
Highlight exhaustion points during impulsive moves
The indicator also includes an integrated pivot-based trendline engine, which draws dynamic support and resistance levels derived from structural highs and lows.
These lines auto-extend forward and include breakout alerts, making them ideal for breakout traders, liquidity hunters, and structure-based strategies.
Key Features
Fully non-repainting envelope calculation
Adaptive smoothing responsive to market volatility
Clean gold/silver visual theme for maximum clarity
Glow-style rendering for enhanced band visibility
Automatic trendline generation using pivot points
Breakout alerts for upper and lower trendlines
Rebound and rejection alerts on envelope interaction
Works on all markets and timeframes
Whether you trade reversals, breakouts, or trend continuation setups, Kernel Envelope provides a reliable, low-noise framework for identifying high-quality trade signals.
Acknowledgment
This indicator is inspired by the original Nadaraya-Watson Envelope by LuxAlgo, whose work served as the foundation for further research and development.
Follow Me on X
For more indicators, updates, automated strategies, and educational content, you can follow me here:
X (Twitter): x.com
Friday-Monday Pattern Backtest (Market Rebellion)Tests the "Friday-Monday Pattern" popularized by Tom Hougaard / Market Rebellion.
PATTERN LOGIC:
• When Friday's high is LOWER than Thursday's high (setup condition)
• Then Friday's low is often revisited on the following Monday
WHAT THIS INDICATOR SHOWS:
• Orange background highlights valid setup bars (Thu-Fri-Mon)
• Red horizontal line marks Friday's low (the target level)
• Green "SUCCESS" label = Monday hit Friday's low
• Red "FAIL" label = Monday did not reach Friday's low
• Stats table (top-right) shows total setups, successes, and success rate
USE THIS TO:
• Backtest the pattern on any daily chart (works best on indices, forex, futures)
• Verify the claimed "overwhelming" tendency statistically
• Identify which markets/timeframes show the highest success rate
CREDITS:
Pattern idea from Tom Hougaard / Market Rebellion: x.com
Indicator by BacktestBay for transparent pattern verification.
USAGE NOTES:
• Must be applied to DAILY charts
• Uses time_close("D") for accurate day-of-week detection on forex pairs
• No trading signals - purely for statistical backtesting
takeshi_2Step_Screener_MOU_KAKU_FIXED3//@version=5
indicator("MNO_2Step_Screener_MOU_KAKU_FIXED3", overlay=true, max_labels_count=500)
// =========================
// Inputs
// =========================
emaSLen = input.int(5, "EMA Short (5)")
emaMLen = input.int(13, "EMA Mid (13)")
emaLLen = input.int(26, "EMA Long (26)")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
macdZeroTh = input.float(0.2, "MOU: MACD near-zero threshold", step=0.05)
volLookback = input.int(5, "Volume MA days", minval=1)
volMinRatio = input.float(1.3, "MOU: Volume ratio min", step=0.1)
volStrong = input.float(1.5, "Strong volume ratio (Breakout/KAKU)", step=0.1)
volMaxRatio = input.float(3.0, "Volume ratio max (filter)", step=0.1)
wickBodyMult = input.float(2.0, "Pinbar: lowerWick >= body*x", step=0.1)
pivotLen = input.int(20, "Resistance lookback", minval=5)
pullMinPct = input.float(5.0, "Pullback min (%)", step=0.1)
pullMaxPct = input.float(15.0, "Pullback max (%)", step=0.1)
breakLookbackBars = input.int(5, "Pullback route: valid bars after break", minval=1)
// --- Breakout route (押し目なし初動ブレイク) ---
useBreakoutRoute = input.bool(true, "Enable MOU Breakout Route (no pullback)")
breakConfirmPct = input.float(0.3, "Break confirm: close > R*(1+%)", step=0.1)
bigBodyLookback = input.int(20, "Break candle body MA length", minval=5)
bigBodyMult = input.float(1.2, "Break candle: body >= MA*mult", step=0.1)
requireCloseNearHigh = input.bool(true, "Break candle: close near high")
closeNearHighPct = input.float(25.0, "Close near high threshold (% of range)", step=1.0)
allowMACDAboveZeroInstead = input.bool(true, "Breakout route: allow MACD GC above zero instead")
// 表示
showEMA = input.bool(true, "Plot EMAs")
showMou = input.bool(true, "Show MOU label")
showKaku = input.bool(true, "Show KAKU label")
showDebugTbl = input.bool(false, "Show debug table (last bar)")
locChoice = input.string("Below Bar", "Label location", options= )
lblLoc = locChoice == "Below Bar" ? location.belowbar : location.abovebar
// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)
// plot は if の中に入れない(naで制御)
plot(showEMA ? emaS : na, color=color.new(color.yellow, 0), title="EMA 5")
plot(showEMA ? emaM : na, color=color.new(color.blue, 0), title="EMA 13")
plot(showEMA ? emaL : na, color=color.new(color.orange, 0), title="EMA 26")
emaUpS = emaS > emaS
emaUpM = emaM > emaM
emaUpL = emaL > emaL
goldenOrder = emaS > emaM and emaM > emaL
above26_2days = close > emaL and close > emaL
// 勝率維持の土台(緩めない)
baseTrendOK = (emaUpS and emaUpM and emaUpL) and goldenOrder and above26_2days
// =========================
// MACD
// =========================
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdGC = ta.crossover(macdLine, macdSig)
macdUp = macdLine > macdLine
macdNearZero = math.abs(macdLine) <= macdZeroTh
macdGCAboveZero = macdGC and macdLine > 0 and macdSig > 0
macdMouOK = macdGC and macdNearZero and macdUp
macdBreakOK = allowMACDAboveZeroInstead ? (macdMouOK or macdGCAboveZero) : macdMouOK
// =========================
// Volume
// =========================
volMA = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na
volumeMouOK = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong and volRatio <= volMaxRatio
// =========================
// Candle patterns
// =========================
body = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
bullEngulf =
close > open and close < open and
close >= open and open <= close
bigBull =
close > open and
open < emaM and close > emaS and
(body > ta.sma(body, 20))
candleOK = pinbar or bullEngulf or bigBull
// =========================
// Resistance / Pullback route
// =========================
res = ta.highest(high, pivotLen)
pullbackPct = res > 0 ? (res - close) / res * 100.0 : na
pullbackOK = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct
brokeRes = ta.crossover(close, res )
barsSinceBreak = ta.barssince(brokeRes)
afterBreakZone = (barsSinceBreak >= 0) and (barsSinceBreak <= breakLookbackBars)
pullbackRouteOK = afterBreakZone and pullbackOK
// =========================
// Breakout route (押し目なし初動ブレイク)
// =========================
breakConfirm = close > res * (1.0 + breakConfirmPct / 100.0)
bullBreak = close > open
bodyMA = ta.sma(body, bigBodyLookback)
bigBodyOK = bodyMA > 0 ? (body >= bodyMA * bigBodyMult) : false
rng = math.max(high - low, syminfo.mintick)
closeNearHighOK = not requireCloseNearHigh ? true : ((high - close) / rng * 100.0 <= closeNearHighPct)
mou_breakout =
useBreakoutRoute and
baseTrendOK and
breakConfirm and
bullBreak and
bigBodyOK and
closeNearHighOK and
volumeStrongOK and
macdBreakOK
mou_pullback = baseTrendOK and volumeMouOK and candleOK and macdMouOK and pullbackRouteOK
mou = mou_pullback or mou_breakout
// =========================
// KAKU (Strict): 8条件 + 最終三点
// =========================
cond1 = emaUpS and emaUpM and emaUpL
cond2 = goldenOrder
cond3 = above26_2days
cond4 = macdGCAboveZero
cond5 = volumeMouOK
cond6 = candleOK
cond7 = pullbackOK
cond8 = pullbackRouteOK
all8_strict = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
final3 = pinbar and macdGCAboveZero and volumeStrongOK
kaku = all8_strict and final3
// =========================
// Display (統一ラベル)
// =========================
showKakuNow = showKaku and kaku
showMouPull = showMou and mou_pullback and not kaku
showMouBrk = showMou and mou_breakout and not kaku
plotshape(showMouPull, title="MOU_PULLBACK", style=shape.labelup, text="猛",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showMouBrk, title="MOU_BREAKOUT", style=shape.labelup, text="猛B",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showKakuNow, title="KAKU", style=shape.labelup, text="確",
color=color.new(color.yellow, 0), textcolor=color.black, location=lblLoc, size=size.small)
// =========================
// Alerts
// =========================
alertcondition(mou, title="MNO_MOU", message="MNO: MOU triggered")
alertcondition(mou_breakout, title="MNO_MOU_BREAKOUT", message="MNO: MOU Breakout triggered")
alertcondition(mou_pullback, title="MNO_MOU_PULLBACK", message="MNO: MOU Pullback triggered")
alertcondition(kaku, title="MNO_KAKU", message="MNO: KAKU triggered")
// =========================
// Debug table (optional)
// =========================
var table t = table.new(position.top_right, 2, 14, border_width=1, border_color=color.new(color.white, 60))
fRow(_name, _cond, _r) =>
bg = _cond ? color.new(color.lime, 70) : color.new(color.red, 80)
tx = _cond ? "OK" : "NO"
table.cell(t, 0, _r, _name, text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, _r, tx, text_color=color.white, bgcolor=bg)
if showDebugTbl and barstate.islast
// ❗ colspanは使えないので2セルでヘッダーを作る
table.cell(t, 0, 0, "MNO Debug", text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, 0, "", text_color=color.white, bgcolor=color.new(color.black, 0))
fRow("BaseTrend", baseTrendOK, 1)
fRow("MOU Pullback", mou_pullback, 2)
fRow("MOU Breakout", mou_breakout, 3)
fRow("Break confirm", breakConfirm, 4)
fRow("Break big body", bigBodyOK, 5)
fRow("Break close high", closeNearHighOK, 6)
fRow("Break vol strong", volumeStrongOK, 7)
fRow("Break MACD", macdBreakOK, 8)
fRow("KAKU all8", all8_strict, 9)
fRow("KAKU final3", final3, 10)
fRow("MOU any", mou, 11)
fRow("KAKU", kaku, 12)
NeoChartLabs Stochastic RSIOne of our Favorite Indicators - The NeoChart Labs Stochastic RSI
Slowed down and smoothed out to hide the jerky movements of the crypto market.
StochRSI measures where the current RSI value sits relative to its recent high and low range. This provides more frequent signals and is designed to address the issue of the standard RSI remaining at extreme levels for too long. Best when used with 80 / 20
Risk & Position CalculatorThis indicator is called "Risk & Position Calculator".
This indicator shows 4 information on a table format.
1st: 20 day ADR% (ADR%)
2nd: Low of the day price (LoD)
3rd: The percentage distance between the low of the day price and the current market price in real-time (LoD dist.%)
4th: The calculated amount of shares that are suggested to buy (Shares)
The ADR% and LoD is straightforward, and I will explain more on the 3rd and 4th information.
__________________________________________________________________________________
The Lod dist.% is a useful tool if you are a breakout buyer and use the low of the day price as your stop loss, it helps you determine if a breakout buy is at a risk tight area (~1/2 ADR%) or it is more of a chase (>1 ADR%).
I use four different colors to visualize this calculation results (green, yellow, purple, and red).
Green: Lod dist.% <= 0.5 ADR%
Yellow: 0.5 ADR% < Lod dist.% <= 1 ADR%
Purple: 1 ADR% < Lod dist.% <= 1.5 ADR%
Red: 1.5 ADR% < Lod dist.%
(e.g., if Lod dist.% is colored in Green, it means your stop loss is <= 0.5 ADR%, therefore if you buy here, the risk is probably tight enough)
__________________________________________________________________________________
The Shares is a useful tool if you want to know exactly how many shares you should buy at the breakout moment. To use this tool, you first need to input two information in the indicator setting panel: the account size ($) and portfolio risk (%).
Account Size ($) means the dollar value in your total account.
Portfolio Risk (%) means how much risk you are willing to take per trade.
(e.g. a 1% portfolio risk in a 5000$ account is 50$, which is the risk you will take per trade)
After you provide these two inputs, the indicator will help you calculate how many shares you should buy based on the calculated Dollar Risk ($), real-time market price, and the low of the day price.
(e.g. Dollar Risk (50$), real-time market price (100$), Lod price (95$) -> then you will need to buy 50/(100-95) = 10 shares to meet your demand, so it will display as Shares { 10 } )
In addition, I also introduce a mechanism that helps you avoid buying too big of a position relative to your overall account . I set the limit to 25%, which means you don't put more than 25% of your account money into a single trade, which helps prevent single stock risk.
By introducing this mechanism, it will supervise if the suggested Shares to buy exceed max position limit (25%). If it actually exceeds, instead of using Dollar Risk ($) to calculate Shares, it will use position limit to calculate and display the max Shares you should buy.
__________________________________________________________________________________
That's it. Hope you find this explanation helpful when you use this indicator. Have a great day mate:)
NeoChartLabs McGinley DynamicOne of our Favorite Indicators - the McGinley Dynamic
The MGD is adaptive, it speeds up for crypto and slows down for stocks, this version turns green when bullish and red when bearish - this is a fast indicator so the colors are more reliable on higher time frames.
The McGinley Dynamic is a smart, adaptive moving average technical indicator created by John R. McGinley, designed to overcome the lag and whipsaw issues of traditional moving averages (MAs) by automatically adjusting to varying market speeds, resulting in a smoother, more responsive line that tracks price action better, acting as a reliable trend-following tool or baseline in financial charts.
Shout out to LOXX for the original script, updated to v6.
indicator("MouNoOkite_InitialMove_Screener", overlay=true)//@version=5
indicator("猛の掟・初動スクリーナー(5EMA×MACD×出来高×ローソク)", overlay=true, max_labels_count=500)
// =========================
// Inputs
// =========================
emaSLen = input.int(5, "EMA Short (5)")
emaMLen = input.int(13, "EMA Mid (13)")
emaLLen = input.int(26, "EMA Long (26)")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
volLookback = input.int(5, "出来高平均(日数)", minval=1)
volMinRatio = input.float(1.3, "出来高倍率(初動点灯)", step=0.1)
volStrong = input.float(1.5, "出来高倍率(本物初動)", step=0.1)
volMaxRatio = input.float(2.0, "出来高倍率(上限目安)", step=0.1)
wickBodyMult = input.float(2.0, "ピンバー判定: 下ヒゲ >= (実体×倍率)", step=0.1)
pivotLen = input.int(20, "直近高値/レジスタンス判定のLookback", minval=5)
pullMinPct = input.float(5.0, "押し目最小(%)", step=0.1)
pullMaxPct = input.float(15.0, "押し目最大(%)", step=0.1)
showDebug = input.bool(true, "デバッグ表示(条件チェック)")
// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)
plot(emaS, color=color.new(color.yellow, 0), title="EMA 5")
plot(emaM, color=color.new(color.blue, 0), title="EMA 13")
plot(emaL, color=color.new(color.orange, 0), title="EMA 26")
emaUpS = emaS > emaS
emaUpM = emaM > emaM
emaUpL = emaL > emaL
// 26EMA上に2日定着
above26_2days = close > emaL and close > emaL
// 黄金隊列
goldenOrder = emaS > emaM and emaM > emaL
// =========================
// MACD
// =========================
= ta.macd(close, macdFast, macdSlow, macdSignal)
// ヒストグラム縮小(マイナス圏で上向きの準備)も見たい場合の例
histShrinking = math.abs(macdHist) < math.abs(macdHist )
histUp = macdHist > macdHist
// ゼロライン上でGC(最終シグナル)
macdGCAboveZero = ta.crossover(macdLine, macdSig) and macdLine > 0 and macdSig > 0
// 参考:ゼロ直下で上昇方向(勢い準備)
macdRisingNearZero = (macdLine < 0) and (macdLine > macdLine ) and (math.abs(macdLine) <= math.abs(0.5))
// =========================
// Volume
// =========================
volMA = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na
volumeOK = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong
// =========================
// Candle patterns
// =========================
body = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
// 長い下ヒゲ(ピンバー系): 実体が小さく、下ヒゲが優位
pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
// 陽線包み足(前日陰線を包む)
bullEngulf =
close > open and close < open and
close >= open and open <= close
// 5EMA・13EMA を貫く大陽線(勢い)
bigBull =
close > open and
open < emaM and close > emaS and
(body > ta.sma(body, 20)) // “相対的に大きい”目安
candleOK = pinbar or bullEngulf or bigBull
// =========================
// 押し目 (-5%〜-15%) & レジブレ後
// =========================
recentHigh = ta.highest(high, pivotLen)
pullbackPct = recentHigh > 0 ? (recentHigh - close) / recentHigh * 100.0 : na
pullbackOK = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct
// “レジスタンスブレイク”簡易定義:直近pivotLen高値を一度上抜いている
// → その後に押し目位置にいる(現在が押し目)
brokeResistance = ta.crossover(close, recentHigh ) or (close > recentHigh )
afterBreakPull = brokeResistance or brokeResistance or brokeResistance or brokeResistance or brokeResistance
breakThenPullOK = afterBreakPull and pullbackOK
// =========================
// 最終三点シグナル(ヒゲ × 出来高 × MACD)
// =========================
final3 = pinbar and macdGCAboveZero and volumeStrongOK
// =========================
// 猛の掟 8条件チェック(1つでも欠けたら「見送り」)
// =========================
// 1) 5EMA↑ 13EMA↑ 26EMA↑
cond1 = emaUpS and emaUpM and emaUpL
// 2) 5>13>26 黄金隊列
cond2 = goldenOrder
// 3) ローソク足が26EMA上に2日定着
cond3 = above26_2days
// 4) MACD(12,26,9) ゼロライン上でGC
cond4 = macdGCAboveZero
// 5) 出来高が直近5日平均の1.3〜2.0倍
cond5 = volumeOK
// 6) ピンバー or 包み足 or 大陽線
cond6 = candleOK
// 7) 押し目 -5〜15%
cond7 = pullbackOK
// 8) レジスタンスブレイク後の押し目
cond8 = breakThenPullOK
all8 = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
// =========================
// 判定(2択のみ)
// =========================
isBuy = all8 and final3
decision = isBuy ? "買い" : "見送り"
// =========================
// 表示
// =========================
plotshape(isBuy, title="BUY", style=shape.labelup, text="買い", color=color.new(color.lime, 0), textcolor=color.black, location=location.belowbar, size=size.small)
plotshape((not isBuy) and all8, title="ALL8_OK_but_noFinal3", style=shape.labelup, text="8条件OK (最終3未)", color=color.new(color.yellow, 0), textcolor=color.black, location=location.belowbar, size=size.tiny)
// デバッグ(8項目チェック結果)
if showDebug and barstate.islast
var label dbg = na
label.delete(dbg)
txt =
"【8項目チェック】 " +
"1 EMA全上向き: " + (cond1 ? "達成" : "未達") + " " +
"2 黄金隊列: " + (cond2 ? "達成" : "未達") + " " +
"3 26EMA上2日: " + (cond3 ? "達成" : "未達") + " " +
"4 MACDゼロ上GC: " + (cond4 ? "達成" : "未達") + " " +
"5 出来高1.3-2.0: "+ (cond5 ? "達成" : "未達") + " " +
"6 ローソク条件: " + (cond6 ? "達成" : "未達") + " " +
"7 押し目5-15%: " + (cond7 ? "達成" : "未達") + " " +
"8 ブレイク後押し目: " + (cond8 ? "達成" : "未達") + " " +
"最終三点(ヒゲ×出来高×MACD): " + (final3 ? "成立" : "未成立") + " " +
"判定: " + decision
dbg := label.new(bar_index, high, txt, style=label.style_label_left, textcolor=color.white, color=color.new(color.black, 0))
// アラート
alertcondition(isBuy, title="猛の掟 BUY", message="猛の掟: 買いシグナル(8条件+最終三点)")
ATR R-LevelsATR-R Levels is built for clarity of risk management.
The script takes your account size, chosen risk %, and the market’s volatility, then turns all of that into exact stop-loss, take-profit, and position size so there’s no guessing.
It’s inspired by key principles from NNFX, especially ATR-based stop placement and fixed-risk position sizing, but redesigned for fast intraday crypto trading. You get the same consistency and discipline NNFX is known for, adapted to a much shorter timeframe.
ATR-R Levels gives you:
A volatility-based stop using ATR
A clean 2R (or custom R-multiple) target
Automatic position sizing based on your risk rules
A simple HUD showing ATR, entry, stop, TP, size, and risk
Optional net profit estimates after fees
Let me know what you think or if you use it!






















