Donchian Channels (Multi Time Frame) x 3)📊 MTF Donchian Channels Pro — Triple Timeframe Structure
MTF Donchian Channels Pro is a professional-grade multi-timeframe market structure indicator designed to help traders visualize trend, momentum, and execution zones on a single chart.
This tool allows you to plot up to three independent Donchian Channels, each with its own configurable timeframe and lookback length, giving you instant insight into multi-timeframe alignment and breakout conditions.
By stacking higher, medium, and lower timeframe channels, traders can eliminate noise, improve timing, and trade in the direction of dominant market structure.
🔧 Key Features
✅ Up to 3 independent Donchian Channels
✅ Individual timeframe selection for each channel
✅ Adjustable lookback length per channel
✅ Optional show/hide per channel
✅ Midline (basis) for structure reference
✅ Clean visual fills for fast interpretation
✅ Works on all markets and timeframes
🎯 How to Use
This indicator is designed to support multi-timeframe trading systems.
Example configuration:
• Channel 1 → Lower timeframe (Execution)
• Channel 2 → Medium timeframe (Momentum)
• Channel 3 → Higher timeframe (Structure)
Long Bias Example
Price above higher timeframe channel
Pullback into mid timeframe range
Breakout on lower timeframe channel
Short Bias Example
Price below higher timeframe channel
Retrace into structure
Breakdown on execution timeframe
When all channels align, probability increases.
📈 Best Use Cases
✔ Futures Scalping
✔ Options Day Trading
✔ Forex & Crypto
✔ Swing Trading
✔ Prop Firm Evaluations
✔ Trend-Following Systems
⚠️ Risk Disclaimer
This indicator is a market structure visualization tool and does not provide financial advice. Always use proper risk management and confirm with your own strategy.
Indicatori e strategie
My Candle (HTF Overlay)
This indicator overlays Higher Timeframe (HTF) candles, such as Daily or Weekly, onto your current chart background. It allows you to grasp the larger trend while trading on lower timeframes.
- Accurate Historical Data: By utilizing "lookahead", this script ensures that the High and Low of the HTF candles align perfectly with the price action on historical charts.
- Gap Filling: Includes an option to fill data gaps for a smoother visual experience.
- Customization: You can easily change the timeframe and adjust the transparency of colors to suit your chart theme.
1. Add to the chart.
2. Open settings to select your target timeframe (e.g., "1 Day" or "1 Week").
3. Adjust the "Gap" and "Transparency" settings as needed.
Uptrend Pullback (High Winrate-ish) - RSI + EMA + ATR TrailUptrend Pullback Strategy (EMA Filter + RSI Reversal + ATR Trailing Stop)
Description
This strategy is designed for rising markets and trades long only. It uses a simple trend filter and a pullback entry:
Trend filter: An uptrend is defined when EMA(50) > EMA(200) and price is above EMA(200). Trades are allowed only under these conditions.
Entry (buy the dip): A long position is opened when RSI crosses up above a user-defined pullback level (default 40), suggesting a pullback is ending and momentum is recovering.
Exits:
Take profit: Close the position when RSI reaches an overbought level (default 70).
Risk management: A dynamic ATR-based trailing stop follows price upward to lock in gains.
Hard stop: An additional ATR-based stop acts as a safety net to limit downside risk.
Notes
Parameters (EMA lengths, RSI levels, ATR multipliers) are fully configurable.
This is a demo/reference strategy for research and optimization; results depend strongly on the symbol and timeframe.
If you want, I can also write a shorter “one-liner” description and a set of tag keywords for the publish page.
MA Band Area (Objective Zone)This indicator can be useful for you to create areas of dynamic purchase, you just need to contextualise when to stop in range, on smaller time frames it is very powerful but also for long term with stock it is very precise
LibProfLibrary "LibProf"
Core Profiling Library.
This library provides a generic, object-oriented framework for
creating, managing, and analyzing 1D distributions (profiles) on
a customizable coordinate grid.
Unlike traditional Volume Profile libraries, `LibProf` is designed
as a **neutral Engine**. It abstracts away specific concepts
like "Price" or "Volume" in favor of mathematical primitives
("Level" and "Mass"). This allows developers to profile *any*
data series, such as Time-at-Price, Velocity, Delta, or Ticks.
Key Features:
1. **Object-Oriented Design (UDT):** Built around the `Prof`
object, encapsulating grid geometry, two generic data accumulators
(Array A & B), and cached statistical metrics. Supports full
lifecycle management: creation, cloning, clearing, and merging.
2. **Data-Agnostic Abstraction:**
- **Level (X-Axis):** Represents the coordinate system (e.g.,
Price, Time, Oscillator Value).
- **Mass (Y-Axis):** Represents the accumulated quantity
(e.g., Volume, Duration, Count).
- **Resolution (Grain):** The grid represents continuous data
discretized by a customizable resolution step size.
3. **Dual-Mode Geometry (Linear & Logarithmic):**
The engine supports seamless switching between two geometric modes:
- **Linear:** Arithmetic scaling (equal distance).
- **Logarithmic:** Geometric scaling (equal percentage), essential
for consistent density analysis across large ranges (Crypto).
Includes strict domain validation (enforcing positive bounds for log-space)
and physics-based constraints to prevent aliasing.
4. **High-Fidelity Resampling:**
Includes a sophisticated **Trapezoidal Integration Model** to
handle grid resizing and profile merging. When data is moved
between grids of different resolutions or geometries, the
library calculates the exact integral of the mass density
to ensure strict mass conservation.
5. **Dynamic Grid Management:**
- **Adapting:** Automatically expands the coordinate boundaries
to include new data points (`adapt`).
- **Resizing:** Allows changing the resolution (bins) or
boundaries on the fly, triggering the interpolation engine to
re-sample existing data accurately.
6. **Statistical Analysis (Lazy Evaluation):**
Comprehensive metrics calculated on-demand.
In Logarithmic mode, metrics adapt to use **Geometric Mean** and
**Geometric Interpolation** for maximum precision.
- **Location:** Peak (Mode), Weighted Mean (Center of Gravity), Median.
- **Dispersion:** Standard Deviation (Population), Coverage.
- **Shape:** Skewness and Excess Kurtosis.
7. **Structural Analysis:**
Includes a monotonic segmentation algorithm (configured by gapSize)
to decompose the distribution into its fundamental unimodal
segments, aiding in the detection of multi-modal distributions.
---
**DISCLAIMER**
This library is provided "AS IS" and for informational and
educational purposes only. It does not constitute financial,
investment, or trading advice.
The author assumes no liability for any errors, inaccuracies,
or omissions in the code. Using this library to build
trading indicators or strategies is entirely at your own risk.
As a developer using this library, you are solely responsible
for the rigorous testing, validation, and performance of any
scripts you create based on these functions. The author shall
not be held liable for any financial losses incurred directly
or indirectly from the use of this library or any scripts
derived from it.
create(bins, upper, lower, resolution, dynamic, isLog, coverage, gapSize)
Construct a new `Prof` object with fixed bin count & bounds.
Parameters:
bins (int) : series int number of level bins ≥ 1
upper (float) : series float upper level bound (absolute)
lower (float) : series float lower level bound (absolute)
resolution (float) : series float Smallest allowed bin size (resolution).
dynamic (bool) : series bool Flag for dynamic adaption of profile bounds
isLog (bool) : series bool Flag to enable Logarithmic bin scaling.
coverage (int) : series int Percentage of total mass to include in the Coverage Area (1..100)
gapSize (int) : series int Noise filter for segmentation. Number of allowed bins against trend.
Returns: Prof freshly initialised profile
method clone(self)
Create a deep copy of the profile.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object to copy
Returns: Prof A new, independent copy of the profile
method merge(self, massA, massB, upper, lower)
Merges mass data from a source profile into the current profile.
If resizing is needed, it performs a high-fidelity re-binning of existing
mass using a linear interpolation model inferred from neighboring bins,
preventing aliasing artifacts and ensuring accurate mass preservation.
Namespace types: Prof
Parameters:
self (Prof) : Prof The target profile object to merge into.
massA (array) : array float The source profile's mass A bin array.
massB (array) : array float The source profile's mass B bin array.
upper (float) : series float The upper level bound of the source profile.
lower (float) : series float The lower level bound of the source profile.
Returns: Prof `self` (chaining), now containing the merged data.
method clear(self)
Reset all bin tallies while keeping configuration intact.
Namespace types: Prof
Parameters:
self (Prof) : Prof profile object
Returns: Prof cleared profile (chaining)
method addMass(self, idx, mass, useMassA)
Adds mass to a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
idx (int) : series int Bin index
mass (float) : series float Mass to add (must be > 0)
useMassA (bool) : series bool If true, adds to Array A, otherwise Array B
method adapt(self, upper, lower)
Automatically adapts the profile's boundaries to include a given level interval.
If the level bound exceeds the current profile bounds, it triggers
the _resizeGrid method to resize the profile and re-bin existing mass.
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
upper (float) : series float The upper level to fit.
lower (float) : series float The lower level to fit.
Returns: Prof `self` (chaining).
method setBins(self, bins)
Sets the number of bins for the profile.
Behavior depends on the `isDynamic` flag.
- If `dynamic = true`: Works on filled profiles by re-binning to a new resolution.
- If `dynamic = false`: Only works on empty profiles to prevent accidental changes.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
bins (int) : series int The new number of bins
Returns: Prof `self` (chaining)
method setBounds(self, upper, lower)
Sets the level bounds for the profile.
Behavior depends on the `dynamic` flag.
- If `dynamic = true`: Works on filled profiles by re-binning existing mass
- If `dynamic = false`: Only works on empty profiles to prevent accidental changes.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
upper (float) : series float The new upper level bound
lower (float) : series float The new lower level bound
Returns: Prof `self` (chaining)
method setResolution(self, resolution)
Sets the minimum resolution size (granularity limit) for the profile.
If the current bin count exceeds the limit imposed by the new
resolution, the profile is automatically resized (downsampled) to fit.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
resolution (float) : series float The new smallest allowed bin size.
Returns: Prof `self` (chaining)
method setLog(self, isLog)
Toggles the geometry of the profile between Linear and Logarithmic.
Behavior depends on the `dynamic` flag.
- If `dynamic = true`: Mass is re-distributed (merged) into the new geometric grid.
- If `dynamic = false`: Only works on empty profiles.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
isLog (bool) : series bool True for Logarithmic, False for Linear.
Returns: Prof `self` (chaining)
method setCoverage(self, coverage)
Set the percentage of mass for the Coverage Area. If the value
changes, the profile is finalized again.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
coverage (int) : series int The new Mass Coverage Percentage (0..100)
Returns: Prof `self` (chaining)
method setGapSize(self, gapSize)
Sets the gapSize (noise filter) for segmentation.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
gapSize (int) : series int Number of bins allowed to violate monotonicity
Returns: Prof `self` (chaining)
method getBins(self)
Returns the current number of bins in the profile.
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
Returns: series int The number of bins.
method getBounds(self)
Returns the current level bounds of the profile.
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
Returns:
upper series float The upper level bound of the profile.
lower series float The lower level bound of the profile.
method getBinWidth(self)
Get Width of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
Returns: series float The width of a bin
method getBinIdx(self, level)
Get Index of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
level (float) : series float absolute coordinate to locate
Returns: series int bin index 0…bins‑1 (clamped)
method getBinBnds(self, idx)
Get Bounds of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
idx (int) : series int Bin index
Returns:
up series float The upper level bound of the bin.
lo series float The lower level bound of the bin.
method getBinMid(self, idx)
Get Mid level of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
idx (int) : series int Bin index
Returns: series float Mid level
method getMassA(self)
Returns a copy of the internal raw data array A (Mass A).
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
Returns: array The internal array for mass A.
method getMassB(self)
Returns a copy of the internal raw data array B (Mass B).
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
Returns: array The internal array for mass B.
method getBinMassA(self, idx)
Get Mass A of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
idx (int) : series int Bin index
Returns: series float mass A
method getBinMassB(self, idx)
Get Mass B of a bin.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
idx (int) : series int Bin index
Returns: series float mass B
method getPeak(self)
Get Peak information.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
Returns:
peakIndex series int The index of the Peak bin.
peakLevel. series float The mid-level of the Peak bin.
method getCoverage(self)
Get Coverage information.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object
Returns:
covUpIndex series int The index of the upper bound bin of the Coverage Area.
covUpLevel series float The upper level bound of the Coverage Area.
covLoIndex series int The index of the lower bound bin of the Coverage Area.
covLoLevel series float The lower level bound of the Coverage Area.
method getMedian(self)
Get the profile's median level and its bin index. Calculates the value on-demand if stale.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object.
Returns:
medianIndex series int The index of the bin containing the Median.
medianLevel series float The Median level of the profile.
method getMean(self)
Get the profile's mean and its bin index. Calculates the value on-demand if stale.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object.
Returns:
meanIndex series int The index of the bin containing the mean.
meanLevel series float The mean of the profile.
method getStdDev(self)
Get the profile's standard deviation. Calculates the value on-demand if stale.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object.
Returns: series float The Standard deviation of the profile.
method getSkewness(self)
Get the profile's skewness. Calculates the value on-demand if stale.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object.
Returns: series float The Skewness of the profile.
method getKurtosis(self)
Get the profile's excess kurtosis. Calculates the value on-demand if stale.
Namespace types: Prof
Parameters:
self (Prof) : Prof Profile object.
Returns: series float The Kurtosis of the profile.
method getSegments(self)
Get the profile's fundamental unimodal segments. Calculates on-demand if stale.
Uses a pivot-based recursive algorithm configured by gapSize.
Namespace types: Prof
Parameters:
self (Prof) : Prof The profile object.
Returns: matrix A 2-column matrix where each row is an pair.
Prof
Prof Generic Profile object containing the grid and two data arrays.
Fields:
_bins (series int) : int Number of discrete containers (bins).
_upper (series float) : float Upper boundary of the domain.
_lower (series float) : float Lower boundary of the domain.
_resolution (series float) : float Smallest atomic grid unit (Resolution).
_isLog (series bool) : bool If true, the grid uses logarithmic scaling.
_logFactor (series float) : float Cached multiplier for log iteration (k = (up/lo)^(1/n)).
_logStep (series float) : float Cached natural logarithm of the factor (ln(k)) for optimized index calculation.
_dynamic (series bool) : bool Flag for dynamic resizing/resampling.
_coverage (series int) : int Target Mass Coverage Percentage (Input for Coverage).
_gapSize (series int) : int Tolerance against trend violations (Noise filter).
_maxBins (series int) : int Hard capacity limit for bins.
_massA (array) : array Generic Mass Array A.
_massB (array) : array Generic Mass Array B.
_peak (series int) : int Index of max mass (Mode).
_covUp (series int) : int Index of Coverage Upper Bound.
_covLo (series int) : int Index of Coverage Lower Bound.
_median (series float) : float Median level of distribution.
_mean (series float) : float Weighted Average Level (Center of Gravity).
_stdDev (series float) : float Population Standard Deviation.
_skewness (series float) : float Asymmetry measure.
_kurtosis (series float) : float Tail heaviness measure.
_segments (matrix) : matrix Identified unimodal segments.
Trend-Based Fibs: Static Labels at StartThis indicator automatically projects Fibonacci extension levels and "Golden Zones" starting from the opening price of a new period (Daily or Weekly). By using the previous period’s range (High-Low) as the basis for volatility, it provides objective price targets and reversal zones for the current session.
How it Works Unlike standard Fibonacci Retracements that require manual drawing from swing highs to lows, this tool uses a fixed anchor method: The Range: It calculates the total range of the previous day or week.
The Anchor: It sets the current period's opening price as the "Zero Line."The Projection: It applies Fibonacci ratios ($0.236$, $0.5$, $0.786$, $1.0$, and $1.618$) upward and downward from that opening price.
Key Features Automated Levels: No more manual drawing. Levels reset and recalculate automatically at the start of every Daily or Weekly candle. Bullish & Bearish Zones: Instantly see extensions for both directions. The "Golden Zones": Highlighted boxes represent the high-probability $0.236$ to $0.5$ zones for both long and short continuations. Previous Period Levels: Optional toggles to show the previous High and Low, which often act as major support or resistance.
Integrated EMAs: Includes two customizable Exponential Moving Averages (default 20 and 100) to help you stay on the right side of the trend.
Clean Visuals: Labels are pinned to the start of the period to keep your charts uncluttered while lines extend dynamically as time progresses.
How to Trade with it Trend Continuation: If price opens and holds above the $0.236$ bullish level, look for the $0.618$ and $1.0$ levels as targets.
Reversals: Watch for price exhaustion at the $1.618$ extension, especially if it aligns with an EMA or a Previous High/Low.
Gap Plays: Excellent for "Opening Range" strategies where you use the first close of the day as the pivot point for the extensions.
Custom Stochastic Momentum Index (SMI)📊 Custom Stochastic Momentum Index (SMI)
Custom Stochastic Momentum Index (SMI) is a refined momentum oscillator designed to identify trend strength, reversals, and overbought/oversold conditions with higher accuracy than traditional stochastic indicators.
This version gives traders full control over smoothing and signal calculation, making it suitable for intraday, swing, and positional trading across all markets.
🔹 Key Features
Fully customizable %K Length
Adjustable %K Smoothing and Double Smoothing
Configurable %D Period
User-selectable %D Moving Average Type
SMA
EMA
WMA
RMA
Fixed and proven levels:
Overbought: +40
Oversold: −40
Automatic shaded zones above overbought and below oversold levels
Clear K–D crossover labels for precise entry and exit timing
Clean, non-repainting logic
📈 How to Use
Bullish Setup
Look for %K crossing above %D near or below −40
Bearish Setup
Look for %K crossing below %D near or above +40
Trend Confirmation
Trade crossovers in the direction of the higher-timeframe trend
Works best when combined with:
Price Action
Support & Resistance
Market Structure / SMC concepts
🎯 Best For
Intraday traders
Swing traders
Momentum-based strategies
Confirmation with structure or breakout systems
⚠️ Disclaimer
This indicator is for educational and analytical purposes only.
It does not provide financial advice. Always use proper risk management.
US Stock Market Performance by Sector[Dots3Red]This indicator displays the annual performance of the U.S. stock market by sector.
Selected major sectors
IND – Industrials
TECH – Technology
HTH – Healthcare
FIN – Financials
COMM – Communication Services
CONSCYC – Consumer Cyclical
CONSSTAP – Consumer Staples
ENERGY – Energy
REAL ESTATE – Real Estate
BASMAT – Basic Materials
The data is presented in a table below the main chart.
Green cell — the sector was bullish during that year
Red cell — the sector was bearish during that year
The table automatically sorts sectors by performance, placing the best-performing sector at the top for each year.
NOTE:
Annual performance is calculated starting from 2020 by default (arbitrarily chosen) and can be adjusted by the user.
200 EMA Scalping 1 MinuteOnly Scalping in 1 Minute Super accurate, low faults, Strict rule based management, in Nifty 50
asia range baskets as an indicatorasia range baskets as an indicator. you can see all the baskets or remove them to filter out noise
tunnel of 5 as an indicatorthis is the tunnel of 5 concept but in an indicator format that can selectively tracks baskets. but can reduce to 2 pairs.
200 EMA Scalping 1 Minute (Only Nifty 1 Min Scalping)Only for scalping in 1 minute timeframe in Nifty 50.
SOFT Speed & Linearity Strategy (MTF) LIVE & BACKTESTSOFT Speed × Linearity Strategy (MTF – LIVE & BACKTEST)
This strategy detects clean impulsive moves by combining real-time price speed with directional quality (linearity).
It is designed for intraday markets such as Gold (XAUUSD), Nasdaq, and Crypto (ETH, BTC), where acceleration quality matters more than raw indicators.
🔹 Core Concepts
1️⃣ Speed ($ per second)
Measures how fast price is moving
Expressed in $/second, not points or ticks
Two execution modes:
LIVE → real-time intra-candle speed using elapsed seconds
BACKTEST → historical approximation using (Close − Open) / candle duration
2️⃣ Linearity Score (1 → 5)
Evaluates movement quality inside the candle:
Net progress vs adverse excursion
Identifies one-way impulses vs noisy back-and-forth moves
Interpretation
1–2 → choppy / rotational
3 → acceptable
4–5 → clean impulse (higher continuation probability)
🔹 Visual Panel
Histogram bars = Speed × Linearity
Color reflects directional quality
Optional info label displays:
Execution mode (LIVE / BACKTEST)
Analysis timeframe
Linearity score
Direction
Speed ($/s)
No drawings are placed on candles.
🔹 Entry Logic
Configurable conditions:
Minimum linearity score
Minimum speed
Direction aligned with candle movement
Long / Short / Both modes
Optional cooldown between signals
⚠️ Speed thresholds are separated for LIVE and BACKTEST to reflect their different nature.
🔹 Exit Modes (Selectable)
A — Symmetric
Exit when entry conditions are no longer valid.
B — Hysteresis (default)
Exit only after controlled degradation:
Linearity falls below a lower threshold
Or speed drops below a lower threshold
C — Momentum
Exit when speed no longer supports the trade direction (speed ≤ 0).
Optional add-ons:
Exit on opposite signal
Exit on speed channel re-entry
🔹 Multi-Timeframe (MTF)
Default analysis timeframe: 15 minutes
Optional lock to chart timeframe
Safety rule for public use:
If chart timeframe < 15m, analysis remains on 15m
Prevents misleading ultra-fast recalculations
🔹 LIVE vs BACKTEST (Important)
LIVE mode uses true intra-candle acceleration
BACKTEST mode uses an approximation to allow reproducible historical testing
Results between LIVE and BACKTEST are not identical by design
This is intentional and clearly separated.
🔹 Alerts
Available alerts:
BUY
SELL
EXIT
Speed channel breakout
ALL events
Compatible with TradingView webhooks.
🔹 Intended Use
This is not a trend indicator.
This is not a prediction tool.
It is a momentum quality detector, useful to:
Validate breakouts
Filter false accelerations
Trade continuation, not anticipation
⚠️ Disclaimer
This script is for educational and research purposes only.
It does not constitute financial advice.
Always test, adapt parameters to your market, and manage risk.
Sharpe Ratio [Alpha Extract]A sophisticated risk-adjusted return measurement system that calculates annualized Sharpe Ratio with dynamic color-coded visualization distinguishing return quality across positive and negative performance regimes. Utilizing rolling period calculations with smoothed moving average comparison, this indicator delivers institutional-grade performance assessment with overbought/oversold threshold detection for extreme risk-adjusted return conditions. The system's four-tier color classification combined with histogram fills and background highlighting provides comprehensive visual feedback on whether current returns justify their volatility risk across varying market cycles.
🔶 Advanced Sharpe Ratio Calculation Engine
Implements classic Sharpe Ratio methodology measuring mean daily return divided by return standard deviation with annualization factor for consistent interpretation. The system calculates daily percentage returns, computes rolling mean and standard deviation over configurable periods, applies square root of 365 scaling for annualized comparison, and generates unbounded ratio values where higher positive readings indicate superior risk-adjusted performance.
// Core Sharpe Ratio Framework
Daily_Return = close / close - 1
Mean_Return = ta.sma(Daily_Return, Period)
StdDev_Return = ta.stdev(Daily_Return, Period)
Sharpe_Ratio = (Mean_Return / StdDev_Return) * sqrt(365)
🔶 Dynamic Four-Tier Color Classification
Features sophisticated color logic distinguishing between strong positive returns (green), weakening positive returns (yellow), weakening negative returns (orange), and strong negative returns (red) based on relationship to smoothed average. The system compares current Sharpe against SMA-smoothed baseline, applying green when positive and accelerating, yellow when positive but decelerating, orange when negative but improving, and red when negative and deteriorating for nuanced regime assessment.
🔶 Smoothed Baseline Comparison Framework
Implements SMA smoothing of Sharpe Ratio with configurable period to establish momentum reference line for trend determination within risk-adjusted returns. The system calculates simple moving average of raw Sharpe values, uses this smoothed line as directional benchmark, and determines whether current risk-adjusted performance is strengthening or weakening relative to recent average for color classification logic.
🔶 Extreme Threshold Detection System
Provides overbought and oversold level identification with configurable upper and lower bounds marking exceptional risk-adjusted return extremes. The system defaults to +4.3 for overbought threshold (extremely favorable risk-return profile) and -2.3 for oversold threshold (severely unfavorable risk-return profile), applying dashed horizontal reference lines and background highlighting when Sharpe breaches these statistical extremes requiring attention.
🔶 Histogram Fill Visualization Architecture
Creates gradient-filled histogram between Sharpe Ratio line and zero baseline using dynamic color matching with 30% transparency for intuitive positive/negative return distinction. The system fills area above zero with bullish colors (green/yellow) and below zero with bearish colors (orange/red), providing immediate visual confirmation of whether returns are compensating for volatility risk or destroying risk-adjusted value.
🔶 Background Zone Highlighting Framework
Implements subtle background coloring when Sharpe enters extreme overbought or oversold zones, alerting traders to statistically significant risk-adjusted return conditions. The system applies semi-transparent red background when ratio exceeds +4.3 (exceptionally strong risk-adjusted returns potentially unsustainable) and green background when below -2.3 (severely poor risk-adjusted returns potentially reversionary), creating visual alerts without obscuring price action.
🔶 Annualization Methodology Integration
Utilizes standard square root of time scaling (sqrt(365)) to convert rolling period Sharpe calculations into annualized format for cross-temporal comparison. The system applies this mathematical transformation ensuring Sharpe values represent expected annual risk-adjusted returns regardless of calculation period length, enabling consistent interpretation whether using 100-day or 200-day rolling windows.
🔶 Zero-Line Reference System
Provides critical zero-line plot serving as boundary between positive risk-adjusted returns (capital allocation justified by return/risk profile) and negative risk-adjusted returns (strategy destroying value on risk-adjusted basis). The system emphasizes this threshold as decision point where values above zero suggest continuation while values below zero indicate reconsideration of exposure.
🔶 Momentum-Based Color
Transitions Implements intelligent color switching logic that considers both absolute Sharpe value and its momentum relative to smoothed average, creating four distinct regimes for granular performance assessment. The system enables identification of bullish acceleration (green), bullish deceleration (yellow), bearish improvement (orange), and bearish acceleration (red) for nuanced position management beyond simple positive/negative classification.
🔶 Configurable Period Optimization
Features adjustable calculation period and smoothing length enabling optimization across different trading timeframes and volatility regimes. The system defaults to 150-period calculation (approximately 6-7 months of daily data) with 30-period smoothing, but allows customization from short-term tactical assessment to long-term strategic evaluation based on investment horizon and strategy requirements.
🔶 Performance Optimization Framework
Employs efficient rolling calculations with streamlined daily return processing and optimized standard deviation computation for smooth real-time updates. The system includes minimal computational overhead through single-pass mean and variance calculations, enabling consistent performance across extended historical periods while maintaining accuracy of risk-adjusted return measurements.
This indicator delivers sophisticated risk-adjusted return analysis through classic Sharpe Ratio methodology with enhanced visual classification distinguishing return quality and momentum. Unlike simple return-focused indicators, Sharpe Ratio penalizes volatility ensuring traders evaluate whether returns justify the risk undertaken. The system's four-tier color coding, smoothed baseline comparison, and extreme threshold detection make it essential for portfolio managers and systematic traders seeking objective performance assessment beyond raw price gains. High positive Sharpe values indicate efficient return generation relative to volatility risk, while negative values signal value destruction on risk-adjusted basis requiring strategy reassessment. The indicator excels at identifying periods when risk-taking is rewarded (green zones) versus periods when volatility exceeds returns (red zones) across cryptocurrency, forex, and equity markets for optimal capital allocation decisions.
Weekday open ConnectorIndicator connecting open candles between 2 days of the week. For example if you want to see weekend price action, in setting you select Saturday and Monday. Connected lines are red if Saturday opened higher than Monday, green in opposite case.
Position Size FTWhy you should use this indicator:
It gives you the exact position size in seconds, based on your equity, your risk %, and your real stop location, so you don’t guess.
It keeps your risk consistent even when the stop is wider or tighter, so one “normal” trade can’t become a big loss.
It blocks stupid mistakes like reusing the last size, moving the stop, or oversizing when you feel confident.
It makes drawdown control automatic: drop from 1% to 0.5% or 0.25% and the tool enforces it without you negotiating with yourself.
This tool is your “no excuses” position sizer.
You tell it your account size and how much you’re willing to lose on one trade. Then, for every chart, it calculates the position size that matches your stop distance. So your risk stays the same even when the stop is wide or tight.
If you use it on every chart, you stop doing the two things that destroy accounts: guessing size and oversizing.
Account Equity ($)
Set this to your current account value. Update it at least once a week, or after a big win or loss. If this number is wrong, every size it prints will be wrong.
Risk per Trade (%)
This is the percent you are willing to lose if the stop gets hit.
My recommendation if you trade my system
0.25% if you’re new, or if you’re not consistent yet. This keeps you alive while you learn.
0.5% as your normal size when you’re trading well.
1% only when your account is at an all time high and the market is clean.
0.25% when you are in a drawdown (especially if you are down more than 10%) and the market feels messy.
Max Position Size (%)
This is a safety cap. Even if the math says you can take a huge position, the tool will limit it.
I recommend 25%.
It stops you from loading too much into one trade, especially on tight stops where position size can explode.
LOD/HOD Lookback Bars
This tells the tool which low or high to use for the stop reference.
Use 1 if you are using the current day Low of Day or High of Day.
Use 2 if you are using the previous day Low of Day or High of Day.
If you switch between those two in your strategy, you should switch this setting to match the setup. Otherwise the sizing will be off.
Table Position, Text Size, Text Color
This is just display.
Pick a corner that doesn’t block your chart.
Keep Text Size on Normal.
Use black text if your chart background is light, and white text if your background is dark.
My clean default setup
Account Equity = your real number
Risk per Trade = 0.5%
Max Position Size = 25%
Lookback Bars = 1 most of the time, 2 when the setup calls for previous day levels
Table Position = anywhere you like, keep it out of the way
The simple rule
If the tool is on the chart, sizing becomes automatic. If sizing is automatic, discipline gets easier. And if discipline gets easier, you stop donating money to the market.
SMA Cross Counter - MTF SmoothTitle Idea
SMA Cross Counter - MTF Smooth (Find the 50-Bar Sweet Spot)
Description
Overview
This indicator tracks and displays the number of bars elapsed since the current 20SMA crossed the Higher Timeframe (HTF) 20SMA. By quantifying the "age" of a trend, it is designed to help traders identify high-probability pullbacks with objective precision.
Strategy: The 50-Bar Sweet Spot
This script is built around a specific tactical observation:
The Target: A "One-Cushion Granville Setup" occurring approximately 50 bars after the crossover is often a high-probability "Sweet Spot." At this stage, the trend is usually well-established but still possesses significant momentum.
The Edge: By monitoring the counter in the bottom-right corner, you can move away from subjective "feel" and objectively judge the trend's maturity. It helps you avoid the high volatility of an early cross and the exhaustion risks of a late-stage trend (e.g., over 100 bars).
Key Features
Automatic MTF Selection The reference timeframe updates automatically as you switch charts.
1m chart → 5m SMA
5m chart → 30m (or 15m) SMA
15m chart → 1h SMA
Daily chart → Weekly SMA, and so on.
Smooth MTF Visualization Eliminates the "stepped/staircase" effect common in MTF indicators. It connects higher-TF data points with smooth, diagonal lines, maintaining a clean chart and showing the true slope of the trend.
Real-Time Bar Counter Resets to "0" at the exact moment of a crossover and increments by 1 with every new bar.
Settings
5m Chart Reference: Choose between 30m or 15m as the HTF source when trading on a 5m chart.
SMA Period: Defaults to 20, but fully adjustable to fit your specific strategy.
タイトル案
SMA Cross Counter - MTF Smooth (50本目のスイートスポット判定)
説明文(日本語)
概要
このインジケーターは、現在の20SMAが上位足の20SMAと交差してからの「経過バー数」をリアルタイムでカウントし、右下のテーブルに表示します。 単なるクロスの確認ではなく、トレンドの「経過時間」を数値化することで、押し目買い・戻り売りの精度を極限まで高めるために開発されました。
戦略:50本目のスイートスポット
本インジケーターは、以下のトレード理論をベースに設計されています。
狙い目: SMA同士がクロスしてから50本程度経過したタイミングでの「ワンクッショングランビル」は、トレンドの勢いが安定し、かつ伸び代が最も残されている**「スイートスポット」**となる可能性が高い。
メリット: 右下のカウンターを見るだけで、感覚に頼らず「今がトレンドの何合目か」を客観的に判断できます。クロス直後の不安定な時期や、100本を超えたトレンド終盤の失速リスクを避けるのに有効です。
主な機能
自動タイムフレーム選定 (Auto-MTF) チャートの時間軸を切り替えるだけで、表示中の足に合わせて最適な上位足を自動選択します。(例:5分足なら30分足SMA、15分足なら1時間足SMAなど)
滑らかな上位足ライン MTF特有の「階段状のギザギザ」を排除。上位足の確定値を直線で結ぶため、チャートを美しく保ちつつ、正確なトレンドの傾きを確認できます。
リアルタイム・カウンター SMAがクロスした瞬間に「0」へリセット。以降、1本ごとに加算されます。
設定項目
5分足チャート時の参照先: 上位足を「30分」にするか「15分」にするかを切り替え可能。
SMA期間: デフォルトは20。ご自身の手法に合わせて調整してください。
HTF Flip Close Levels, Daily Weekly Monthly TASHTF Flip Close Levels (D/W/M) — Support & Resistance Tool
This indicator automatically plots Daily, Weekly, and Monthly support & resistance levels based on higher-timeframe candle close behaviour.
🔹 What this tool does
The script detects HTF momentum flips using closed candles only:
Support is created when:
A red candle is followed by a green candle
The level is drawn at the close of the red candle
Resistance is created when:
A green candle is followed by a red candle
The level is drawn at the close of the green candle
This creates objective, rule-based horizontal levels derived purely from price behavior, not indicators.
🔹 Features
✅ Plots Daily, Weekly, and Monthly levels simultaneously
✅ Works on any timeframe (1m, 5m, 1H, Daily, Weekly, etc.)
✅ Keeps full historical levels, not just the most recent ones
✅ Optional auto-hide tapped levels (when price touches them)
✅ Tap detection:
Wick touch
or Close cross/touch
✅ Levels are always based on HTF candle closes, never wicks
✅ Designed to stay consistent across timeframe changes
🔹 How to use it (IMPORTANT)
This indicator:
❌ Does NOT predict market direction
❌ Does NOT generate buy/sell signals
❌ Does NOT tell you when to enter or exit
It is a context & confluence tool.
You should use these levels together with:
Market structure
Trend analysis
Volume / orderflow / CVD
Your own entry model
Your own risk management
Think of these levels as areas of interest, not automatic trade signals.
🔹 Best use cases
Confluence with:
Local support/resistance
VWAP / Anchored VWAP
Range highs/lows
Liquidity zones
Reversal or continuation patterns
Identifying:
HTF reaction zones
Decision points
Areas where other traders are likely watching
⚠️ Disclaimer
This indicator is a technical analysis tool only.
It is NOT financial advice.
It does NOT guarantee profits.
All trading decisions and risk are your responsibility.
Use it as part of a complete trading system, not as a standalone strategy.
PEGY RatioThe basic metrics that all indicators descend from are for each bar the Open, High, Low, Close and Volume where the Close is often noted as Price. Then the Price/Earnings ratio entered trading. Price/Earnings is often noted as P/E ratio or PE.
The first major formalisation and widespread use of the P/E ratio came in 1934, when Benjamin Graham and David Dodd introduced it in their landmark book "Security Analysis". Their work established the P/E ratio as a core tool in fundamental analysis and value investing.
Graham’s influence was profound: he used the P/E ratio to help investors judge whether a stock was overpriced or underpriced, and his teachings shaped generations of value investors, including Warren Buffett.
The P/E ratio evolved into modern variants like forward P/E and Shiller CAPE.
There’s no single P/E cutoff that definitively marks a “growth” or “income” stock, but investors commonly treat P/E below about 10–15 as value/income oriented and P/E above about 20–25 as growth oriented. It is important to watch the P/E trend. If the P/E is a low value and reducing in value, then the company may be failing, and it is not good to invest in.
P/E is a relative signal, not an absolute rule. A high P/E usually means the market expects above average future earnings growth; a low P/E often signals lower growth expectations, higher current yield, or elevated risk. Benchmarks vary by sector and cycle: what’s “high” for utilities is low for software. Historical market averages (e.g., S&P 500) help frame whether a multiple is elevated or depressed.
The next step was the PEG ratio which was first introduced in 1969 by Mario Farina, who described it in his book "A Beginner’s Guide to Successful Investing in the Stock Market".
The concept later gained widespread popularity thanks to Peter Lynch, who championed it in his 1989 bestseller "One Up on Wall Street", arguing that a “fairly priced” company tends to have a PEG of about 1. Over 1 is overpriced and below is a bargain.
Later the PEGY ratio, a variation of the PEG ratio that added dividend yield into the valuation came into prominence so that mature, dividend paying companies are treated “fairly” . The PEGY ratio emerged in the 1990s as analysts and portfolio managers began adapting the PEG ratio for dividend paying companies. The concept is a natural extension of Peter Lynch’s PEG logic: If growth matters, and dividends matter, combine them into one valuation metric.
PEGY (Price/Earnings Growth% and Dividend Yield) is a straightforward modification of the PEG ratio that adds dividend yield to the growth term so that mature, dividend paying companies aren’t penalized by low growth rates alone. The formula is typically written as:
PEGY=(Price/Earnings)/(Earnings growth %+Dividend yield%)
Peter Lynch (One Up on Wall Street, 1989) is the most cited printed source that describes a dividend adjusted PEG concept and applies it as a practical screening rule for investors. PEGY is in Chapter “Some Fabulous Numbers”.
If earnings are negative, then the PEGY ratio will be negative, and it is best to invest in companies that make money. That is, positive PEGY ratio.
The PEGY ratio can have different ratios depending upon whether historical data is used (Mario Farina preference) or whether forward looking earnings (Peter Lynch preference) is used in the calculations.
Enough for the history lesson. You can quickly go through your watchlist and determine which stocks have a PEGY Ratio from 0 to 1 and eliminate the others. Then whittle down that list to find stocks travelling from bottom left to upper right on the page. Use any other indicators on that reduced list that your tradng plan uses and there you have your list of stocks in which to invest.
STOCHRSI+WRsotch RSI indicator
WR indicator
2 in 1
use this indicator
we can see stoch RSI and WR% on 1 chart
stoch RSI above 0 , 0 to 100
WR% under 0, -100 to 0
if price on the uptrend
when stoch RSI below 20 , better buy
WR% below -80, better buy
if price is downtrend
when stoch RSI above 80 , better sell
WR% above -20, better sell
UTC+7 Time Highlight// // Input
// session1 = input.session("0600-0601", "Time Slot 1 (UTC+7)")
// session2 = input.session("0800-0801", "Time Slot 2 (UTC+7)")
[RoyalNeuron] Supertrend [Medusa v1.0]Hey everyone, 👋
This is Medusa Supertrend v1.0.
Proper Supertrend logic using ATR with trend continuation rules.
Optimized default settings for BTC 30 minute charts, but fully adjustable to you liking.
Optional BUY and SELL labels only when the trend actually flips
Soft trend highlighting so you can see regime shifts without blinding your chart
Quick way to use it:
Green Supertrend with bullish fill means bias stays long and you look for continuation setups
Red Supertrend with bearish fill means bias stays defensive or short.
BUY and SELL labels mark trend changes.
It works best when combined with momentum or volume tools like WidowMaker to time entries with the trend instead of fighting it.
Use it, break it, tell me what you’d improve. More Medusa iterations and free tools coming.
Cheers,
RoyalNeuron 👑
Supertrend, Trend, ATR, Directional Bias, Buy Sell, Bitcoin, BTC, Clean Charts. Free, Alerts






















