MACD Aggressive Scalp SimpleComment on the Script
Purpose and Structure:
The script is a scalping strategy based on the MACD indicator combined with EMA (50) as a trend filter.
It uses the MACD histogram's crossover/crossunder of zero to trigger entries and exits, allowing the trader to capitalize on short-term momentum shifts.
The use of strategy.close ensures that positions are closed when specified conditions are met, although adjustments were made to align with Pine Script version 6.
Strengths:
Simplicity and Clarity: The logic is straightforward and focuses on essential scalping principles (momentum-based entries and exits).
Visual Indicators: The plotted MACD line, signal line, and histogram columns provide clear visual feedback for the strategy's operation.
Trend Confirmation: Incorporating the EMA(50) as a trend filter helps avoid trades that go against the prevailing trend, reducing the likelihood of false signals.
Dynamic Exit Conditions: The conditional logic for closing positions based on weakening momentum (via MACD histogram change) is a good way to protect profits or minimize losses.
Potential Improvements:
Parameter Inputs:
Make the MACD (12, 26, 9) and EMA(50) values adjustable by the user through input statements for better customization during backtesting.
Example:
pine
Copy code
macdFast = input(12, title="MACD Fast Length")
macdSlow = input(26, title="MACD Slow Length")
macdSignal = input(9, title="MACD Signal Line Length")
emaLength = input(50, title="EMA Length")
Stop Loss and Take Profit:
The strategy currently lacks explicit stop-loss or take-profit levels, which are critical in a scalping strategy to manage risk and lock in profits.
ATR-based or fixed-percentage exits could be added for better control.
Position Size and Risk Management:
While the script uses 50% of equity per trade, additional options (e.g., fixed position sizes or risk-adjusted sizes) would be beneficial for flexibility.
Avoid Overlapping Signals:
Add logic to prevent overlapping signals (e.g., opening a new position immediately after closing one on the same bar).
Backtesting Optimization:
Consider adding labels or markers (label.new or plotshape) to visualize entry and exit points on the chart for better debugging and analysis.
The inclusion of performance metrics like max drawdown, Sharpe ratio, or profit factor would help assess the strategy's robustness during backtesting.
Compatibility with Live Trading:
The strategy could be further enhanced with alert conditions using alertcondition to notify the trader of buy/sell signals in real-time.
Индикаторы и стратегии
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.
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.
Bitcoin COT [SAKANE]#Overview
Bitcoin COT is an indicator that visualizes Bitcoin futures market positions based on the Commitment of Traders (COT) report provided by the CFTC (Commodity Futures Trading Commission).
This indicator stands out from similar tools with the following features:
- Flexible Data Switching: Supports multiple COT report types, including "Financial," "Legacy," "OpenInterest," and "Force All."
- Position Direction Selection: Easily switch between long, short, and net positions. Net positions are automatically calculated.
- Open Interest Integration: View the overall trading volume in the market at a glance.
- Comparison and Customization: Toggle individual trader types (Dealer, Asset Manager, Commercials, etc.) on and off, with visually distinct color-coded graphs.
- Force All Mode: Simultaneously display data from different report types, enabling comprehensive market analysis.
These features make it a powerful tool for both beginners and advanced traders to deeply analyze the Bitcoin futures market.
#Use Cases
1. Analyzing Trader Sentiment
- Compare net positions of various trader types (Dealer, Asset Manager, Commercials, etc.) to understand market sentiment.
2. Identifying Trend Reversals
- Detect early signs of trend reversals from sudden increases or decreases in long and short positions.
3. Utilizing Open Interest
- Monitor the overall trading volume represented by open interest to evaluate entry points or changes in volatility.
4. Tracking Position Structures
- Compare positions of leveraged funds and asset managers to analyze risk-on or risk-off environments.
#Key Features
1. Report Type Selection
- Financial (Financial Traders)
- Legacy (Legacy Report)
- Open Interest
- Force All (Display all data)
2. Position Direction Selection
- Long
- Short
- Net
3. Visualization of Major Trader Types
- Financial Traders: Dealer, Asset Manager, Leveraged Funds, Other Reportable
- Legacy: Commercials, Non-Commercials, Small Speculators
4. Open Interest Visualization
- Monitor the total open positions in the market.
5. Flexible Customization
- Toggle individual trader types on and off.
- Intuitive settings with tooltips for better usability.
#How to Use
1. Add the indicator to your chart and click the settings icon in the top-right corner.
2. Select the desired report type in the "Report Type" field.
3. Choose the position direction (Long/Short/Net) in the "Direction" field.
4. Toggle the visibility of trader types as needed.
#Notes
- Data is provided by the CFTC and is updated weekly. It is not real-time.
- Changes to the settings may take a few seconds to reflect.
[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.
5x Volume indicator - Day Trading5x Volume Screener - Day Trading
Version: 6.0
Description:
This indicator is designed to identify significant volume spikes in crypto and stock markets,
specifically targeting instances where volume exceeds 5x the average of a 10-period Simple Moving Average (SMA) as the baseline.
Perfect for day traders and momentum traders looking for high-volume breakout opportunities.
Key Features:
Tracks real-time volume compared to 5-period moving average
Visual alerts through green histogram bars for 5x volume spikes
Dynamic volume ratio display showing exact multiple of average volume
Clear threshold line for quick reference
Optional labels showing precise volume ratios
Benefits:
Instantly spot unusual volume activity
Identify potential breakout opportunities
Validate price movements with volume confirmation
Perfect for day trading and scalping
Works across multiple timeframes
Best Used For:
Day trading setups
Breakout trading
Volume confirmation
Momentum trading
Market reversal identification
Created by: CigarSavant
Last Updated: December 2024
[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.
Shark Price & Bar Prediction
### Description for TradingView
**Shark Price & Bar Prediction Indicator**
The "Shark Price & Bar Prediction" indicator is designed to provide traders with insights into potential price movements based on local extremes in price action. Utilizing Volume Spread Analysis (VSA), this script identifies key price levels and generates predictive targets for bullish and bearish trends.
#### Features:
- **Local Extremes Detection**: Automatically finds the highest and lowest points within a specified prediction period.
- **Price Prediction**: Calculates potential bullish and bearish targets using Fibonacci levels.
- **Visual Signals**: Displays buy and sell signals directly on the chart, making it easy to identify entry points.
- **Customizable Settings**: Users can adjust the prediction period and confidence threshold to suit their trading style.
### How to Use:
1. **Settings**: Adjust the following inputs according to your preferences:
- **Prediction Period**: Set the number of bars to look back for local extremes.
- **Confidence Threshold**: Define the confidence level for predicting price targets.
- **Show Additional Labels**: Toggle additional labels for more detailed information on the chart.
2. **Interpreting Signals**:
- **Buy Signal**: When the closing price exceeds the bullish target, an upward arrow will appear below the bar, indicating a potential buying opportunity.
- **Sell Signal**: When the closing price falls below the bearish target, a downward arrow will appear above the bar, suggesting a potential selling opportunity.
3. **Visual Indicators**:
- The highest point is marked with a 🔴 **red circle**, while the lowest point is marked with a 🟢 **green circle**.
- Bullish targets are represented by a 🔵 **blue line**, and bearish targets are represented by a 🟣 **purple line**.
### Объяснение на русском
**Индикатор Прогнозирования Цены и Баров Shark**
Индикатор "Shark Price & Bar Prediction" предназначен для предоставления трейдерам информации о потенциальных ценовых движениях на основе локальных экстремумов в ценовом действии. Используя анализ объема и спреда (VSA), этот скрипт определяет ключевые уровни цен и генерирует прогнозные цели для бычьих и медвежьих трендов.
#### Особенности:
- **Обнаружение Локальных Экстремумов**: Автоматически находит максимальные и минимальные точки в заданный период прогнозирования.
- **Прогнозирование Цены**: Вычисляет потенциальные бычьи и медвежьи цели с использованием уровней Фибоначчи.
- **Визуальные Сигналы**: Отображает сигналы покупки и продажи непосредственно на графике, что облегчает определение точек входа.
- **Настраиваемые Параметры**: Пользователи могут регулировать период прогнозирования и уровень уверенности в соответствии со своим стилем торговли.
### Как использовать:
1. **Настройки**: Отрегулируйте следующие параметры в соответствии с вашими предпочтениями:
- **Период Прогнозирования**: Установите количество баров для поиска локальных экстремумов.
- **Порог Уверенности**: Определите уровень уверенности для прогнозирования ценовых целей.
- **Показать Дополнительные Метки**: Включите дополнительные метки для более детальной информации на графике.
2. **Интерпретация Сигналов**:
- **Сигнал Покупки**: Когда цена закрытия превышает бычью цель, под баром появится стрелка вверх, указывающая на потенциальную возможность покупки.
- **Сигнал Продажи**: Когда цена закрытия падает ниже медвежьей цели, над баром появится стрелка вниз, предлагающая потенциальную возможность продажи.
3. **Визуальные Индикаторы**:
- Максимальная точка обозначена 🔴 **красным кругом**, а минимальная точка — 🟢 **зеленым кругом**.
- Бычьи цели представлены 🔵 **синей линией**, а медвежьи цели — 🟣 **пурпурной линией**.
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 ...
∞
Scatter Plot with Symbol or Data Source InputsDescription of setting items
Use Symbol for X Data?
Type: Checkbox (input.bool)
Explanation: Selects whether the data used for the X axis is obtained from a “symbol” or a “data source”.
If true: data for the X axis will be taken from a symbol (e.g. stock ticker).
If false: X axis data will be taken from the specified data source (e.g., closing price or volume).
Use Symbol for Y Data?
type: checkbox (input.bool)
Explanation: Selects whether the data used for the Y axis is retrieved from a “symbol” or a “data source”.
If true: Y-axis data is obtained from symbols.
If false: Data for the Y axis is obtained from the specified data source.
Select Ticker Symbol for X Data
type: symbol input (input.symbol)
description: selects the symbol to be used for the X axis (default is “AAPL”).
If “Use Symbol for X Data?” is set to true, this symbol will be used as the data for the X axis.
Select Ticker Symbol for Y Data
Type: Symbol input (input.symbol)
description: selects the symbol to be used for the Y axis (default is “GOOG”).
If “Use Symbol for Y Data?” is set to true, this symbol will be used as the data for the Y axis.
X Data Source
type: data source input (input.source)
description: specifies the data source to be used for the X axis.
Default is “close” (closing price).
Other possible values include open, high, low, volume, etc.
Y Data Source
Type: data source input (input.source)
Description: Specifies the data source to be used for the Y axis.
Default is “volume” (volume).
Other possible values include open, high, low, close, etc.
X Offset
type: integer input (input.int)
description: sets the offset value of the X axis.
This shifts the position of the X axis on the grid. The range is from -500 to 500.
Y Offset
Type: Integer input (constant)
description: offset value for y-axis.
Defaults to 0, but can be changed to adjust the Y axis position.
grid_width
type: integer input (input.int)
description: sets the width of the grid.
The default is 200. Increasing the value results in a finer grid.
grid_height
type: integer input (input.int)
description: sets the height of the grid.
Defaults to 200. Increasing the value results in a finer grid.
Frequency of updates
type: integer input (input.int)
description: set frequency of updates.
The higher the frequency of updates, the more bars will be used to calculate minimum and maximum values.
X Tick Interval
type: integer input (input.int)
description: sets the tick interval for the X axis.
The default is 10. To increase the number of ticks, decrease the value.
Y Tick Interval
Box border color
type: select color (input.color)
description: select color for grid box border
Default is blue.
Explanation of usage
To use symbol data: Set Use Symbol for X Data?
When “Use Symbol for X Data?” and “Use Symbol for Y Data?” are set to true, the data of the specified symbol is displayed on each axis. For example, you can use “AAPL” (Apple's stock price data) for the X axis and “GOOG” (Google's stock price data) for the Y axis.
To set the symbol, select the desired ticker in Select Ticker Symbol for X Data and Select Ticker Symbol for Y Data.
To use a data source: select the
You can set Use Symbol for X Data? and Use Symbol for Y Data? to false and use the data source specified in X Data Source or Y Data Source instead (e.g., closing price or volume).
Change Grid Size:.
Set the width and height of the grid with grid_width and grid_height. Larger values allow for more detailed scatter plots.
Set Tick Intervals: Set the X Tick Interval and Y Tick Interval.
Adjust X Tick Interval and Y Tick Interval to change the tick spacing on the X and Y axes.
Data Range Adjustment: Adjust the Frequency of updates to change the frequency of updates.
The Frequency of updates can be changed to control how often the data range is updated. The higher this value, the more historical data is considered and displayed.
Box Color.
Box Border Color allows you to change the color of the box border.
This script is useful for visualizing different symbols and data sources, especially to show the relationship between financial data.
Caution.
Some data may exceed the memory size, but the scale is the same, so you will know most of the locations.
*I made it myself because I could not find anything to draw a scatter plot. You can also compare more than 3 pieces of data by displaying more than one scatter plot. Here is how to do it. Set X or Y as the reference data. Set the data you want to compare to the one that is not the standard. Next, set the same indicator and set the reference to another set of data you wish to compare. Now you can compare the three sets of data. It is effective to change the color of the display box to prevent the user from not knowing which is which. Thus, you should be able to compare more than 3 pieces of data, so give it a try.
Physical Levels (XAUUSD, 5$ Pricesteps)Functionality:
This indicator draws horizontal lines in the XAUUSD market at a fixed spacing of USD 5. The lines are both above and below the current market price. The number of lines is limited to optimize performance.
Use:
The indicator is particularly useful for traders who want to analyze psychological price levels, support and resistance areas, or significant price zones in the gold market. It helps to better visualize price movements and their proximity to round numbers.
How it works:
The indicator calculates a starting price based on the current price of XAUUSD, rounded to the nearest multiple of USD 5.
Starting from this starting price, evenly distributed lines are drawn up and down.
The lines are black throughout and are updated dynamically according to the current chart.
ATR/DTR with Custom Percentage DisplayThis Pine Script indicator provides a detailed view of the Average True Range (ATR) and Daily True Range (DTR), along with additional calculated metrics to assist in analyzing price volatility. The key features of the indicator include:
ATR Calculation:
The ATR is calculated over a user-defined timeframe, allowing traders to assess average market volatility over a specific period.
DTR Calculation:
The DTR represents the absolute range (high - low) of the current or chosen timeframe, providing insights into the day's price movement.
ATR/DTR Percentage:
This metric calculates the DTR as a percentage of the ATR, showing how the daily range compares to the average range, with dynamic coloring to highlight when it exceeds a user-defined threshold.
Custom Percentage of ATR:
Users can input a custom percentage to calculate and display a corresponding value of the ATR. For example, entering 15% will compute and display 15% of the ATR in the indicator’s table.
Dynamic Table Display:
The indicator outputs all these metrics in a well-organized table that is overlaid on the chart. The table includes:
ATR
DTR
ATR/DTR percentage
The user-defined percentage of ATR
Customizable Features:
Color Coding: The table dynamically changes its background color when the ATR/DTR percentage exceeds a user-defined threshold.
Placement Options: The table's position on the chart can be adjusted (e.g., bottom-right, top-center) for optimal visibility.
Use Case:
This indicator is ideal for traders who want a deeper understanding of market volatility and prefer visual representation of how current price movements compare to historical averages. It is especially useful for:
Setting volatility-based stop-loss levels.
Identifying high-volatility trading opportunities.
Tailoring strategies around price movement patterns.
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.
VWAP - TrendThis Pine Script calculates the Volume Weighted Average Price (VWAP) for a specified timeframe and plots its Linear Regression over a user-defined lookback period . The regression line is color-coded: green indicates an uptrend and red indicates a downtrend. The line is broken at the end of each day to prevent it from extending into the next day, ensuring clarity on a daily basis.
Key Features:
VWAP Calculation: The VWAP is calculated based on a selected timeframe, providing a smoothed average price considering volume.
Linear Regression: The script calculates a linear regression of the VWAP over a custom lookback period to capture the underlying trend.
Color-Coding: The regression line is color-coded to easily identify trends—green for an uptrend and red for a downtrend.
Day-End Break: The regression line breaks at the end of each day to prevent continuous plotting across days, which helps keep the analysis focused within daily intervals.
User Inputs: The user can adjust the VWAP timeframe and the linear regression lookback period to tailor the indicator to their preferences.
This script provides a visual representation of the VWAP trend, helping traders identify potential market directions and turning points based on the linear regression of the VWAP.
Breakout Point Highlighting//@version=6
indicator("Breakout Point Highlighting", overlay=true)
// Input: Lookback period for finding breakout points
lookbackPeriod = input.int(20, title="Lookback Period", minval=1)
// Calculate the highest high and lowest low over the lookback period
highestHigh = ta.highest(high, lookbackPeriod)
lowestLow = ta.lowest(low, lookbackPeriod)
// Breakout conditions: price breaks above the highest high or below the lowest low
breakoutUp = close > highestHigh
breakoutDown = close < lowestLow
// Plot the breakout points
plotshape(breakoutUp, color=color.green, style=shape.triangleup, location=location.belowbar, title="Breakout Up", size=size.small)
plotshape(breakoutDown, color=color.red, style=shape.triangledown, location=location.abovebar, title="Breakout Down", size=size.small)
// Highlight the breakout zones
bgcolor(breakoutUp ? color.new(color.green, 90) : na, title="Breakout Up Highlight")
bgcolor(breakoutDown ? color.new(color.red, 90) : na, title="Breakout Down Highlight")
// Alert conditions
alertcondition(breakoutUp, title="Breakout Up Alert", message="Price has broken above the highest high.")
alertcondition(breakoutDown, title="Breakout Down Alert", message="Price has broken below the lowest low.")
Moving Average Cross; Linear RegressionThis Pine Script is designed to display smoothed linear regression lines on a chart, with an option to adjust the regression period lengths and smoothing factor. The script calculates short-term and long-term linear regression lines based on the selected timeframe. These regression lines act as a regressed moving average cross , visually representing the interaction between the two smoothed linear regressions.
Short Regression Line: A linear regression line based on a short lookback period, colored blue for an uptrend and orange for a downtrend .
Long Regression Line: A linear regression line based on a longer lookback period, similarly colored blue for an uptrend and orange for a downtrend .
The script provides input options to adjust:
The length of short and long regression periods.
The smoothing length for the regression lines.
The timeframe for the linear regression calculations.
This tool can help traders observe the crossovers between the two smoothed linear regression lines, which are similar to moving average crossovers, but with the added benefit of regression-based smoothing to reduce noise. The color-coding allows for easy trend identification, with blue indicating an uptrend and orange indicating a downtrend.
Custom ChoCH Indicator (10m) - SayajeeCustom ChoCH Indicator (10m) - Sayajee
This custom Pine Script indicator identifies and marks Change of Character (ChoCH) events on a 10-minute chart. ChoCH is a price action concept that highlights potential market reversals. The indicator detects bullish and bearish Change of Character points and displays them as labels and background color highlights on the chart.
Features:
Bullish & Bearish ChoCH Signals: Detects price reversals and trends based on the relationship between recent highs and lows.
Bullish ChoCH: When the close price is greater than the previous swing high and the previous low is lower than the previous swing low.
Bearish ChoCH: When the close price is lower than the previous swing low and the previous high is greater than the previous swing high.
Visual Indicators:
Labels ("ChoCH↑" for bullish, "ChoCH↓" for bearish) are displayed at the high or low of the bar where the signal occurs.
Background highlights in green for bullish and red for bearish conditions to make the signals easily recognizable.
Customization:
Option to toggle the visibility of labels.
Option to customize the colors for bullish and bearish signals.
Alerts: Configured alert conditions to notify you when a Bullish ChoCH or Bearish ChoCH occurs.
Inputs:
Show Labels for ChoCH: Toggle to display ChoCH labels on the chart.
Bullish ChoCH Color: Choose the color for bullish signals.
Bearish ChoCH Color: Choose the color for bearish signals.
Usage:
This indicator is useful for detecting potential trend reversals and market shifts, especially when combined with other technical analysis tools. It's designed for traders who rely on price action and prefer visual cues to make informed decisions.
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.
DemaRSI StrategyThis is a repost to a old script that cant be updated anymore, the request was made on Feb, 27, 2016.
Here's a engaging description for the tradingview script:
**DemaRSI Strategy: A Proven Trading System**
Join thousands of traders who have already experienced the power of this highly effective strategy. The DemaRSI system combines two powerful indicators - DEMA (Double Exponential Moving Average) and RSI (Relative Strength Index) - to generate profitable trades with minimal risk.
**Key Features:**
* **Trend-Following**: Our algorithm identifies strong trends using a combination of DEMA and RSI, allowing you to ride the waves of market momentum.
* **Risk Management**: The system includes built-in stop-loss and take-profit levels, ensuring that your gains are protected and losses are minimized.
* **Session-Based Trading**: Trade during specific sessions only (e.g., London or New York) for even more targeted results.
* **Customizable Settings**: Adjust the length of moving averages, RSI periods, and other parameters to suit your trading style.
**What You'll Get:**
* A comprehensive strategy that can be used with any broker or platform
* Easy-to-use interface with customizable settings
* Real-time performance metrics and backtesting capabilities
**Start Trading Like a Pro Today!**
This script is designed for intermediate to advanced traders who want to take their trading game to the next level. With its robust risk management features, this strategy can help you achieve consistent profits in various market conditions.
**Disclaimer:** This script is not intended as investment advice and should be used at your own discretion. Trading carries inherent risks, and losses are possible.
~Llama3
MicuRobert EMA Cross StrategyThis is a repost of a old strategy that cant be updated anymore, it was a request for a user made in Oct, 6, 2015
Here's a possible engaging description for the tradingview script:
**MicuRobert EMA Cross V2: A Powerful Trading Strategy**
Join the ranks of successful traders with this advanced strategy, designed to help you profit from market trends. The MicuRobert EMA Cross V2 combines two essential indicators - Exponential Moving Average (EMA) and Divergence EMA (DEMA) - to generate buy and sell signals.
**Key Features:**
* **Trading Session Filter**: Only trade during your preferred session, ensuring you're in sync with market conditions.
* **Trailing Stop**: Automatically adjust stop-loss levels to lock in profits or limit losses.
* **Customizable Trade Size**: Set the size of each trade based on your risk tolerance and trading goals.
**How it Works:**
The script uses two EMAs (5-period and 34-period) to identify trends. When the shorter EMA crosses above the longer one, a buy signal is generated. Conversely, when the shorter EMA falls below the longer one, a sell signal is triggered. The strategy also incorporates divergence analysis between price action and the EMAs.
**Visual Aids:**
* **EMA Plots**: Visualize the two EMAs on your chart to gauge market momentum.
* **Buy/Sell Signals**: See when buy or sell signals are generated, along with their corresponding entry prices.
* **Trailing Stop Lines**: Monitor stop-loss levels as they adjust based on price action.
**Get Started:**
Download this script and start trading like a pro! With its robust features and customizable settings, the MicuRobert EMA Cross V2 is an excellent addition to any trader's arsenal.
~Llama3
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.
Drawdown from All-Time High (Line)This Pine Script is a **Drawdown Indicator from All-Time High** for TradingView. It calculates and plots the percentage drawdown from the highest price the asset has ever reached (the all-time high). Here's a breakdown of what this script does:
### Description:
- **Drawdown Calculation**:
- The drawdown is calculated as the difference between the current price (`close`) and the all-time high, divided by the all-time high, and multiplied by 100 to express it as a percentage.
- If the current price is higher than the previous all-time high, the all-time high is updated to the current price.
- **All-Time High Tracking**:
- The script tracks the highest price (`allTimeHigh`) that the asset has ever reached. Each time a new high is reached, the `allTimeHigh` value is updated.
- **Line Plot**:
- The drawdown percentage is then plotted as a line on the chart, with a color of **blue** for easy visualization.
- The line shows how much the price has dropped relative to its all-time high.
- **Zero Line**:
- A horizontal line is added at the **0%** level to act as a reference point, which is helpful to identify when the asset has fully recovered to its all-time high.
### Key Features:
- **Track Drawdown**: The indicator helps visualize how far the current price has fallen from its highest point, which is useful for understanding the depth of losses (drawdowns) during a period.
- **Update All-Time High**: The indicator automatically updates the all-time high whenever a new high is detected.
- **Visual Reference**: The 0% horizontal line provides a clear indication of when the asset is at its all-time high, and the drawdown is at 0%.
### How it Works:
- If the current price surpasses the all-time high, the script will reset the all-time high to the new price.
- The drawdown percentage is calculated from the current price relative to this all-time high, and it is displayed as a line on the chart.
### Visuals:
- **Drawdown Line**: Plots the percentage of the drawdown, which is the drop from the all-time high.
- **Zero Line**: A dotted horizontal line at 0% marks the level of the all-time high.
This indicator is valuable for understanding the extent of price corrections and potential recoveries relative to the historical peak of the asset. It is especially useful for traders and investors who want to assess the risk of drawdowns in relation to the highest price achieved by the asset.
Big Money by ChartedhighsBig Money by Chartedhighs
Script Overview:
The "Big Money" indicator is designed to help traders easily identify significant price movements on their charts. This script visually highlights candles where the price change from open to close exceeds a user-defined threshold. It draws attention to these key moments, providing a clear indication of potential big-money moves in the market.
Key Features:
Customizable Threshold:
Allows users to set a specific price change threshold via the input menu (Highlight Threshold).
Only candles with a price change greater than or equal to this value are highlighted.
Candle Highlighting:
Uses color-coded bars to emphasize candles meeting the threshold condition.
Candles are highlighted in yellow for immediate visual clarity.
Dynamic Box Annotation:
Draws a semi-transparent yellow box around highlighted candles.
Extends the box dynamically to subsequent bars, providing an area of interest for continued analysis.
Labeling for Key Moments:
Automatically adds a label ("BigMoney") above highlighted bars to further indicate significant price action.
How It Works:
The script calculates the price change for each bar (close - open) and compares it to the user-defined threshold.
If the price change meets or exceeds the threshold:
The bar color changes to yellow.
A box is drawn around the candle to highlight the price movement visually.
A label is added above the candle to emphasize its significance.
The box extends dynamically until the next highlighted candle, allowing users to track zones of activity.
Customization Options:
Highlight Threshold: Modify the threshold value to suit your trading style or instrument volatility.
Use Case:
This indicator is ideal for traders looking to identify significant price movements quickly. It helps to locate areas where "big money" might be flowing into the market, offering potential entry or exit opportunities.
How to Use:
Add the "Big Money by Chartedhighs" script to your TradingView chart.
Set the Highlight Threshold to a value suitable for your market or timeframe.
Observe highlighted candles and boxes for potential trading signals or areas of interest.
This script is highly visual, intuitive, and customizable, making it a great addition to any trader's toolkit!