Open Range BreakoutOpen Range Breakout is a volatility harvesting tool designed to exploit directional expansion following major market opens. It isolates price action during initial liquidity injections to project institutional-grade zones that define a session's structural bias.
Core Methodology
The script uses a time-anchored engine to map critical supply and demand boundaries:
Anchor Identification: The algorithm captures the absolute High and Low within a user-defined window at the start of Tokyo, London, or New York sessions.
Structural Projection: It generates a Neutrality Box. A breach via candle close signals the transition from consolidation to expansion.
Mathematical Risk Modeling: Upon breakout, it calculates a 3:1 Risk-Reward framework based on fixed percentage volatility.
Session Dynamics
The system is optimized for the global liquidity cycle:
Session 1 (Asia): Maps early-day consolidation and range-bound liquidity.
Session 2 (Europe): Captures the London Move to identify the trend.
Session 3 (US): Analyzes high-volume New York opens for maximum momentum.
Key Features
Dynamic Price Mitigation: TP/SL zones stop extending the moment price touches the target or invalidation level to keep charts clean.
Volatility-Adjusted Levels: Stop Loss parameters are normalized to price percentage for consistency across Indices, Forex, or Crypto.
Minimalist Interface: Professional aesthetic with high-contrast visual cues for instant scannability.
Use Cases
Momentum Trading: Identifying the Origin of the Move post-open.
Mean Reversion: Recognizing failed breakouts when price returns inside the range.
Quantitative Backtesting: Benchmarking 3.0 RR targets across different session anchors.
Candlestick analysis
SA Range Rank JNJ.WEEK. 1.15.2026Signal Architect™ — Developer Note
Weekly
These daily posts are intentional.
They are not meant to showcase wins, targets, or outcomes.
They are designed to help viewers observe consistency in market behavior—specifically how structure, range, and reaction repeat across different products and timeframes.
The value is not in catching every move.
The value is in knowing when participation is unnecessary or unsupported.
Signal Architect™ tools are built to help traders avoid low-quality decisions, not to encourage constant activity.
________________________________________
What These Posts Are Demonstrating
Over time, if you observe these posts across equities and futures, you’ll begin to notice:
• The same structural traps repeat across different instruments
• The same reactions occur across multiple timeframes
• The same stop-run and absorption behaviors appear regardless of volatility
That repetition is not coincidence.
It reflects how markets consistently behave, even as prices change.
The goal of these posts is to make that behavior familiar—
because familiarity reduces hesitation, overtrading, and unnecessary loss.
Consistency is not the outcome.
Consistency is the environment.
________________________________________
What You’re Seeing (Public View)
These charts display a limited visual preview of tools within the Signal Architect™ framework.
Only visual context is shown.
Core logic, calculations, thresholds, and execution rules are intentionally not disclosed.
The tools emphasize:
• Market structure over prediction
• Environmental awareness over signals
• Risk framing over reward chasing
Nothing shown publicly is meant to tell you what to trade.
It is meant to help you recognize when not to trade.
________________________________________
Why This Matters
Most losses do not come from being wrong on direction.
They come from participating:
• too early
• too late
• during transitions
• inside structural traps
Signal Architect™ tools are designed to filter those moments out.
In many cases, the highest-value action is:
• standing aside
• reducing size
• waiting for clarity
Saving capital is part of execution.
Avoiding a bad trade is often more valuable than finding a good one.
________________________________________
Background & Scope (Context Only)
Over the years, I’ve developed a wide range of systems and analytical tools spanning:
• Equities
• Futures
• Options structure
• Portfolio construction and allocation logic
This includes extensive work on rule-based, tightly controlled frameworks designed to function across changing market conditions.
None of that internal logic is shared publicly.
These posts exist strictly for education, observation, and pattern recognition—not advice, not signals, and not promises.
________________________________________
🤝 For Those Who Find Value
If these daily posts help you see the market more clearly:
• Follow, boost, and share my scripts, Ideas, and MINDS posts
• Feel free to message me directly with questions or build requests
• Constructive feedback and collaboration are always welcome
For traders who want to go deeper, optional memberships may include:
• Additional signal access
• Early previews
• Occasional free tools and upgrades
🔗 Membership & Signals
trianchor.gumroad.com
________________________________________
⚠️ Final Note
Everything published publicly is educational and analytical only.
Markets carry risk.
Discipline, patience, and risk management always come first.
Watch the consistency.
Study the structure.
Let the market repeat itself.
— Signal Architect™
________________________________________
🔗 Personally Developed GPT Tools
• AuctionFlow GPT
chatgpt.com
• Signal Architect™ Gamma Desk – Market Intelligence
chatgpt.com
• Gamma Squeeze Watchtower™
chatgpt.com
Weekly (W) — Strategic Regime / “Where price is allowed to live”
Goal: Identify the dominant direction + structural permission for the entire week(s).
How to use:
• Treat weekly RECLAIM as regime confirmation, not an entry.
• If weekly prints Bull RECLAIM, favor long participation on lower timeframes until weekly invalidates.
• If weekly prints Bear RECLAIM, same idea but short-biased.
Best behavior to look for:
• 1–2 reclaim signals per month/quarter.
• Use it as a “macro gate.”
Recommended settings (starting point):
• dispMult 1.2–1.6
• reclaimWindow 20–40
• cooldown 8–20
🟣 WEEKLY — Macro Regime & Liquidity Clearing
1️⃣ Range Indicator (RI)
• <30 → long-term compression (energy building)
• >70 → macro expansion (trend regime active)
Use:
Defines whether markets are coiling or trending on a multi-month scale.
________________________________________
2️⃣ ZoneEngine (Structure)
• Identifies macro structural bias
• Explains why certain weekly moves fail or accelerate
Use:
Never fight weekly structure. This is your “market weather.”
________________________________________
3️⃣ Cloud / Reclaim (Behavior)
• Clouds classify regime state, not entries
• Reclaims are informational only on weekly
Use:
Helps label the regime: continuation vs transition.
________________________________________
4️⃣ Stop-Hunt Proxy
• Represents large-scale liquidity clearing
• Often tied to:
o fund rebalancing
o regime shifts
o macro events
Use:
Context only. Weekly stop-hunts explain why a regime changed — they are not trades.
ORB (x2) by jaXn# ORB (x2) Professional Suite
## 🚀 Unleash the Power of Precision Range Trading
**ORB (x2)** isn't just another breakout indicator—it is a complete **Opening Range Breakout workspace** designed for professional traders who demand flexibility, precision, and chart cleanliness.
Whether you are trading Indices, Forex, or Commodities, the Opening Range is often the most critical level of the day. This suite allows you to master these levels by tracking **two independent ranges** simultaneously, giving you a distinctive edge.
## 🔥 Why choose ORB (x2)?
Most indicators force you to choose one specific time. **ORB (x2)** breaks these limits.
### 🌎 1. Multi-Session Mastery (London & New York)
Trade the world's biggest liquidity pools. Set **ORB 1** for the **London Open** (e.g., 03:00–03:05 EST) and **ORB 2** for the **New York Open** (09:30–09:35 EST). Watch how price reacts to London levels later in the New York session.
### ⏱️ 2. Multi-Strategy Stacking (The "Fractal" Approach)
This is a game-changer for intraday setups. Instead of two different times, track **two different durations** for the *same* open.
* **Setup:** Configure **ORB 1** as the classic **5-minute range** (09:30–09:35).
* **Setup:** Configure **ORB 2** as the statistically significant **15-minute or 30-minute range** (09:30–10:00).
* **Result:** You now see immediate scalping levels *and* major trend reversals levels on the same chart, automatically.
### 🎯 3. "Plot Until" Tech: Keep Your Chart Clean
Sick of lines extending infinitely into the void?
Our exclusive **"Plot Until"** feature separates the signal from the noise. You define exactly when the trade idea invalidates.
* *Example:* Plot the 09:30 levels only until 12:00 (Lunch).
* The script intelligently cuts the lines off at your exact minute, ensuring your chart is ready for the afternoon session without morning clutter.
### ⚡ Precision Engine
We use a dedicated "Precision Timeframe" input. Even if you are viewing a 1-hour or 4-hour chart to see the big picture, ORB (x2) can fetch data from the **1-minute** timeframe to calculate the *exact* high and low of the opening range. No more "repainting" or guessing where the wick was.
## 🛠 Feature Breakdown
* **Dual Independent Engines:** Fully separate Color, Style, Time, and Cutoff settings for both ORB 1 and ORB 2.
* **Absolute Time Cutoff:** Lines obey day boundaries perfectly. A cutoff at 16:00 means 16:00, not "whenever the next bar closes".
* **Style Control:** Visually distinguish between your "Scalp" ORB (e.g., Dotted Lines) and your "Trend" ORB (e.g., Solid Thick Lines).
* **Performance Mode:** Adjustable "Lookback Days" limits history to keep your chart lightning fast.
## 💡 Configuration Examples
**The "Double Barrel" (Standard Stock + Futures)**
* *ORB 1:* `0930-0935` (5 min) - The immediate reaction.
* *ORB 2:* `0930-1000` (30 min) - The institutional trend setter.
**The "Transatlantic" (Forex/Indices)**
* *ORB 1:* `0800-0805` (London Open) - European liquidity.
* *ORB 2:* `1330-1335` (NY Open) - US liquidity injection.
## ⚠️ Disclaimer
Trading involves substantial risk. This tool helps visualize critical price levels but does not guarantee profits. Always combine with proper risk management and your own analysis.
ICT Venom Trading Model [TradingFinder] SMC NY Session 2025SetupIt is a new interesting indicator. It might be a little bit difficult to implement but i like it a lot
jaems_Double BB[Alert]/W-Bottom/Dashboard// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © Kingjmaes
//@version=6
strategy("jaems_Double BB /W-Bottom/Dashboard", shorttitle="jaems_Double BB /W-Bottom/Dashboard", overlay=true, commission_type=strategy.commission.percent, commission_value=0.05, slippage=1, process_orders_on_close=true)
// ==========================================
// 1. 사용자 입력 (Inputs)
// ==========================================
group_date = "📅 백테스트 기간 설정"
startTime = input.time(timestamp("2024-01-01 00:00"), "시작일", group=group_date)
endTime = input.time(timestamp("2099-12-31 23:59"), "종료일", group=group_date)
group_bb = "📊 더블 볼린저 밴드 설정"
bb_len = input.int(20, "길이 (Length)", minval=5, group=group_bb)
bb_mult_inner = input.float(1.0, "내부 밴드 승수 (Inner A)", step=0.1, group=group_bb)
bb_mult_outer = input.float(2.0, "외부 밴드 승수 (Outer B)", step=0.1, group=group_bb)
group_w = "📉 W 바닥 패턴 설정"
pivot_left = input.int(3, "피벗 좌측 봉 수", minval=1, group=group_w)
pivot_right = input.int(1, "피벗 우측 봉 수", minval=1, group=group_w)
group_dash = "🖥️ 대시보드 설정"
show_dash = input.bool(true, "대시보드 표시", group=group_dash)
comp_sym = input.symbol("NASDAQ:NDX", "비교 지수 (GS Trend)", group=group_dash, tooltip="S&P500은 'SP:SPX', 비트코인은 'BINANCE:BTCUSDT' 등을 입력하세요.")
rsi_len = input.int(14, "RSI 길이", group=group_dash)
group_risk = "🛡 리스크 관리"
use_sl_tp = input.bool(true, "손절/익절 사용", group=group_risk)
sl_pct = input.float(2.0, "손절매 (%)", step=0.1, group=group_risk) / 100
tp_pct = input.float(4.0, "익절매 (%)", step=0.1, group=group_risk) / 100
// ==========================================
// 2. 데이터 처리 및 계산 (Calculations)
// ==========================================
// 기간 필터
inDateRange = time >= startTime and time <= endTime
// 더블 볼린저 밴드
basis = ta.sma(close, bb_len)
dev_inner = ta.stdev(close, bb_len) * bb_mult_inner
dev_outer = ta.stdev(close, bb_len) * bb_mult_outer
upper_A = basis + dev_inner
lower_A = basis - dev_inner
upper_B = basis + dev_outer
lower_B = basis - dev_outer
percent_b = (close - lower_B) / (upper_B - lower_B)
// W 바닥형 (W-Bottom) - 리페인팅 방지
pl = ta.pivotlow(low, pivot_left, pivot_right)
var float p1_price = na
var float p1_pb = na
var float p2_price = na
var float p2_pb = na
var bool is_w_setup = false
if not na(pl)
p1_price := p2_price
p1_pb := p2_pb
p2_price := low
p2_pb := percent_b
// 패턴 감지
bool cond_w = (p1_price < lower_B ) and (p2_price > p1_price) and (p2_pb > p1_pb)
is_w_setup := cond_w ? true : false
w_bottom_signal = is_w_setup and close > open and close > lower_A
if w_bottom_signal
is_w_setup := false
// GS 트렌드 (나스닥 상대 강도)
ndx_close = request.security(comp_sym, timeframe.period, close)
rs_ratio = close / ndx_close
rs_sma = ta.sma(rs_ratio, 20)
gs_trend_bull = rs_ratio > rs_sma
// RSI & MACD
rsi_val = ta.rsi(close, rsi_len)
= ta.macd(close, 12, 26, 9)
macd_bull = macd_line > signal_line
// ==========================================
// 3. 전략 로직 (Strategy Logic)
// ==========================================
long_cond = (ta.crossover(close, lower_A) or ta.crossover(close, basis) or w_bottom_signal) and inDateRange and barstate.isconfirmed
short_cond = (ta.crossunder(close, upper_B) or ta.crossunder(close, upper_A) or ta.crossunder(close, basis)) and inDateRange and barstate.isconfirmed
// 진입 실행 및 알람 발송
if long_cond
strategy.entry("Long", strategy.long, comment="Entry Long")
alert("Long Entry Triggered | Price: " + str.tostring(close), alert.freq_once_per_bar_close)
if short_cond
strategy.entry("Short", strategy.short, comment="Entry Short")
alert("Short Entry Triggered | Price: " + str.tostring(close), alert.freq_once_per_bar_close)
// 청산 실행
if use_sl_tp
if strategy.position_size > 0
strategy.exit("Exit Long", "Long", stop=strategy.position_avg_price * (1 - sl_pct), limit=strategy.position_avg_price * (1 + tp_pct), comment_loss="L-SL", comment_profit="L-TP")
if strategy.position_size < 0
strategy.exit("Exit Short", "Short", stop=strategy.position_avg_price * (1 + sl_pct), limit=strategy.position_avg_price * (1 - tp_pct), comment_loss="S-SL", comment_profit="S-TP")
// 별도 알람: W 패턴 감지 시
if w_bottom_signal
alert("W-Bottom Pattern Detected!", alert.freq_once_per_bar_close)
// ==========================================
// 4. 대시보드 시각화 (Dashboard Visualization)
// ==========================================
c_bg_head = color.new(color.black, 20)
c_bg_cell = color.new(color.black, 40)
c_text = color.white
c_bull = color.new(#00E676, 0)
c_bear = color.new(#FF5252, 0)
c_neu = color.new(color.gray, 30)
get_trend_color(is_bull) => is_bull ? c_bull : c_bear
get_pos_text() => strategy.position_size > 0 ? "LONG 🟢" : strategy.position_size < 0 ? "SHORT 🔴" : "FLAT ⚪"
get_pos_color() => strategy.position_size > 0 ? c_bull : strategy.position_size < 0 ? c_bear : c_neu
var table dash = table.new(position.top_right, 2, 7, border_width=1, border_color=color.gray, frame_color=color.gray, frame_width=1)
if show_dash and (barstate.islast or barstate.islastconfirmedhistory)
table.cell(dash, 0, 0, "METRIC", bgcolor=c_bg_head, text_color=c_text, text_size=size.small)
table.cell(dash, 1, 0, "STATUS", bgcolor=c_bg_head, text_color=c_text, text_size=size.small)
table.cell(dash, 0, 1, "GS Trend", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 1, gs_trend_bull ? "Bullish" : "Bearish", bgcolor=c_bg_cell, text_color=get_trend_color(gs_trend_bull), text_size=size.small)
rsi_col = rsi_val > 70 ? c_bear : rsi_val < 30 ? c_bull : c_neu
table.cell(dash, 0, 2, "RSI (14)", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 2, str.tostring(rsi_val, "#.##"), bgcolor=c_bg_cell, text_color=rsi_col, text_size=size.small)
table.cell(dash, 0, 3, "MACD", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 3, macd_bull ? "Bullish" : "Bearish", bgcolor=c_bg_cell, text_color=get_trend_color(macd_bull), text_size=size.small)
w_status = w_bottom_signal ? "DETECTED!" : is_w_setup ? "Setup Ready" : "Waiting"
w_col = w_bottom_signal ? c_bull : is_w_setup ? color.yellow : c_neu
table.cell(dash, 0, 4, "W-Bottoms", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 4, w_status, bgcolor=c_bg_cell, text_color=w_col, text_size=size.small)
table.cell(dash, 0, 5, "Position", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 5, get_pos_text(), bgcolor=c_bg_cell, text_color=get_pos_color(), text_size=size.small)
last_sig = long_cond ? "BUY SIGNAL" : short_cond ? "SELL SIGNAL" : "HOLD"
last_col = long_cond ? c_bull : short_cond ? c_bear : c_neu
table.cell(dash, 0, 6, "Signal", bgcolor=c_bg_cell, text_color=c_text, text_halign=text.align_left, text_size=size.small)
table.cell(dash, 1, 6, last_sig, bgcolor=c_bg_cell, text_color=last_col, text_size=size.small)
// ==========================================
// 5. 시각화 (Visualization)
// ==========================================
p_upper_B = plot(upper_B, "Upper B", color=color.new(color.red, 50))
p_upper_A = plot(upper_A, "Upper A", color=color.new(color.red, 0))
p_basis = plot(basis, "Basis", color=color.gray)
p_lower_A = plot(lower_A, "Lower A", color=color.new(color.green, 0))
p_lower_B = plot(lower_B, "Lower B", color=color.new(color.green, 50))
fill(p_upper_B, p_upper_A, color=color.new(color.red, 90))
fill(p_lower_A, p_lower_B, color=color.new(color.green, 90))
plotshape(long_cond, title="Long", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(short_cond, title="Short", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
Inside Bar False Breakout (IBFB)The Inside Bar False Breakout (IBFB) is a price action tool that identifies high-probability reversal setups by detecting false breakouts from inside bar patterns. This strategy is widely used by traders to catch market traps and potential trend reversals.
What is an Inside Bar False Breakout?
An Inside Bar occurs when a candle's high and low are completely contained within the previous candle's range. A False Breakout happens when price initially breaks above or below this range but then closes back inside it, indicating a failed breakout and potential reversal.
How It Works
Step 1: Inside Bar Detection
Identifies candles where high < previous high AND low > previous low
Marks consolidation zones where market indecision occurs
Step 2: False Breakout Recognition
Bullish IBFB: Price breaks below the inside bar's low but closes back inside the range (bullish reversal signal)
Bearish IBFB: Price breaks above the inside bar's high but closes back inside the range (bearish reversal signal)
Step 3: Signal Confirmation
Applies a cooldown period (default 5 bars) to filter out noise and prevent signal clustering
Key Features
✅ Visual Signals
Color-coded bars (green for bullish, red for bearish IBFB)
Free-floating arrow markers (⬆ bullish, ⬇ bearish) without label boxes
Clean, minimalist design that doesn't clutter your chart
✅ Signal History Table
Displays the last 5 IBFB signals in real-time
Shows date/time, signal type, and price level
Color-coded for quick reference
✅ Customizable Settings
Enable/disable bullish or bearish signals independently
Adjustable cooldown period (1-100 bars) to control signal frequency
Customizable colors for both signal types
Toggle arrows and history table on/off
✅ Alert System
Built-in alert conditions for both bullish and bearish IBFB patterns
Fires once per bar close to avoid false alarms
Perfect for automated trading or notifications
✅ Universal Compatibility
Works on ANY timeframe (1m to 1M)
Lightweight and efficient - won't slow down your charts
No repainting - signals appear only on confirmed bar close
Best Use Cases
a.Scalping & Day Trading: Catch intraday reversals on lower timeframes (5m, 15m)
b.Swing Trading: Identify multi-day reversal patterns on higher timeframes (4H, D)
c.Trend Confirmation: Combine with trend indicators to filter trades in the direction of the main trend
d.Support/Resistance: Works exceptionally well near key S/R levels where false breakouts are common
Trading Tips
Confluence is Key: Combine IBFB signals with support/resistance zones, trendlines, or Fibonacci levels
Volume Matters: Look for decreasing volume on the false breakout for stronger confirmation
Risk Management: Place stop-loss just beyond the false breakout wick; target the opposite side of the inside bar range
Trend Alignment: Best results when trading in the direction of the higher timeframe trend
Cooldown Period: Increase the cooldown on lower timeframes to reduce noise; decrease on higher timeframes for more signals
Settings Explained
Signal Settings
Show Bullish/Bearish IBFB: Toggle each signal type independently
Cooldown Period: Minimum bars between signals (prevents over-trading)
Visual Settings
Show Arrows: Display ⬆⬇ markers on chart
Show Last 5 Signals Table: Display signal history panel
Bullish/Bearish Color: Customize signal colors
Alert Settings
Enable Alerts: Turn on/off automatic alert notifications
Why This Indicator?
Unlike many indicators that lag behind price action, the IBFB indicator identifies real-time market manipulation and traps. False breakouts often indicate:
Stop-loss hunting by institutional traders
Exhaustion of buying/selling pressure
Potential trend reversals or strong counter-moves
This makes it an excellent tool for contrarian traders and those looking to fade false moves.
Performance Notes
Signals confirm at bar close (no repainting)
Optimized for speed and efficiency
Works alongside other indicators without conflicts
Suitable for manual and automated trading strategies
Suitable for any instrument & market
Disclaimer: This indicator is for educational purposes only. Always practice proper risk management and combine with your own analysis before making trading decisions. Happy trading.
KDJ在 TradingView 发表脚本时,**描述(Description)** 非常重要。审核员要求描述必须详细说明脚本的**原理、独特性以及用法**,否则容易被驳回。
由于你的参数 (63, 21, 5) 非常特殊,属于“长周期/季度线”级别的设置,我在撰写描述时重点突出了它**“过滤噪音”**和**“捕捉中长期趋势”**的特点。
以下是为你准备的发布文案,包含**标题**和**正文(中英双语)**。你可以直接复制使用。
---
### 标题 (Title)
**KDJ Trend Filter (63, 21, 5) **
### 描述正文 (Description)
*(复制以下内容到 TradingView 的描述框中)*
** **
**Overview**
This is a custom KDJ indicator designed for **medium-to-long term trend analysis**. Unlike the default parameters (9, 3, 3) which are often too sensitive and prone to false signals in volatile markets, this script uses a specific set of parameters **(63, 21, 5)** to smooth out the noise.
**Why these parameters?**
* **N = 63 (Calculation Period):** Represents approximately one quarter (3 months) of trading days. This aligns the indicator with the quarterly trend rather than weekly fluctuations.
* **M1 = 21 (Smooth K):** A significantly higher smoothing factor for the K-line. This reduces the "jitter" and ensures that a crossover usually indicates a genuine shift in momentum.
* **M2 = 5 (Smooth D):** The smoothing period for the D-line.
**How to use**
1. **Trend Identification:** Due to the long period, this KDJ acts more like a trend-following tool than a typical oscillator.
2. **Crossovers:**
* **Golden Cross (K > D):** Suggests a potential start of a medium-term bullish trend.
* **Dead Cross (K < D):** Suggests a potential start of a medium-term bearish trend.
3. **Filtering:** This setup is excellent for filtering out market noise. It will react slower than standard KDJ but provides more reliable signals for swing traders.
**Settings**
* Calculation Period: 63
* MAC1 (K Smoothing): 21
* MAC2 (D Smoothing): 5
---
** **
**概述**
这是一个专为**中长期趋势分析**设计的 KDJ 指标。标准的 KDJ 参数(9, 3, 3)在震荡行情中过于敏感,容易产生虚假信号。本脚本采用了特定的长周期参数 **(63, 21, 5)**,旨在过滤短期市场噪音,捕捉更稳健的趋势方向。
**参数逻辑**
* **计算周期 (N) = 63:** 大约对应一个季度(3个月)的交易日。这意味着指标关注的是季度级别的价格位置,而非短期波动。
* **MAC1 (M1) = 21:** K值的平滑周期。相比默认值,21的平滑度极高,这使得 K 线非常平稳,只有在趋势发生实质性改变时才会转向。
* **MAC2 (M2) = 5:** D值的平滑周期。
**使用方法**
1. **趋势识别:** 由于周期较长,该指标具有“钝化”的特性,更适合作为趋势跟踪工具,而非短线超买超卖指标。
2. **交叉信号:**
* **金叉 (K上穿D):** 通常意味着中级行情的启动。
* **死叉 (K下穿D):** 通常意味着中级调整的开始。
3. **过滤噪音:** 在横盘震荡期间,该参数设置能有效减少频繁的交叉信号,帮助交易者拿住波段。
**默认设置**
* 计算周期:63
* MAC1:21
* MAC2:5
---
### 💡 发表前的检查清单 (Checklist)
1. **代码确认**:确保你的 Pine Script 代码中 `overlay=false`(因为 KDJ 是副图指标)。
2. **图表展示**:在点击发表前,最好在图表上画几条线或标记,展示一下金叉和死叉的位置,这样更容易通过审核,也能让用户一眼看懂。
3. **分类 (Category)**:建议选择 **"Trend Analysis" (趋势分析)** 和 **"Oscillators" (震荡指标)**。
如果你需要我帮你微调代码以符合上述描述(例如添加颜色填充或特定的信号标记),请告诉我!
Institutional Engine SAFEThis indicator is designed for traders who want to visualize institutional-level market execution patterns across multiple timeframes. It combines high-timeframe trend analysis, liquidity sweeps, fair value gaps (FVG), intermarket divergence (SMT), inverse FVGs, and change-in-state-of-delivery (CSID) to identify high-probability long and short setups.
FranPL - Psychological LevelsIt automatically draws horizontal lines fixed to the right-hand price scale at every price level ending in 00, 20, 50, and 80. These levels are commonly watched by traders as areas where price often reacts, pauses, or reverses.
The lines remain anchored to price, updating dynamically as the market moves, and stay aligned with the price scale rather than drifting with time. The indicator works across all markets and timeframes.
FranPL is fully customizable through the settings, allowing the user to adjust the line color, thickness, and length, making it easy to match personal chart preferences while keeping the chart clean and uncluttered.
Overall, FranPL provides a clear, consistent visual framework for identifying important psychological levels to support entries, exits, and risk management.
Institutional Engine SAFEThe Institutional HTF → LTF Execution Engine is a multi-timeframe trading indicator designed to identify high-probability institutional-level entries by analyzing higher timeframe (HTF) trends and projecting them onto lower timeframe (LTF) charts.
This tool integrates trend analysis, liquidity sweeps, fair value gaps, intermarket divergence, and risk management to provide traders with actionable BUY and SELL signals. It is ideal for day traders, scalpers, and swing traders seeking structured entries aligned with larger market flow.
Crypto Accumulation Candle FinderThis indicator give you long entry signal to dectect MM's entry time.
it's recommended to use it in 5min. time frame.
Custom Long ProjectionDo custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
Do custom Long Projection
FVG Finder | NRP | ProjectSyndicate🥇 ProjectSyndicate Fair Value Gap (FVG) Finder — Pine Script v6 • NRP Non-Repainting
📌 SMC Imbalance Zones Built for Clean Entries, Targets & Mitigation Tracking
The ProjectSyndicate FVG Finder is a professional TradingView indicator designed for traders who want clean, high-probability Fair Value Gaps price imbalances mapped instantly on-chart—without manual marking or clutter.
Fair Value Gaps form during aggressive displacement when price delivers inefficiently, leaving a void that price often returns to rebalance. This tool helps you spot those zones fast, track whether they’re still fresh, and plan entries with confidence. ✅
________________________________________
🚀 Why Traders Like It
✅ NRP Logic (Non-Repainting): Signals are built to remain stable once confirmed
✅ Real-Time FVG Detection: Automatically identifies bullish + bearish FVG zones as they form
📦 Clean Zone Visualization: Boxed imbalance areas that are easy to trade from
🧹 Auto-Cleanup (Mitigation): Zones update based on your chosen fill rule (Touch / 50% / Full)
🎛️ Anti-Noise Filtering: Minimum size + optional ATR filter to remove weak gaps
⚡ Pine Script v6: Built on the latest TradingView engine for stability and performance
🔔 Alerts + Markers: Get notified when new FVGs print + optional triangle signals
________________________________________
Gold H1 TF active FVGs
Eur Usd M30 TF active FVGs
NQ H1 TF active FVGs
🧠 Detection Logic — Simple, Effective, Battle-Tested
📈 Bullish Fair Value Gap (Demand Imbalance):
A 3-candle imbalance where the low of Candle 3 is above the high of Candle 1
➡️ Signals strong buy-side displacement / inefficient delivery
📉 Bearish Fair Value Gap (Supply Imbalance):
A 3-candle imbalance where the high of Candle 3 is below the low of Candle 1
➡️ Signals strong sell-side displacement / inefficient delivery
________________________________________
🧹 Mitigation Options — Choose How Filled Works
Your strategy decides what counts as used:
👆 Touch: Zone considered mitigated on first interaction
🎯 50% Fill: Mitigated once price fills half the gap
✅ Full Fill: Mitigated only when the entire zone is filled
Optional: Keep mitigated zones visible or hide them for ultra-clean charts.
________________________________________
🛠 Recommended Settings (ATR Multiplier Presets)
Use these as solid starting points on M30 / H1:
•🥇 XAUUSD (Gold) M30/H1: 0.5
•💻 NQ (Nasdaq) M30/H1: 0.25
•🛢️ USOIL M30/H1: 0.25
•₿ BTCUSD M30/H1: 0.25
•💶 EURUSD / GBPUSD M30/H1: 0.25 – 0.50
✅ Other markets are supported too just adjust the ATR Multiplier based on how many signals you want:
•More signals → lower multiplier
•Higher quality → higher multiplier
________________________________________
✅ Best Use-Cases
🎯 Mark imbalance zones instantly without manual drawing
🧲 Wait for price to return to FVG for cleaner entries
🛡️ Use zone boundaries for clear invalidation / stop placement
📊 Combine with trend bias + BOS/CHoCH + premium/discount for higher confirmation
🎯 Use FVGs as both entries and profit targets
________________________________________
⭐ How You Can Support ProjectSyndicate (3 Steps)
1. ✅ Click “Add to Favorites” to save this script to your TradingView Favorites
2. 🔎 Check out our other scripts to complete your SMC toolkit
3. 👤 Follow ProjectSyndicate for the latest updates, upgrades, and new releases
Order Block Finder | Gold | ProjectSyndicate
Breaker Blocks Finder | Gold | ProjectSyndicate
Smart Trader, Episode 02, by Ata Sabanci | Battle of Candles ⚠️ CRITICAL: READ BEFORE USING ⚠️
This indicator is 100% VOLUME-BASED and requires Lower Timeframe (LTF) intrabar data for accurate calculations. Please understand the following limitations before using:
📊 DATA ACCURACY LEVELS:
• 1T (Tick) — Most accurate, real volume distribution per tick
• 1S (1 Second) — Reasonably accurate approximation
• 15S (15 Seconds) — Good approximation, longer historical data available
• 1M (1 Minute) — Rough approximation, maximum historical data range
⚠️ BACKTEST & REPLAY LIMITATIONS:
• Replay mode results may differ from live trading due to data availability
• For longer back test periods, use higher LTF settings (15S or 1M)
• Not all symbols/exchanges support tick-level data
• Crypto and Forex typically have better LTF data availability than stocks
💡 A NOTE ON TOOLS:
Successful trading requires proper tools. Higher TradingView plans provide access to more historical intrabar data, which directly impacts the accuracy of volume-based calculations. More precise volume data leads to more reliable signals. Consider this when evaluating your trading infrastructure.
📌 OVERVIEW
Smart Trader Episode 02: Battle of Candles is an advanced educational indicator that combines multiple analysis engines to help traders identify market scenarios and understand market dynamics. This is NOT financial advice or a trading signal service — it's a learning tool designed to help you understand how institutional traders might interpret price action.
The indicator integrates 7 major analysis engines into a unified dashboard, providing real-time insights into volume flow, trend structure, market phases, and potential trade setups.
⚡ KEY FEATURES
🎯 16-Pattern Scenario Engine
Automatically detects and classifies market conditions into 16 distinct scenarios, from strong continuation moves to potential reversals and traps.
💰 Trade Advisor Panel
Aggregates all signals into actionable suggestions with confidence levels, suggested entry/SL/TP levels, and risk/reward calculations.
📊 Volume Engine
Splits volume into buy/sell components using either Geometry (candle shape) or Intrabar (LTF data) methods for precise delta analysis.
📈 CVD (Cumulative Volume Delta)
Tracks the running total of buying vs selling pressure to identify accumulation, distribution, and divergences.
🎯 Stop-Hunt Detection
Identifies potential stop-hunt patterns where price sweeps liquidity levels before reversing.
📐 Pure Structure Trend Engine
Zero-lag trend detection based on swing highs/lows (HH/HL/LH/LL) without any lagging indicators.
⚡ Effort vs Result Analysis
Measures energy spent (volume) versus ground taken (price movement) to detect stalls, breakthroughs, and exhaustion.
🎯 SCENARIO ENGINE — 16 Market Patterns
The Scenario Engine analyzes multiple factors (candle anatomy, volume, forces, CVD, wick analysis) to classify each candle into one of 16 scenarios:
Continuation Scenarios (1-3)
1. ⚔️ STRONG MOVE — Big body candle (>60%) with volume confirming direction. Indicates strong momentum continuation.
2. 🛡️ ABSORPTION — One side attacks but the other absorbs the pressure. Price holds despite volume. Continuation expected in the absorbing side's favor.
3. 📉 PULLBACK — Small move against the trend with low volume. Indicates a healthy retracement before trend continuation.
Reversal Scenarios (4-6, 13-16)
4. 💥 REJECTION — Big wick (>40%) with small body and high volume. Price was rejected
at a level, potential reversal.
5. 🪤 TRAP — Pin direction disagrees with delta. Extreme wick size. Looks bullish/bearish but the opposite may happen.
6. 😫 EXHAUSTION — High energy spent (volume) but low ground taken (price movement). Both sides active but momentum fading.
13. 🔄 CVD BULL DIV — Price falling but CVD rising. Hidden buying detected (accumulation). Potential bullish reversal.
14. 🔄 CVD BEAR DIV — Price rising but CVD falling. Hidden selling detected (distribution). Potential bearish reversal.
15. 🎯 STOP HUNT BULL — Shorts were liquidated below support. Price swept liquidity and reversed. Expect bullish move.
16. 🎯 STOP HUNT BEAR — Longs were liquidated above resistance. Price swept liquidity and reversed. Expect bearish move.
Range/Stalemate Scenarios (7-9)
7. ⚖️ DEADLOCK — Market in balance. Force ratio between 0.4-0.6. Low volume. No side winning.
8. 🔥 BATTLE — High volume fight in a range. Both sides attacking. Wicks on both ends of candle.
9. 🎯 WAITING — Building phase with quiet volume. Market is preparing but no trigger yet. Wait for breakout.
Pre-Breakout Scenarios (10-12)
10. 🚀 BULL SETUP — Buyers accumulating in a building phase. Positive delta building. Bullish pressure growing.
11. 💣 BEAR SETUP — Sellers distributing in a building phase. Negative delta building. Bearish pressure growing.
12. ⚡ BREAKOUT — Price at boundary with strong candle and volume supporting. Imminent breakout expected.
💰 TRADE ADVISOR ENGINE
The Trade Advisor aggregates all signals from the different engines into a single actionable output. It uses a weighted scoring system:
Scoring Weights:
• Scenario Signal: 30%
• Trend Alignment: 20%
• CVD Momentum: 15% + Divergence Bonus
• Pin Forces: 15%
• Liquidity Sweep: 12%
• Stop-Hunt Detection: 10%
• Effort vs Result: 10%
Possible Actions:
• ⏳ WAIT — Edge not strong enough (stay patient)
• 🟢 LONG ENTRY — Buyers have strong advantage + signals align
• 🔴 SHORT ENTRY — Sellers have strong advantage + signals align
• ⚠️ CLOSE LONG/SHORT — Position at risk (reversal/trend flip)
• 🛑 STOP LOSS — Price hit risk threshold
• 💰 TAKE PROFIT — Target threshold reached
📊 EXTENDED INFO PANEL (Detailed Explanations)
The Extended Info panel is hidden by default (toggle: Show Extended Info in settings). It provides detailed metrics that feed into the main engines:
CVD ANALYSIS
What is CVD?
Cumulative Volume Delta (CVD) is the running total of Buy Volume minus Sell Volume. It reveals the underlying buying/selling pressure that may not be visible in price alone.
CVD Value & Slope:
• ↗ Rising: CVD increasing = net buying pressure (bullish)
• ↘ Falling: CVD decreasing = net selling pressure (bearish)
• → Flat: No clear pressure direction
Accumulation vs Distribution:
• Accumulation %: Shows buying pressure strength (0-100). High accumulation with CVD rising = strong bullish bias.
• Distribution %: Shows selling pressure strength (0-100). High distribution with CVD falling = strong bearish bias.
Divergence Alerts:
• ⚠️ BULLISH DIVERGENCE: Price falling but CVD rising. Hidden buying = potential reversal UP.
• ⚠️ BEARISH DIVERGENCE: Price rising but CVD falling. Hidden selling = potential reversal DOWN.
WICK ANALYSIS
Wick Torque:
Torque measures the "rotational force" from wicks. It's calculated from wick length, volume, and body efficiency.
• Positive Torque (Bullish): Bottom wick power dominates. Buyers defended lower prices.
• Negative Torque (Bearish): Top wick power dominates. Sellers defended higher prices.
• ⚡ High Torque (>30): Strong signal, significant wick rejection occurred.
Stop-Hunt Detection:
The engine detects when price has likely swept stop-losses clustered at key levels:
• Stop Hunt Risk %: Likelihood score (0-100). Above 55% = confirmed hunt.
• "Shorts hunted": Price swept below support, liquidating shorts, expect bounce UP.
• "Longs hunted": Price swept above resistance, liquidating longs, expect drop DOWN.
LIQUIDITY SWEEPS
This section appears only when a liquidity sweep is detected. The engine monitors for price sweeping recent highs/lows and then reversing:
• 🎯 LIQUIDITY SWEPT ABOVE: Price broke recent highs but closed back below. Longs trapped, expect DOWN.
• 🎯 LIQUIDITY SWEPT BELOW: Price broke recent lows but closed back above. Shorts trapped, expect UP.
POWER BALANCE
The Power Balance meter shows the real-time strength comparison between buyers and sellers.
Force Ratio:
• 0% = Complete seller dominance
• 50% = Perfect balance
• 100% = Complete buyer dominance
Visual Bar:
• Left side (▓): Bear territory
• Right side (▓): Bull territory
• The bar is smoothed over recent history to reduce noise.
EFFORT vs RESULT
This section measures the efficiency of price movement relative to volume expended.
Energy:
How much volume was spent relative to the average. Energy > 1.0x means above-average volume activity.
Ground:
How much price movement occurred relative to average range. Ground > 1.0x means above-average price movement.
STALL Warning:
A STALL is detected when high energy is spent but low ground is taken (high effort, low result). This often indicates institutional battle, exhaustion, or imminent reversal.
MARKET PHASE
The Phase Engine classifies the current market regime:
RANGE : No clear trend. Price confined to middle of channel. Low ADX. Balanced forces. Trade breakouts with caution.
BUILDING : Compression/preparation phase. Channel tightening or boundary penetration without follow-through. Watch for breakout direction.
TRENDING : Active directional move. Clear slope, good efficiency, price on trending side of channel. Favor pullback entries.
Strength:
0-100% score combining slope, volume validity, and force/efficiency filters.
Bars: How many candles the current phase has persisted.
TRACK RECORD (Validation Panel)
Enable with Show Validation Panel in settings. This section tracks the historical accuracy of scenario predictions:
Accuracy: Percentage of validated predictions that were correct.
Best/Worst Scenario: Shows which scenarios have the highest and lowest accuracy on the current symbol.
Recent Signals: Last 5 predictions with their outcomes. ✓ = correct, ✗ = wrong, ⏳ = pending validation.
⚙️ SETTINGS GUIDE
📊 Volume Analysis
Volume Calculation: Choose Geometry (estimates from candle shape) or Intrabar (precise LTF data).
Intrabar Resolution: LTF for precise mode. Try 1S, 15S, or 1T. Must be lower than chart timeframe.
History Depth: Candles stored in memory (5-50). Higher = more context, slower.
Memory Lookback: Bars for moving averages and Z-scores (10-100).
🏷️ Market Phase
Range Zone Width: How much of channel center is considered "range" (0.1-0.8).
Trend Sensitivity: Minimum slope to detect trending. Lower = more sensitive.
Min Episode Length: Minimum bars before phase can change. Prevents flickering.
🎯 Scenarios
Min Confidence to Show: Only display scenarios above this confidence level (30-90).
Bars to Validate: How many bars to wait before checking if prediction was correct.
Success Move %: Minimum price movement to consider prediction successful.
💰 Trade Advisor
Min Confidence for Entry: Minimum confidence to suggest a trade entry (50-90).
Default Risk %: Stop loss distance as % of price (0.5-5.0).
Min Risk/Reward: Minimum acceptable R:R ratio (1.0-5.0).
🔔 ALERT CONDITIONS
The indicator provides the following alert conditions you can configure:
• 🟢 LONG Entry Signal
• 🔴 SHORT Entry Signal
• ⚠️ Close LONG Signal
• ⚠️ Close SHORT Signal
• 🛑 STOP LOSS Alert
• 💰 Take Profit Alert
• 🚨 High Urgency Signal
⚠️ IMPORTANT DISCLAIMER
EDUCATIONAL TOOL ONLY
This indicator is designed for educational purposes to help users identify different market scenarios and understand how various signals might be interpreted.
The Trade Advisor is NOT a recommendation to buy, sell, or invest.
• Past performance does not guarantee future results
• All trading involves risk of loss
• The creator is not a licensed financial advisor
• Always do your own research (DYOR)
• Consult a qualified financial advisor before making any investment decisions
By using this indicator, you acknowledge that you understand these risks and accept full responsibility for your trading decisions.
Gamma Hedging Pressure 🧠 HOW TO USE THIS (TRADING RULES):
🔴 NEGATIVE GAMMA (Red)
✔ Trade breakouts
✔ Hold winners
✔ Avoid fading moves
✔ Best for trend days
🟢 POSITIVE GAMMA (Green)
✔ Trade mean reversion
✔ Fade extremes
✔ Take profits quickly
✔ Best for scalping
⚪ NEUTRAL
❌ Reduce size
❌ Avoid forcing trades
CRE Multi Pair Scanner
✔ 1 lead asset (capital source)
✔ Multiple receiver assets
✔ CRE signal fires per asset
✔ Table + labels show rotation winner
Capital Rotational Event (CRE)What is a Capital Rotational Event (CRE)?
A Capital Rotational Event is when money shifts from one asset to another — e.g., rotation from stocks into bonds, from tech into commodities, or from one sector into another.
In technical terms it typically shows:
✔ Divergence between two asset price series
✔ Relative strength switching direction
✔ Volume/flow confirming rotation
✔ Often precedes trend acceleration in the “receiver” asset
All-in-One SMC: CHOCH | BOS | FVG | OB | LiquidityThis script combines:
BOS (Break of Structure)
CHOCH (Change of Character)
Bullish & Bearish FVGs
Mitigation Order Blocks
Liquidity grabs (equal highs/lows)
Discount / Premium zones (relative to equilibrium)
TJR asia session sweep//@version=5
strategy("TJR asia session sweep", "TJR Asia Sweep", overlay=true, max_lines_count=500, max_labels_count=500)
// Input settings
show_asian = input.bool(true, "Show Asian Session", group="Visual Settings")
show_london = input.bool(true, "Show London Session", group="Visual Settings")
show_swing_points = input.bool(true, "Show Asian Swing Points", group="Visual Settings")
show_market_structure = input.bool(true, "Show Market Structure", group="Visual Settings")
show_bos = input.bool(true, "Show Break of Structure", group="Visual Settings")
// Session Time Settings
asian_start_hour_input = input.int(22, "Asian Session Start Hour", minval=0, maxval=23, group="Session Times")
asian_end_hour_input = input.int(3, "Asian Session End Hour", minval=0, maxval=23, group="Session Times")
london_start_hour_input = input.int(3, "London Session Start Hour", minval=0, maxval=23, group="Session Times")
london_end_hour_input = input.int(8, "London Session End Hour", minval=0, maxval=23, group="Session Times")
session_timezone = input.string("America/New_York", "Session Timezone", options= , group="Session Times")
// Risk Management Settings
use_atr_sl = input.bool(false, "Use ATR Multiplier for Stop Loss", group="Risk Management")
atr_length = input.int(14, "ATR Length", minval=1, maxval=50, group="Risk Management")
atr_multiplier = input.float(2.0, "ATR Multiplier for Stop Loss", minval=0.5, maxval=10.0, group="Risk Management")
force_london_close = input.bool(true, "Force Close at London Session End", group="Risk Management")
cutoff_minutes = input.int(60, "Minutes Before Session End to Stop New Trades", minval=0, maxval=300, group="Risk Management")
// Position Sizing Settings
position_sizing_method = input.string("USD Risk", "Position Sizing Method", options= , group="Position Sizing")
usd_risk_per_trade = input.float(100.0, "USD Risk Per Trade", minval=1.0, maxval=10000.0, group="Position Sizing")
fixed_contracts = input.float(1.0, "Fixed Number of Contracts", minval=0.01, maxval=1000.0, step=0.01, group="Position Sizing")
// Color settings
asian_color = input.color(color.red, "Asian Session Color")
london_color = input.color(color.blue, "London Session Color")
swing_high_color = input.color(color.orange, "Swing High Color")
swing_low_color = input.color(color.lime, "Swing Low Color")
bullish_structure_color = input.color(color.green, "Bullish Structure Color")
bearish_structure_color = input.color(color.red, "Bearish Structure Color")
bos_color = input.color(color.orange, "Break of Structure Color")
// Line settings
line_width = input.int(2, "Line Width", minval=1, maxval=5)
// ATR calculation for stop loss
atr = ta.atr(atr_length)
// Position size calculation function
calculate_position_size(entry_price, stop_loss_price) =>
var float position_size = na
if position_sizing_method == "Fixed Contracts"
position_size := fixed_contracts
else // USD Risk method
stop_distance = math.abs(entry_price - stop_loss_price)
if stop_distance > 0
// Calculate position size based on USD risk per trade
// For forex: position_size = risk_amount / (stop_distance * point_value)
// For most forex pairs, point value = 1 (since we're dealing with price differences directly)
position_size := usd_risk_per_trade / stop_distance
else
position_size := fixed_contracts // Fallback to fixed contracts if stop distance is 0
position_size
// Session time definitions (using input variables)
asian_start_hour = asian_start_hour_input
asian_end_hour = asian_end_hour_input
london_start_hour = london_start_hour_input
london_end_hour = london_end_hour_input
// Get current hour using selected timezone
current_hour = hour(time, session_timezone)
// Previous hour for transition detection
prev_hour = hour(time , session_timezone)
// Session transition detection
asian_start = current_hour == asian_start_hour and prev_hour != asian_start_hour
asian_end = current_hour == asian_end_hour and prev_hour != asian_end_hour
london_start = current_hour == london_start_hour and prev_hour != london_start_hour
london_end = current_hour == london_end_hour and prev_hour != london_end_hour
// Session activity detection
asian_active = (current_hour >= asian_start_hour) or (current_hour < asian_end_hour)
london_active = (current_hour >= london_start_hour) and (current_hour < london_end_hour)
// Session boxes - keep previous sessions visible
var box asian_session_box = na
var box london_session_box = na
// Create Asian session box
if show_asian and asian_start
// Create new box at session start (previous box remains visible)
asian_session_box := box.new(bar_index, high, bar_index + 1, low,
border_color=asian_color, bgcolor=color.new(asian_color, 90),
border_width=2, border_style=line.style_solid)
// Pre-calculate session highs and lows for consistency
asian_session_length = asian_active and not na(asian_session_box) ? bar_index - box.get_left(asian_session_box) + 1 : 1
current_asian_high = ta.highest(high, asian_session_length)
current_asian_low = ta.lowest(low, asian_session_length)
// Update Asian session box continuously during session
if show_asian and asian_active and not na(asian_session_box)
box.set_right(asian_session_box, bar_index)
// Update box to contain session highs and lows
box.set_top(asian_session_box, current_asian_high)
box.set_bottom(asian_session_box, current_asian_low)
// Create London session box
if show_london and london_start
// Create new box at session start (previous box remains visible)
london_session_box := box.new(bar_index, high, bar_index + 1, low,
border_color=london_color, bgcolor=color.new(london_color, 90),
border_width=2, border_style=line.style_solid)
// Pre-calculate London session highs and lows for consistency
london_session_length = london_active and not na(london_session_box) ? bar_index - box.get_left(london_session_box) + 1 : 1
current_london_high = ta.highest(high, london_session_length)
current_london_low = ta.lowest(low, london_session_length)
// Update London session box continuously during session
if show_london and london_active and not na(london_session_box)
box.set_right(london_session_box, bar_index)
// Update box to contain session highs and lows
box.set_top(london_session_box, current_london_high)
box.set_bottom(london_session_box, current_london_low)
// Asian Session Swing Points Detection
var float asian_session_high = na
var float asian_session_low = na
var int asian_high_bar = na
var int asian_low_bar = na
// Asian Session Absolute High/Low for TP levels
var float asian_absolute_high = na
var float asian_absolute_low = na
var line asian_high_line = na
var line asian_low_line = na
var label asian_high_label = na
var label asian_low_label = na
var bool high_broken = false
var bool low_broken = false
// London Session High/Low tracking for stop loss
var float london_session_high = na
var float london_session_low = na
// Market structure tracking variables
var string breakout_direction = na // "bullish" or "bearish"
var float last_hh_level = na // Last Higher High level
var float last_hl_level = na // Last Higher Low level
var float last_ll_level = na // Last Lower Low level
var float last_lh_level = na // Last Lower High level
var int structure_count = 0
var string last_structure_type = na // "HH", "HL", "LL", "LH"
// Legacy variables for compatibility
var float last_swing_high = na
var float last_swing_low = na
var int last_high_bar = na
var int last_low_bar = na
// Market structure state tracking
var float pending_high = na
var float pending_low = na
var int pending_high_bar = na
var int pending_low_bar = na
var bool waiting_for_confirmation = false
// Break of Structure tracking variables
var float most_recent_hl = na
var float most_recent_lh = na
var int most_recent_hl_bar = na
var int most_recent_lh_bar = na
var bool bos_detected = false
// Trading variables
var bool trade_taken = false
// Trade visualization boxes (based on Casper strategy approach)
var box current_profit_box = na
var box current_sl_box = na
// Update swing points during Asian session
if asian_active and show_swing_points
// Always track absolute high/low for both TP levels and breakout detection
if na(asian_absolute_high) or high > asian_absolute_high
asian_absolute_high := high
if na(asian_absolute_low) or low < asian_absolute_low
asian_absolute_low := low
// Use absolute high/low for breakout levels (simplified logic)
if na(asian_session_high) or high > asian_session_high
asian_session_high := high
asian_high_bar := bar_index
if na(asian_session_low) or low < asian_session_low
asian_session_low := low
asian_low_bar := bar_index
// Track London session high/low for stop loss levels
if london_active
if na(london_session_high) or high > london_session_high
london_session_high := high
if na(london_session_low) or low < london_session_low
london_session_low := low
// Draw initial lines when Asian session ends
if asian_end and show_swing_points
if not na(asian_session_high) and not na(asian_high_bar)
// Draw extending line for high
asian_high_line := line.new(asian_high_bar, asian_session_high, bar_index + 200, asian_session_high,
color=swing_high_color, width=2, style=line.style_dashed, extend=extend.right)
asian_high_label := label.new(bar_index + 5, asian_session_high, "Asian High: " + str.tostring(asian_session_high, "#.####"), style=label.style_label_left, color=swing_high_color, textcolor=color.white, size=size.small)
if not na(asian_session_low) and not na(asian_low_bar)
// Draw extending line for low
asian_low_line := line.new(asian_low_bar, asian_session_low, bar_index + 200, asian_session_low,
color=swing_low_color, width=2, style=line.style_dashed, extend=extend.right)
asian_low_label := label.new(bar_index + 5, asian_session_low, "Asian Low: " + str.tostring(asian_session_low, "#.####"), style=label.style_label_left, color=swing_low_color, textcolor=color.white, size=size.small)
// Reset break flags for new session
high_broken := false
low_broken := false
// Check for breakouts during London session
if london_active and show_swing_points and not na(asian_session_high) and not na(asian_session_low)
// Check if Asian high is broken
if not high_broken and not low_broken and high > asian_session_high
high_broken := true
// Update high line to end at break point
if not na(asian_high_line)
line.set_x2(asian_high_line, bar_index)
line.set_extend(asian_high_line, extend.none)
// Remove the low line (first break wins)
if not na(asian_low_line)
line.delete(asian_low_line)
if not na(asian_low_label)
label.delete(asian_low_label)
// Add break marker
label.new(bar_index, asian_session_high * 1.001, "HIGH BREAK!",
style=label.style_label_down, color=color.red, textcolor=color.white, size=size.normal)
// Set breakout direction and initialize structure tracking
breakout_direction := "bullish"
last_swing_high := asian_session_high
last_swing_low := asian_session_low
last_high_bar := bar_index
structure_count := 0
// Check if Asian low is broken
if not low_broken and not high_broken and low < asian_session_low
low_broken := true
// Update low line to end at break point
if not na(asian_low_line)
line.set_x2(asian_low_line, bar_index)
line.set_extend(asian_low_line, extend.none)
// Remove the high line (first break wins)
if not na(asian_high_line)
line.delete(asian_high_line)
if not na(asian_high_label)
label.delete(asian_high_label)
// Add break marker
label.new(bar_index, asian_session_low * 0.999, "LOW BREAK!",
style=label.style_label_up, color=color.red, textcolor=color.white, size=size.normal)
// Set breakout direction and initialize structure tracking
breakout_direction := "bearish"
last_swing_high := asian_session_high
last_swing_low := asian_session_low
last_low_bar := bar_index
structure_count := 0
// Stop extending lines when London session ends (if not already broken)
if london_end and show_swing_points
if not high_broken and not na(asian_high_line)
line.set_x2(asian_high_line, bar_index)
line.set_extend(asian_high_line, extend.none)
if not low_broken and not na(asian_low_line)
line.set_x2(asian_low_line, bar_index)
line.set_extend(asian_low_line, extend.none)
// Force close all trades at London session end (if enabled)
if london_end and force_london_close
if strategy.position_size != 0
// Extend boxes immediately before session close to prevent timing issues
if not na(current_profit_box)
// Ensure minimum 8 bars width or extend to current bar, whichever is longer
box_left = box.get_left(current_profit_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_profit_box, final_right)
current_profit_box := na // Clear reference after extending
if not na(current_sl_box)
// Ensure minimum 8 bars width or extend to current bar, whichever is longer
box_left = box.get_left(current_sl_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_sl_box, final_right)
current_sl_box := na // Clear reference after extending
strategy.close_all(comment="London Close")
trade_taken := false // Reset trade flag for next session
// Market structure detection after breakout (only during London session and before first BoS)
if show_market_structure and not na(breakout_direction) and london_active and not bos_detected
// Bullish structure tracking (HH, HL alternating)
if breakout_direction == "bullish"
// Check for Higher High pattern: Bullish candle followed by bearish candle
pattern_high = math.max(high , high)
prev_hh = na(last_hh_level) ? last_swing_high : last_hh_level
// HH Detection: Only if we expect HH next (no last structure or last was HL)
if (na(last_structure_type) or last_structure_type == "HL") and close > open and close < open and pattern_high > prev_hh and close > prev_hh
// Check consolidation
is_too_close = not na(last_high_bar) and (bar_index - last_high_bar) <= 4
should_create_hh = true
if is_too_close and structure_count > 0 and pattern_high <= last_hh_level
should_create_hh := false
if should_create_hh
structure_count := structure_count + 1
label.new(bar_index - 1, high + (high * 0.0003), "HH" + str.tostring(structure_count),
style=label.style_none, color=color.new(color.white, 100),
textcolor=color.white, size=size.small)
last_hh_level := pattern_high
last_swing_high := pattern_high
last_high_bar := bar_index
last_structure_type := "HH"
// HL Detection: Only if we expect HL next (last was HH)
pattern_low = math.min(low , low)
prev_hl = na(last_hl_level) ? last_swing_low : last_hl_level
if last_structure_type == "HH" and close < open and close > open and pattern_low > prev_hl and close > prev_hl
// Check consolidation
is_too_close = not na(last_low_bar) and (bar_index - last_low_bar) <= 4
should_create_hl = true
if is_too_close and pattern_low <= last_hl_level
should_create_hl := false
if should_create_hl
structure_count := structure_count + 1
label.new(bar_index - 1, low - (low * 0.0003), "HL" + str.tostring(structure_count),
style=label.style_none, color=color.new(color.white, 100),
textcolor=color.white, size=size.small)
last_hl_level := pattern_low
most_recent_hl := pattern_low // Update most recent HL for BoS detection
most_recent_hl_bar := bar_index - 1 // Store HL bar position
last_low_bar := bar_index
last_structure_type := "HL"
// Bearish structure tracking (LL, LH alternating)
if breakout_direction == "bearish"
// Check for Lower Low pattern: Bearish candle followed by bullish candle
pattern_low = math.min(low , low)
prev_ll = na(last_ll_level) ? last_swing_low : last_ll_level
// LL Detection: Only if we expect LL next (no last structure or last was LH)
if (na(last_structure_type) or last_structure_type == "LH") and close < open and close > open and pattern_low < prev_ll and close < prev_ll
// Check consolidation
is_too_close = not na(last_low_bar) and (bar_index - last_low_bar) <= 4
should_create_ll = true
if is_too_close and structure_count > 0 and pattern_low >= last_ll_level
should_create_ll := false
if should_create_ll
structure_count := structure_count + 1
label.new(bar_index - 1, low - (low * 0.0003), "LL" + str.tostring(structure_count),
style=label.style_none, color=color.new(color.white, 100),
textcolor=color.white, size=size.small)
last_ll_level := pattern_low
last_swing_low := pattern_low
last_low_bar := bar_index
last_structure_type := "LL"
// LH Detection: Only if we expect LH next (last was LL)
pattern_high = math.max(high , high)
prev_lh = na(last_lh_level) ? last_swing_high : last_lh_level
if last_structure_type == "LL" and close > open and close < open and pattern_high < prev_lh and close < prev_lh
// Check consolidation
is_too_close = not na(last_high_bar) and (bar_index - last_high_bar) <= 4
should_create_lh = true
if is_too_close and pattern_high >= last_lh_level
should_create_lh := false
if should_create_lh
structure_count := structure_count + 1
label.new(bar_index - 1, high + (high * 0.0003), "LH" + str.tostring(structure_count),
style=label.style_none, color=color.new(color.white, 100),
textcolor=color.white, size=size.small)
last_lh_level := pattern_high
most_recent_lh := pattern_high // Update most recent LH for BoS detection
most_recent_lh_bar := bar_index - 1 // Store LH bar position
last_high_bar := bar_index
last_structure_type := "LH"
// Check if we're within the cutoff period before London session end
current_minute = minute(time, session_timezone)
london_end_time_minutes = london_end_hour * 60 // Convert London end hour to minutes
current_time_minutes = current_hour * 60 + current_minute // Current time in minutes
// Calculate minutes remaining in London session
london_session_minutes_remaining = london_end_time_minutes - current_time_minutes
// Handle day rollover case (e.g., if london_end is 8:00 (480 min) and current is 23:30 (1410 min))
if london_session_minutes_remaining < 0
london_session_minutes_remaining := london_session_minutes_remaining + (24 * 60) // Add 24 hours in minutes
// Only allow trades if more than cutoff_minutes remaining in London session
allow_new_trades = london_session_minutes_remaining > cutoff_minutes
// Break of Structure (BoS) Detection and Trading Logic - Only first BoS per London session and outside cutoff period
if show_bos and london_active and show_market_structure and not bos_detected and not trade_taken and allow_new_trades
// Bullish BoS: Price closes below the most recent HL (after bullish breakout) - SELL SIGNAL
if breakout_direction == "bullish" and not na(most_recent_hl) and not na(most_recent_hl_bar)
// Check minimum distance requirement (at least 4 candles between BoS and HL)
if close < most_recent_hl and (bar_index - most_recent_hl_bar) >= 4
// Draw dotted line from HL position to BoS point
line.new(most_recent_hl_bar, most_recent_hl, bar_index, most_recent_hl,
color=bos_color, width=2, style=line.style_dotted, extend=extend.none)
// Calculate center position for BoS label
center_bar = math.round((most_recent_hl_bar + bar_index) / 2)
// Draw BoS label below the line for HL break
label.new(center_bar, most_recent_hl - (most_recent_hl * 0.0005), "BoS",
style=label.style_none, color=color.new(color.white, 100),
textcolor=bos_color, size=size.normal)
// SELL ENTRY
if not na(london_session_high) and not na(asian_absolute_low)
// Calculate stop loss based on settings
stop_loss_level = use_atr_sl ? close + (atr * atr_multiplier) : london_session_high
take_profit_level = asian_absolute_low
entry_price = close
// Calculate position size based on user settings
position_size = calculate_position_size(entry_price, stop_loss_level)
strategy.entry("SELL", strategy.short, qty=position_size, comment="BoS Sell")
strategy.exit("SELL EXIT", "SELL", stop=stop_loss_level, limit=take_profit_level, comment="SL/TP")
// Create trade visualization boxes (TradingView style) - minimum 8 bars width
// Blue profit zone box (from entry to take profit)
current_profit_box := box.new(left=bar_index, top=take_profit_level, right=bar_index + 8, bottom=entry_price,
bgcolor=color.new(color.blue, 70), border_width=0)
// Red stop loss zone box (from entry to stop loss)
current_sl_box := box.new(left=bar_index, top=entry_price, right=bar_index + 8, bottom=stop_loss_level,
bgcolor=color.new(color.red, 70), border_width=0)
trade_taken := true
bos_detected := true // Mark BoS as detected for this session
// Bearish BoS: Price closes above the most recent LH (after bearish breakout) - BUY SIGNAL
if breakout_direction == "bearish" and not na(most_recent_lh) and not na(most_recent_lh_bar)
// Check minimum distance requirement (at least 4 candles between BoS and LH)
if close > most_recent_lh and (bar_index - most_recent_lh_bar) >= 4
// Draw dotted line from LH position to BoS point
line.new(most_recent_lh_bar, most_recent_lh, bar_index, most_recent_lh,
color=bos_color, width=1, style=line.style_dotted, extend=extend.none)
// Calculate center position for BoS label
center_bar = math.round((most_recent_lh_bar + bar_index) / 2)
// Draw BoS label above the line for LH break
label.new(center_bar, most_recent_lh + (most_recent_lh * 0.0005), "BoS",
style=label.style_none, color=color.new(color.white, 100),
textcolor=bos_color, size=size.normal)
// BUY ENTRY
if not na(london_session_low) and not na(asian_absolute_high)
// Calculate stop loss based on settings
stop_loss_level = use_atr_sl ? close - (atr * atr_multiplier) : london_session_low
take_profit_level = asian_absolute_high
entry_price = close
// Calculate position size based on user settings
position_size = calculate_position_size(entry_price, stop_loss_level)
strategy.entry("BUY", strategy.long, qty=position_size, comment="BoS Buy")
strategy.exit("BUY EXIT", "BUY", stop=stop_loss_level, limit=take_profit_level, comment="SL/TP")
// Create trade visualization boxes (TradingView style) - minimum 8 bars width
// Blue profit zone box (from entry to take profit)
current_profit_box := box.new(left=bar_index, top=entry_price, right=bar_index + 8, bottom=take_profit_level,
bgcolor=color.new(color.blue, 70), border_width=0)
// Red stop loss zone box (from entry to stop loss)
current_sl_box := box.new(left=bar_index, top=stop_loss_level, right=bar_index + 8, bottom=entry_price,
bgcolor=color.new(color.red, 70), border_width=0)
trade_taken := true
bos_detected := true // Mark BoS as detected for this session
// Position close detection for extending boxes (based on Casper strategy)
if barstate.isconfirmed and strategy.position_size == 0 and strategy.position_size != 0
// Extend trade visualization boxes to exact exit point when position closes
if not na(current_profit_box)
// Ensure minimum 8 bars width or extend to current bar, whichever is longer
box_left = box.get_left(current_profit_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_profit_box, final_right)
current_profit_box := na // Clear reference after extending
if not na(current_sl_box)
// Ensure minimum 8 bars width or extend to current bar, whichever is longer
box_left = box.get_left(current_sl_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_sl_box, final_right)
current_sl_box := na // Clear reference after extending
// Backup safety check - extend boxes if position is closed but boxes still active
if not na(current_profit_box) and strategy.position_size == 0
box_left = box.get_left(current_profit_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_profit_box, final_right)
current_profit_box := na
if not na(current_sl_box) and strategy.position_size == 0
box_left = box.get_left(current_sl_box)
min_right = box_left + 8
final_right = math.max(min_right, bar_index)
box.set_right(current_sl_box, final_right)
current_sl_box := na
// Reset everything when new Asian session starts
if asian_start and show_swing_points
asian_session_high := na
asian_session_low := na
asian_high_bar := na
asian_low_bar := na
// Reset absolute levels
asian_absolute_high := na
asian_absolute_low := na
asian_high_line := na
asian_low_line := na
asian_high_label := na
asian_low_label := na
high_broken := false
low_broken := false
// Reset London session levels
london_session_high := na
london_session_low := na
// Reset market structure tracking
breakout_direction := na
last_hh_level := na
last_hl_level := na
last_ll_level := na
last_lh_level := na
last_swing_high := na
last_swing_low := na
last_high_bar := na
last_low_bar := na
structure_count := 0
last_structure_type := na
pending_high := na
pending_low := na
pending_high_bar := na
pending_low_bar := na
waiting_for_confirmation := false
// Reset BoS tracking
most_recent_hl := na
most_recent_lh := na
most_recent_hl_bar := na
most_recent_lh_bar := na
bos_detected := false
// Reset trading
trade_taken := false
// Reset current trade boxes
current_profit_box := na
current_sl_box := na
// Debug info (optional)
show_debug = input.bool(false, "Show Debug Info")
if show_debug
var table debug_table = table.new(position.top_right, 2, 3, bgcolor=color.white, border_width=1)
if barstate.islast
table.cell(debug_table, 0, 0, "Current Hour:", text_color=color.black)
table.cell(debug_table, 1, 0, str.tostring(current_hour), text_color=color.black)
table.cell(debug_table, 0, 1, "Asian Active:", text_color=color.black)
table.cell(debug_table, 1, 1, str.tostring((current_hour >= asian_start_hour) or (current_hour < asian_end_hour)), text_color=color.black)
table.cell(debug_table, 0, 2, "London Active:", text_color=color.black)
table.cell(debug_table, 1, 2, str.tostring((current_hour >= london_start_hour) and (current_hour < london_end_hour)), text_color=color.black)
SMA Reversal Sequential MTF - Pure Confirmed Final V2SMA Reversal Sequential MTF - Detailed Indicator Manual
This indicator identifies trend reversal points based on the shape of a Simple Moving Average (SMA) and monitors these signals across multiple timeframes (MTF). By synchronizing trends from various intervals, it provides a robust framework for identifying high-probability entry points.
1. Core Logic Overview
The indicator detects "peaks" and "troughs" in the SMA to identify potential reversal points.
Bullish Reversal (UP): Occurs when the SMA turns upward after a period of decline (forming a "trough").
Bearish Reversal (DN): Occurs when the SMA turns downward after a period of inclination (forming a "peak").
In addition to detecting these turns, the indicator tracks the high/low prices of the most recent reversal points on a "Confirmed Bar" basis. When the current price breaks these levels, it confirms a trend continuation or a breakout.
2. Full Description of Input Settings
Basic Settings / Main Settings
Use Short Period (5, 4, 7) / 短期設定を使用:
true: Increases sensitivity to price movements by using shorter parameters (e.g., SMA 5). Suitable for scalping.
false: Uses standard parameters (e.g., SMA 20). Suitable for day trading and swing trading.
Timeframe Visibility / 時間足表示設定
Allows individual toggling of visibility for each timeframe's labels and lines.
Show 1M to 1m / 1M〜1m表示: Individually enable or disable the calculation and display of data for Monthly (1M), Weekly (1W), Daily (Daily), 4H, 1H, 15M, 5M, and 1m timeframes.
Hide Higher TF Settings on Lower TFs / 下位足での上位設定を非表示: When enabled, this removes lower timeframe data from higher timeframe charts to reduce visual noise.
Drawing Options / 表示オプション
Show Only Current TF Labels / 現在足のラベルのみ表示: If enabled, only labels corresponding to the chart's current interval (e.g., "5" labels on a 5M chart) will be displayed.
Show Trendlines & Channels / トレンドライン&チャネルを表示: Automatically draws trendlines and parallel channels by connecting recent local reversal points on the current timeframe.
Show Sequential Labels / 転換点ラベル表示: Displays timeframe labels (e.g., "15", "1H") at the exact point where the SMA reversed.
Show Break Lines / ブレイクライン表示: Draws horizontal lines from the most recent peaks or troughs and displays a "BREAK" label when price crosses them.
Break Label Offset / ブレイク文字の右オフセット: Adjusts the horizontal distance of the "BREAK" label from the current bar for better visibility.
Additional Alert Settings / 追加アラート設定
Alert 1: Current + 2 Higher TFs Sync (Blue/Red) / アラート1: 現在・上位2つ同調:
Triggers a notification when the trend (UP/DN) of the current chart's timeframe, the next higher timeframe, and the second higher timeframe all align.
Alert 2: 4-TF Sync Including Current (Orange) / アラート2: 表示足を含む4足同調:
Triggers a notification when four consecutive timeframes (Current + 3 Higher) align in the same direction. This is considered a high-conviction signal.
3. How to Read the Dashboard (Table)
The compact table in the top-right corner displays the current trend status for key timeframes in real-time.
Blue Background (UP): Indicates price has broken the recent peak, confirming an uptrend for that timeframe.
Red Background (DN): Indicates price has broken the recent trough, confirming a downtrend for that timeframe.
Gray Background: Indicates the trend status is yet to be determined or is in a neutral state.
The table items are fixed to show 1D, 4H, 1H, 15M, and 5M from top to bottom. When all rows turn the same color, it indicates a strong market trend across the entire spectrum.
4. Key Feature: MTF Sync Alerts
The primary advantage of this indicator is its automation of manual Multi-Timeframe Analysis.
3-TF Sync: On a 15M chart, if the 15M, 1H, and 4H trends align, a small Blue (Buy) or Red (Sell) label appears on the chart.
4-TF Sync: If the alignment extends to a 4th timeframe (e.g., up to the Daily timeframe on a 15M chart), an Orange label is displayed, signaling a very strong trend confluence.
このインジケーター(SMA Reversal Sequential MTF)は、移動平均線(SMA)の形状からトレンドの転換点を特定し、それを複数の時間足(MTF)で監視・同期させることで、高精度なエントリーポイントを探るためのツールです。
以下に、すべてのインプット項目を含む詳細な説明をまとめました。
1. 概要と基本ロジック
このインジケーターは、SMA(単純移動平均線)が「山」や「谷」を作ったポイントを転換点として認識します。
上昇転換: SMAが一定期間、下降した後に上昇へ転じた(谷を作った)タイミング。
下降転換: SMAが一定期間、上昇した後に下降へ転じた(山を作った)タイミング。
これに加えて、直近の転換点の価格(高値・安値)を「確定足」で更新し、そのラインを価格がブレイクした際にトレンドの継続や転換を判定します。
2. インプット項目の詳細
基本設定 / Main Settings
短期設定を使用 (5, 4, 7):
true(チェックあり): 短期的な動きに敏感になります(SMA 5期間など)。スキャルピング向け。
false(チェックなし): 標準的な設定(SMA 20期間など)。デイトレード・スイング向け。
時間足表示設定 / Timeframe Visibility
各時間足のラベルやラインを表示するかどうかを個別に設定します。
1M〜1m表示: 月足(1M)から1分足(1m)まで、各MTFデータの計算・表示をオン/オフします。
下位足での上位設定を非表示: * 現在表示しているチャートより上位の時間足設定だけを表示し、ノイズを減らすためのスイッチです。
表示オプション / Drawing Options
現在足のラベルのみ表示: チェックすると、チャートの時間足と一致するラベル(例:5分足チャートなら「5」のラベル)のみ表示されます。
トレンドライン&チャネルを表示: 現在表示している足の直近の転換点同士を結び、トレンドラインと並行チャネルを自動描画します。
転換点ラベル表示: SMAが反転した位置に「15」や「1H」などの時間足ラベルを表示します。
ブレイクライン表示: 直近の転換点(高値・安値)から右側に水平線を引き、そこを価格が抜けた際に「BREAK」の文字を表示します。
ブレイク文字の右オフセット: 「BREAK」ラベルを右側にどれくらい離して表示するかを調整します。
追加アラート設定 / GRP_NEW_AL
アラート1: 現在・上位2つ同調 (青/赤):
「表示中の足 + 1つ上 + 2つ上」の計3つのトレンド(UP/DN)が一致した瞬間に通知します。
アラート2: 表示足を含む4足同調 (オレンジ):
「表示中の足 + 上位3つ」の計4つのトレンドがすべて一致した強力なサイン時に通知します。
3. テーブル(ダッシュボード)の見方
画面右上に表示されるコンパクトなテーブルは、各時間足の現在のトレンド状態をリアルタイムで示しています。
青背景(UP): 直近で高値をブレイクし、上昇トレンドにある状態。
赤背景(DN): 直近で安値をブレイクし、下降トレンドにある状態。
灰背景: 状態が未確定なケース。
表示項目は上位足から順に 1D(日足), 4H, 1H, 15M, 5M となっており、これらが一色に染まるタイミングが環境認識上の強いトレンドを示唆します。
4. 特徴的な機能:MTF同調アラート
このインジケーターの最大の強みは、手動でのマルチタイムフレーム分析を自動化している点です。
3足同調(SYNC): 15分足チャートであれば「15M・1H・4H」が同じ方向を向いた時にチャート上に青(買い)または赤(売り)の小さなラベルが表示されます。
4足同調(4-TF SYNC): さらに上位の足(15分足なら日足まで)が同調すると、オレンジ色のラベルが表示され、より強い根拠となります。
Gold Buy/Sell with BoxesKey Features of This Update
Box-Style Labels: Instead of small icons, this uses label.new to create larger, text-based boxes that provide immediate confirmation ("GOLD BUY CONFIRMED").
Dynamic Positioning: Labels are automatically placed at the high or low of the signal bar to avoid cluttering the price candles.
Multi-Indicator Filter: Signals only trigger when both a Moving Average crossover occurs and momentum (RSI) is in the correct zone, reducing "noise" or false signals in sideways markets.
Alert Ready: You can set mobile or desktop notifications in TradingView by selecting these specific Buy/Sell conditions in the "Create Alert" menu.
RSI + Smoothed HA Strategy 🚀 RSI + SMOOTHED HEIKEN ASHI STRATEGY (TRAILING TP, 1% SL) 📊
🎯 STRATEGY OVERVIEW
This professional trading strategy combines MOMENTUM ANALYSIS with TREND CONFIRMATION using two powerful technical indicators. The system executes LONG-ONLY POSITIONS when bullish conditions align, featuring AUTOMATED RISK MANAGEMENT with a fixed stop loss and dynamic trailing exit.
⚙️ CORE COMPONENTS
📈 INDICATOR 1: RELATIVE STRENGTH INDEX (RSI)
CALCULATION: Standard 14-period RSI (configurable)
ENTRY THRESHOLD: 55 LEVEL (adjustable parameter)
PURPOSE: Identifies MOMENTUM STRENGTH and OVERBOUGHT CONDITIONS
VISUAL: Blue RSI line with gray threshold level plotted separately
🕯️ INDICATOR 2: DOUBLE-SMOOTHED HEIKEN ASHI
UNIQUE FEATURE: DOUBLE EMA SMOOTHING applied to Heiken Ashi candles
SMOOTHING LAYERS:
FIRST LAYER: EMA applied to raw OHLC data (default: 10 periods)
SECOND LAYER: EMA applied to Heiken Ashi values (default: 10 periods)
COLOR SCHEME:
🟢 LIME GREEN: Bullish candle (close > open)
🔴 RED: Bearish candle (close < open)
BENEFIT: REDUCES MARKET NOISE while maintaining trend clarity
🎮 ENTRY CONDITIONS
📈 LONG POSITIONS ACTIVATE WHEN ALL THREE CONDITIONS CONVERGE:
RSI MOMENTUM: RSI ≥ 55 (configurable level)
TREND CONFIRMATION: Current smoothed Heiken Ashi candle is GREEN
TREND REVERSAL SIGNAL: Previous smoothed Heiken Ashi candle was RED
✅ ENTRY LOGIC: This triple-filter approach ensures trades are taken only during CONFIRMED BULLISH SHIFTS with underlying momentum strength.
🛡️ RISK MANAGEMENT SYSTEM
⛔ STOP LOSS PROTECTION
FIXED 1% RISK PER TRADE
AUTOMATIC CALCULATION: Stop placed at 99% of entry price
IMMEDIATE ACTIVATION: Engages upon position entry
BENEFIT: CAPS MAXIMUM LOSS regardless of market volatility
💰 TRAILING TAKE-PROFIT MECHANISM
DYNAMIC EXIT STRATEGY: Tracks trend continuation
EXIT CONDITION: Closes position when smoothed Heiken Ashi turns RED
ADVANTAGE: LOCKS IN PROFITS during trend reversals
LOGIC: Allows winners to run while protecting gains
💼 POSITION SIZING
CAPITAL ALLOCATION: 10% of equity per trade (fully customizable)
INITIAL CAPITAL: $10,000 (user-adjustable)
FLEXIBILITY: Compatible with various account sizes
✨ KEY ADVANTAGES
🎯 PRECISE TIMING
Combines MOMENTUM FILTER (RSI) with TREND FILTER (Heiken Ashi)
Reduces false signals through CONFIRMATION SEQUENCE
🛡️ DISCIPLINED RISK CONTROL
PREDEFINED 1% STOP LOSS eliminates emotional decisions
SYSTEMATIC EXITS remove subjective profit-taking
👁️ VISUAL CLARITY
CLEAN CHART PLOTTING with color-coded candles
SEPARATE RSI DISPLAY for momentum monitoring
REAL-TIME SIGNALS directly on price chart
⚡ OPTIMIZATION TIPS
ADJUST RSI LEVEL based on asset volatility (55-70 range)
MODIFY SMOOTHING PERIODS for different timeframes
TEST POSITION SIZE according to risk tolerance
COMBINE WITH VOLUME CONFIRMATION for enhanced accuracy
📊 RECOMMENDED MARKETS
TRENDING FOREX PAIRS (EUR/USD, GBP/USD)
LIQUID INDICES (S&P 500, NASDAQ)
HIGH-CAP CRYPTO (BTC/USD, ETH/USD)
TIME FRAMES: 1-hour to daily charts
⚠️ RISK DISCLAIMER
This strategy is a TOOL FOR ANALYSIS, not financial advice. Always:
BACKTEST extensively before live trading
START WITH SMALL CAPITAL
USE PROPER RISK MANAGEMENT
CONSULT FINANCIAL PROFESSIONALS






















