EMA+RSI Strong Confirmed Signals//@version=5
indicator("EMA+RSI Strong Confirmed Signals", overlay=true)
// --- Индикаторы
ema100 = ta.ema(close, 100)
ema200 = ta.ema(close, 200)
rsi = ta.rsi(close, 14)
vol = ta.sma(volume, 20) // средний объём
// --- Фильтры тренда
isUptrend = ema100 > ema200
isDowntrend = ema100 < ema200
// --- Усиленные условия входа
longCondition = isUptrend and ta.crossover(close, ema100) and rsi < 28 and volume > vol * 1.5
shortCondition = isDowntrend and ta.crossunder(close, ema100) and rsi > 72 and volume > vol * 1.5
// --- Take Profit и Stop Loss уровни
tpLong = close * 1.03
slLong = close * 0.975
tpShort = close * 0.97
slShort = close * 1.025
// --- Отображение на графике
plot(ema100, color=color.orange, title="EMA 100")
plot(ema200, color=color.red, title="EMA 200")
plot(longCondition ? tpLong : na, title="TP LONG", color=color.green)
plot(longCondition ? slLong : na, title="SL LONG", color=color.red)
plot(shortCondition ? tpShort : na, title="TP SHORT", color=color.green)
plot(shortCondition ? slShort : na, title="SL SHORT", color=color.red)
plotshape(longCondition, location=location.belowbar, color=color.lime, style=shape.labelup, text="STRONG LONG")
plotshape(shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="STRONG SHORT")
// --- Alertconditions для webhook
alertcondition(longCondition, title="STRONG LONG Signal", message='{"chat_id": "@exgosignal", "text": "{{ticker}} STRONG LONG сигнал по цене {{close}} (TP 3%, SL -2.5%)"}')
alertcondition(shortCondition, title="STRONG SHORT Signal", message='{"chat_id": "@exgosignal", "text": "{{ticker}} STRONG SHORT сигнал по цене {{close}} (TP 3%, SL -2.5%)"}')
Indicatori e strategie
NQ1! Scalping Indicator v6NQ1! Scalping Indicator v6 — Fast & Reliable Entry Signals
This custom scalping indicator is built for intraday traders who scalp the Nasdaq-100 E-mini Futures (NQ1!), especially on 1-minute and 5-minute charts.
It combines three powerful components to deliver high-probability entry signals:
✅ Key Features:
Trend Detection: Uses a fast/slow EMA crossover to identify trend direction.
Momentum Confirmation: A short-period RSI ensures signals align with momentum, filtering out weak entries.
Volatility Filter: ATR-based logic confirms the market is volatile enough to justify a scalp trade—reducing noise during sideways chop.
🟢 Buy Signal:
Fast EMA crosses above Slow EMA
RSI is rising (between 50–70)
ATR is above the threshold
🔴 Sell Signal:
Fast EMA crosses below Slow EMA
RSI is falling (between 50–30)
ATR is above the threshold
📍 Visuals:
Green ⬆ arrows for buy entries
Red ⬇ arrows for sell entries
Background shading highlights valid trade zones
🔔 Alerts:
Built-in alert conditions for Buy and Sell signals—perfect for real-time notifications.
Optimized for fast-paced scalping with discipline and clarity.
Pair it with proper risk management and you'll have a reliable assistant in volatile markets like NQ1!.
FRP Options Risk CalculatorThe Options Risk Calculator V1.0 is a fast, visual tool designed to help options traders evaluate position sizing, risk exposure, and profit targets in real-time.
🔹 Features:
- Contract-based entry price
- User-defined quantity, stop loss %, and take profit %
- Per-contract and total value breakdown
- Dynamic, color-coded table display
- Adjustable colors to match your theme
📘 How to Use:
1. Set your contract price (e.g. 2.50 = $250)
2. Enter how many contracts you’re buying
3. Set your Stop Loss % (e.g. 21%) and Target % (e.g. 30%)
4. View the on-screen table
→ It updates live with dollar values per contract and total risk/reward
⚠️ Note: This tool is for planning and visualization purposes only. It does not execute or suggest trades.
Source code is protected.
ATR% Multiple Line&TF By NorawitMTF ATR in Percentage
Multiple Line and Timeframe for differences analysis,can change color in any line
ATR % = ATR(n)/Close*100
Wait for Develop more functions
Enjoy
Indicatore PAC con Dividendi v3Indicator created to estimate long-term investment on distribution ETFs. With start and end date, and estimated coupon.
It arises from the need to create a portfolio that generates a cash flow to be passed on as an inheritance, a buy and hold. I hope it can be of help to others.
BaseSignalsBaseSignals just for testing. This script finds simple buy and sell signals. To be developed.
Multi-Timeframe Analysis Table with SMA CrossThis script creates a multi-timeframe analysis tool for technical trading in TradingView. It displays a comprehensive table that helps traders analyze price action across different timeframes simultaneously.
Core Functionality
The script generates a table with five columns:
Label column: Shows indicator names and section titles
Current timeframe: Analysis for the chart's current timeframe
Higher timeframe 1: Analysis for first higher timeframe (default: 60min)
Higher timeframe 2: Analysis for second higher timeframe (default: 4h)
Higher timeframe 3: Analysis for third higher timeframe (default: Daily)
Key Components
Technical Indicators
The table displays values for four technical indicators across all timeframes:
RSI (Relative Strength Index): Measures momentum and identifies overbought/oversold conditions
MACD (Moving Average Convergence Divergence): Trend-following momentum indicator
VMC (Volatility-based Mean Reversion): Custom oscillator for mean reversion signals
TRIX: Triple exponential average indicator showing percent rate-of-change
Trading Recommendations
The script calculates trading recommendations by:
Checking if SMA1 (fast) is above/below SMA2 (slow) to determine trend direction
Calculating an indicator score based on RSI, MACD, VMC, and TRIX values
Combining trend confirmation with indicator score to generate recommendations:
BUY: Bullish trend with positive indicator score
SELL: Bearish trend with negative indicator score
WAIT: Positive indicator score but no bullish confirmation
NEUTRAL: No clear signal
Support/Resistance Levels
The script identifies key support and resistance levels for each timeframe using a pivot-based algorithm that:
Finds significant price pivots within a lookback period
Groups nearby pivots into channels/zones
Displays the most significant S/R level for each timeframe
Trend Confirmation
The final row shows the overall trend direction based on SMA crossovers:
Bullish: When the faster SMA is above the slower SMA
Bearish: When the faster SMA is below the slower SMA
Unstable: When there's no clear direction
User Customization
The script offers extensive customization options:
Toggle which timeframes to display
Adjust SMA periods for each timeframe
Set threshold levels for all indicators
Customize support/resistance detection parameters
Change the table's position, colors, opacity, and border settings
Practical Use
Traders can use this table to:
Identify alignment across multiple timeframes (stronger signals when all timeframes agree)
Spot divergences between timeframes (potential trend changes)
Make more informed trading decisions with comprehensive technical analysis in a single view
Find key support/resistance levels relevant to different trading horizons
FeraTrading Breakout Indicator v1.3The FeraTrading Breakout Indicator is built for universal compatibility, working seamlessly across all tickers and timeframes. The indicator is engineered to anticipate potential breakout opportunities by combining volatility filtering with initial support and resistance detection.
A distinct yellow line is plotted to represent key support or resistance zones when a breakout signal is generated. These levels help confirm directional bias and provide a visual anchor for potential entries, exits, or support/resistance levels.
By combining volatility cues with structural price levels, this indicator offers traders a reliable tool for identifying trend initiation and momentum shifts with clarity and precision.
Indicator Settings:
First Trade Only - display only the first signal of the day (Which is usually the strongest) or every signal of the day.
Spike Filter - filter signals to only show when candles are more aggressive than normal.
Spike Lookback Length - the amount of bars behind, the Spike filter will use to compare to the current bar. This is a value input.
Dynamic Arrow Strictness - increase this value to decrease arrow probability and vice versa. This is a value input.
Alerts are included.
Arrow Calculation:
Takes the strongest support and resistance level from the session, then uses a price related value to adjust these levels to their true support and resistance level. After this, arrows are only shown when they meet our custom spike filter criteria. This is calculated using a custom candlestick analysis value smoothed over a period. Additionally, we use SMA's of candlestick features that the arrows must follow correctly in order to be painted.
Model+ - Trendlines Only// === Model+ Trendlines (Support/Resistance) ===
//@version=5
indicator("Model+ - Trendlines Only", overlay=true)
// Input parameters
pivotLookback = input.int(10, title="Pivot Lookback", minval=1)
minTouches = input.int(2, title="Minimum Touches for Trendline", minval=2)
// === Identify Highs and Lows ===
ph = ta.pivothigh(high, pivotLookback, pivotLookback)
pl = ta.pivotlow(low, pivotLookback, pivotLookback)
// === Store trendline candidate points ===
var line supportLines = array.new_line()
var line resistanceLines = array.new_line()
// === Function: draw horizontal level if repeated ===
plotSupportLevel(_price, _color) =>
line.new(x1=bar_index - pivotLookback, y1=_price, x2=bar_index, y2=_price, extend=extend.right, color=_color, width=1)
// === Find repeating lows (support) ===
var float supportLevels = array.new_float()
if pl
level = low
count = 0
for i = 0 to array.size(supportLevels) - 1
if math.abs(level - array.get(supportLevels, i)) <= syminfo.mintick * 20
count := count + 1
if count == 0
array.push(supportLevels, level)
plotSupportLevel(level, color.green)
// === Find repeating highs (resistance) ===
var float resistanceLevels = array.new_float()
if ph
level = high
count = 0
for i = 0 to array.size(resistanceLevels) - 1
if math.abs(level - array.get(resistanceLevels, i)) <= syminfo.mintick * 20
count := count + 1
if count == 0
array.push(resistanceLevels, level)
plotSupportLevel(level, color.red)
// === Notes ===
// This code marks horizontal support and resistance levels based on pivot points.
// It adapts automatically to different timeframes, showing relevant levels for each.
// Next step: add diagonal trendlines (ascending/descending) and pattern recognition.
Reversal Pro IndicatorReversal Pro Indicator
Buy-Sell indicator.
A. Long entry on Buy Hold till sell Signal
B. Long exit on Sell Signal
c. Short entry on Sell signal hold till buy signal
d. Short Exit on Buy signal
EMA 8/120 Crossover + RSI Filter with BandsDescription:
This indicator is designed to detect trend direction and generate Buy/Sell signals based on the crossover of two exponential moving averages (EMA 8 and EMA 120), with confirmation from the RSI 14 momentum filter. It visually enhances entries using dynamic color bands and signal labels.
🔍 Key Features:
📈 EMA 8 (Fast) and EMA 120 (Slow) are plotted on the chart to track market trends.
✅ Buy Signal: Triggered when EMA 8 crosses above EMA 120 and RSI is above 50.
❌ Sell Signal: Triggered when EMA 8 crosses below EMA 120 and RSI is below 50.
🎨 Dynamic Signal Band:
A green band fills the area between EMA 8 and EMA 120 when in a Buy state.
A red band fills the area between EMA 8 and EMA 120 when in a Sell state.
The band updates live and flips color based on the current trend direction.
🔔 Buy/Sell Labels appear directly on the chart for easy identification of trade entries.
🧠 Use Case:
This indicator is ideal for trend-following strategies, especially for intraday or swing trading. The RSI filter helps reduce false signals by ensuring momentum aligns with the crossover direction.
711. CandleStreak & %Changeas you can see, percentage changes and candle streak r counting and show the label on chart
SPY, NQ, SPX, ES Live Prices (Customizable)This indicator lets you see the most popular S&P tickers on any chart.
Currently shows SPY, NQ, SPX, and ES
911. CandleStreak Alarm & %Changethis helps you to set alarm on candle streaks. you can also change the number and colors of streak labels. and change the percentage labels too.
Volume RSI - VRSIIntroduction:
This oscillator uses the RSI formula, but instead of calculating based on the difference between candle closes, it utilizes volume data. This allows users to identify divergences between volume and price.
Compared to the traditional RSI, it reacts faster, but may not be as precise—making it most effective when used alongside the standard RSI.
How you use this oscillator depends entirely on your strategy and trading approach.
I recommend analyzing this oscillator together with the classic RSI to gain a better understanding and improve your market insight.
Features:
Ability to display reverse divergences
Option to add a traditional RSI with a custom length
Ability to choose which RSI to smooth
Option to toggle the visibility of either RSI
If you need the source code for this indicator, feel free to message me on Telegram:
🔗 @OxAlireza200
MACD_DIXCHANGE with Divergences and Target PricesSummary
This indicator is an advanced momentum oscillator, inspired by the work of DAVIDGLZ. It is designed to help traders visualize the strength and direction of the current trend, identify potential market exhaustion or turning points through automatic divergence detection, and provides key reference levels and price estimates for a more comprehensive analysis.
Main Tools and Features
Main Oscillator: The colored line that fluctuates above and below a central zero line.
· Its position (above/below zero) indicates the general direction of momentum
(bullish/bearish).
· Its color changes gradually (typically green/lime for bullish, red/maroon for bearish) and
can suggest the strength of that momentum.
Signal Line: A smoothed version (moving average) of the main line. Crossovers between the main line and the signal line are key events that can generate early warning signals of potential changes.
Histogram (MACD Style): The vertical bars representing the difference (strength) between the Main Oscillator and its Signal Line.
· The height of the bars indicates the magnitude of the difference.
· Its colors change to help visualize whether momentum is accelerating (brighter colors like
Lime Green or Red) or decelerating (darker colors like Green or Maroon).
Key Horizontal Levels: Three reference lines: an Upper Level, a Lower Level (both user-configurable), and the central Zero Line. The area between the upper and lower levels is shaded, creating a visual "operating zone". These levels help identify when the oscillator reaches zones considered relatively over-extended.
Crossover Alerts: Small visual triangles (green for bullish crossover, red for bearish) that mark exactly when the Main Oscillator crosses its Signal Line.
Automatic Divergence Detector: A powerful tool that compares price movement with the Histogram's movement to find discrepancies:
· Detects Regular Bullish Divergences: Price makes lower lows, but the Histogram makes higher lows (potential bottom).
· Detects Regular Bearish Divergences:Price makes higher highs, but the Histogram makes lower highs (potential top).
Divergence Visualization: When a divergence is detected, it automatically draws:
· A dotted line directly on the Histogram connecting the two relevant lows (bullish) or highs (bearish) that form the divergence.
·A small "DIV" text label positioned centered on the midpoint of that dotted divergence line.
Estimated Price Labels: Very useful contextual information displayed to the right of the indicator (only on the last chart bar):
· Shows the approximate price the asset would need to reach right now for the Main Oscillator to touch the Upper Level (H ≈ ...), the Lower Level (L ≈ ...), the Zero Line (Mid ≈ ...), or the crossover point with the Signal Line (Cruce ≈ / Cross ≈ ...). These are dynamic estimates, not fixed predictions.
· Optional Background Color ("Double Peak" Pattern): (If enabled in settings) The indicator's panel background changes to green or red to highlight a specific condition: when the histogram forms two impulses ("mountains") in the same direction, and the second impulse begins to show signs of exhaustion by retreating towards zero.
·Information Panel: Displays the stylized name of the indicator in the bottom-right corner.
How to Interpret and Use the Tools
· Trend and Momentum: Use the Main Oscillator's position (above/below zero) and its crossovers with the Signal Line as basic directional indicators. Confirm strength and acceleration with the Histogram.
· Reversal Signals: Divergences are key signals of potential trend exhaustion. A bullish divergence after a downtrend, or a bearish divergence after an uptrend, warns of a possible change in direction. Important: Do not trade divergences alone; always seek confirmation (price action, patterns, other indicators).
· Extreme Conditions: Use the Upper and Lower Levels as guides to identify when the indicator reaches relatively overextended zones, where a pullback or pause might be more likely.
· Price Context: The Estimated Price Labels help you relate the indicator's levels to specific price points on the asset in the current moment.
· Exhaustion Signal (Background): If the background color feature is active, use it as an additional alert that a secondary push in the histogram might be failing.
Configuration
The indicator offers a wide range of customizable settings via its Inputs:
· Adjust the "speed" or sensitivity of the Main Oscillator (by changing its Moving Average settings).
· Adjust the smoothing of the Signal Line.
· Define your own Upper and Lower Horizontal Levels.
· Adjust the sensitivity of Divergence detection (by changing pivot parameters).
· Enable or disable most visual features (divergence lines/labels, price labels, optional
background color).
"This indicator is intended for use on timeframes of 3 minutes or higher and comes pre-configured with functional default settings. Modifying these settings may alter the original intended functionality of the indicator."
Disclaimer
This indicator is a tool for technical analysis and should not be considered investment advice or an infallible signal. Trading involves risks. Use this indicator as part of a well-defined trading strategy, alongside other analysis tools and proper risk management. Always conduct your own research.
Credits
Based on the original concept "Insane MACD_DIXCHANGE" by DAVIDGLZ, with multiple enhancements and added functionalities during development.
This English version should effectively convey the indicator's features and usage on TradingView.
shogirtlarim uchunIndicator: Shogirtlarim uchun
This is a professional trading tool designed to detect high-probability BUY and SELL zones using an adaptive range system based on ATR (Average True Range).
🔹 Features:
Automatically plots dynamic upper and lower channel boundaries.
Sends BUY signals when the price exits the lower zone, and SELL signals when exiting the upper zone.
Optional signal filtering based on trend direction.
Detects and marks potential fakeouts.
Cooldown logic to prevent frequent signals.
⚙️ Works best on intraday timeframes (1m to 1h), especially on volatile assets like XAUUSD, BTCUSD, NASDAQ, etc.
📌 Backtest and demo before using live. For educational and informational purposes only.
AlgoRanger Supply & Demand Zones/@version=5
indicator(" AlgoRanger Supply & Demand Zones", overlay=true, max_boxes_count = 500)
//inputs
candleDifferenceScale = input.float(defval = 1.8, minval = 1, title = 'Zone Difference Scale', tooltip = 'The scale of how much a candle needs to be larger than a previous to be considered a zone (minimum value 1.0, default 1.😎', group = 'Zone Settings')
zoneOffset = input.int(defval = 15, minval = 0, title="Zone Extension", group = 'Display Settings', tooltip = 'How much to extend zones to the right of latest bar in bars')
displayLowerTFZones = input.bool(false, title="Display Lower Timeframe Zones", group = 'Display Settings', tooltip = 'Whether to or not to display zones from a lower timeframe (ie. 2h zones on 4h timeframe, Recommended OFF)')
supplyEnable = input(true, title = "Enable Supply Zones", group = "Zone Personalization")
supplyColor = input.color(defval = color.rgb(242, 54, 69, 94), title = 'Supply Background Color', group = 'Zone Personalization')
supplyBorderColor = input.color(defval = color.rgb(209, 212, 220, 90), title = 'Supply Border Color', group = 'Zone Personalization')
demandEnable = input(true, title = "Enable Demand Zones", group = "Zone Personalization")
demandColor = input.color(defval = color.rgb(76, 175, 80, 94), title = 'Demand Background Color', group = 'Zone Personalization')
demandBorderColor = input.color(defval = color.rgb(209, 212, 220, 80), title = 'Demand Border Color', group = 'Zone Personalization')
textEnable = input(true, title = "Display Text", group = 'Text Settings')
displayHL = input.bool(false, title="Display High/Low", group = 'Text Settings', tooltip = 'Whether to or not to display the tops and bottoms of a zone as text (ie. Top: 4000.00 Bottom: 3900.00)')
textColor = input.color(defval = color.rgb(255, 255, 255), title = 'Text Color', group = 'Text Settings')
textSize = input.string("Small", title="Text Size", options= , group = 'Text Settings')
halign = input.string("Right", title="Horizontal Alignment", options= , group = 'Text Settings')
supplyValign = input.string("Bottom", title="Vertical Alignment (Supply)", options= , group = 'Text Settings')
demandValign = input.string("Top", title="Vertical Alignment (Demand)", options= , group = 'Text Settings')
display30m = input.bool(true, title="Show 30m Zones", group = 'Timeframe Options')
display45m = input.bool(true, title="Show 45m Zones", group = 'Timeframe Options')
display1h = input.bool(true, title="Show 1h Zones", group = 'Timeframe Options')
display2h = input.bool(true, title="Show 2h Zones", group = 'Timeframe Options')
display3h = input.bool(true, title="Show 3h Zones", group = 'Timeframe Options')
display4h = input.bool(true, title="Show 4h Zones", group = 'Timeframe Options')
displayD = input.bool(false, title="Show 1D Zones", group = 'Timeframe Options')
displayW = input.bool(false, title="Show 1W Zones", group = 'Timeframe Options')
// variables
currentTimeframe = timeframe.period
if currentTimeframe == 'D'
currentTimeframe := '1440'
if currentTimeframe == 'W'
currentTimeframe := '10080'
if displayLowerTFZones
currentTimeframe := '0'
momentCTD = math.round(time(timeframe.period) + (zoneOffset * 60000 * str.tonumber(currentTimeframe)))
textSize := switch textSize
"Auto" => size.auto
"Tiny" => size.tiny
"Small" => size.small
"Normal" => size.normal
"Large" => size.large
"Huge" => size.huge
halign := switch halign
'Left'=> text.align_left
'Center' => text.align_center
'Right' => text.align_right
supplyValign := switch supplyValign
'Bottom'=> text.align_bottom
'Center' => text.align_center
'Top' => text.align_top
demandValign := switch demandValign
'Bottom'=> text.align_bottom
'Center' => text.align_center
'Top' => text.align_top
var box supply_HT = array.new_box()
var box demand_HT = array.new_box()
//plotting zones
createSupplyDemandZones(timeframe) =>
= request.security(syminfo.tickerid, timeframe, [open , high , low , close ], lookahead = barmerge.lookahead_on)
timeframeFormatted = switch timeframe
'1' => '1m'
'3' => '3m'
'5' => '5m'
'16' => '15m'
'30' => '30m'
'45' => '45m'
'60' => '1h'
'120' => '2h'
'180' => '3h'
'240' => '4h'
'D' => '1D'
'W' => '1W'
redCandle_HT = close_HT < open_HT
greenCandle_HT = close_HT > open_HT
neutralCandle_HT = close_HT == open_HT
candleChange_HT = math.abs(close_HT - open_HT)
var float bottomBox_HT = na
var float topBox_HT = na
momentCTD_HT = time(timeframe)
if (((redCandle_HT and greenCandle_HT ) or (redCandle_HT and neutralCandle_HT )) and (candleChange_HT / candleChange_HT ) >= candleDifferenceScale and barstate.isconfirmed and supplyEnable and close_HT >= close_HT and open_HT <= open_HT)
if displayHL
timeframeFormatted := timeframeFormatted + ' Top: ' + str.tostring(topBox_HT) + ' Bottom: ' + str.tostring(open_HT )
if high_HT >= high_HT
topBox_HT := high_HT
else
topBox_HT := high_HT
box supply = box.new(left=momentCTD_HT, top=topBox_HT, right=momentCTD, bgcolor=supplyColor, bottom=open_HT , xloc=xloc.bar_time)
box.set_border_color(supply, supplyBorderColor)
if textEnable
box.set_text(supply, timeframeFormatted)
box.set_text_size(supply, textSize)
box.set_text_color(supply, textColor)
box.set_text_halign(supply, halign)
box.set_text_valign(supply, supplyValign)
array.push(supply_HT, supply)
if (((greenCandle_HT and redCandle_HT ) or (greenCandle_HT and neutralCandle_HT )) and (candleChange_HT / candleChange_HT ) >= candleDifferenceScale and barstate.isconfirmed and demandEnable and close_HT <= close_HT and open_HT >= open_HT)
if displayHL
timeframeFormatted := timeframeFormatted + ' Top: ' + str.tostring(open_HT ) + ' Bottom: ' + str.tostring(bottomBox_HT)
if low_HT <= low_HT
bottomBox_HT := low_HT
else
bottomBox_HT := low_HT
box demand = box.new(left=momentCTD_HT, top=open_HT , right=momentCTD, bottom=bottomBox_HT, bgcolor=demandColor, xloc=xloc.bar_time)
box.set_border_color(demand, demandBorderColor)
if textEnable
box.set_text(demand, timeframeFormatted)
box.set_text_size(demand, textSize)
box.set_text_color(demand, textColor)
box.set_text_halign(demand, halign)
box.set_text_valign(demand, demandValign)
array.push(demand_HT, demand)
// initiation
// remove comments to add these zones to the chart (warning: this will break replay mode)
// if str.tonumber(currentTimeframe) <= 5
// createSupplyDemandZones('5')
//if str.tonumber(currentTimeframe) <= 15
// createSupplyDemandZones('15')
//if str.tonumber(currentTimeframe) <= 10
// createSupplyDemandZones('10')
//if str.tonumber(currentTimeframe) <= 15
// createSupplyDemandZones('15')
if display30m and str.tonumber(currentTimeframe) <= 30
createSupplyDemandZones('30')
if display45m and str.tonumber(currentTimeframe) <= 45
createSupplyDemandZones('45')
if display1h and str.tonumber(currentTimeframe) <= 60
createSupplyDemandZones('60')
if display2h and str.tonumber(currentTimeframe) <= 120
createSupplyDemandZones('120')
if display3h and str.tonumber(currentTimeframe) <= 180
createSupplyDemandZones('180')
if display4h and str.tonumber(currentTimeframe) <= 240
createSupplyDemandZones('240')
if displayD and str.tonumber(currentTimeframe) <= 1440
createSupplyDemandZones('D')
if displayW and str.tonumber(currentTimeframe) <= 10080
createSupplyDemandZones('W')
// remove broken zones
i = 0
while i < array.size(supply_HT) and array.size(supply_HT) > 0
box currentBox = array.get(supply_HT, i)
float breakLevel = box.get_top(currentBox)
if high > breakLevel
array.remove(supply_HT, i)
box.delete(currentBox)
int(na)
else
box.set_right(currentBox, momentCTD)
i += 1
int(na)
i2 = 0
while i2 < array.size(demand_HT) and array.size(demand_HT) > 0
box currentBox = array.get(demand_HT, i2)
float breakLevel = box.get_bottom(currentBox)
if low < breakLevel
array.remove(demand_HT, i2)
box.delete(currentBox)
int(na)
else
box.set_right(currentBox, momentCTD)
i2 += 1
int(na)
AAPL Covered Call + CSP Alerts (Enhanced)This is a work-in-progress tool designed to help identify ideal setups for selling covered calls (CC) and cash-secured puts (CSP) on Apple (AAPL) using price levels, volume confirmation, and moving average context.
📈 What It Does
🔴 CC SELL Alert
Triggers when:
Price breaks above a custom resistance level
A volume spike confirms momentum
Designed to catch strong upside pushes where call premiums are rich.
🟠 CC WATCH Alert
Triggers when:
Price is near the 200-day MA
Volume is elevated but there’s no breakout yet
A pre-alert to watch for potential call-selling setups near resistance.
🟢 CSP BUY Alert
Triggers when:
Price drops below a custom support level
A volume flush signals potential short-term capitulation
Meant to time CSP entries when downside panic sets in.
⚙️ Adjustable Settings
Input Description
ccPriceTrigger Resistance level to trigger CC SELL
ccVolumeMultiplier Volume threshold for CC confirmation
maProximityBuffer Distance from 200 MA to trigger WATCH
cspSupportLevel Support level to trigger CSP BUY
cspVolumeMultiplier Volume threshold for CSP confirmation
🧭 Timeframe + Expiration Guidelines
Timeframe Use Case Recommended Option Expirations
1H Primary strategy view 21–30 days to expiration
15m Scalping / fast alerts 7–14 DTE (more sensitive)
Daily Swing or macro setups 30–45+ DTE for stability
📣 Alerts (How-To)
This script supports TradingView alerts — just right-click any chart and choose:
"Add Alert" → Select one of the following conditions:
"AAPL CC SELL Alert"
→ Triggers when breakout and volume spike align
"AAPL CC WATCH Alert"
→ Triggers when price approaches 200 MA with volume
"AAPL CSP Alert"
→ Triggers when support breaks with high volume
These alerts are great for traders who want real-time notification when premium-selling setups form — whether you're at your desk or mobile.
🧠 Strategy Context
Built after months of active trading on AAPL, this script distills real trading lessons from volume-based breakouts and support flushes into a signal system for timing covered call and CSP entries. We found these triggers especially reliable when paired with option delta targeting and open interest zones.
Feel free to clone, fork, or improve. Suggestions welcome — this is a living tool.
VWAP Bounce + TP/SL ZonesWhat’s New in This Script:
Automatic Take Profit (TP) and Stop Loss (SL) levels based on:
Your entry candle
A customizable risk-to-reward ratio
Visual dotted lines for TP and SL
Optional disable signals if bounce is “too far” above VWAP
LeV Bull/Bear TP/SL v2🚀A utiliser pour du scalp ou du swing, utiliser le avec le RSI, MACD, ADX et le CHOP