Market StructureThis is an advanced, non-repainting Market Structure indicator that provides a robust framework for understanding market dynamics across any timeframe and instrument.
Key Features:
- Non-repainting market structure detection using swing highs/lows
- Clear identification of internal and general market structure levels
- Breakout threshold system for structure adjustments
- Integrated multi-timeframe compatibility
- Rich selection of 30+ moving average types, from basic to advanced adaptive variants
What Makes It Different:
Unlike most market structure indicators that repaint or modify past signals, this implementation uses a fixed-length lookback period to identify genuine swing points.
This means once a structure level or pivot is identified, it stays permanent - providing reliable signals for analysis and trading decisions.
The indicator combines two layers of market structure:
1. Internal Structure (lighter lines) - More sensitive to local price action
2. General Structure (darker lines) - Shows broader market context
Technical Details:
- Uses advanced pivot detection algorithm with customizable swing size
- Implements consecutive break counting for structure adjustments
- Supports both close and high/low price levels for breakout detection
- Includes offset option for better visual alignment
- Each structure break is validated against multiple conditions to prevent false signals
Offset on:
Offset off:
Moving Averages Library:
Includes comprehensive selection of moving averages, from traditional to advanced adaptive types:
- Basic: SMA, EMA, WMA, VWMA
- Advanced: KAMA, ALMA, VIDYA, FRAMA
- Specialized: Hull MA, Ehlers Filter Series
- Adaptive: JMA, RPMA, and many more
Perfect for:
- Price action analysis
- Trend direction confirmation
- Support/resistance identification
- Market structure trading strategies
- Multiple timeframe analysis
This open-source tool is designed to help traders better understand market dynamics and make more informed trading decisions. Feel free to use, modify, and enhance it for your trading needs.
المؤشرات والاستراتيجيات
Three Step Future-Trend [BigBeluga]Three Step Future-Trend by BigBeluga is a forward-looking trend analysis tool designed to project potential future price direction based on historical periods. This indicator aggregates data from three consecutive periods, using price averages and delta volume analysis to forecast trend movement and visualize it on the chart with a projected trend line and volume metrics.
🔵 Key Features:
Three Period Analysis: Calculates price averages and delta volumes from three specified periods, creating a consolidated view of historical price movement.
Future Trend Line Projection: Plots a forward trend line based on the calculated averag of three periods, helping traders visualize potential future price movement.
Avg Delta Volume and Future Price Label: Shows a delta average Volume a long with a Future Price label at the end of the projected trend line, indicating the possible future delta volume and future Price.
Volume Data Table: Displays a detailed table showing delta and total volume for each of the three periods, allowing quick volume comparison to support the projected trend.
This indicator provides a dynamic way to anticipate market direction by blending price and volume data, giving traders insights into both volume and trend strength in upcoming periods.
Crypto Holy GrailLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
3 EMA + RSI with Trail Stop [Free990] (LOW TF)This trading strategy combines three Exponential Moving Averages (EMAs) to identify trend direction, uses RSI to signal exit conditions, and applies both a fixed percentage stop-loss and a trailing stop for risk management. It aims to capture momentum when the faster EMAs cross the slower EMA, then uses RSI thresholds, time-based exits, and stops to close trades.
Short Explanation of the Logic
Trend Detection: When the 10 EMA crosses above the 20 EMA and both are above the 100 EMA (and the current price bar closes higher), it triggers a long entry signal. The reverse happens for a short (the 10 EMA crosses below the 20 EMA and both are below the 100 EMA).
RSI Exit: RSI crossing above a set threshold closes long trades; crossing below another threshold closes short trades.
Time-Based Exit: If a trade is in profit after a set number of bars, the strategy closes it.
Stop-Loss & Trailing Stop: A fixed stop-loss based on a percentage from the entry price guards against large drawdowns. A trailing stop dynamically tightens as the trade moves in favor, locking in potential gains.
Detailed Explanation of the Strategy Logic
Exponential Moving Average (EMA) Setup
Short EMA (out_a, length=10)
Medium EMA (out_b, length=20)
Long EMA (out_c, length=100)
The code calculates three separate EMAs to gauge short-term, medium-term, and longer-term trend behavior. By comparing their relative positions, the strategy infers whether the market is bullish (EMAs stacked positively) or bearish (EMAs stacked negatively).
Entry Conditions
Long Entry (entryLong): Occurs when:
The short EMA (10) crosses above the medium EMA (20).
Both EMAs (short and medium) are above the long EMA (100).
The current bar closes higher than it opened (close > open).
This suggests that momentum is shifting to the upside (short-term EMAs crossing up and price action turning bullish). If there’s an existing short position, it’s closed first before opening a new long.
Short Entry (entryShort): Occurs when:
The short EMA (10) crosses below the medium EMA (20).
Both EMAs (short and medium) are below the long EMA (100).
The current bar closes lower than it opened (close < open).
This indicates a potential shift to the downside. If there’s an existing long position, that gets closed first before opening a new short.
Exit Signals
RSI-Based Exits:
For long trades: When RSI exceeds a specified threshold (e.g., 70 by default), it triggers a long exit. RSI > short_rsi generally means overbought conditions, so the strategy exits to lock in profits or avoid a pullback.
For short trades: When RSI dips below a specified threshold (e.g., 30 by default), it triggers a short exit. RSI < long_rsi indicates oversold conditions, so the strategy closes the short to avoid a bounce.
Time-Based Exit:
If the trade has been open for xBars bars (configurable, e.g., 24 bars) and the trade is in profit (current price above entry for a long, or current price below entry for a short), the strategy closes the position. This helps lock in gains if the move takes too long or momentum stalls.
Stop-Loss Management
Fixed Stop-Loss (% Based): Each trade has a fixed stop-loss calculated as a percentage from the average entry price.
For long positions, the stop-loss is set below the entry price by a user-defined percentage (fixStopLossPerc).
For short positions, the stop-loss is set above the entry price by the same percentage.
This mechanism prevents catastrophic losses if the market moves strongly against the position.
Trailing Stop:
The strategy also sets a trail stop using trail_points (the distance in price points) and trail_offset (how quickly the stop “catches up” to price).
As the market moves in favor of the trade, the trailing stop gradually tightens, allowing profits to run while still capping potential drawdowns if the price reverses.
Order Execution Flow
When the conditions for a new position (long or short) are triggered, the strategy first checks if there’s an opposite position open. If there is, it closes that position before opening the new one (prevents going “both long and short” simultaneously).
RSI-based and time-based exits are checked on each bar. If triggered, the position is closed.
If the position remains open, the fixed stop-loss and trailing stop remain in effect until the position is exited.
Why This Combination Works
Multiple EMA Cross: Combining 10, 20, and 100 EMAs balances short-term momentum detection with a longer-term trend filter. This reduces false signals that can occur if you only look at a single crossover without considering the broader trend.
RSI Exits: RSI provides a momentum oscillator view—helpful for detecting overbought/oversold conditions, acting as an extra confirmation to exit.
Time-Based Exit: Prevents “lingering trades.” If the position is in profit but failing to advance further, it takes profit rather than risking a trend reversal.
Fixed & Trailing Stop-Loss: The fixed stop-loss is your safety net to cap worst-case losses. The trailing stop allows the strategy to lock in gains by following the trade as it moves favorably, thus maximizing profit potential while keeping risk in check.
Overall, this approach tries to capture momentum from EMA crossovers, protect profits with trailing stops, and limit risk through both a fixed percentage stop-loss and exit signals from RSI/time-based logic.
LRI Momentum Cycles [AlgoAlpha]Discover the LRI Momentum Cycles indicator by AlgoAlpha, a cutting-edge tool designed to identify market momentum shifts using trend normalization and linear regression analysis. This advanced indicator helps traders detect bullish and bearish cycles with enhanced accuracy, making it ideal for swing traders and intraday enthusiasts alike.
Key Features :
🎨 Customizable Appearance : Set personalized colors for bullish and bearish trends to match your charting style.
🔧 Dynamic Trend Analysis : Tracks market momentum using a unique trend normalization algorithm.
📊 Linear Regression Insight : Calculates real-time trend direction using linear regression for better precision.
🔔 Alert Notifications : Receive alerts when the market switches from bearish to bullish or vice versa.
How to Use :
🛠 Add the Indicator : Favorite and apply the indicator to your TradingView chart. Adjust the lookback period, linear regression source, and regression length to fit your strategy.
📊 Market Analysis : Watch for color changes on the trend line. Green signals bullish momentum, while red indicates bearish cycles. Use these shifts to time entries and exits.
🔔 Set Alerts : Enable notifications for momentum shifts, ensuring you never miss critical market moves.
How It Works :
The LRI Momentum Cycles indicator calculates trend direction by applying linear regression on a user-defined price source over a specified period. It compares historical trend values, detecting bullish or bearish momentum through a dynamic scoring system. This score is normalized to ensure consistent readings, regardless of market conditions. The indicator visually represents trends using gradient-colored plots and fills to highlight changes in momentum. Alerts trigger when the momentum state changes, providing actionable trading signals.
Sector Relative Strength [Afnan]This indicator calculates and displays the relative strength (RS) of multiple sectors against a chosen benchmark. It allows you to quickly compare the performance of various sectors within any global stock market. While the default settings are configured for the Indian stock market , this tool is not limited to it; you can use it for any market by selecting the appropriate benchmark and sector indices.
📊 Key Features ⚙️
Customizable Benchmark: Select any symbol as your benchmark for relative strength calculation. The default benchmark is set to `NSE:CNX100`. This allows for global market analysis by selecting the appropriate benchmark index of any country.
Multiple Sectors: Analyze up to 23 different sector indices. The default settings include major NSE sector indices. This can be customized to any market by using the relevant sector indices of that country.
Individual Sector Control: Toggle the visibility of each sector's RS on the chart.
Color-Coded Plots: Each sector's RS is plotted with a distinct color for easy identification.
Adjustable Lookback Period: Customize the lookback period for RS calculation.
Interactive Table: A sortable table displays the current RS values for all visible sectors, allowing for quick ranking.
Table Customization: Adjust the table's position, text size, and visibility.
Zero Line: A horizontal line at zero provides a reference point for RS values.
🧭 How to Use 🗺️
Add the indicator to your TradingView chart.
Select your desired benchmark symbol. The default is `NSE:CNX100`. For example, use SPY for the US market, or DAX for the German market.
Adjust the lookback period as needed.
Enable/disable the sector indices you want to analyze. The default includes major NSE sector indices like `NSE:CNXIT`, `NSE:CNXAUTO`, etc.
Customize the table's appearance as needed.
Observe the RS plots and the table to identify sectors with relative strength or weakness.
📝 Note 💡
This indicator is designed for sectorial analysis. You can use it with any market by selecting the appropriate benchmark and sector indices.
The default settings are configured for the Indian stock market with `NSE:CNX100` as the benchmark and major NSE sector indices pre-selected.
The relative strength calculation is based on the price change of the sector index compared to the benchmark over the lookback period.
Positive RS values indicate relative outperformance, while negative values indicate relative underperformance.
👨💻 Developer 🛠️
Afnan Tajuddin
RSI Supply/Demand Zones IdentifierPowerful RSI based Demand and supply zones Identifier helps to identify potential reversal key areas.
[blackcat] L1 Enveloped Oscillator█ OVERVIEW
The script is an indicator named “ L1 Enveloped Oscillator” (L1 EO) designed to plot various trend and oscillator values on a separate chart pane. It calculates multiple indicators such as trend, adjusted trend, oscillator, directional strength, and normalized oscillator, and uses these to detect potential buy and sell signals based on trend contractions, expansions, and divergences.
█ LOGICAL FRAMEWORK
Structure:
1 — Input Parameters: None are explicitly defined, but the script is parameterized within the function with fixed values for levels and periods.
2 — Calculations: The calculate_l1_enveloped_oscillator function computes multiple values including price bases, trend, oscillator, and adjusted trends. This function uses built-in Pine Script functions like ta.highest, ta.lowest, ta.ema, ta.sma, and math.max.
3 — Plotting: The calculated values are plotted on the chart using the plot function, with different colors and styles for visual distinction.
4 — Signal Detection: The script detects and labels potential buy and sell signals based on trend contractions, expansions, and divergences between the price and oscillator.
5 — Conditional Statements: Multiple if statements are used to determine when to place labels for buy and sell signals.
█ CUSTOM FUNCTIONS
• calculate_l1_enveloped_oscillator(high, low, close, open): Calculates various trend and oscillator values based on the input price data.
— Parameters: high, low, close, open (price data).
— Return Values: A tuple containing top_level, bottom_level, middle_level, adjusted_trend, trend, oscillator, directional_strength, normalized_oscillator, and adjusted_candle_trend.
█ KEY POINTS AND TECHNIQUES
• Advanced Pine Script Features: Utilizes built-in functions for technical analysis (ta.highest, ta.lowest, ta.ema, ta.sma, ta.crossover, ta.crossunder).
• Optimization Techniques: Uses fixed periods and levels for calculations, which can be adjusted for different market conditions.
• Best Practices: Clearly separates calculations and plotting, making the script modular and easier to maintain.
• Unique Approaches: Combines multiple indicators (trend, oscillator, directional strength) to detect complex market conditions like divergences and contractions/expansions.
█ EXTENDED KNOWLEDGE AND APPLICATIONS
• Modifications: Users can modify the levels (top_level, bottom_level, middle_level) and periods used in calculations to better suit specific asset classes or market conditions.
• Extensions: The script can be extended to include additional indicators or signals, such as RSI or MACD, to enhance its predictive power.
• Application Scenarios: Similar techniques can be applied in other trading strategies involving trend analysis and divergence detection, such as momentum trading or mean reversion strategies.
• Related Concepts: Users can explore other Pine Script concepts like alerts, backtesting, and optimization to fine-tune strategies based on historical data.
Log Regression OscillatorThe Log Regression Oscillator transforms the logarithmic regression curves into an easy-to-interpret oscillator that displays potential cycle tops/bottoms.
🔶 USAGE
Calculating the logarithmic regression of long-term swings can help show future tops/bottoms. The relationship between previous swing points is calculated and projected further. The calculated levels are directly associated with swing points, which means every swing point will change the calculation. Importantly, all levels will be updated through all bars when a new swing is detected.
The "Log Regression Oscillator" transforms the calculated levels, where the top level is regarded as 100 and the bottom level as 0. The price values are displayed in between and calculated as a ratio between the top and bottom, resulting in a clear view of where the price is situated.
The main picture contains the Logarithmic Regression Alternative on the chart to compare with this published script.
Included are the levels 30 and 70. In the example of Bitcoin, previous cycles showed a similar pattern: the bullish parabolic was halfway when the oscillator passed the 30-level, and the top was very near when passing the 70-level.
🔹 Proactive
A "Proactive" option is included, which ensures immediate calculations of tentative unconfirmed swings.
Instead of waiting 300 bars for confirmation, the "Proactive" mode will display a gray-white dot (not confirmed swing) and add the unconfirmed Swing value to the calculation.
The above example shows that the "Calculated Values" of the potential future top and bottom are adjusted, including the provisional swing.
When the swing is confirmed, the calculations are again adjusted, showing a red dot (confirmed top swing) or a green dot (confirmed bottom swing).
🔹 Dashboard
When less than two swings are available (top/bottom), this will be shown in the dashboard.
The user can lower the "Threshold" value or switch to a lower timeframe.
🔹 Notes
Logarithmic regression is typically used to model situations where growth or decay accelerates rapidly at first and then slows over time, meaning some symbols/tickers will fit better than others.
Since the logarithmic regression depends on swing values, each new value will change the calculation. A well-fitted model could not fit anymore in the future.
Users have to check the validity of swings; for example, if the direction of swings is downwards, then the dataset is not fitted for logarithmic regression.
In the example above, the "Threshold" is lowered. However, the calculated levels are unreliable due to the swings, which do not fit the model well.
Here, the combination of downward bottom swings and price accelerates slower at first and faster recently, resulting in a non-fit for the logarithmic regression model.
Note the price value (white line) is bound to a limit of 150 (upwards) and -150 (down)
In short, logarithmic regression is best used when there are enough tops/bottoms, and all tops are around 100, and all bottoms around 0.
Also, note that this indicator has been developed for a daily (or higher) timeframe chart.
🔶 DETAILS
In mathematics, the dot product or scalar product is an algebraic operation that takes two equal-length sequences of numbers (arrays) and returns a single number, the sum of the products of the corresponding entries of the two sequences of numbers.
The usual way is to loop through both arrays and sum the products.
In this case, the two arrays are transformed into a matrix, wherein in one matrix, a single column is filled with the first array values, and in the second matrix, a single row is filled with the second array values.
After this, the function matrix.mult() returns a new matrix resulting from the product between the matrices m1 and m2.
Then, the matrix.eigenvalues() function transforms this matrix into an array, where the array.sum() function finally returns the sum of the array's elements, which is the dot product.
dot(x, y)=>
if x.size() > 1 and y.size() > 1
m1 = matrix.new()
m2 = matrix.new()
m1.add_col(m1.columns(), y)
m2.add_row(m2.rows (), x)
m1.mult (m2)
.eigenvalues()
.sum()
🔶 SETTINGS
Threshold: Period used for the swing detection, with higher values returning longer-term Swing Levels.
Proactive: Tentative Swings are included with this setting enabled.
Style: Color Settings
Dashboard: Toggle, "Location" and "Text Size"
Polyphase MACD (PMACD)The Polyphase MACD (PMACD) uses polyphase decimation to create a continuous estimate of higher timeframe MACD behavior. The number of phases represents the timeframe multiplier - for example, 3 phases approximates a 3x higher timeframe.
Traditional higher timeframe MACD indicators update only when each higher timeframe bar completes, creating stepped signals that can miss intermediate price action. The PMACD addresses this by maintaining multiple phase-shifted MACD calculations and combining them with appropriate anti-aliasing filters. This approach eliminates the discrete jumps typically seen in higher timeframe indicators, though the resulting signal may sometimes deviate from the true higher timeframe values due to its estimative nature.
The indicator processes price data through parallel phase calculations, each analyzing a different time-offset subset of the data. These phases are filtered and combined to prevent aliasing artifacts that occur in simple timeframe conversions. The result is a smooth, continuous signal that begins providing meaningful values immediately, without requiring a warm-up period of higher timeframe bars.
The PMACD maintains the standard MACD components - the MACD line (fast MA - slow MA), signal line, and histogram - while providing a more continuous view of higher timeframe momentum. Users can select between EMA and SMA calculations for both the oscillator and signal components, with all calculations benefiting from the same polyphase processing technique.
Polyphase Stochastic RSI (PSRSI)The Polyphase Stochastic RSI (PSRSI) provides a continuous estimate of higher timeframe Stochastic RSI behavior by using polyphase decimation. The number of phases represents the timeframe multiplier - for example, 3 phases approximates a 3x higher timeframe.
While traditional higher timeframe indicators only update at the completion of each higher timeframe bar, the PSRSI creates a continuous signal by maintaining multiple phase-shifted calculations and combining them with appropriate anti-aliasing filters. This approach eliminates the gaps and discontinuities typically seen in higher timeframe indicators, though the resulting signal may sometimes deviate from the true higher timeframe values due to its estimative nature.
The indicator processes data through parallel phase calculations, each handling a different subset of price data offset in time. These phases are then filtered and combined to prevent aliasing artifacts that occur in simple timeframe conversions. The result is a smooth, continuous signal that starts providing meaningful values immediately, without requiring a warm-up period of higher timeframe bars.
Users can choose between RSI and Stochastic RSI modes, with both benefiting from the same polyphase processing technique. The indicator maintains the standard interpretation of overbought and oversold conditions while providing a more continuous view of higher timeframe momentum.
Volume Imbalance Liquidity2"Volume imbalance" refers to a situation in financial markets where there is a disproportionate amount of buying or selling activity, leading to a shift in the volume of trades on one side of the market. This imbalance often signals a potential shift in market sentiment, indicating that either buyers or sellers are more aggressive than usual. It can be observed in various ways, such as higher-than-average trading volumes on either the buy or sell side, which can affect asset prices.
A volume imbalance can lead to significant price movements, especially if it occurs near key support or resistance levels. Traders and investors often monitor volume imbalances as they may indicate upcoming trends, reversals, or increased volatility in the market. The concept is commonly used in technical analysis to assess the strength or weakness of a price movement.
Weighted Fourier Transform: Spectral Gating & Main Frequency🙏🏻 This drop has 2 purposes:
1) to inform every1 who'd ever see it that Weighted Fourier Tranform does exist, while being available nowhere online, not even in papers, yet there's nothing incredibly complicated about it, and it can/should be used in certain cases;
2) to show TradingView users how they can use it now in dem endevours, to show em what spectral filtering is, and what can they do with all of it in diy mode.
... so we gonna have 2 sections in the description
Section 1: Weighted Fourier Transform
It's quite easy to include weights in Fourier analysis: you just premultiply each datapoint by its corresponding weight -> feed to direct Fourier Transform, and then divide by weights after inverse Fourier transform. Alternatevely, in direct transform you just multiply contributions of each data point to the real and imaginary parts of the Fourier transform by corresponding weights (in accumulation phase), and in inverse transform you divide by weights instead during the accumulation phase. Everything else stays the same just like in non-weighted version.
If you're from the first target group let's say, you prolly know a thing or deux about how to code & about Fourier Transform, so you can just check lines of code to see the implementation of Weighted Discrete version of Fourier Transform, and port it to to any technology you desire. Pine Script is a developing technology that is incredibly comfortable in use for quant-related tasks and anything involving time series in general. While also using Python for research and C++ for development, every time I can do what I want in Pine Script, I reach for it and never touch matlab, python, R, or anything else.
Weighted version allows you to explicetly include order/time information into the operation, which is essential with every time series, although not widely used in mainstream just as many other obvious and right things. If you think deeply, you'll understand that you can apply a usual non-weighted Fourier to any 2d+ data you can (even if none of these dimensions represent time), because this is a geometric tool in essence. By applying linearly decaying weights inside Fourier transform, you're explicetly saying, "one of these dimensions is Time, and weights represent the order". And obviously you can combine multiple weightings, eg time and another characteristic of each datum, allows you to include another non-spatial dimension in your model.
By doing that, on properly processed (not only stationary but Also centered around zero data), you can get some interesting results that you won't be able to recreate without weights:
^^ A sine wave, centered around zero, period of 16. Gray line made by: DWFT (direct weighted Fourier transform) -> spectral gating -> IWFT (inverse weighted Fourier transform) -> plotting the last value of gated reconstructed data, all applied to expanding window. Look how precisely it follows the original data (the sine wave) with no lag at all. This can't be done by using non-weighted version of Fourier transform.
^^ spectral filtering applied to the whole dataset, calculated on the latest data update
And you should never forget about Fast Fourier Transform, tho it needs recursion...
Section 2: About use cases for quant trading, about this particular implementaion in Pine Script 6 (currently the latest version as of Friday 13, December 2k24).
Given the current state of things, we have certain limits on matrix size on TradingView (and we need big dope matrixes to calculate polynomial regression -> detrend & center our data before Fourier), and recursion is not yet available in Pine Script, so the script works on short datasets only, and requires some time.
A note on detrending. For quality results, Fourier Transform should be applied to not only stationary but also centered around zero data. The rightest way to do detrending of time series
is to fit Cumulative Weighted Moving Polynomial Regression (known as WLSMA in some narrow circles xD) and calculate the deltas between datapoint at time t and this wonderful fit at time t. That's exactly what you see on the main chart of script description: notice the distances between chart and WLSMA, now look lower and see how it matches the distances between zero and purple line in WFT study. Using residuals of one regression fit of the whole dataset makes less sense in time series context, we break some 'time' and order rules in a way, tho not many understand/cares abouit it in mainstream quant industry.
Two ways of using the script:
Spectral Gating aka Spectral filtering. Frequency domain filtering is quite responsive and for a greater computational cost does not introduce a lag the way it works with time-domain filtering. Works this way: direct Fourier transform your data to get frequency & phase info -> compute power spectrum out of it -> zero out all dem freqs that ain't hit your threshold -> inverse Fourier tranform what's left -> repeat at each datapoint plotting the very first value of reconstructed array*. With this you can watch for zero crossings to make appropriate trading decisions.
^^ plot Freq pass to use the script this way, use Level setting to control the intensity of gating. These 3 only available values: -1, 0 and 1, are the general & natural ones.
* if you turn on labels in script's style settings, you see the gray dots perfectly fitting your data. They get recalculated (for the whole dataset) at each update. You call it repainting, this is for analytical & aesthetic purposes. Included for demonstration only.
Finding main/dominant frequency & period. You can use it to set up Length for your other studies, and for analytical purposes simply to understand the periodicity of your data.
^^ plot main frequency/main period to use the script this way. On the screenshot, you can see the script applied to sine wave of period 16, notice how many datapoints it took the algo to figure out the signal's period quite good in expanding window mode
Now what's the next step? You can try applying signal windowing techniques to make it all less data-driven but your ego-driven, make a weighted periodogram or autocorrelogram (check Wiener-Khinchin Theorem ), and maybe whole shiny spectrogram?
... you decide, choice is yours,
The butterfly reflect the doors ...
∞
Cryptotutor - Pi Cycle Top IndicatorThe Pi Cycle Top Indicator is a tool designed to identify potential price peaks (tops) in Bitcoin during bull markets. It uses two moving averages (MAs): a 111-day SMA and a 350-day SMA multiplied by a factor of 2. When the 111-SMA crosses above the 350-SMA (x2), it signals a potential market top. This is visually displayed on the chart with a symbol, such as a magnet icon, indicating a possible trend reversal. Historically, the indicator has been effective in predicting major Bitcoin cycle peaks and is widely used by experienced traders for market analysis.
Auto Swing TPAutomatic TP generator from recent swing highs and swing lows
Multiple long & short TPs from current price are displayed.
Results will differ by timeframe.
The main parameter is the "cell size" which is the least significant price move for the current asset. The default value of 0.4% is optimized for crypto. You may want to use less for less volatile asset classes.
How it works
We divide price into cells of a certain percent sizes, mainly because this makes the computation a lot easier.
We note in which bar every price cell was last visited. We take the distance to the current bar and then the logarithm of that to a certain base (the "time dimension"). Using a logarithm gives a nice balance of near-term and long-term targets. We call that logarithmic value the "level" of that price cell.
If a price cell has a significantly higher or lower level (at least by +2 or -2) than the cell above or below, this is considered a possible TP area.
Finally we check if the trade makes sense (meaning is of a certain size, at least 10 cells by default). If yes, we reduce the TP by a bit (by default 2 cells) and add it to the chart.
Multi TimeFrame OHLC Overlay @MaxMaseratiMulti TimeFrame OHLC Overlay @MaxMaserati
A powerful and versatile indicator that displays OHLC (Open, High, Low, Close) data across multiple timeframes with enhanced visualization features. Perfect for traders who need to analyze price action across different time periods simultaneously.
Key Features:
Customizable multi-timeframe OHLC visualization with box and line overlays
Extended OHLC lines from higher timeframes with clear labeling
Distinct bullish and bearish candle representations
Fully configurable color schemes and display options
Real-time timeframe information display
Main Components:
Multi-Timeframe Display
Primary timeframe OHLC visualization with boxes and lines
Extended timeframe overlay for broader market context
Clear visual distinction between timeframes
Customizable Visuals
Separate color settings for bullish and bearish patterns
Adjustable transparency for both body and wick components
Configurable OHLC line colors and visibility
Extended Lines Features
Higher timeframe OHLC level overlay
Custom labels with timeframe identification
Adjustable line properties and visibility
Information Display
Current timeframe indicator
Extended timeframe reference
Clean and unobtrusive interface
Settings Groups:
Extended OHLC Lines
Labels Options
Display Options
Bullish/Bearish Candle Settings
OHLC Lines Configuration
Usage Tips:
Start with the default 240-minute timeframe or adjust to your preferred interval
Use the extended lines feature to view higher timeframe levels
Customize colors and transparency to match your chart theme
Enable/disable specific components based on your analysis needs
Perfect For:
Multi-timeframe analysis
Support/Resistance identification
Price action trading
Trend following strategies
Market structure analysis
This indicator combines powerful multi-timeframe analysis capabilities with clean visualization, making it an essential tool for traders who need to maintain awareness of price action across different time periods.
Note:
For optimal performance, adjust the visual settings according to your chart's timeframe and color scheme. The indicator is designed to work seamlessly across all trading instruments and timeframes.
UT Bot Strategy with T/P and S/L and Trend EMAAfter extensive testing and leveraging the capabilities of "Deep AI," I have meticulously developed this trading strategy. It incorporates the UT Bot alongside a 50 EMA trend line, specifically optimized for scalping on the 1-minute timeframe.
I encourage you to test it out and explore its potential.
Feel free to tweak any part of this to better match your style!
[blackcat] L1 Simple Dual Channel Breakout█ OVERVIEW
The script " L1 Simple Dual Channel Breakout" is an indicator designed to plot dual channel breakout bands and their long-term EMAs on a chart. It calculates short-term and long-term moving averages and deviations to establish upper, lower, and middle bands, which traders can use to identify potential breakout opportunities.
█ LOGICAL FRAMEWORK
Structure:
The script is structured into several main sections:
• Input Parameters: The script does not explicitly define input parameters for the user to adjust, but it uses default values for short_term_length (5) and long_term_length (181).
• Calculations: The calculate_dual_channel_breakout function performs the core calculations, including the blast condition, typical price, short-term and long-term moving averages, and dynamic moving averages.
• Plotting: The script plots the short-term bands (upper, lower, and middle) and their long-term EMAs. It also plots conditional line breaks when the short-term bands cross the long-term EMAs.
Flow of Data and Logic:
1 — The script starts by defining the calculate_dual_channel_breakout function.
2 — Inside the function, it calculates various moving averages and deviations based on the input prices and lengths.
3 — The function returns the calculated bands and EMAs.
4 — The script then calls this function with predefined lengths and plots the resulting bands and EMAs on the chart.
5 — Conditional plots are added to highlight breakouts when the short-term bands cross the long-term EMAs.
█ CUSTOM FUNCTIONS
The script defines one custom function:
• calculate_dual_channel_breakout(close_price, high_price, low_price, short_term_length, long_term_length): This function calculates the short-term and long-term bands and EMAs. It takes five parameters: close_price, high_price, low_price, short_term_length, and long_term_length. It returns an array containing the upper band, lower band, middle band, long-term upper EMA, long-term lower EMA, and long-term middle EMA.
█ KEY POINTS AND TECHNIQUES
• Typical Price Calculation: The script uses a modified typical price calculation (2 * close_price + high_price + low_price) / 4 instead of the standard (high_price + low_price + close_price) / 3.
• Short-term and Long-term Bands: The script calculates short-term bands using a simple moving average (SMA) of the typical price and long-term bands using a relative moving average (RMA) of the close price.
• Conditional Plotting: The script uses conditional plotting to highlight breakouts when the short-term bands cross the long-term EMAs, enhancing visual identification of trading signals.
• EMA for Long-term Trends: The use of Exponential Moving Averages (EMAs) for long-term bands helps in smoothing out short-term fluctuations and focusing on long-term trends.
█ EXTENDED KNOWLEDGE AND APPLICATIONS
• Modifications: Users can add input parameters to allow customization of short_term_length and long_term_length, making the indicator more flexible.
• Enhancements: The script could be extended to include alerts for breakout conditions, providing traders with real-time notifications.
• Alternative Bands: Users might experiment with different types of moving averages (e.g., WMA, HMA) for the short-term and long-term bands to see if they yield better results.
• Additional Indicators: Combining this indicator with other technical indicators (e.g., RSI, MACD) could provide a more comprehensive trading strategy.
• Backtesting: Users can backtest the strategy using Pine Script's strategy functions to evaluate its performance over historical data.
Moving Averages Trend Signals_RajeshThis is a set of 4 combined moving averages. Each moving average is a combination of an EMA, SMA, HMA, RMA, WMA and VWMA with the same length as set in your input settings. All 6 of them are added together and then divided by 6 for an average of all of them. This is based on the theory that most traders use their own preference of moving averages, so combining them all should give us a better idea of where price should actually react since we are using the average of what most traders are using on their charts. It also smooths the moving averages out as well so you get a much easier to read moving average than any of them on their own which should help you hold positions longer and time your entries better.
The default lengths used for this indicator are as follows: 10, 50, 100 and 500. These lengths can be updated in the settings. The 10 and 500 will change colors when the individual moving average is less than or greater than its previous value. Price above or below the moving average does not affect the colors. The 50 and 100 are colored based on whether the 50 is greater/less than the 100.
The two middle length moving averages by default are the 50 and 100. This has been turned into a cloud because it is the area where price typically bounces, since tons of traders use the 50 and 100 moving averages. This should be your long/short zone when price is trending.
Each moving average can be set to use a different source such as close, open, high, low, ohlc4, etc. You can also adjust the length of each moving average. Default settings work well, but feel free to customize them to your liking. You can also change the colors of the lines in the settings.
Beware that changing the lengths of MA #2 and MA #3 will change the signals, squeezes and the cloud.
VOLUME SPIKES
The cloud will change to a brighter color when a volume spike is detected. When a major volume spike is detected, it will turn very bright colored green/red according to the direction of the cloud. This notifies you of volume spikes so you have a better idea of how strong the trend is. If the cloud is a dark green/red then that means that volume is less than or equal to the recent median volume.
SIGNALS
There are also signals that will be given when the current candle is in the cloud, the candle is going in the same direction as the cloud, the MA #2 and MA #3 is going in the same direction and a volume spike is detected. These help you identify good entries when markets are trending. Be cautious of these signals when the trend is sideways and not clearly moving in one direction. The signals can be turned on or off in the settings.
SQUEEZE
Many times when moving averages squeeze together, a big move happens shortly after. Because of this I added a yellow background color when a squeeze is detected. It looks at the median value difference of the MA #2 and MA #3 and if the current value difference is less than the median multiplied by the multiplier in the settings then it will change the background color to notify you. The default value of the multiplier is .6, meaning the squeeze signal will only show if the current value difference of the cloud is less than .6 of the median difference. The multiplier can be adjusted in the settings to suit your preferences. Lower values will only show tighter squeezes.
MARKETS
This indicator can be used on all markets including stocks, crypto, futures and forex.
TIMEFRAMES
This indicator can be used on all timeframes.
PAIRINGS
We recommend pairing this combined moving average with Trend Friend Swing Trade And Scalp Signals for extra confluence. Look for price to bounce in the cloud with good volume and a confirming signal from Trend Friend for highly probable moves.
VWAP SlopeThis script calculates and displays the slope of the Volume Weighted Average Price (VWAP) . It compares the current VWAP with its value from a user-defined lookback period to determine the slope. The slope is color-coded: green for an upward trend (positive slope) and red for a downward trend (negative slope) .
Key Points:
VWAP Calculation: The script calculates the VWAP based on a user-defined timeframe (default: daily), which represents the average price weighted by volume.
Slope Determination: The slope is calculated by comparing the current VWAP to its value from a previous period, providing insight into market trends.
Color-Coding: The slope line is color-coded to visually indicate the market direction: green for uptrend and red for downtrend.
This script helps traders identify the direction of the market based on VWAP , offering a clear view of trends and potential turning points.
[EAM Trade]This code is a Pine Script indicator designed for use on TradingView. It implements a comprehensive trading strategy with multiple components for technical analysis, trend detection, volatility calculation, and signal generation. Here's an explanation of its key functionalities:
---
### **1. Volatility Models**
- The script includes several functions to calculate historical volatility:
- **Close-to-Close Volatility**: Measures price variability between closing prices.
- **Parkinson Volatility**: Considers the high-low range of candles.
- **Garman-Klass Volatility**: Adds open-close price variability for more precision.
- **Yang-Zhang Volatility**: Combines open, close, high, and low prices with advanced statistical models.
---
### **2. Trend Indicators**
- **Supertrend**: Detects bullish or bearish trends based on the relationship between price and volatility bands.
- **EMA (Exponential Moving Averages)**: Used to determine overall trend direction.
- **Directional Movement Index (DMI)**: Measures trend strength using ADX values.
- **CCI (Commodity Channel Index)**: Tracks price momentum relative to historical averages.
---
### **3. Dashboard & Visualization**
- A **configurable dashboard** displays real-time strategy metrics:
- Current position (Buy/Sell).
- Volatility levels.
- RSI-based momentum.
- Trend direction and strength across multiple timeframes.
- **Colored candlesticks and trend clouds** visually differentiate bullish and bearish conditions.
---
### **4. Signal Generation**
- **Buy/Sell signals** are generated based on multiple conditions:
- Trend strength and momentum (using indicators like MACD, RSI).
- Volume and volatility filters.
- Signal labels and lines for stop-loss (SL) and take-profit (TP) areas are plotted directly on the chart.
---
### **5. Advanced Features**
- **Swing High/Low Detection**: Tracks significant price pivots.
- **Support & Resistance Zones**: Automatically identifies and plots critical levels.
- **Order Blocks**: Marks potential reversal or continuation zones based on historical price patterns.
- **Elite Volume Profile**: Analyzes volume distribution at various price levels within a specific range.
---
### **6. Risk Management**
- Implements **trailing stop-losses** and configurable take-profit levels.
- Adjusts sensitivity dynamically or manually for signal optimization.
---
This script is a modular framework that integrates trend-following, volatility-based strategies, and momentum trading into a unified system. It’s designed for advanced traders who prefer automated signals and detailed chart overlays for informed decision-making.
Let me know if you'd like a deeper dive into any specific function or component!