Daily ATR SL/TP Labels on ChartATR-Based Stop Loss & Take Profit Calculator
This script calculates 20% of the Average True Range (ATR) to determine optimal Stop Loss and Take Profit levels. Designed to assist traders in setting precise risk parameters when placing Buy/Sell orders based on daily market volatility.
Key Features:
Computes 20% of ATR value for proportional risk management
Provides dynamic SL/TP levels aligned to current market conditions
Optimised for Daily timeframe analysis to capture full trading day range
Recommended Usage:
Apply on Daily (1D) timeframe for most accurate results, as this captures the complete intraday price movement and provides reliable volatility measurements for position sizing and risk management decisions.
Сферы применения Pine
Uni VWAP + EMA ScalperSimple VWAP + EMA crossover test script for personal use and signal experiments.
Prototype tool combining VWAP and EMA crossovers for testing trade timing. Not optimized for live trading.
Vortex with Cross Arrows (v6 — stable, sma sum)Vortex Indicators with Cross Arrows, Green cross when VI+ crossing up VI-, and red cross if VI+ crossing below VI-
Uni VWAP + EMA ScalperFor backtesting by small group. It's intended to synch and provide visual and audible alerts.
Luminous Glide Momentum Indicator [wjdtks255]This indicator, named "Customized SuperSmoother MA Oscillator," applies a smoothing filter to price data using a SuperSmoother technique to reduce noise and enhance signal clarity. It calculates two moving averages on the smoothed data—a fast and a slow—whose difference forms the oscillator line. A signal line is derived by smoothing the oscillator with another moving average. The histogram visualizes the divergence between the oscillator and signal lines, indicating momentum strength and direction.
How it works
SuperSmoother Filter: Reduces price noise to provide smoother and more reliable signals than raw data.
Fast and Slow Moving Averages: The fast MA reacts quicker to price changes, while the slow MA indicates longer trends.
Oscillator: The difference between the fast and slow MAs signals shifts in momentum.
Signal Line: A smoothed version of the oscillator used to generate crossovers.
Histogram: Displays the distance between the oscillator and signal line, with color changes indicating bullish or bearish momentum.
Trading Strategy
Buy Signal: When the oscillator crosses above the signal line, it suggests increasing upward momentum, signaling a potential buy opportunity.
Sell Signal: When the oscillator crosses below the signal line, it suggests increasing downward momentum, signaling a potential sell opportunity.
Histogram Size and Color: Larger green bars indicate stronger bullish momentum; larger red bars indicate stronger bearish momentum.
Usage Tips
Combine this oscillator with other indicators or price action analysis to confirm trading signals.
Adjust smoothing and moving average lengths according to your trading timeframe and the asset volatility.
Use proper risk management to filter out potential false signals common in oscillators.
Uni VWAP + EMA ScalperWe learn more through the mistakes we make than the victories we enjoy. This is a work in progress to align visual and audible guidance for scalping and swing trades.
Heikin Ashi Candle Color Change AlertThis is Heikin Ashi Candle Color Change Alert. Add it to your chart then create an Alert with your preferences. It indicates when a candle color change occurs.
Time Range HighlighterThis indicator highlights up to two custom time ranges on your chart with fully adjustable settings:
🔧 Features:
Define two separate time sessions
Set custom start and end times (in any time zone)
Choose unique highlight colors and opacity for each session
Toggle each range on or off independently
Timezone input allows syncing sessions to any global market hours (e.g., UTC, Asia/Tehran, New York)
🕒 Example Use Cases:
Highlight market opening hours (e.g. NYSE: 0930–1600)
Track your personal trading hours or peak volatility sessions
Visualize specific algorithm time filters
📌 Usage:
Enter your desired timezone string (e.g., "Asia/Tehran" or "Etc/UTC")
Customize session times like "0930-1200" and "1500-1700"
Adjust colors and visibility to fit your strategy
Ideal for traders who rely on time-based setups or session overlays.
X62 Stock Rating Tool股票评分系统
功能概述
这是一个自定义的股票综合评分系统,允许用户从基本面和技术面两个维度对股票进行评分。系统支持灵活的权重配置和项目自定义,并可根据需要选择显示不同类型的评分。
主要特性
· 分离显示选项 - 可选择单独显示基本面、技术面或综合评分
· 可自定义项目 - 6个基本面项目和6个技术面项目的标题均可自定义
· 权重评分系统 - 使用1-3级重要性权重和1-5分评分标准
· 可视化展示 - 在图表上显示评分趋势线和实时评分表格
· 智能评级 - 根据得分自动给出优秀、良好、一般、较差的评级建议
使用说明
1. 在"显示选项"中选择要查看的评分类型
2. 在"基本面设置"和"技术面设置"中自定义项目名称
3. 为每个项目设置1-5分的评分和1-3级的权重
4. 系统自动计算加权平均分并显示在图表和表格中
---
Stock Scoring System - Separable Display
Overview
This is a custom stock comprehensive scoring system that allows users to evaluate stocks from both fundamental and technical perspectives. The system supports flexible weight configuration and item customization, with options to display different types of scores as needed.
Key Features
· Separable Display Options - Choose to display fundamental, technical, or overall scores individually
· Customizable Items - All 6 fundamental items and 6 technical items can be renamed
· Weighted Scoring System - Uses 1-3 level importance weights and 1-5 point scoring scale
· Visual Presentation - Displays score trend lines on chart and real-time score table
· Smart Rating - Automatically provides Excellent, Good, Average, or Poor ratings based on scores
Usage Instructions
1. Select the score types to view in "Display Options"
2. Customize item names in "Fundamental Settings" and "Technical Settings"
3. Set 1-5 point scores and 1-3 level weights for each item
4. System automatically calculates weighted average scores and displays them on chart and table
---
核心参数对照 Core Parameters
基本面评分 Fundamental Score 基于财务和业务指标的评分
技术面评分 Technical Score 基于价格和交易量指标的评分
综合评分 Overall Score 基本面和技术面的加权平均分
权重 Weight 项目重要性级别 (1-3级)
评分 Score 项目表现评分 (1-5分)
优秀 Excellent 得分 ≥ 80
良好 Good 得分 60-79
一般 Average 得分 40-59
较差 Poor 得分 < 40
---
应用场景 Application Scenarios
· 股票筛选 - 快速评估多只股票的综合质量
· 投资决策 - 为买入/持有/卖出决策提供量化依据
· 组合管理 - 监控持仓股票的评分变化趋势
· 研究分析 - 自定义评分标准以适应不同的投资策略
· Stock Screening - Quickly evaluate the comprehensive quality of multiple stocks
· Investment Decisions - Provide quantitative basis for buy/hold/sell decisions
· Portfolio Management - Monitor score trends of held stocks
· Research Analysis - Customize scoring criteria to adapt to different investment strategies
Pro: Big Candle Pip Range (Upper Label)Highlights unusually large candles by calculating pip ranges dynamically based on recent volatility. Shows exact pip count above the candle, color-coded by direction (green bullish, red bearish). Features adaptive thresholds, optional histogram, and works on any instrument or timeframe. Ideal for scalpers and intraday traders spotting high-volatility candles quickly.
Mean Reversion Points [Clever Simplified]📊 Indicator Name:
Mean Reversion Points
🧠 Purpose
This indicator is designed to identify potential turning points in the market where the price may reverse back toward its mean (average) — a common concept in mean reversion trading strategies.
It simplifies the detection of overextended highs or lows by marking them visually on the chart, helping traders spot areas where price could correct or “revert” to a more balanced level.
⚙️ How It Works
1. Inputs
Lookback Period (len): Default 35 — defines how many previous bars are analyzed to determine highs and lows.
Show Labels / Show Markers: Toggles to display on-chart signals.
Colors:
Aqua → Mean Reversion Up (potential buy zone)
Orange → Mean Reversion Down (potential sell zone)
2. Core Calculations
The script calculates:
highest → The highest price in the last len bars.
lowest → The lowest price in the last len bars.
highest1 / lowest1 → Shorter-term highs and lows using a quarter of the main lookback (len / 4).
It then stores a “value” that updates depending on whether the price reaches a new high or low.
If the low = lowest, it records the corresponding highest level.
If the high = highest, it records the lowest level.
This dynamic relationship helps the indicator adapt as new bars form.
3. Bands for Comparison
Two “bands” are generated:
band: Long-term boundary based on full lookback period.
band1: Short-term boundary (faster and more responsive).
These act as reference zones to check when price is overstretched relative to its recent range.
4. Mean Reversion Logic
The indicator identifies potential reversal points using crossover conditions:
Mean Reversion Down (mean_rev_dn):
Triggers when the high crosses below the short-term upper band (band1), suggesting potential downward reversion (sell signal).
Mean Reversion Up (mean_rev_up):
Triggers when the low crosses above the short-term lower band (band1), suggesting potential upward reversion (buy signal).
These signals occur when price fails to maintain a breakout and is likely returning toward its mean.
5. Visual Output
If enabled:
Labels:
“Mean Rev ↓” → Placed above candles signaling a possible downward reversion.
“Mean Rev ↑” → Placed below candles signaling a possible upward reversion.
Markers:
Small colored triangles mark the same events for quick visual recognition.
💡 Practical Use
Best For: Swing traders and scalpers who trade reversals or range-bound markets.
Not Ideal For: Strong trending conditions, where price tends to move away from the mean instead of reverting.
Combination Tips: Works best when combined with:
RSI or Bollinger Bands for overbought/oversold confirmation.
Volume indicators to verify strength of reversals.
✅ Summary
Feature Description
Type Mean Reversion / Reversal Detector
Main Concept Identifies potential highs/lows where price may reverse
Signals Buy (Mean Rev ↑) and Sell (Mean Rev ↓)
Visualization Labels and triangles on chart
Customization Adjustable lookback period, markers, and colors TVC:USOIL TVC:DXY CRYPTO:BTCUSD OANDA:XAUUSD OANDA:EURUSD OANDA:AUDJPY
Quantura - Session High/LowIntroduction
“Quantura – Session High/Low” is a professional-grade session mapping indicator that automatically identifies and visualizes the highs, lows, and ranges of key global trading sessions — London, New York, and Asia. It helps traders understand when and where liquidity tends to accumulate, allowing for better market structure analysis and session-based strategy alignment.
Originality & Value
This indicator unifies the three most influential global sessions into a single, adaptive visualization tool. Unlike typical session indicators, it dynamically updates live session highs and lows in real time while marking session boundaries and transitions. Its multi-session management system allows for immediate recognition of overlapping liquidity zones — a crucial feature for institutional and intraday traders.
The value and originality come from:
Real-time tracking of session highs, lows, and developing ranges.
Simultaneous visualization of multiple global sessions.
Optional vertical range lines for clearer visual segmentation.
Customizable session times, colors, and time zone offset for global accuracy.
Automatically extending and updating lines as each session progresses.
Functionality & Core Logic
Detects the start and end of each trading session (London, New York, Asia) using built-in time logic and user-defined UTC offsets.
Initializes session-specific high and low variables at the start of each new session.
Continuously updates session high/low levels as new candles form.
Draws color-coded horizontal lines for each session’s high and low.
Optionally adds vertical dotted lines to visually connect session range extremes.
Locks each session’s range once it ends, preserving historical structure for review.
Parameters & Customization
New York Session: Enable/disable, customize time (default 15:30–21:30), and set color.
London Session: Enable/disable, customize time (default 09:00–16:30), and set color.
Asia Session: Enable/disable, customize time (default 02:30–08:00), and set color.
Vertical Line: Toggle dotted vertical lines connecting session high and low levels.
UTC Offset: Adjust session timing to align with your chart’s local time zone.
Visualization & Display
Each session is color-coded for quick identification (default: blue for London, red for New York, green for Asia).
Horizontal lines track evolving session highs and lows in real time.
Once a session closes, the lines remain fixed to mark historical range boundaries.
Vertical dotted lines (optional) visually connect the session’s high and low for clarity.
Supports full overlay display without interfering with other technical indicators.
Use Cases
Identify liquidity zones and range extremes formed during active trading sessions.
Observe session overlaps (London–New York) to anticipate volatility spikes.
Combine with volume or market structure tools for session-based confluence.
Track how price interacts with prior session highs/lows to detect potential reversals.
Analyze session-specific performance patterns for algorithmic or discretionary systems.
Limitations & Recommendations
The indicator is designed for intraday analysis and may not provide meaningful output on daily or higher timeframes.
Adjust session times and UTC offset based on your broker’s or exchange’s timezone.
Does not provide trading signals — it visualizes session structure only.
Combine with liquidity and volatility indicators for full contextual understanding.
Markets & Timeframes
Compatible with all asset classes — including crypto, forex, indices, and commodities — and optimized for intraday timeframes (1m–4h). Particularly useful for traders analyzing session overlaps and volatility transitions.
Author & Access
Developed 100% by Quantura. Published as a Open-source script indicator. Access is free.
Compliance Note
This description fully complies with TradingView’s Script Publishing Rules and House Rules . It provides a detailed explanation of functionality, parameters, and realistic use cases without making any performance or predictive claims.
Inside Day FinderWhat is an Inside Day?
An inside day happens when:
Today’s high is lower than yesterday’s high, and
Today’s low is higher than yesterday’s low.
So, today’s candle is inside the previous day’s range — showing consolidation or indecision in the market.
Gold Master Pro Plus ECONOMIC ENHANCED (H1 London v1.1)Overview
This indicator provides gold trading signals with integrated economic calendar awareness, specifically optimized for H1 timeframe and London session trading.
Methodology
The script analyzes multiple technical factors while monitoring economic event risks:
Technical Analysis Components:
RSI for momentum detection with configurable overbought/oversold levels
EMA crossovers (9, 21, 50 periods) for trend direction
MACD for momentum confirmation
ADX for trend strength measurement
Volume analysis for confirmation of price movements
Support/resistance detection using pivot points
Economic Calendar Integration:
Time-based detection of major economic releases (NFP, CPI, FOMC meetings)
Volatility assessment during event periods
USD stability monitoring through currency pair correlations
Automatic cooldown periods after high-impact events
Risk Management Features:
Multi-timeframe confirmation using daily trends
Session-aware scoring (London/NY overlap focus)
Quality-tiered signal classification
Position size recommendations based on signal strength and risk conditions
How to Use
Initial Setup:
Apply to XAUUSD on H1 timeframe
Configure economic settings in the inputs:
Enable economic event filter
Set ET offset (typically 5 hours for winter, 4 for summer)
Select relevant economic events to monitor
Signal Interpretation:
PLATINUM: All conditions aligned (active session, strong volume, low economic risk, trend confirmation)
HIGH: Most factors aligned with moderate risk
MEDIUM: Some factors aligned with acceptable risk
BLOCKED: High economic risk, cooldown period, or manual block active
Dashboard Metrics:
Economic risk level indicates current market safety
Event status shows timing of economic releases
Position size recommends appropriate trade sizing
Master score combines all technical and economic factors
Configuration Options
Economic Settings:
Economic impact threshold (30-80)
ET offset adjustment for timezone accuracy
Cooldown period configuration (2-24 bars)
Technical Settings:
RSI parameters (length, overbought/oversold levels)
Signal thresholds for different quality tiers
Session timing bonuses/penalties
Risk Management:
Multi-timeframe confirmation enable/disable
Higher timeframe selection (D, W, 4H, 12H)
MTF weight percentage (10-50%)
Important Notes
Economic event timing is approximate and should be verified with official economic calendars
Past performance does not guarantee future results
Trading involves substantial risk of loss
This tool is for educational purposes and should not be considered financial advice
The indicator is designed to assist in identifying potential trading opportunities while managing economic event risks through automated protection mechanisms.
AG Pro Crypto Screener & Signal Dashboard🚀 OVERVIEW
Welcome to the AG Pro Crypto Screener & Signal Dashboard, an institutional-grade scanner designed to find high-probability buy opportunities in the chaotic crypto market. This powerful tool is being offered completely free as an introduction to the precision and performance of the exclusive AG Pro series.
Tired of manually flipping through dozens of charts? This dashboard is your new command center. It simultaneously scans up to 40 crypto assets against a robust, multi-filter strategy. It filters out the noise and delivers a clean, actionable list of symbols that are showing combined signs of strength, momentum, and a confirmed uptrend.
🧠 THE CORE STRATEGY: A Multi-Filter Confluence
This screener doesn't rely on a single, weak indicator. A symbol only appears on the "Buy List" if it passes a strict, user-configurable set of confluence filters:
Bullish EMA Crossover: Confirms a new, bullish shift in short-term momentum by looking for a recent crossover of a Fast EMA over a Slow EMA (e.g., 20/50). The "Freshness" feature ensures the signal is recent.
RSI Momentum Filter: Ensures the asset has strong buying momentum. The signal is only valid if the RSI is above a specified level (e.g., > 50).
Long-Term Trend Filter: This is the most critical filter. It keeps you on the right side of the market by confirming the price is above a key long-term Moving Average (e.g., SMA 50, 100, 200). You trade with the trend, not against it.
MACD Crossover (Optional): For traders who want an extra layer of confirmation, you can enable a filter to check for a bullish MACD crossover.
Only when all selected conditions are met does the asset appear on your dashboard. This multi-layered approach is designed to find quality over quantity.
✨ KEY FEATURES
Dynamic 40-Symbol Scanner: Monitor your entire watchlist (up to 40 symbols) from a single chart.
Professional Signal Dashboard: A clean, sortable table displaying all active signals, last price, RSI value, and volume.
"Freshness" & "Trend" Icons: Instantly gauge signal quality.
Freshness: See how many bars ago the signal appeared (🔥 Hot / ❇️ Fresh / ⏳ Old).
Trend: A clear visual icon shows if the asset is in a long-term uptrend (🔼) or downtrend (🔽).
NEW Signal Alerts: Don't miss an opportunity. Set an alert to be notified only when a new symbol appears on the list. This non-intrusive system avoids constant, repetitive alerts.
Fully Customizable Strategy: You are in control.
Toggle any of the four main filters (EMA, RSI, Trend, MACD) on or off.
Adjust all indicator lengths (EMAs, RSI, MACD, and Trend MA) to fit your trading style.
Reliable "On-Close" Signaling: Includes an option to generate signals only on bar close, ensuring high-quality, non-repainting signals.
Clean UI: Adjustable table text size ("Tiny", "Small", "Normal", "Large") for perfect visibility on any setup.
💎 THE AG PRO DIFFERENCE
This free screener is just the beginning. It's a demonstration of the stable, high-performance, and results-driven philosophy that defines the AG Pro brand.
We believe in empowering traders with tools that provide a clear, statistical edge. While this screener is powerful, our private, premium AG Pro scripts (such as the AG Pro Trading Suite) offer a complete, institutional-grade solution for serious traders. These advanced tools feature predictive models, proprietary signal algorithms, and comprehensive risk management modules that are the result of years of professional development.
If you find value in this free tool, imagine what our full suite can do for your trading. We invite you to experience the next level of trading precision.
🛠️ HOW TO USE
Add the "🏆 AG Pro Crypto Screener & Signal Dashboard V3" to your chart.
Open the indicator's Settings.
Under the "Symbol List to Scan" tab, replace the default symbols with your own 40 preferred assets (e.g., "BINANCE:BTCUSDT", "BINANCE:ETHUSDT", "COINBASE:SOLUSD").
Under the "Filter Settings" tab, configure your desired strategy. You can start with the defaults or customize them.
(Recommended) Right-click the table and select "Create Alert". Choose the "NEW BUY" condition and "Once Per Bar Close" to be notified of new signals.
⚠️ DISCLAIMER
This script is provided for informational and educational purposes only. It does not constitute financial or investment advice. All trading involves significant risk, and past performance is not indicative of future results. Please conduct your own research and implement your own risk management strategy before making any trading decisions.
ScalpGawd Risk Reward//@version=5
indicator("ScalpGawd Risk Reward", overlay=true)
i_fromDate = input.time(timestamp("2024-02-01T00:00:00"), title="Entry Time")
i_entryPrice = input.float(4000, "Entry Price")
i_slPrice = input.float(3900, "Stop Loss Price")
i_distance = input.int(100, "Horizontal Distance (in Time Units)", group="Styling")
i_entryColor = input.color(color.white, "Entry Line", inline="Entry", group="Styling")
i_entryStyle = input.string("solid", title="", options= , inline="Entry", group="Styling")
i_entryWidth = input.int(1, "", inline="Entry", group="Styling")
i_slColor = input.color(color.red, "SL Line", inline="SL", group="Styling")
i_slStyle = input.string("solid", title="", options= , inline="SL", group="Styling")
i_slWidth = input.int(2, "", inline="SL", group="Styling")
i_tpColor = input.color(color.green, "TP Line", inline="TP", group="Styling")
i_tpStyle = input.string("solid", title="", options= , inline="TP", group="Styling")
i_tpWidth = input.int(2, "", inline="TP", group="Styling")
i_labelSize = input.string("tiny", "Label Size", options= , group="Label")
i_labelOffset = input.int(2, "Label Offset", group="Label")
i_useTP1 = input.bool(true, "1", inline="1", group="Show Take Profit")
i_useTP2 = input.bool(true, "2", inline="1", group="Show Take Profit")
i_useTP3 = input.bool(true, "3", inline="1", group="Show Take Profit")
i_useTP4 = input.bool(true, "4", inline="1", group="Show Take Profit")
i_useTP5 = input.bool(true, "5", inline="1", group="Show Take Profit")
i_useTP6 = input.bool(true, "6", inline="1", group="Show Take Profit")
i_useTP7 = input.bool(true, "7", inline="1", group="Show Take Profit")
i_useTP8 = input.bool(true, "8", inline="1", group="Show Take Profit")
i_useTP9 = input.bool(true, "9", inline="1", group="Show Take Profit")
i_useTP10 = input.bool(true, "10", inline="1", group="Show Take Profit")
var int barDistance = na
if bar_index < 2
barDistance := time - time
else
barDistance := math.min(barDistance, time - time )
int distanceInTime = barDistance * i_distance
var line entryLine = na, line.delete(entryLine)
var line stopLossLine = na, line.delete(stopLossLine)
var line tpLine1 = na, line.delete(tpLine1)
var line tpLine2 = na, line.delete(tpLine2)
var line tpLine3 = na, line.delete(tpLine3)
var line tpLine4 = na, line.delete(tpLine4)
var line tpLine5 = na, line.delete(tpLine5)
var line tpLine6 = na, line.delete(tpLine6)
var line tpLine7 = na, line.delete(tpLine7)
var line tpLine8 = na, line.delete(tpLine8)
var line tpLine9 = na, line.delete(tpLine9)
var line tpLine10 = na, line.delete(tpLine10)
var label entryLabel = na, label.delete(entryLabel)
var label slLabel = na, label.delete(slLabel)
var label tpLabel1 = na, label.delete(tpLabel1)
var label tpLabel2 = na, label.delete(tpLabel2)
var label tpLabel3 = na, label.delete(tpLabel3)
var label tpLabel4 = na, label.delete(tpLabel4)
var label tpLabel5 = na, label.delete(tpLabel5)
var label tpLabel6 = na, label.delete(tpLabel6)
var label tpLabel7 = na, label.delete(tpLabel7)
var label tpLabel8 = na, label.delete(tpLabel8)
var label tpLabel9 = na, label.delete(tpLabel9)
var label tpLabel10 = na, label.delete(tpLabel10)
float i_tp1Price = i_entryPrice + (i_entryPrice - i_slPrice)
float i_tp2Price = i_entryPrice + (i_entryPrice - i_slPrice) * 2
float i_tp3Price = i_entryPrice + (i_entryPrice - i_slPrice) * 3
float i_tp4Price = i_entryPrice + (i_entryPrice - i_slPrice) * 4
float i_tp5Price = i_entryPrice + (i_entryPrice - i_slPrice) * 5
float i_tp6Price = i_entryPrice + (i_entryPrice - i_slPrice) * 6
float i_tp7Price = i_entryPrice + (i_entryPrice - i_slPrice) * 7
float i_tp8Price = i_entryPrice + (i_entryPrice - i_slPrice) * 8
float i_tp9Price = i_entryPrice + (i_entryPrice - i_slPrice) * 9
float i_tp10Price = i_entryPrice + (i_entryPrice - i_slPrice) * 10
f_getStyle(_style) =>
ret = line.style_solid
if _style == "dotted"
ret := line.style_dotted
else if _style == "dashed"
ret := line.style_dashed
ret
f_getLabelSize() =>
ret = size.normal
if i_labelSize == "small"
ret := size.small
else if i_labelSize == "tiny"
ret := size.tiny
ret
entryLine := line.new(i_fromDate, i_entryPrice, i_fromDate + distanceInTime, i_entryPrice, xloc=xloc.bar_time, color=i_entryColor, width=i_entryWidth, style=f_getStyle(i_entryStyle))
stopLossLine := line.new(i_fromDate, i_slPrice, i_fromDate + distanceInTime, i_slPrice, xloc=xloc.bar_time, color=i_slColor, width=i_slWidth, style=f_getStyle(i_slStyle))
tpLine1 := i_useTP1 ? line.new(i_fromDate, i_tp1Price, i_fromDate + distanceInTime, i_tp1Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine2 := i_useTP2 ? line.new(i_fromDate, i_tp2Price, i_fromDate + distanceInTime, i_tp2Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine3 := i_useTP3 ? line.new(i_fromDate, i_tp3Price, i_fromDate + distanceInTime, i_tp3Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine4 := i_useTP4 ? line.new(i_fromDate, i_tp4Price, i_fromDate + distanceInTime, i_tp4Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine5 := i_useTP5 ? line.new(i_fromDate, i_tp5Price, i_fromDate + distanceInTime, i_tp5Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine6 := i_useTP6 ? line.new(i_fromDate, i_tp6Price, i_fromDate + distanceInTime, i_tp6Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine7 := i_useTP7 ? line.new(i_fromDate, i_tp7Price, i_fromDate + distanceInTime, i_tp7Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine8 := i_useTP8 ? line.new(i_fromDate, i_tp8Price, i_fromDate + distanceInTime, i_tp8Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine9 := i_useTP9 ? line.new(i_fromDate, i_tp9Price, i_fromDate + distanceInTime, i_tp9Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
tpLine10 := i_useTP10 ? line.new(i_fromDate, i_tp10Price, i_fromDate + distanceInTime, i_tp10Price, xloc=xloc.bar_time, color=i_tpColor, width=i_tpWidth, style=f_getStyle(i_tpStyle)) : na
entryLabel := label.new(i_fromDate + barDistance * i_labelOffset, i_entryPrice, text="Entry @ " + str.tostring(i_entryPrice, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_entryColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize())
slLabel := label.new(i_fromDate + barDistance * i_labelOffset, i_slPrice, text="Stop Loss " + str.tostring((i_slPrice - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_slPrice, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_slColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize())
tpLabel1 := i_useTP1 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp1Price, text="Target 1 " + str.tostring((i_tp1Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp1Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel2 := i_useTP2 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp2Price, text="Target 2 " + str.tostring((i_tp2Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp2Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel3 := i_useTP3 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp3Price, text="Target 3 " + str.tostring((i_tp3Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp3Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel4 := i_useTP4 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp4Price, text="Target 4 " + str.tostring((i_tp4Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp4Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel5 := i_useTP5 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp5Price, text="Target 5 " + str.tostring((i_tp5Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp5Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel6 := i_useTP6 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp6Price, text="Target 6 " + str.tostring((i_tp6Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp6Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel7 := i_useTP7 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp7Price, text="Target 7 " + str.tostring((i_tp7Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp7Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel8 := i_useTP8 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp8Price, text="Target 8 " + str.tostring((i_tp8Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp8Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel9 := i_useTP9 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp9Price, text="Target 9 " + str.tostring((i_tp9Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp9Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
tpLabel10 := i_useTP10 ? label.new(i_fromDate + barDistance * i_labelOffset, i_tp10Price, text="Target 10 " + str.tostring((i_tp10Price - i_entryPrice) / syminfo.mintick, "#")+ " Ticks @ " + str.tostring(i_tp10Price, '#.##'), xloc=xloc.bar_time, yloc=yloc.price, textcolor=i_tpColor, style=label.style_none,textalign = text.align_center, size=f_getLabelSize()) : na
i_showBox = input.bool(true, "Show Background", group="Show Background")
var box greenBox = na, box.delete(greenBox)
var box redBox = na, box.delete(redBox)
f_findHighestTP() =>
ret = i_tp1Price
if i_useTP10
ret := i_tp10Price
else if i_useTP9
ret := i_tp9Price
else if i_useTP8
ret := i_tp8Price
else if i_useTP7
ret := i_tp7Price
else if i_useTP6
ret := i_tp6Price
else if i_useTP5
ret := i_tp5Price
else if i_useTP4
ret := i_tp4Price
else if i_useTP3
ret := i_tp3Price
else if i_useTP2
ret := i_tp2Price
ret
greenBox := i_showBox ? box.new(i_fromDate, i_entryPrice, i_fromDate + distanceInTime, f_findHighestTP(), xloc=xloc.bar_time, bgcolor=color.new(i_tpColor, 70), border_width = 0) : na
redBox := i_showBox ? box.new(i_fromDate, i_entryPrice, i_fromDate + distanceInTime, i_slPrice, xloc=xloc.bar_time, bgcolor=color.new(i_slColor, 70), border_width = 0) : na
Yit BBIn this script the deviation is 1.25 the normal standard issue Bollinger band indicator uses 2. for my type of trading I don't have time price action to wait for a 2 STDRD DEV. this is a more aggressive type of indicator.
The MA is the 10 day.
Yit's SMA'sThis is the first update to my original SMA indicators I've added the following:
10 Week SMA
40 Week SMA
3 Month SMA
18 Month SMA
I wanted to add more based on these being common indicators various types of trading uses.
There will probably be more in the future.
WIN1! • Crossing EMAs• (By Mesquita, v7)Moving average crossover strategy for intraday movements, especially in the continuous index (WIN1!) on the Brazilian stock exchange B³. The strategy is customizable for time windows, has a filter for trades only above the long-term average, whether only long, only short, or both, with or without stop loss.
TMB Invest - Smart Money Concept StrategyEnglish:
**Quick Overview**
The "TMB_SMC_Strategy_v1.1.3" combines a classic trend filter using two EMAs with contrarian RSI entries and simple SMC elements (Fair Value Gaps & Order Blocks). Stop-loss and take-profit orders are volatility-adaptive and controlled via the ATR. An integrated dashboard displays the setup status, stop-loss/take-profit levels, entry reference, and trend, RSI, and ATR values.
---
## Operating Principle
1. **Trend Filter:** A fast EMA (default 50) is compared to a slow EMA (default 200). Trading occurs only in the direction of the trend: long in uptrends, short in downtrends.
2. **Timing via RSI:** Contrarian entries within the trend. Go long when the RSI is below a buy level (default 40); Short when the RSI is above a sell level (standard 60).
3. **Structure Check (SMC Proxy):** An "FVG Touch" serves as additional confirmation that an inefficient price zone has been tested. Order blocks are visualized for guidance but are not a direct entry trigger.
4. **Risk Management via ATR:** Stop-loss and take-profit levels are set as multipliers of the current ATR (e.g., SL = 1×ATR, TP = 2×ATR). This allows target and risk distances to adjust to market volatility.
5. **Simple Position Logic:** Only one position is held at a time (no pyramiding). After entry, stop and limit orders (bracket exit) are automatically placed.
---
## Input Values
* **EMA Fast / EMA Slow:** Lengths of the moving averages for the trend filter.
* **RSI Length / Levels:** Length of the RSI as well as buy and sell thresholds (contra signals within the trend direction).
* **Take Profit (RR) / Stop Loss (RR):** ATR multipliers for TP and SL.
* **Show FVGs & Order Blocks:** Toggles the visual SMC elements (zones/boxes) on or off.
--
## Signals & Execution
* **Long Setup:** Uptrend (fast EMA above slow EMA) **and** RSI below the buy level **and** a current FVG signal in a bullish direction.
* **Short Setup:** Downtrend (fast EMA below slow EMA) **and** RSI above the sell level **and** a current FVG touch in a bearish direction.
* **Entry & Exit:** If the setup is met, the market is entered; stop-loss/take-profit orders are placed immediately according to ATR multiples.
--
## Visualization
* **EMAs:** The fast and slow EMAs are plotted to illustrate the trend.
* **FVGs:** Fair Value Gaps are drawn as semi-transparent boxes in the trend color and projected slightly into the future.
* **Order Blocks:** Potential order block zones from the previous candle are visually highlighted (for informational purposes only).
---
## Integrated Dashboard
A compact table dashboard (bottom left) displays:
* Current **Setup Status** (Long/Short active, Long/Short ready, No Setup),
* **Stop-Loss**, **Take-Profit**, and **Entry Reference**,
* **Trend Status** (Bull/Bear/Sideways),
* **RSI Value**, and **ATR Value**.
Active long/short positions are highlighted in color (green/red).
--
## Practical Guide
1. **Place on Chart** and select the desired timeframe.
2. **Calibrate Parameters** (EMA lengths, RSI levels, ATR multipliers) to match the market and timeframe.
3. **Backtest** across different market phases; prioritize robustness over maximum curve fit.
4. **Fine-Tuning:**
* Shorter EMAs are often useful intraday (e.g., 20/100 or 34/144).
* Adjust RSI levels to market characteristics (45/55 for aggressive trading, 30/70 for conservative trading).
* Increase or decrease ATR multipliers depending on volatility/trading style.
--
## Notes, Limitations & Extensions
* **FVG Definition:** The FVG detection used here is intentionally simplified. Those who prefer a more rigorous approach can switch to a 3-candle definition and fill levels.
* **Order Blocks:** These primarily serve as a guide. Integration into entry/exit logic (e.g., retests) is possible as an extension.
* **Backtest Realism:** Fills may differ from the displayed closing price. For greater accuracy, intrabar backtests or an entry indicator based on the average position price are conceivable.
* **Alerts:** Currently, no alert conditions are defined; these can be added for long/short setups and status messages.
* **Position Management:** By default, no scaling is performed. Partial sales, trailing stops, or multiple entries can be added.
---
## Purpose & Benefits
The strategy offers a clear, modular framework: trend filter (direction), RSI contra timing (entry), SMC proxy via FVG Touch (structure), and ATR-based exits (risk adaptation). This makes it robust, easy to understand, and highly extensible—both for discretionary traders who appreciate visual SMC elements and for systematic testers who prefer a clean, parameterizable foundation.
GutroThis TradingView indicator automatically plots Fibonacci retracement levels based on the day’s first confirmed swing between the session high and low (9:30 AM – 4 PM ET). It includes dynamic 0%, 38.2%, 50%, 61.8%, and 100% levels, a shaded golden zone, VWAP bands with standard-deviation envelopes, and a 9/21 EMA ribbon for trend confirmation.
Custom Checklist# Custom Checklist - Trading Preparation & Reminders
A fully customizable checklist overlay indicator for TradingView that helps traders maintain discipline and follow their trading routine systematically.
## 🎯 Purpose
This indicator serves as a visual reminder system on your charts to ensure you complete all necessary analysis steps before entering a trade. Perfect for traders who want to maintain consistency and avoid emotional or rushed trading decisions.
## ✨ Key Features
- **20 Customizable Lines**: Create your own checklist items with any text you need
- **Flexible Display Options**:
- Show/hide title header
- Toggle entire checklist on/off
- Position anywhere on chart (9 positions available)
- Adjustable text size (tiny to huge)
- **Symbol Filtering**: Option to show checklist only on specific symbols (BTC/USD, GOLD, SPX500, USOIL)
- **Customizable Appearance**:
- Background color
- Text color
- Border color
- Transparency controls
- **Clean Interface**: Empty by default - add only the items you need
## 📋 Use Cases
- **Morning Routine**: Daily market preparation checklist
- **Trade Entry Rules**: Verify all setup conditions are met
- **Risk Management**: Confirm stop-loss, position size, and exit strategy
- **Multi-Timeframe Analysis**: Ensure you checked all required timeframes
- **Technical Analysis**: Track which indicators and patterns you've reviewed
- **News & Events**: Remember to check economic calendar and news
- **Personal Rules**: Your custom trading rules and reminders
## 🎨 Customization
Every aspect is customizable:
- All 20 lines can be edited to your needs
- Only non-empty lines are displayed
- Table position adjustable to any corner or middle position
- Color scheme fully customizable to match your chart theme
- Text size scalable for different screen sizes
## 💡 How to Use
1. Add indicator to your chart
2. Open Settings > Checklist Items
3. Fill in your checklist items (Line 1, Line 2, etc.)
4. Customize colors and position in Display Settings
5. Optional: Enable "Show Only on Specific Symbols" to show on select instruments
## 🔧 Display Settings
- **Checklist Title**: Custom header for your checklist
- **Show Title Header**: Toggle title display
- **Show Checklist**: Master on/off switch
- **Symbol Filter**: Restrict display to specific trading instruments
- **Position**: 9 placement options (corners and middle positions)
- **Text Size**: 5 size options (tiny, small, normal, large, huge)
- **Colors**: Background, text, and border fully customizable
## 📝 Example Checklist Ideas
**Swing Trading:**
- Support/Resistance levels identified
- Trend direction confirmed
- Volume analysis completed
- RSI/MACD signals checked
- Risk/Reward ratio calculated
**Day Trading:**
- Pre-market review done
- Key levels marked
- Economic calendar checked
- Trading plan written
- Position size calculated
**Technical Analysis:**
- Multiple timeframe alignment
- Chart patterns identified
- Moving averages reviewed
- Fibonacci levels drawn
- Volume profile analyzed
## ⚙️ Technical Details
- Pine Script v6
- Overlay indicator (displays on main chart)
- Lightweight - no complex calculations
- No repainting
- Works on all timeframes and instruments
## 🎓 Perfect For
- Beginner traders learning systematic analysis
- Experienced traders maintaining discipline
- Anyone who wants visual trading reminders
- Traders following multi-step strategies
- Those prone to FOMO or emotional trading
---
**Note**: This is a visual tool only. It does not generate trading signals or perform analysis. It serves as a reminder checklist to help you follow your own trading process consistently.






















