HVP Diario CC/CSPThis HVP Daily CC/CSP indicator is designed for traders seeking consistent income through options selling, transforming daily volatility into a clear, objective, and actionable guide: it shows you exactly when NOT to sell options due to weak premiums, when to take advantage of moderate volatility to safely sell PUTs, and when volatility is high enough to sell CALLs with superior returns. Everything is based on a percentile calculation that compares current volatility with its historical behavior, smoothed to eliminate noise and enhanced with an EMA that reveals the true market trend. If you want to trade with discipline, avoid bad weeks, and maximize your weekly income through simple, visual, and precise signals, this indicator is for you.
指標和策略
Prev M/W/D(LAPP)Marca DH , DL , D5% , MH, ML, M5%, WH, WL, W5%
Se actualiza automaticamente todos los dias.
Price Acceptance MapPrice Acceptance Map
Price Acceptance Map is a read-only market context indicator that evaluates whether newly asserted price levels are being accepted, rejected, or remain undefined by subsequent market behavior.
Rather than treating trend continuation as confirmation, this indicator frames directional price movement as an attempt to establish a new auction level. That attempt must then be validated or rejected after the fact.
The indicator follows three conceptual steps:
Environment Qualification
Evaluation is permitted only when market structure and volatility conditions are suitable. When these conditions are not met, the indicator intentionally remains silent.
Level Assertion Detection
Meaningful price expansion beyond recent balance is interpreted as a level claim. Gradual movement may result in no level being defined.
Acceptance Verdict
Subsequent price behavior determines whether the level is:
Accepted (held by the market),
Rejected (failed and returned into prior balance), or
Undefined (no valid level requiring a verdict).
The current state is displayed using a simple, non-interpretive panel:
ACCEPTED / LEVEL ACCEPTED
NOT ACCEPTED / LEVEL REJECTED
UNRESOLVED / LEVEL UNDEFINED
Important Notes
Indicator only (no signals, no orders)
Evaluated on confirmed bar close
No intentional repaint or lookahead logic
Designed for contextual analysis, not prediction
Price Acceptance Map is intended to clarify when the market is making a decision — and when it is not.
Dual HTF EMAMulti-timeframe Exponential Moving Average (EMA) indicator plots two separate higher timeframe (HTF) EMAs of your choice. Displays four EMAs per HTF while providing optional background coloring (bullish/bearish). The background coloring occurs when two EMA's cross per HTF. User can select two of the four EMAs to determine the trend direction as they cross creating the background color.
User can configure timeframe, EMA lengths, EMA cross and background, source, and visibility; separately for each timeframe.
Default lengths are 9, 21, 50, 200 with source as closed and EMA cross background from EMA 1 and EMA 3. Also clear visual distinction using thick solid lines for HTF 1 and thin dashed lines for HTF 2.
Uses request.security() with gaps=barmerge.gaps_on to avoid staircase effects on lower timeframes.
This script is ideal for multi-timeframe analysis, helping traders align shorter-term price movements with broader trends from higher timeframes without cluttering the chart.
OB BB Script Akashagain puslish this. again puslish this. again puslish this. again puslish this. again puslish this. again puslish this.
STRs & TRNDs Combinedwe need to publish this second indicator , let see how can we publish this.
We are here to publish this script.
OB BB Script AkashDescription is giving here to describe it better. here is the the description of the indicator .
we will define this indicator for this .
Weekly Bias - High/Low/Close (Clean No Connections)Gives you the weekly bias candle on your 4 hour closing NY trading hours
Supertrend + RSI + EMA + MACD - Fixed Single SignalMomentum trading with signals to add alerts and connect to API for Algo trading
OB BB Script1 Akashwhat description you want from me, I don't want to give you any description. You fucking remove you unwanted validation from this unnessary text box.
Keltner-Aroon-EFI FlowKeltner-Aroon-EFI Flow (KAE)
KAE Flow is a quantitative composite indicator designed to identify dominant market trends by fusing three distinct dimensions of price action: Volatility, Trend Age, and Volume Pressure.
Unlike standard indicators that rely on a single data point (like a moving average crossover), KAE Flow aggregates three independent logic engines into a single normalized "Flow" score. This score is then smoothed using an Arnaud Legoux Moving Average (ALMA) to filter out noise while retaining responsiveness to genuine trend reversals.
This script operates strictly on the current chart timeframe, ensuring all signals are causal, non-repainting, and reliable for real-time analysis.
1. The Quantitative Engine (How it Works)
The indicator polls three separate components. Each component votes "1" (Bullish), "-1" (Bearish), or "0" (Neutral). These votes are averaged to create the raw signal.
K — Keltner Channels (Volatility Dimension)
Concept: Measures volatility expansion.
Logic: The script calculates Keltner Channels using an EMA center line and ATR bands.
Bullish (+1): Price closes above the Upper Channel.
Bearish (-1): Price closes below the Lower Channel.
This component ensures we only trade when price is breaking out of its expected volatility range.
A — Aroon (Trend Age Dimension)
Concept: Measures the strength and "freshness" of a trend.
Logic: We utilize the Aroon Up and Aroon Down metrics.
Bullish (+1): Aroon Up is greater than Aroon Down AND Aroon Up is > 70.
Bearish (-1): Aroon Down is greater than Aroon Up AND Aroon Down > 70.
This filters out weak or aging trends, ensuring the move has mathematical momentum.
E — Elder’s Force Index (Volume Dimension)
Concept: Measures volume-weighted price change.
Logic: We calculate the raw Force Index (Close - Close ) * Volume and smooth it with an EMA.
Bullish (+1): Smoothed EFI > 0.
Bearish (-1): Smoothed EFI < 0.
This component confirms that price movement is supported by actual volume flow (accumulation/distribution).
2. Signal Processing (ALMA Smoothing)
Raw aggregation can be noisy. The composite score is passed through an ALMA (Arnaud Legoux Moving Average) filter.
Why ALMA? It uses a Gaussian distribution to provide smoothness without the significant lag associated with SMA or EMA. This creates the "Flow" line that resists false flips during choppy consolidation.
3. How to Use
The indicator plots a signal line and dynamically colors the price bars and background to reflect the dominant bias.
Deep Blue (Bullish Flow): The KAE Score is > 0.1. All three engines (or the majority) are aligned bullishly. Traders typically look for long entries or hold existing long positions.
White (Bearish Flow): The KAE Score is < -0.1. The majority of engines detect bearish volatility and volume. Traders typically look for short entries.
Gray (Neutral): The score is between -0.1 and 0.1. The market is in equilibrium or transition. Trend-following strategies should be paused.
4. Configuration
Logic Engine: You can toggle individual components (K, A, or E) on or off to isolate specific market dimensions.
Smoothing: Adjust the ALMA Window and Offset to fine-tune the sensitivity of the signal line.
Lengths: Fully customizable periods for Keltner, Aroon, and EFI to adapt to different asset classes (e.g., Crypto vs. Forex).
Psico LevelsPsychological Levels - 000 / 250 / 500 / 750
This indicator automatically draws psychological price levels (.000, .250, .500, .750) directly on your chart.
Psychological levels are "round" prices that tend to attract traders' attention and often act as natural support/resistance zones. These levels are particularly relevant in forex, crypto, and indices.
FEATURES:
- Horizontal lines at .000, .250, .500, .750 levels
- Enable/disable each level individually
- Customizable colors for each level type
- Adjustable base step (default 1.0)
- Lines automatically extend to the right
SETTINGS:
- Base Step: sets the interval between main levels (1.0 = 1.000)
- Show .000/.250/.500/.750: toggle individual levels on/off
- Customizable colors for each level
HOW TO USE:
Ideal for identifying significant price zones where market reactions are likely to occur. The .000 and .500 levels are generally the most relevant, while .250 and .750 provide intermediate levels.
Perfect for scalping, day trading, and swing trading on any timeframe.
LOT SIZE CALCULATOR stef_NQindicador para cfds NQ, varias cuentas al mismo tiempo se puede calcular el lotaje
Future Swing [BigBeluga]🔵 OVERVIEW
Future Swing is a swing-based projection tool that estimates the potential size and price target of the next swing move using historical swing behavior.
Instead of predicting direction randomly, it analyzes completed swing legs, measures their percentage moves, and projects a statistically derived swing target into the future.
The indicator combines swing structure, high/low zones, volume context, and a real-time dashboard to help traders anticipate where price may travel next.
🔵 CONCEPTS
Swing Detection — Swing highs and lows are identified using a configurable lookback length.
Swing Percentage Tracking — Each completed swing leg is converted into a percentage move and stored.
Statistical Projection — Future swing size is estimated using Average, Median, or Mode of past swing percentages.
Directional Awareness — Projections adapt automatically based on current swing direction.
🔵 FEATURES
Historical Swing Sampling —
• Uses a user-defined number of completed swings.
• More samples = smoother projection, fewer samples = faster adaptation.
Future Swing Projection —
• Dashed line projects the estimated swing target forward in time.
• Projection distance is visual-only and does not affect calculations.
High/Low Swing Zones —
• Upper and lower swing zones expand using ATR distance.
• Zones visualize potential reaction and rejection areas.
Volume Context per Swing —
• Buy and sell volume are accumulated during each swing leg.
• Delta and total volume are displayed in the dashboard.
Smart Dashboard —
• Displays each stored swing percentage.
• Shows calculated swing projection value.
Flexible Projection Method —
• Average: smooth and balanced.
• Median: filters out extreme outliers.
• Mode: focuses on the most common swing size.
Extendable Zones —
• Swing zones can optionally extend forward indefinitely.
🔵 HOW TO USE
Anticipate Swing Targets — Use the projected swing line as a probabilistic price objective.
Combine with Structure — Align projections with support, resistance, or liquidity zones.
Filter by Volume — Confirm swing quality using delta and total volume metrics.
Adjust Sensitivity — Tune swing length and historical sample size to match timeframe and volatility.
Context, Not Certainty — Use projections as guidance, not fixed take-profit levels.
🔵 CONCLUSION
Future Swing transforms past swing behavior into a forward-looking projection model.
By combining swing structure, statistical aggregation, ATR zones, and volume analysis, it offers traders a structured way to estimate where the next meaningful price move may reach — without relying on fixed targets or subjective assumptions.
GAPfor myself
I say to you today, my friends, so even though we face the difficulties of today and tomorrow, I still have a dream. It is a dream deeply rooted in the American dream.
Multi-Timeframe EMA Bundle (576/676/144/169/12)A comprehensive EMA (Exponential Moving Average) indicator combining five key moving averages used by professional traders for trend identification and dynamic support/resistance levels.
Included EMAs:
EMA 576 & EMA 676 (Blue) — Long-term trend filters commonly used on lower timeframes to represent higher timeframe structure. Acts as major support/resistance zones.
EMA 144 & EMA 169 (White) — Mid-term trend indicators derived from Fibonacci numbers. When price respects this zone, it often signals strong trend continuation.
EMA 12 (Yellow) — Short-term momentum tracker for entries and exits. Useful for identifying pullback opportunities within the trend.
CSS Reversal - VAThis indicator identifies a price action reversal pattern known as CSS (Candle Stop Setup). Unlike standard 3-candle patterns, this logic is dynamic and "hunts" for the true peak or valley before confirming a shift in momentum.
Core Logic & Rules
The script follows a specific sequence of "Initiation, Waiting, and Triggering" to ensure it captures high-probability reversals:
1. Initiation (The Sweep): The process starts when a candle (the Pivot) sweeps the liquidity of the previous candle.
Bearish: Candle 2 makes a higher high than Candle 1.
Bullish: Candle 2 makes a lower low than Candle 1.
2. Identifying the Extreme: The script tracks the absolute highest high (for bearish) or lowest low (for bullish) during the setup. If a subsequent candle goes higher/lower without triggering a close, the "mark" moves to that new extreme candle.
3. The Waiting Room (Inside Bars): The setup remains active even if several candles follow that do not break out of the Pivot's range. The script can wait indefinitely (e.g., 3, 4, or 5+ candles) as long as the original extreme is not breached.
4. The Trigger (The Confirmation): A signal is only confirmed when a candle closes past the opposite side of the extreme candle's body.
Bearish Trigger: A candle closes below the Low of the highest candle.
Bullish Trigger: A candle closes above the High of the lowest candle.
5. Retrospective Marking: Once the trigger close occurs, the script automatically places a visual marker (arrow) on the actual extreme candle (the peak or valley), even if that candle occurred several bars ago.
Visual Indicators
Red Arrow (↓): Placed at the high of the highest candle in a confirmed bearish reversal.
Green Arrow (↑): Placed at the low of the lowest candle in a confirmed bullish reversal.
Use Cases
This script is designed for traders who look for Liquidity Sweeps and Market Structure Shifts. It filters out "fake" reversals where price merely wicks past a level without a solid closing confirmation, and it specifically accounts for "inside bar" periods where price consolidates before making its move.
PA Helper - SessionsPA Helper – Sessions is a session visualization and timing utility designed to give precise intraday context directly on your chart. It allows you to define up to four custom trading sessions with full control over time ranges, colors, fills, and timezone handling, making it suitable for any market or trading style.
The indicator draws clear session start and end markers and can optionally highlight the full session range on the chart. A key capability is that it does not limit itself to historical data only: it can project and display future session boundaries ahead of the current price, allowing you to see upcoming session starts and ends before they happen. This is especially useful for planning trades, managing exposure, and preparing for session-based volatility.
Candles outside active session hours can be visually muted or hidden using a separate color, helping you focus only on relevant trading periods. The script also supports real-time session detection, ensuring accuracy both in replay mode and live markets.
In addition, PA Helper – Sessions includes configurable alerts that can notify you a chosen number of minutes before a session starts or before it ends. These notifications work across all enabled sessions and are designed to trigger reliably without duplicate alerts, making them practical for active intraday traders.
Overall, this tool acts as a clean, precise session framework that combines past, present, and future session awareness, helping you align price action analysis with time-based market behavior.
Sonic R 89 - NY SL Custom Fixed//@version=5
indicator("Sonic R 89 - NY SL Custom Fixed", overlay=true, max_lines_count=500)
// --- 0. TÙY CHỈNH THÔNG SỐ ---
group_session = "Cài đặt Phiên Giao Dịch (Giờ New York)"
use_session = input.bool(true, "Chỉ giao dịch theo khung giờ", group=group_session)
session_time = input.session("0800-1200", "Khung giờ NY 1", group=group_session)
session_time2 = input.session("1300-1700", "Khung giờ NY 2", group=group_session)
max_trades_per_session = input.int(1, "Số lệnh tối đa/mỗi khung giờ", minval=1, group=group_session)
group_risk = "Quản lý Rủi ro (Dashboard)"
risk_usd = input.float(100.0, "Số tiền rủi ro mỗi lệnh ($)", minval=1.0, group=group_risk)
group_sl_custom = "Cấu hình Stop Loss (SL)"
sl_mode = input.string("Dragon", "Chế độ SL", options= , group=group_sl_custom)
lookback_x = input.int(5, "Số nến (X) cho Swing SL", minval=1, group=group_sl_custom)
group_htf = "Lọc Đa khung thời gian (MTF)"
htf_res = input.timeframe("30", "Chọn khung HTF", group=group_htf)
group_sonic = "Cấu hình Sonic R"
vol_mult = input.float(1.5, "Đột biến Volume", minval=1.0)
max_waves = input.int(4, "Ưu tiên n nhịp đầu", minval=1)
trade_cd = input.int(5, "Khoảng cách lệnh (nến)", minval=1)
group_tp = "Quản lý SL/TP & Dòng kẻ"
rr_tp1 = input.float(1.0, "TP1 (RR)", step=0.1)
rr_tp2 = input.float(2.0, "TP2 (RR)", step=0.1)
rr_tp3 = input.float(3.0, "TP3 (RR)", step=0.1)
rr_tp4 = input.float(4.0, "TP4 (RR)", step=0.1)
line_len = input.int(15, "Chiều dài dòng kẻ", minval=1)
// --- 1. KIỂM TRA PHIÊN & HTF ---
is_in_sess1 = not na(time(timeframe.period, session_time, "America/New_York"))
is_in_sess2 = not na(time(timeframe.period, session_time2, "America/New_York"))
is_in_session = use_session ? (is_in_sess1 or is_in_sess2) : true
var int trades_count = 0
is_new_session = is_in_session and not is_in_session
if is_new_session
trades_count := 0
htf_open = request.security(syminfo.tickerid, htf_res, open, lookahead=barmerge.lookahead_on)
htf_close = request.security(syminfo.tickerid, htf_res, close, lookahead=barmerge.lookahead_on)
is_htf_trend = htf_close >= htf_open ? 1 : -1
// --- 2. TÍNH TOÁN CHỈ BÁO ---
ema89 = ta.ema(close, 89)
ema34H = ta.ema(high, 34)
ema34L = ta.ema(low, 34)
atr = ta.atr(14)
avgVol = ta.sma(volume, 20)
slope89 = (ema89 - ema89 ) / atr
hasSlope = math.abs(slope89) > 0.12
isSqueezed = math.abs(ta.ema(close, 34) - ema89) < (atr * 0.5)
var int waveCount = 0
if not hasSlope
waveCount := 0
newWave = hasSlope and ((low <= ema34H and close > ema34H) or (high >= ema34L and close < ema34L))
if newWave and not newWave
waveCount := waveCount + 1
// --- 3. LOGIC VÀO LỆNH ---
isMarubozu = math.abs(close - open) / (high - low) > 0.8
highVol = volume > avgVol * vol_mult
buyCondition = is_in_session and (trades_count < max_trades_per_session) and waveCount <= max_waves and is_htf_trend == 1 and
(isMarubozu or highVol) and close > ema34H and low >= ema89 and
(slope89 > 0.1 or isSqueezed ) and close > open
sellCondition = is_in_session and (trades_count < max_trades_per_session) and waveCount <= max_waves and is_htf_trend == -1 and
(isMarubozu or highVol) and close < ema34L and high <= ema89 and
(slope89 < -0.1 or isSqueezed ) and close < open
// --- 4. QUẢN LÝ LỆNH ---
var float last_entry = na
var float last_sl = na
var float last_tp1 = na
var float last_tp2 = na
var float last_tp3 = na
var float last_tp4 = na
var string last_type = "NONE"
var int lastBar = 0
trigger_buy = buyCondition and (bar_index - lastBar > trade_cd)
trigger_sell = sellCondition and (bar_index - lastBar > trade_cd)
// --- 5. TÍNH TOÁN SL & LOT SIZE ---
float contract_size = 1.0
if str.contains(syminfo.ticker, "XAU") or str.contains(syminfo.ticker, "GOLD")
contract_size := 100
// Logic tính SL linh hoạt
float swing_low = ta.lowest(low, lookback_x)
float swing_high = ta.highest(high, lookback_x)
float temp_sl_calc = na
if trigger_buy
temp_sl_calc := (sl_mode == "Dragon") ? ema34L : swing_low
if trigger_sell
temp_sl_calc := (sl_mode == "Dragon") ? ema34H : swing_high
float sl_dist_calc = math.abs(close - temp_sl_calc)
float calc_lots = (sl_dist_calc > 0) ? (risk_usd / (sl_dist_calc * contract_size)) : 0
if (trigger_buy or trigger_sell)
trades_count := trades_count + 1
lastBar := bar_index
last_type := trigger_buy ? "BUY" : "SELL"
last_entry := close
last_sl := temp_sl_calc
float riskAmt = math.abs(last_entry - last_sl)
last_tp1 := trigger_buy ? last_entry + (riskAmt * rr_tp1) : last_entry - (riskAmt * rr_tp1)
last_tp2 := trigger_buy ? last_entry + (riskAmt * rr_tp2) : last_entry - (riskAmt * rr_tp2)
last_tp3 := trigger_buy ? last_entry + (riskAmt * rr_tp3) : last_entry - (riskAmt * rr_tp3)
last_tp4 := trigger_buy ? last_entry + (riskAmt * rr_tp4) : last_entry - (riskAmt * rr_tp4)
// Vẽ dòng kẻ
line.new(bar_index, last_entry, bar_index + line_len, last_entry, color=color.new(color.gray, 50), width=2)
line.new(bar_index, last_sl, bar_index + line_len, last_sl, color=color.red, width=2, style=line.style_dashed)
line.new(bar_index, last_tp1, bar_index + line_len, last_tp1, color=color.green, width=1)
line.new(bar_index, last_tp2, bar_index + line_len, last_tp2, color=color.lime, width=1)
line.new(bar_index, last_tp3, bar_index + line_len, last_tp3, color=color.aqua, width=1)
line.new(bar_index, last_tp4, bar_index + line_len, last_tp4, color=color.blue, width=2)
// KÍCH HOẠT ALERT()
string alert_msg = (trigger_buy ? "BUY " : "SELL ") + syminfo.ticker + " at " + str.tostring(close) + " | SL Mode: " + sl_mode + " | Lot: " + str.tostring(calc_lots, "#.##") + " | SL: " + str.tostring(last_sl, format.mintick)
alert(alert_msg, alert.freq_once_per_bar_close)
// --- 6. CẢNH BÁO CỐ ĐỊNH ---
alertcondition(trigger_buy, title="Sonic R BUY Alert", message="Sonic R BUY Signal Detected")
alertcondition(trigger_sell, title="Sonic R SELL Alert", message="Sonic R SELL Signal Detected")
// --- 7. DASHBOARD & PLOT ---
var table sonic_table = table.new(position.top_right, 2, 10, bgcolor=color.new(color.black, 70), border_width=1, border_color=color.gray)
if barstate.islast
table.cell(sonic_table, 0, 0, "NY SESSION", text_color=color.white), table.cell(sonic_table, 1, 0, last_type, text_color=(last_type == "BUY" ? color.lime : color.red))
table.cell(sonic_table, 0, 1, "SL Mode:", text_color=color.white), table.cell(sonic_table, 1, 1, sl_mode, text_color=color.orange)
table.cell(sonic_table, 0, 2, "Trades this Sess:", text_color=color.white), table.cell(sonic_table, 1, 2, str.tostring(trades_count) + "/" + str.tostring(max_trades_per_session), text_color=color.yellow)
table.cell(sonic_table, 0, 3, "LOT SIZE:", text_color=color.orange), table.cell(sonic_table, 1, 3, str.tostring(calc_lots, "#.##"), text_color=color.orange)
table.cell(sonic_table, 0, 4, "Entry:", text_color=color.white), table.cell(sonic_table, 1, 4, str.tostring(last_entry, format.mintick), text_color=color.yellow)
table.cell(sonic_table, 0, 5, "SL:", text_color=color.white), table.cell(sonic_table, 1, 5, str.tostring(last_sl, format.mintick), text_color=color.red)
table.cell(sonic_table, 0, 6, "TP1:", text_color=color.gray), table.cell(sonic_table, 1, 6, str.tostring(last_tp1, format.mintick), text_color=color.green)
table.cell(sonic_table, 0, 7, "TP2:", text_color=color.gray), table.cell(sonic_table, 1, 7, str.tostring(last_tp2, format.mintick), text_color=color.lime)
table.cell(sonic_table, 0, 8, "TP3:", text_color=color.gray), table.cell(sonic_table, 1, 8, str.tostring(last_tp3, format.mintick), text_color=color.aqua)
table.cell(sonic_table, 0, 9, "TP4:", text_color=color.gray), table.cell(sonic_table, 1, 9, str.tostring(last_tp4, format.mintick), text_color=color.blue)
plot(ema89, color=slope89 > 0.1 ? color.lime : slope89 < -0.1 ? color.red : color.gray, linewidth=2)
p_high = plot(ema34H, color=color.new(color.blue, 80))
p_low = plot(ema34L, color=color.new(color.blue, 80))
fill(p_high, p_low, color=color.new(color.blue, 96))
plotshape(trigger_buy, "BUY", shape.triangleup, location.belowbar, color=color.green, size=size.small)
plotshape(trigger_sell, "SELL", shape.triangledown, location.abovebar, color=color.red, size=size.small)
bgcolor(isSqueezed ? color.new(color.yellow, 92) : na)
bgcolor(not is_in_session ? color.new(color.gray, 96) : na)






















