Monthly Expected Move (IV + Realized)What it does
Overlays 1-month expected move bands on price using both forward-looking options data and backward-looking realized movement:
IV30 band — from your pasted 30-day implied vol (%)
Straddle band — from your pasted ATM ~30-DTE call+put total
HV band — from Historical Volatility computed on-chart
ATR band — from ATR% extrapolated to ~1 trading month
Use it to quickly answer: “How much could this stock move in ~1 month?” and “Is the market now pricing more/less movement than we’ve actually been getting?”
Inputs (quick)
Implied (forward-looking)
Use IV30 (%) — paste annualized IV30 from your options platform.
Use ATM 30-DTE Straddle — paste Call+Put total (per share) at the ATM strike, ~30 DTE.
Realized (backward-looking)
HV lookback (days) — default 21 (≈1 trading month).
ATR length — default 14.
Note: TradingView can’t fetch option data automatically. Paste the IV30 % or the straddle total you read from your broker (use Mark/mid prices).
How it’s calculated
IV band (±%) = IV30 × √(21/252) (annualized → ~1-month).
Straddle band (±%) = (ATM Call + Put) / Spot to that expiry (≈30 DTE).
HV band (±%) = stdev(log returns, N) × √252 × √(21/252).
ATR band (±%) = (ATR(len)/Close) × √21.
All bands are plotted as upper/lower envelopes around price, plus an on-chart readout of each ±% for quick scanning.
How to use it (at a glance)
IV/Straddle bands wider than HV/ATR → market expects bigger movement than recent actuals (possible catalyst/expansion).
All bands narrow → likely a low-mover; look elsewhere if you want action.
HV > IV → realized swings exceed current pricing (mean-reversion or vol bleed often follows).
Pro tips
For ATM straddle: pick the expiry closest to ~30 DTE, use the ATM strike (closest to spot), and add Call Mark + Put Mark (per share). If the exact ATM strike isn’t quoted, average the two neighboring strikes.
The simple straddle/spot heuristic can read slightly below the IV-derived 1σ; that’s normal.
Keep the chart on daily timeframe—the math assumes trading-day conventions (~252/yr, ~21/mo).
Options
ELITE RSIRSI = Relative Strength Index
It’s a momentum indicator. Basically, it tells you how strong a price move is.
It moves between 0 and 100.
How to read it:
Above 70 → Overbought
Price has gone up too fast. Could fall soon.
Below 30 → Oversold
Price has dropped too fast. Could bounce back soon.
Between 30-70 → Normal zone
Price is moving normally. No extreme signals.
Why traders use it:
To spot possible reversals.
To confirm trends.
To avoid buying at the top or selling at the bottom.
Think of it like a speedometer for price: too high → slow down (sell), too low → speed up (buy).
If you want, I can also make a super tiny example chart showing RSI signals in a way that even a beginner can understand at a glance.
SMART TRADING DASHBOARDPart 1: Understanding the Foundation
The first lines of the script set up the basic parameters of the indicator.
• //@version=5: This is crucial and specifies that the code is written for Pine Script version 5. TradingView updates its language, and version 5 has new features and syntax changes compared to previous versions.
• indicator("SMART TRADING DASHBOARD", overlay=true): This line defines the script as an indicator and gives it a name, "SMART TRADING DASHBOARD." The overlay=true parameter tells Pine Script to draw the indicator directly on the price chart, not in a separate panel below it.
Part 2: Defining Inputs and Variables
The //━━━━━━━━━━━━━ INPUT PARAMETERS ━━━━━━━━━━━━━ section is where the user can customize the indicator without changing the code.
• input.int() and input.float(): These functions create configurable settings for the indicator, such as the Supertrend's ATR period, ATR multiplier, risk percentage, and target percentages. The user can change these values in the indicator's "Settings" menu.
• input.string() and input.bool(): These are used for inputs that are not numerical, such as the position of the dashboard table and a toggle to show/hide it.
This section also initializes several variables using the var keyword. var is a special keyword in Pine Script that declares a variable and ensures its value is preserved from one bar to the next. This is essential for tracking things like the entry price, stop-loss, and profit targets.
Part 3: The Core Trading Logic
Supertrend Analysis
The Supertrend is a trend-following indicator.
• = ta.supertrend(factor, atrPeriod): This line uses a built-in Pine Script function, ta.supertrend(), to calculate the Supertrend line. It returns two values: the supertrend line itself and a dir (direction) value which is 1 for an uptrend and -1 for a downtrend.
• buySignal = ta.crossover(close, supertrend): This detects a buy signal when the closing price crosses over the Supertrend line.
• sellSignal = ta.crossunder(close, supertrend): This detects a sell signal when the closing price crosses under the Supertrend line.
Entry, Take-Profit (TP), and Stop-Loss (SL) Calculations
The if statements check for the buySignal and sellSignal conditions.
• if buySignal: When a buy signal occurs, the script sets the entry price to the current close, and calculates the sl, tp1, tp2, and tp3 based on the predefined percentage inputs. The signalType is set to "LONG."
• if sellSignal: Similarly, for a sell signal, it calculates the levels for a "SHORT" trade.
This section is vital as it provides the core trading levels to the user.
Part 4: Additional Market Analysis
This script goes beyond a simple Supertrend and includes several other analysis tools.
• Volume Analysis: The code calculates a volume moving average (volMA) and a volRatio to see if the current volume is high compared to its recent average.
• Profit % and Risk-to-Reward (RR): It continuously calculates the floating profit/loss percentage of the current position and the risk-to-reward ratio based on the entry and third target. This provides real-time performance metrics.
• PCR & OI Trend (Simulated): The script simulates PCR (Put/Call Ratio) and OI (Open Interest) trends. It uses request.security() to get data from a higher timeframe (60-minute) and compares the simulated values to determine if the market is in a "Long Buildup," "Short Covering," or other states. This adds a simulated derivative market analysis to the tool.
• Momentum Analysis: It uses the built-in ta.rsi() function to calculate the Relative Strength Index (RSI) and determines if the market is overbought or oversold to identify momentum.
• PDC Analysis: "PDC" stands for Previous Day Close. The script checks if the current close is above the previous day's high or below the previous day's low to determine a daily breakout bias.
Part 5: Creating the Visual Dashboard
The dashboard is built using Pine Script's table functions.
• Color Scheme: The code defines a professional, dark theme color scheme using hexadecimal color codes. These colors are then used throughout the table to provide a clear and organized display.
• table.new(): This function creates the table object itself, defining its position (positionOpt input), columns, and rows.
• table.cell(): This is used to populate each individual cell of the table with text, background color, and text color. The script uses table.merge_cells() to combine cells for a cleaner, more readable layout.
• str.tostring(): This function is used to convert numerical values (like entry, sl, profitPct) into string format so they can be displayed in the table.
• plot(): Finally, the plot() function draws the Supertrend line on the chart itself, with the line color changing based on the trend direction (dir).
Part 6: Alerts
The alertcondition() function creates custom alerts that the user can set up in the TradingView platform.
• alertcondition(buySignal, ...): This creates a "Buy Signal" alert. The message parameter is the text that will appear when the alert is triggered.
• alertcondition(sellSignal, ...): Creates a "Sell Signal" alert.
• alertcondition(volRatio > 2, ...): This is a great example of a custom alert, triggering when a significant volume spike is detected.
________________________________________
aiTrendview Disclaimer
Trading financial markets, including futures, options, and stocks, involves substantial risk of loss and is not suitable for every investor. The "SMART TRADING DASHBOARD" is a technical analysis tool for educational and informational purposes only. It is not financial advice. The indicator's signals and metrics are based on historical data and simulated logic, and past performance is not indicative of future results. You should not treat any signals or information from this tool as a definitive guide for making trades. Always conduct your own research, and consider consulting with a qualified financial professional before making any investment decisions. The creator and provider of this script are not responsible for any trading losses you may incur.
OI Proxy PA — Trend ETAThis indicator watches price and volume and treats volume like a simple stand-in for open interest. It flags four states—Long Build-Up, Short Covering, Short Build-Up, and Long Unwinding—based on whether price and volume momentum move together or against each other.
You’ll see a colored arrow plus a centered label with the signal name and an “Estimated Sustain” window in bars, along with one best-guess time. A solid line marks the conservative window; a dotted extension shows the upper bound. The estimate isn’t magic—it learns from your chart’s own history by logging how long past phases lasted, then uses the middle of that distribution for time.
You can tweak thresholds, volume SMA length, cooldown, session filter, and label size/spacing. It uses only your chart’s OHLCV; the News field is just a manual note. Works best on time-based charts; time on range/tick/volume is approximate. Use with your own levels and risk.
SPX Options & Stocks AI v1.0.3 | مناسب للأسهم وعقود الخيارات مؤشر SPX Options & Stocks AI Indicator v1.0.3: تحليل متقدم وتنبيهات ذكية
يُعد مؤشر "SPX Options & Stocks AI Indicator v1.0.3" أداة تحليل فني متكاملة ومصممة خصيصًا للمتداولين في أسواق الأسهم والخيارات، مع تركيز خاص على مؤشر S&P 500 (SPX). يجمع هذا المؤشر بين قوة التحليل الفني الكلاسيكي ومرونة الذكاء الاصطناعي لتقديم رؤى دقيقة وتنبيهات فورية، مما يساعد المتداولين على اتخاذ قرارات تداول أكثر استنارة وفعالية.
المميزات والتفاصيل الدقيقة:
إشارات الدخول والخروج الذكية (Call/Put Signals):
الأساس: يعتمد المؤشر على استراتيجية تقاطع المتوسطات المتحركة (Moving Averages Crossover) لتحديد نقاط الدخول المحتملة. يتم استخدام متوسطين متحركين: "Fast MA" (الافتراضي 10 فترات) و "Slow MA" (الافتراضي 30 فترة).
إشارة CALL: يتم توليد إشارة شراء (Call) عندما يتقاطع المتوسط المتحرك السريع فوق المتوسط المتحرك البطيء (ta.crossover).
إشارة PUT: يتم توليد إشارة بيع (Put) عندما يتقاطع المتوسط المتحرك السريع تحت المتوسط المتحرك البطيء (ta.crossunder).
العرض المرئي: تظهر هذه الإشارات بوضوح على الرسم البياني كملصقات نصية "دخول CALL" (باللون الأخضر) أسفل الشمعة، و "دخول PUT" (باللون الأحمر) أعلى الشمعة، مما يسهل التعرف عليها بصريًا.
إدارة متقدمة لوقف الخسارة (Dynamic Stop Loss Management):
الحساب الديناميكي: يتم حساب مستوى وقف الخسارة باستخدام متوسط المدى الحقيقي (Average True Range - ATR). يمكن للمستخدمين تخصيص طول فترة ATR (الافتراضي 14) ومضاعف ATR (الافتراضي 1.5) لضبط حساسية وقف الخسارة.
منطق التفعيل: يتم تفعيل وقف الخسارة لصفقات الشراء (Call) عندما ينخفض السعر الحالي (close) إلى ما دون سعر الدخول مطروحًا منه قيمة ATR مضروبة في المضاعف. ولصفقات البيع (Put)، يتم تفعيله عندما يرتفع السعر الحالي فوق سعر الدخول مضافًا إليه قيمة ATR مضروبة في المضاعف.
العرض الذكي: يتميز المؤشر بآلية عرض فريدة لملصق "وقف الخسارة". بدلاً من الظهور المستمر، يظهر الملصق فقط في الشمعة التي تسبق مباشرة ظهور إشارة دخول جديدة (Call أو Put). هذا يضمن أن يكون الرسم البياني نظيفًا وغير مزدحم، مع إبراز أهمية مستوى وقف الخسارة في اللحظة الحاسمة قبل الدخول في صفقة جديدة.
إعادة التعيين: يتم إعادة تعيين حالة وقف الخسارة (stop_loss_triggered) إلى "false" عند ظهور إشارة دخول جديدة، مما يضمن أن المؤشر جاهز لصفقة جديدة.
أهداف ربح متعددة وديناميكية (Multi-level Profit Targets):
تحديد الأهداف: يقوم المؤشر تلقائيًا بتحديد وعرض خمسة مستويات لأهداف الربح لكل من صفقات الشراء والبيع. يتم حساب هذه الأهداف بناءً على سعر الدخول (entry_price) وقيمة "Profit Target Points" (الافتراضي 30 نقطة).
التقريب: يتم تقريب جميع أسعار الأهداف إلى أقرب رقم صحيح (math.round) لضمان سهولة القراءة والتداول، وتجنب الكسور العشرية.
الإدارة المرئية: يتم رسم خطوط الأهداف على الرسم البياني بألوان مميزة (أخضر لـ Call، أحمر لـ Put) مع ملصقات توضح رقم الهدف وسعره. الأهم من ذلك، يتم مسح جميع خطوط وملصقات الأهداف السابقة تلقائيًا (باستخدام وظيفة clear_targets) بمجرد ظهور إشارة دخول جديدة، مما يحافظ على وضوح الرسم البياني وتجنب التداخل البصري.
تنبيه تحقيق ربح 100 دولار ($100 Profit Target Alert):
الهدف المخصص: يمكن للمستخدم تحديد عدد النقاط التقريبية التي تعادل 100 دولار ربح (profit_100_points).
التفعيل لمرة واحدة: يظهر تنبيه مرئي على الرسم البياني (plotshape) بملصق "✅ $100 ربح" عندما يتم تحقيق هذا الهدف. يتميز هذا التنبيه بأنه يظهر لمرة واحدة فقط لكل صفقة، ولا يتكرر، مما يمنع الإزعاج ويضمن أن المتداول يتلقى إشعارًا واضحًا عند تحقيق هذا الهدف الهام.
تتبع الحالة: يتم استخدام متغير (profit_100_achieved) لتتبع ما إذا كان هدف الـ 100 دولار قد تحقق بالفعل للصفقة الحالية.
التعرف على أنماط الابتلاع (Engulfing Patterns Recognition):
أنماط الشموع: يقوم المؤشر بتحديد أنماط الشموع الابتلاعية الصعودية (Bullish Engulfing) والهبوطية (Bearish Engulfing)، والتي تعتبر إشارات قوية لانعكاس الاتجاه.
التحكم: يمكن للمستخدم تفعيل أو تعطيل عرض هذه الأنماط على الرسم البياني عبر خيار الإدخال "Enable Engulfing Patterns"، مما يتيح تخصيصًا مرنًا للرسم البياني.
تنبيهات Zero Hero الموقوتة (Timed Zero Hero Alerts):
التوقيت الدقيق: يتم تفعيل تنبيهات Zero Hero فقط في وقت محدد: الساعة 11 مساءً بتوقيت نيويورك (22:00 بتوقيت KSA - UTC+3)، مما يركز على الفرص المحتملة في نهاية اليوم التداولي.
الاتجاه المحدد: يظهر التنبيه لعقد Zero Hero المقترح إما لـ Call أو لـ Put بناءً على اتجاه المؤشر الحالي (active_trade)، ولا يظهر كلاهما معًا لتجنب الالتباس.
التنسيق: يتم عرض التنبيه بوضوح باللغة العربية ويحتوي على عبارة "🚨 زيرو هيرو" متبوعة بنوع العقد (CALL أو PUT) ورقم العقد المقترح (XXXX أو YYYY كمثال).
الظهور لمرة واحدة: يظهر هذا التنبيه لمرة واحدة فقط في اليوم لتجنب التكرار.
نظام تنبيهات شامل وقابل للتخصيص (Comprehensive & Customizable Alert System):
تنبيهات الوقت الفعلي (alertcondition): يدعم المؤشر إعداد تنبيهات TradingView لإشارات المراقبة الأولية (Initial Monitoring)، فرص الدخول (Entry Opportunity)، تفعيل وقف الخسارة (Stop Loss Triggered)، وتنبيهات Zero Hero. هذه التنبيهات مصممة للعمل في الوقت الفعلي على منصة TradingView.
تنبيهات إعادة التشغيل (Replay Alerts): يتضمن المؤشر خيارًا خاصًا لتفعيل تنبيهات "إعادة التشغيل" (Enable Replay Alerts) لأغراض الاختبار الخلفي (Backtesting). هذه التنبيهات تستخدم وظيفة alert() لتقديم رسائل ديناميكية على الشموع التاريخية، مما يساعد في محاكاة سلوك المؤشر بدقة.
معلومات Webhook: يتضمن المؤشر حقل إدخال لـ "Telegram Webhook URL"، وهو مخصص للمعلومات فقط ولا يستخدم مباشرة في وظائف التنبيه داخل الكود. يجب على المستخدمين تكوين Webhook URL في إعدادات تنبيهات TradingView بشكل منفصل.
كيف يعمل المؤشر؟
يعمل المؤشر بشكل متسلسل لتحليل بيانات السوق. يبدأ بحساب المتوسطات المتحركة وATR. بناءً على تقاطعات المتوسطات، يحدد المؤشر إشارات الدخول المحتملة ويقوم بتحديث حالة التداول النشطة. يتم بعد ذلك تقييم شروط وقف الخسارة وأهداف الربح وأنماط الابتلاع. يتم تتبع حالة تحقيق الأرباح وتفعيل تنبيهات Zero Hero في الأوقات المحددة. كل هذه العمليات تتم بشكل آلي لتقديم رؤى فورية وتنبيهات ذات صلة للمتداول.
ملاحظات هامة:
أداة مساعدة: هذا المؤشر هو أداة تحليلية قوية، ولكنه لا يضمن الأرباح. يجب على المتداولين دائمًا إجراء أبحاثهم الخاصة، وفهم المخاطر المرتبطة بالتداول، واتخاذ قراراتهم بناءً على استراتيجية تداول شاملة وإدارة مخاطر سليمة.
مخاطر Zero Hero: تنبيهات Zero Hero تنطوي على مخاطر عالية جدًا نظرًا لطبيعة عقود الخيارات قرب انتهاء الصلاحية. يجب التعامل مع هذه الفرص بحذر شديد وفهم كامل للمخاطر المحتملة.
بيانات التواصل مع المطور والقناة:
المطور: t.me
القناة: t.me
SPX Options and Stocks AI v1.0.3 | Suitable for stocks and options
The "SPX Options & Stocks AI Indicator v1.0.3" is a comprehensive technical analysis tool specifically designed for traders in stock and options markets, with a particular focus on the S&P 500 (SPX) index. This indicator combines the power of classic technical analysis with the flexibility of artificial intelligence to provide accurate insights and instant alerts, helping traders make more informed and effective trading decisions.
Key Features and Detailed Breakdown:
1. Smart Entry and Exit Signals (Call/Put Signals):
•
Foundation: The indicator relies on a Moving Averages Crossover strategy to identify potential entry points. It utilizes two moving averages: a "Fast MA" (default 10 periods) and a "Slow MA" (default 30 periods).
•
CALL Signal: A buy signal (Call) is generated when the Fast Moving Average crosses above the Slow Moving Average (ta.crossover).
•
PUT Signal: A sell signal (Put) is generated when the Fast Moving Average crosses below the Slow Moving Average (ta.crossunder).
•
Visual Representation: These signals are clearly displayed on the chart as text labels: "دخول CALL" (green) below the candle and "دخول PUT" (red) above the candle, making them easy to identify visually.
2. Advanced Stop Loss Management (Dynamic Stop Loss Management):
•
Dynamic Calculation: The stop-loss level is calculated dynamically using the Average True Range (ATR). Users can customize the ATR period length (default 14) and the ATR multiplier (default 1.5) to adjust the sensitivity of the stop loss.
•
Activation Logic: For Call trades, the stop loss is triggered when the current price (close) falls below the entry price minus the ATR value multiplied by the multiplier. For Put trades, it's triggered when the current price rises above the entry price plus the ATR value multiplied by the multiplier.
•
Intelligent Display: A unique feature of this indicator is the intelligent display of the "Stop Loss" label. Instead of being constantly visible, the label appears only on the candle immediately preceding a new entry signal (Call or Put). This ensures a clean and uncluttered chart, highlighting the importance of the stop-loss level at the crucial moment before entering a new trade.
•
Reset Mechanism: The stop-loss triggered status (stop_loss_triggered) is reset to false when a new entry signal appears, ensuring the indicator is ready for a new trade.
3. Multi-level and Dynamic Profit Targets (Multi-level Profit Targets):
•
Target Definition: The indicator automatically identifies and displays five profit target levels for both Call and Put trades. These targets are calculated based on the entry price (entry_price) and the specified "Profit Target Points" value (default 30 points).
•
Rounding: All target prices are rounded to the nearest whole number (math.round) for easy readability and trading, avoiding decimal fractions.
•
Visual Management: Target lines are drawn on the chart with distinct colors (green for Call, red for Put) and labels indicating the target number and its price. Crucially, all previous target lines and labels are automatically cleared (using the clear_targets function) as soon as a new entry signal appears, maintaining chart clarity and avoiding visual clutter.
4. $100 Profit Target Alert:
•
Customizable Target: Users can define the approximate number of points that equate to a $100 profit (profit_100_points).
•
One-Time Activation: A visual alert appears on the chart (plotshape) with the label "✅ $100 profit" when this target is achieved. This alert is unique in that it appears only once per trade and does not repeat, preventing annoyance and ensuring the trader receives a clear notification upon reaching this significant milestone.
•
State Tracking: A variable (profit_100_achieved) is used to track whether the $100 target has already been met for the current trade.
5. Engulfing Patterns Recognition:
•
Candlestick Patterns: The indicator identifies Bullish Engulfing and Bearish Engulfing candlestick patterns, which are considered strong signals for trend reversals.
•
Control: Users can enable or disable the display of these patterns on the chart via the "Enable Engulfing Patterns" input option, allowing for flexible chart customization.
6. Timed Zero Hero Alerts:
•
Precise Timing: Zero Hero alerts are activated only at a specific time: 11:00 PM New York Time (22:00 KSA time - UTC+3). This focuses on potential opportunities at the end of the trading day.
•
Directional Specificity: The proposed Zero Hero contract alert appears for either a Call or a Put based on the current indicator direction (active_trade), not both simultaneously, to avoid confusion.
•
Formatting: The alert is clearly displayed in Arabic and includes the phrase "🚨Zero Hero" followed by the contract type (CALL or PUT) and a suggested contract number (e.g., XXXX or YYYY).
•
One-Time Display: This alert appears only once per day to prevent re
Option Price & Greeks [TennAlgo]A simple and checked pine script indicator showing theoretical option value and Greeks for giving sigma and other parameters.
You can change the underlying price and giving sigma to your sources to get a dynamical BSM option value.
Price and Greeks are plotted in subplot, but a user friendly table is given in top-right.
Enjoy it and leave your issues here, which might be corrected soon or later.
Smart Money Confluence Scanner// Smart Money Confluence Scanner v2.0
// Combines Fair Value MS + Zero Lag Trend + Target Trend + Gann High Low
// © Smart Money Trading System
//
// USAGE NOTES:
// ============
// 1. This indicator combines 4 different trend analysis methods for confluence trading
// 2. Signals require multiple confirmations (default: 3 out of 4 indicators)
// 3. Best used on higher timeframes (4H, Daily) for more reliable signals
// 4. Always use proper risk management - suggested 1-2% risk per trade
//
// INDICATOR COMPONENTS:
// ====================
// - Zero Lag EMA: Trend direction with volatility bands
// - Gann High/Low: Market structure analysis
// - Target Trend: Momentum-based trend detection
// - Fair Value Gaps: Price inefficiency identification
//
// SIGNAL INTERPRETATION:
// ======================
// GREEN ARROW (BUY): Multiple bullish confirmations aligned
// RED ARROW (SELL): Multiple bearish confirmations aligned
// TABLE: Shows real-time status of each indicator
// FVG BOXES: Price gaps that may act as support/resistance
// AOI CIRCLES: Near significant Fair Value Gap levels
//
// ALERTS AVAILABLE:
// ================
// - Main Buy/Sell Signals (high confidence)
// - Bull/Bear Watch (3 confirmations, prepare for entry)
// - Trend Change Detection (early warning)
//
// RISK MANAGEMENT:
// ===============
// - Stop Loss: Automatically calculated based on market structure
// - Take Profit: 2:1 risk/reward ratio (configurable)
// - Position sizing considers volatility (ATR-based)
//
// OPTIMIZATION TIPS:
// ==================
// - Adjust "Minimum Confirmations" based on market conditions
// - In volatile markets: increase confirmations to 4
// - In trending markets: decrease to 2 for more signals
// - Backtest parameters on your specific timeframe/asset
//
// VERSION HISTORY:
// ===============
// v2.0: Fixed Pine Script v5 compatibility issues
// - Resolved boolean type inference problems
// - Fixed dynamic hline() issues with AOI levels
// - Improved null value handling throughout
//@version=5
indicator("Smart Money Confluence Scanner", shorttitle="SMCS", overlay=true, max_lines_count=500, max_boxes_count=500, max_labels_count=500)
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// INPUTS
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// === TREND DETECTION SETTINGS ===
zlLength = input.int(70, "Zero Lag EMA Length", group="Trend Detection")
zlMult = input.float(1.2, "Volatility Band Multiplier", group="Trend Detection")
gannHigh = input.int(13, "Gann High Period", group="Trend Detection")
gannLow = input.int(21, "Gann Low Period", group="Trend Detection")
trendLength = input.int(10, "Target Trend Length", group="Trend Detection")
// === STRUCTURE SETTINGS ===
showFVG = input.bool(true, "Show Fair Value Gaps", group="Market Structure")
showAOI = input.bool(true, "Show Areas of Interest", group="Market Structure")
aoiCount = input.int(3, "Max AOIs to Display", minval=1, group="Market Structure")
// === SIGNAL SETTINGS ===
requireMultiConfirm = input.bool(true, "Require Multi-Indicator Confirmation", group="Signal Filtering")
minConfirmations = input.int(3, "Minimum Confirmations Required", minval=2, maxval=4, group="Signal Filtering")
riskReward = input.float(2.0, "Minimum Risk:Reward Ratio", group="Risk Management")
// === VISUAL SETTINGS ===
bullColor = input.color(#00ff88, "Bullish Color", group="Appearance")
bearColor = input.color(#ff0044, "Bearish Color", group="Appearance")
fvgBullColor = input.color(color.new(#00ff88, 80), "FVG Bull Fill", group="Appearance")
fvgBearColor = input.color(color.new(#ff0044, 80), "FVG Bear Fill", group="Appearance")
aoiColor = input.color(color.yellow, "AOI Color", group="Appearance")
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// FUNCTIONS
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// ATR-based calculations
atr20 = ta.atr(20)
atr200 = ta.sma(ta.atr(200), 200) * 0.8
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// ZERO LAG TREND
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
lag = math.floor((zlLength - 1) / 2)
zlema = ta.ema(close + (close - close ), zlLength)
volatility = ta.highest(ta.atr(zlLength), zlLength*3) * zlMult
var int zlTrend = 0
if ta.crossover(close, zlema + volatility)
zlTrend := 1
if ta.crossunder(close, zlema - volatility)
zlTrend := -1
// Zero Lag signals with explicit boolean typing
zlBullEntry = bool(ta.crossover(close, zlema) and zlTrend == 1 and zlTrend == 1)
zlBearEntry = bool(ta.crossunder(close, zlema) and zlTrend == -1 and zlTrend == -1)
zlTrendChange = bool(ta.change(zlTrend) != 0)
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// GANN HIGH LOW
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
gannSmaHigh = ta.sma(high, gannHigh)
gannSmaLow = ta.sma(low, gannLow)
gannDirection = close > nz(gannSmaHigh ) ? 1 : close < nz(gannSmaLow ) ? -1 : 0
gannValue = ta.valuewhen(gannDirection != 0, gannDirection, 0)
gannLine = gannValue == -1 ? gannSmaHigh : gannSmaLow
// Gann signals with explicit boolean typing
gannBullCross = bool(ta.crossover(close, gannLine) and gannValue == 1)
gannBearCross = bool(ta.crossunder(close, gannLine) and gannValue == -1)
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// TARGET TREND
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
targetSmaHigh = ta.sma(high, trendLength) + atr200
targetSmaLow = ta.sma(low, trendLength) - atr200
var bool targetTrend = false // Explicit initialization
if ta.crossover(close, targetSmaHigh)
targetTrend := true
if ta.crossunder(close, targetSmaLow)
targetTrend := false
targetValue = targetTrend ? targetSmaLow : targetSmaHigh
targetBullSignal = bool(ta.change(targetTrend) and not targetTrend )
targetBearSignal = bool(ta.change(targetTrend) and targetTrend )
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// FAIR VALUE GAPS
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// FVG Detection with explicit boolean typing
fvgBull = bool(low > high and close > high )
fvgBear = bool(high < low and close < low )
// Basic Market Structure
var int msDirection = 0
var float msHigh = high
var float msLow = low
if fvgBull and msDirection <= 0
msDirection := 1
msHigh := high
msLow := low
if fvgBear and msDirection >= 0
msDirection := -1
msHigh := high
msLow := low
if msDirection == 1 and high > msHigh
msHigh := high
if msDirection == -1 and low < msLow
msLow := low
// Structure breaks with explicit boolean typing
structureBreakBull = bool(msDirection == 1 and ta.crossover(close, msHigh ))
structureBreakBear = bool(msDirection == -1 and ta.crossunder(close, msLow ))
// Areas of Interest (AOI) - Store significant FVG levels (simplified approach)
var float aoiLevels = array.new_float(0)
if showAOI and (fvgBull or fvgBear)
newLevel = fvgBull ? high : low
// Check if this level is significantly different from existing ones
addLevel = true
if array.size(aoiLevels) > 0
for existingLevel in aoiLevels
if math.abs(newLevel - existingLevel) < atr20 * 0.5
addLevel := false
break
if addLevel
array.push(aoiLevels, newLevel)
if array.size(aoiLevels) > aoiCount
array.shift(aoiLevels)
// Note: AOI levels are stored in array for reference and marked with visual indicators
// Visual AOI markers - place small indicators when price is near AOI levels
aoiNearby = false
if showAOI and array.size(aoiLevels) > 0
for level in aoiLevels
if not na(level) and math.abs(close - level) <= atr20
aoiNearby := true
break
// Plot AOI proximity indicator
plotshape(aoiNearby, title="Near AOI Level", location=location.belowbar,
color=color.new(aoiColor, 0), style=shape.circle, size=size.tiny)
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// SIGNAL INTEGRATION
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// Count confirmations for each direction
// NOTE: This is the core logic - we need multiple indicators agreeing for high-confidence signals
var int bullConfirmations = 0
var int bearConfirmations = 0
// Reset counters each bar
bullConfirmations := 0
bearConfirmations := 0
// Check each indicator (4 total possible confirmations)
// 1. Zero Lag Trend Direction
if zlTrend == 1
bullConfirmations += 1
if zlTrend == -1
bearConfirmations += 1
// 2. Gann High/Low Position
if close > gannLine and nz(gannValue) == 1
bullConfirmations += 1
if close < gannLine and nz(gannValue) == -1
bearConfirmations += 1
// 3. Target Trend Direction
if targetTrend == true
bullConfirmations += 1
if targetTrend == false
bearConfirmations += 1
// 4. Market Structure Direction
if msDirection == 1
bullConfirmations += 1
if msDirection == -1
bearConfirmations += 1
// CONFLUENCE FILTER: Only trade when multiple indicators agree
baseConditionsMet = bool(requireMultiConfirm ? (bullConfirmations >= minConfirmations or bearConfirmations >= minConfirmations) : true)
// Enhanced entry signals with proper null handling
strongBullSignal = bool(baseConditionsMet and bullConfirmations >= minConfirmations and (zlBullEntry or gannBullCross or targetBullSignal or structureBreakBull or fvgBull))
strongBearSignal = bool(baseConditionsMet and bearConfirmations >= minConfirmations and (zlBearEntry or gannBearCross or targetBearSignal or structureBreakBear or fvgBear))
// RISK MANAGEMENT: Dynamic stop loss and take profit calculation
// Stop losses are placed at logical market structure levels, not arbitrary percentages
stopLossLevelBull = nz(targetTrend ? targetSmaLow : nz(msLow, low) - atr20, low - atr20)
stopLossLevelBear = nz(targetTrend ? targetSmaHigh : nz(msHigh, high) + atr20, high + atr20)
// Calculate risk amount (distance to stop loss)
riskAmountBull = math.max(close - stopLossLevelBull, 0)
riskAmountBear = math.max(stopLossLevelBear - close, 0)
// Multiple take profit levels for scaling out positions
target1Bull = close + (riskAmountBull * riskReward) // 1st target: 2R (default)
target2Bull = close + (riskAmountBull * riskReward * 1.5) // 2nd target: 3R
target3Bull = close + (riskAmountBull * riskReward * 2.5) // 3rd target: 5R
target1Bear = close - (riskAmountBear * riskReward) // 1st target: 2R (default)
target2Bear = close - (riskAmountBear * riskReward * 1.5) // 2nd target: 3R
target3Bear = close - (riskAmountBear * riskReward * 2.5) // 3rd target: 5R
// Risk/Reward filter with explicit boolean typing
validRRBull = bool(riskAmountBull > 0 and (riskAmountBull * riskReward) > (close * 0.01))
validRRBear = bool(riskAmountBear > 0 and (riskAmountBear * riskReward) > (close * 0.01))
// Final signals with explicit boolean typing and proper null handling
finalBullSignal = bool(nz(strongBullSignal, false) and nz(validRRBull, false) and barstate.isconfirmed)
finalBearSignal = bool(nz(strongBearSignal, false) and nz(validRRBear, false) and barstate.isconfirmed)
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// VISUALS
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// Plot main trend lines
plot(zlema, "Zero Lag EMA", color=zlTrend == 1 ? bullColor : zlTrend == -1 ? bearColor : color.gray, linewidth=2)
plot(gannLine, "Gann Line", color=nz(gannValue) == 1 ? color.new(bullColor, 50) : color.new(bearColor, 50), linewidth=1)
// Plot FVGs
if showFVG and fvgBull
box.new(bar_index , high , bar_index, low, border_color=bullColor, bgcolor=fvgBullColor)
if showFVG and fvgBear
box.new(bar_index , low , bar_index, high, border_color=bearColor, bgcolor=fvgBearColor)
// Signal arrows
plotshape(finalBullSignal, "BUY Signal", shape.triangleup, location.belowbar, bullColor, size=size.normal)
plotshape(finalBearSignal, "SELL Signal", shape.triangledown, location.abovebar, bearColor, size=size.normal)
// Entry and target labels
if finalBullSignal
label.new(bar_index, low - atr20,
text="BUY SIGNAL Check Details on Chart",
style=label.style_label_up, color=bullColor, textcolor=color.white, size=size.normal)
if finalBearSignal
label.new(bar_index, high + atr20,
text="SELL SIGNAL Check Details on Chart",
style=label.style_label_down, color=bearColor, textcolor=color.white, size=size.normal)
// Confirmation status table
if barstate.islast
var table infoTable = table.new(position.top_right, 3, 6, bgcolor=color.new(color.white, 80), border_width=1)
table.cell(infoTable, 0, 0, "Indicator", text_color=color.black, bgcolor=color.new(color.gray, 70))
table.cell(infoTable, 1, 0, "Bull", text_color=color.black, bgcolor=color.new(color.gray, 70))
table.cell(infoTable, 2, 0, "Bear", text_color=color.black, bgcolor=color.new(color.gray, 70))
table.cell(infoTable, 0, 1, "Zero Lag", text_color=color.black)
table.cell(infoTable, 1, 1, zlTrend == 1 ? "✓" : "✗", text_color=zlTrend == 1 ? bullColor : color.gray)
table.cell(infoTable, 2, 1, zlTrend == -1 ? "✓" : "✗", text_color=zlTrend == -1 ? bearColor : color.gray)
table.cell(infoTable, 0, 2, "Gann", text_color=color.black)
table.cell(infoTable, 1, 2, (close > gannLine and nz(gannValue) == 1) ? "✓" : "✗", text_color=(close > gannLine and nz(gannValue) == 1) ? bullColor : color.gray)
table.cell(infoTable, 2, 2, (close < gannLine and nz(gannValue) == -1) ? "✓" : "✗", text_color=(close < gannLine and nz(gannValue) == -1) ? bearColor : color.gray)
table.cell(infoTable, 0, 3, "Target", text_color=color.black)
table.cell(infoTable, 1, 3, targetTrend == true ? "✓" : "✗", text_color=targetTrend == true ? bullColor : color.gray)
table.cell(infoTable, 2, 3, targetTrend == false ? "✓" : "✗", text_color=targetTrend == false ? bearColor : color.gray)
table.cell(infoTable, 0, 4, "Structure", text_color=color.black)
table.cell(infoTable, 1, 4, msDirection == 1 ? "✓" : "✗", text_color=msDirection == 1 ? bullColor : color.gray)
table.cell(infoTable, 2, 4, msDirection == -1 ? "✓" : "✗", text_color=msDirection == -1 ? bearColor : color.gray)
table.cell(infoTable, 0, 5, "TOTAL", text_color=color.black, bgcolor=color.new(color.gray, 70))
table.cell(infoTable, 1, 5, str.tostring(bullConfirmations) + "/4", text_color=bullConfirmations >= minConfirmations ? bullColor : color.gray, bgcolor=color.new(color.gray, 70))
table.cell(infoTable, 2, 5, str.tostring(bearConfirmations) + "/4", text_color=bearConfirmations >= minConfirmations ? bearColor : color.gray, bgcolor=color.new(color.gray, 70))
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// ALERTS
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// Main alert conditions with proper boolean handling
alertcondition(finalBullSignal, title="SMCS Buy Signal", message="SMCS Buy Signal at {{close}}")
alertcondition(finalBearSignal, title="SMCS Sell Signal", message="SMCS Sell Signal at {{close}}")
// Additional watch alerts for near-signals
bullWatch = bool(bullConfirmations >= 3 and not finalBullSignal)
bearWatch = bool(bearConfirmations >= 3 and not finalBearSignal)
trendChange = bool(zlTrendChange)
alertcondition(bullWatch, title="SMCS Bull Watch", message="SMCS Bull Watch: 3 Confirmations")
alertcondition(bearWatch, title="SMCS Bear Watch", message="SMCS Bear Watch: 3 Confirmations")
alertcondition(trendChange, title="SMCS Trend Change", message="SMCS Trend Change Detected")
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
// CONFIGURATION GUIDE
//═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
//
// RECOMMENDED SETTINGS BY TIMEFRAME:
// ==================================
//
// SCALPING (1M-5M):
// - Zero Lag Length: 50
// - Gann High: 8, Gann Low: 13
// - Min Confirmations: 4 (strict filtering)
// - Risk/Reward: 1.5
//
// SWING TRADING (1H-4H):
// - Zero Lag Length: 70 (default)
// - Gann High: 13, Gann Low: 21 (default)
// - Min Confirmations: 3 (default)
// - Risk/Reward: 2.0 (default)
//
// POSITION TRADING (Daily+):
// - Zero Lag Length: 100
// - Gann High: 21, Gann Low: 34
// - Min Confirmations: 2 (more signals)
// - Risk/Reward: 3.0
//
// MARKET CONDITIONS:
// ==================
// TRENDING MARKETS: Reduce confirmations to 2, increase RR to 3:1
// RANGING MARKETS: Increase confirmations to 4, keep RR at 2:1
// HIGH VOLATILITY: Increase volatility multiplier to 1.5-2.0
// LOW VOLATILITY: Decrease volatility multiplier to 0.8-1.0
Evening Star Detector (VDS)This is a great indicator for a reversal. After the close of the previous Evening star candle, expect a position for the next fifteen minutes in the opposite direction. This is a method that was discovered by @VicDamoneSean on twitter. Created by @dani_spx7 and @yan_dondotta on twitter. This indicator has been back tested.
Volume Imbalance Heatmap + Delta Cluster [@darshakssc]🔥 Volume Imbalance Heatmap + Delta Cluster
Created by: @darshakssc
This indicator is designed to visually reveal institutional pressure zones using a combination of:
🔺 Delta Cluster Detection: Highlights candles with strong body ratios and volume spikes, helping identify aggressive buying or selling activity.
🌡️ Real-Time Heatmap Overlay: Background color dynamically adjusts based on volume imbalance relative to its moving average.
🧠 Adaptive Dashboard: Displays live insights into current market imbalance and directional flow (Buy/Sell clusters).
📈 How It Works:
A candle is marked as a Buy Cluster if it closes bullish, has a strong body, and exhibits a volume spike above average.
A Sell Cluster triggers under the inverse conditions.
The heatmap shades the chart background to reflect areas of high or low imbalance using a color gradient.
⚙️ Inputs You Can Adjust:
Volume MA Length
Minimum Body Ratio
Imbalance Multiplier Sensitivity
Dashboard Location
🚫 Note: This is not a buy/sell signal tool, but a visual aid to support institutional flow tracking and confluence with your existing system.
For educational use only. Not financial advice.
EMA + SMA - R.AR.A. Trader - Multi-MA Suite (EMA & SMA)
1. Overview
Welcome, students of R.A. Trader!
This indicator is a powerful and versatile tool designed specifically to support the trading methodologies taught by Rudá Alves. The R.A. Trader Multi-MA Suite combines two fully customizable groups of moving averages into a single, clean indicator.
Its purpose is to eliminate chart clutter and provide a clear, at-a-glance view of market trends, momentum, and dynamic levels of support and resistance across multiple timeframes. By integrating key short-term and long-term moving averages, this tool will help you apply the R.A. Trader analytical framework with greater efficiency and precision.
2. Core Features
Dual Moving Average Groups: Configure two independent sets of moving averages, perfect for separating short-term (EMA) and long-term (SMA) analysis.
Four MAs Per Group: Each group contains four fully customizable moving averages.
Multiple MA Types: Choose between several types of moving averages for each group (SMA, EMA, WMA, HMA, RMA).
Toggle Visibility: Easily show or hide each group with a single click in the settings panel.
Custom Styling: Key moving averages are styled for instant recognition, including thicker lines for longer periods and a special dotted line for the 250-period SMA.
Clean and Efficient: The code is lightweight and optimized to run smoothly on the TradingView platform.
Group 1 (Default: EMAs)
This group is pre-configured for shorter-term Exponential Moving Averages but is fully customizable.
Setting Label Description
MA Type - EMA Select the type of moving average for this entire group (e.g., EMA, SMA).
EMA 5 Sets the period for the first moving average.
EMA 10 Sets the period for the second moving average.
EMA 20 Sets the period for the third moving average.
EMA 400 Sets the period for the fourth moving average.
Show EMA Group A checkbox to show or hide all MAs in this group.
Exportar para as Planilhas
Group 2 (Default: SMAs)
This group is pre-configured for longer-term Simple Moving Averages, often used to identify major trends.
Setting Label Description
MA Type - SMA Select the type of moving average for this entire group.
SMA 50 Sets the period for the first moving average.
SMA 100 Sets the period for the second moving average.
SMA 200 Sets the period for the third moving average.
SMA 250 Sets the period for the fourth moving average (styled as a dotted line).
Show SMA Group A checkbox to show or hide all MAs in this group.
Exportar para as Planilhas
SPX Futures Momentum Detector (MVP Enhanced)Our SPX Futures Momentum Detector is a precision trading tool built for professional futures and options traders.
Optimized for SPX and ES/MES futures, this indicator identifies high probability momentum entries, filters noise, and provides clear CALL/PUT signals for rapid decision-making.
It layers proprietary filters to reduce false positives in volatile or choppy conditions.
This enhanced version leverages our proprietary MVP Momentum framework, incorporating Renko-style brick simulation and momentum confirmation layers.
It is designed for scalping and short-term swing strategies in highly liquid markets.
**Key Features**
• Proprietary momentum detection logic
• Optimized for 5m, 15m, and Renko charts
• Works with SPX, ES, and MES futures contracts and any highly liquid option contracts
• CALL/PUT labeling with A+ setup classification (Hot CALL Signal)
• Zero repaint logic for reliable backtesting
**What it does**
• Detects momentum inflections on SPX/ES/MES using a Renko-style brick simulation + dual EMA context.
• Designed for 1m–5m timeframes; exceptional clarity on Line Break charts.
• Signals: CALL (momentum up), PUT (momentum down). No lookahead; signals print on confirmed bar close.
**How to use**
• Recommended charts: SPX, ES, MES (futures) or any highly liquid options charts.
• Recommended chart types: Line Break for clarity; standard candles for entry points.
• Timeframes: 1m or 5m (scalping to intraday).
• Add alerts: “CALL Signal” and “PUT Signal”, set to “Once per bar close.”
**Inputs explained**
• Fast EMA / Slow EMA – Short/medium trend filters for momentum context.
• Renko Box Size ($) – Sensitivity of the brick simulation (larger = fewer but higher-quality signals).
• Confirmation Bars – Ensures price follow-through (filters weak trends).
• Volume Breakout Multiplier – Confirms breakouts with significant volume increase.
• Consolidation Bars – Filters out sideways action before a momentum shift.
**Risk & limitations**
• Momentum tools perform best in trending sessions. Expect fewer clean signals in chop.
• No guarantees of profit. Use with your own risk management and exit plan.
• Backtest across multiple regimes (trend, post-FOMC, month-end) before live use.
**Best practices**
• Pair with optional companion exit logic for trade management.
• Use alerts at bar close to avoid noise.
• Not recommended for full automation yet: validate broker fills, slippage, and latency.
**Disclaimers**
• Educational tool. Not financial advice. Past performance ≠ future results.
• We do not guarantee outcomes, you are responsible for your trades.
**Changelog**
v1.0 – Initial invite-only release (MVP Enhanced): Renko-style momentum + EMA filters, bar-close alerts, repaint safe security calls.
Weekly Expected Move (Daily Chart)This Indicator plots the Weekly Expected Move with selectable Historical Volatility or user entered IV for Weekly IV (This can be found on Option Chain of a trading platform). This Indicator should be used on Daily Charts.
0DTE Credit Spreads IndicatorDescription:
This indicator is designed for SPX traders operating on the 15-minute timeframe, specifically targeting 0 Days-to-Expiration (0DTE) options with the intention to let them expire worthless.
It automatically identifies high-probability entry points for Put Credit Spreads (PCS) and Call Credit Spreads (CCS) by combining intraday price action with a custom volatility filter.
Key Features:
Optimized exclusively for SPX on the 15-minute chart.
Intraday volatility conditions adapt based on real-time VIX readings, allowing credit expectations to adjust to market environment.
Automatic visual labeling of PCS and CCS opportunities.
Built-in stop loss level display for risk management.
Optional same-day PCS/CCS signal allowance.
Fully adjustable colors and display preferences.
How It Works (Concept Overview):
The script monitors intraday momentum, relative volatility levels, and proprietary pattern recognition to determine favorable spread-selling conditions.
When conditions align, a PCS or CCS label appears on the chart along with a stop loss level.
VIX is used at the moment of signal to estimate the ideal option credit range.
Recommended Use:
SPX only, 15-minute timeframe.
Intended for 0DTE options held to expiration, though you may take profits earlier based on your own strategy.
Works best during regular US market hours.
Disclaimer:
This script is for informational and educational purposes only and is not financial advice. Trading options carries risk. Always perform your own analysis before entering a trade.
Index Options Expirations and Calendar EffectsFeatures
- Highlights monthly equity options expiration (opex) dates.
- Marks VIX options expiration dates based on standard 30-day offset.
- Shows configurable vanna/charm pre-expiration window (green shading).
- Shows configurable post-opex weakness window (red shading).
- Adjustable colors, start/end offsets, and on/off toggles for each element.
What this does
This overlay highlights option-driven calendar windows around monthly equity options expiration (opex) and VIX options expiration. It draws:
- Solid blue lines on the third Friday of each month (typical monthly opex).
- Dashed orange lines on the Wednesday ~30 days before next month’s opex (typical VIX expiration schedule).
- Green shading during a pre-expiration window when vanna/charm effects are often strongest.
- Red shading during the post-expiration "window of non-strength" often observed into the Tuesday after opex.
How it works
1. Monthly opex is detected when Friday falls between the 15th–21st of the month.
2. VIX expiration is calculated by finding next month’s opex date, then subtracting 30 calendar days and marking that Wednesday.
3. Vanna/charm window (green) : starts on the Monday of the week before opex and ends on Tuesday of opex week.
4. Post-opex weakness window (red) : starts Wednesday of opex week and ends Tuesday after opex.
How to use
- Add to any chart/timeframe.
- Adjust inputs to toggle VIX/opex lines, choose colors, and fine-tune the start/end offsets for shaded windows.
- This is an educational visualization of typical timing and not a trading signal.
Limitations
- Exchange holidays and contract-specific exceptions can shift expirations; this script uses standard calendar rules.
- No forward-looking data is used; all dates are derived from historical and current bar time.
- Past patterns do not guarantee future behavior.
Originality
Provides a single, adjustable visualization combining opex, VIX expiration, and configurable vanna/charm/weakness windows into one tool. Fully explained so non-coders can use it without reading the source code.
Franco Varacalli binary options |ENGLISH|
What if you could know, with mathematical precision, when your trades have the highest probability of success?
Franco V. ~ Stats is not just an indicator: it’s a real-time performance tracking and analysis system that transforms price action into clear, actionable metrics.
🔍 What it does
It analyzes candle sequences and detects changes in price dynamics, filtering opportunities according to your settings (buy only, sell only, or both). From there, it records each entry, counts wins and losses, and calculates success probabilities for different scenarios.
🛠 How it works (core concepts)
-Evaluates proportional relationships between open, close, high, and low prices.
-Detects shifts in the balance of buying/selling pressure.
-Classifies trades by the number of prior consecutive losses.
-Calculates success probabilities based on accumulated historical data.
📈 What you get
-On-chart table showing entries, wins, losses, and win percentage.
-Dynamic colors to instantly spot the best-performing scenarios.
-Optional arrows marking moments when conditions are met.
-Filters and thresholds to adapt the analysis to your trading style.
💡 How to use it
-Set your preferred signal type and consecutive loss threshold.
-Monitor the table to see which sequences show higher probability.
-Use the signals as a reference and confirm with your own technical analysis.
⚠ Disclaimer: This tool is designed for market analysis and performance tracking. It should be used in combination with your own research, risk management, and decision-making process.
Franco Varacalli
Straddle Charts - Live (Enhanced)Track options straddles with ease using the Straddle Charts - Live (Enhanced) indicator! Originally inspired by @mudraminer, this Pine Script v5 tool visualizes live call, put, and straddle prices for instruments like BANKNIFTY. Plotting call (green), put (red), and straddle (black) prices in a separate pane, it offers real-time insights for straddle strategy traders.
Key Features:
Live Data: Fetches 1-minute (customizable) option prices with error handling for invalid symbols.
Price Table: Displays call, put, straddle prices, and percentage change in a top-left table.
Volatility Alerts: Highlights bars with straddle price changes above a user-defined threshold (default 5%) with a yellow background and concise % labels.
Robust Design: Prevents plot errors with na checks and provides clear error messages.
How to Use: Input your call/put option symbols (e.g., NSE:NIFTY250814C24700), set the timeframe, and adjust the volatility threshold. Monitor straddle costs and volatility for informed trading decisions.
Perfect for options traders seeking a simple, reliable tool to track straddle performance. Check it out and share your feedback!
13/48 EMA Trading Scalper (ATR TP/SL)13/48 EMA Trading Scalper (ATR TP/SL)
What it does:
This tool looks for price “touches” of the 13-EMA, only takes CALL entries when the 13 is above the 48 (uptrend) and PUT entries when the 13 is below the 48 (downtrend), and confirms with a simple candle pattern (green > red with expansion for calls, inverse for puts). Touch sensitivity is ATR-scaled, so signals adapt to volatility. Each trade gets auto-drawn entry, TP, and SL lines, colored labels with $ / % distance from entry, plus optional TP/SL hit alerts. A rotating color palette and per-bar label staggering help keep the chart readable. Old objects are auto-pruned via maxTracked.
How it works
Trend filter: 13-EMA vs 48-EMA.
Entry: ATR-scaled touch of the 13-EMA + candle confirmation.
Risk: TP/SL = ATR multiples you control.
Visuals: Entry/TP/SL lines (extend right), vertical entry marker (optional), multi-line labels.
Hygiene: maxTracked keeps only the last N trades’ objects; labels are staggered to reduce overlap.
Alerts: Buy Call, Buy Put, Take Profit Reached, Stop Loss Hit.
Key Inputs
Fast EMA (13), Trend EMA (48), ATR Length (14)
Touch Threshold (x ATR) – how close price must come to the EMA
Take Profit (x ATR), Stop Loss (x ATR)
maxTracked – number of recent trades to keep on chart
Tips
Start with Touch = 0.10–0.20 × ATR; TP=2×ATR, SL=1×ATR, then tune per symbol/timeframe.
Works on intraday and higher TFs; fewer, cleaner signals on higher TFs.
This is an indicator, not a broker—always backtest and manage risk.
Refined EMA Break Buy/Sell Signalspowerful indicator based on 5EMA for sell at 5 min tf and buy at 15min tf.
Entry Pro Sniper Zone V4Gold traders of all styles — both short-term (Scalping/Day Trading) and long-term (Swing Trading)
Those who want a “decision-support system” without having to stare at the screen all day
Traders who want to boost their confidence with clear entry and exit points
🔒 Key Features:
High accuracy with advanced zone analysis
Instantly see entry/exit points with a ready-made plan — no manual drawing needed
Easy to use for beginners, yet powerful enough for professionals