ADX + CCI + MA - Uncle SamStrategy Name: ADX + CCI + MA - Uncle Sam
Overview
This strategy aims to capitalize on trending markets by combining the Average Directional Index (ADX), Commodity Channel Index (CCI), and a customizable Moving Average (MA). It's designed for traders seeking a balanced approach to both long (buy) and short (sell) opportunities. Special thanks to the creators of the ADX and CCI indicators for their invaluable contributions to technical analysis.
Strategy Concept
The core idea is to identify strong trends with the ADX, confirm potential entry points with the CCI, and use the MA to filter trades in the direction of the broader trend. This approach seeks to avoid entering positions during periods of consolidation or when the trend is weak.
Indicator Logic
ADX (Average Directional Index): The ADX measures the strength of a trend, regardless of its direction. A value above the customizable adx_threshold (default 20) signals a strong trend, making it a prime environment for this strategy.
CCI (Commodity Channel Index): The CCI is a momentum oscillator that helps identify overbought (above 100) and oversold (below -100) conditions. We use CCI crossovers to time entries in the direction of the prevailing trend.
MA (Moving Average): The MA acts as a trend filter, ensuring we only enter trades aligned with the overall market direction. You have flexibility in choosing the MA type (SMA, EMA, etc.) and its length to suit your trading style and timeframe.
Entry Conditions
Long (Buy):
ADX is above the adx_threshold.
CCI crosses above 100.
Price is above the chosen Moving Average (if MA trend filtering is enabled).
Short (Sell):
ADX is above the adx_threshold.
CCI crosses below -100.
Price is below the chosen Moving Average (if MA trend filtering is enabled).
Exit Conditions
Stop Loss (SL): Each position has a customizable stop-loss percentage to manage risk. The default setting is 1%.
Take Profit (TP): Each position has a customizable take-profit percentage to secure gains. The default setting is 5%.
MA-Based Risk Management (Optional): This feature allows for early exits if the price closes against the MA trend for a specified number of candles. The default setting is 2 candles.
Default Settings
CCI Period: 15
ADX Length: 10
ADX Threshold: 20
MA Type: HMA
MA Length: 200
MA Source: Close
Commission Fee: $0.0
A commission fee is not added, add your trading/platform commission for realistic trading costs.
Backtest Results
The strategy has been backtested on with the default settings and a starting capital of $1000, with 0.0% commission fee. It shows promising results.
Disclaimer: Backtesting is hypothetical and does not guarantee future performance.
Important Considerations:
Customization: The strategy offers extensive customization to tailor it to your preferences. Experiment with different parameters and settings to find what works best for your trading style.
Risk Management: Always use proper risk management techniques, including position sizing and stop losses, to protect your capital.
Komut dosyalarını "20蒙古币兑换人民币" için ara
Crypto SeasonDefinition
This indicator is an informative indicator aiming to predict when the Altcoin season will start and when Bitcoin will enter the month season.
The average of the graph shows the dominance of altcoins other than BTC, ETH and USDT. If this value is over 30, the BTC says that the bull season is over. This value indicates that 20 to 30 BTC is in the bull season or accumulation. If this value is less than 20, it means that the subcoin season has begun.
Disclaimer
This indicator is for informational purposes only and should be used for educational purposes only. You may lose money if you rely on this to trade without additional information. Use at your own risk.
Version
v1.0
Trend Momentum Strength Indicator, Built for Pairs TradingOverview:
This script combines multiple indicators to provide a comprehensive analysis of both trend strength and trend momentum. It is tailored specifically for pairs trading strategies but can also be used for other trading strategies.
Benefit of Comprehensive Analysis:
Having an indicator that evaluates both trend strength and trend momentum is crucial for traders looking to make informed decisions. It allows traders to not only identify the direction and intensity of a trend but also gauge the momentum behind it. This dual capability helps in confirming potential trade opportunities, whether for entering trades with strong trends or considering reversals during overbought or oversold conditions. By integrating both aspects into one tool, traders can gain a holistic view of market dynamics, enhancing their ability to time entries and manage risk effectively.
Features:
* Trend Strength:
Enhanced ADX Formula: The script includes modifications to the standard ADX formula along with DI+ and DI- to provide more responsive trend strength readings.
Directional Indicators: DI+ (green line) indicates positive directional movement, while DI- (red line) indicates negative directional movement.
Trend Momentum:
Modified Stochastic Indicators: The script uses %K and %D indicators, modified and combined with ADX to give a clear indication of trend momentum.
Momentum Strength: This helps determine the strength and direction of the momentum.
Trading Signals:
Combining Indicators: The script combines ADX, DI+, DI-, %K, and %D to generate comprehensive trading signals.
Optimal Entry Points: Designed to identify optimal entry points for trades, particularly in pairs trading.
Colored Area at Bottom:
This area provides two easy-to-read functions:
Color:
Green: Upward momentum (ratio above 1)
Red: Downward momentum (ratio below 1)
Height:
Higher in green: Stronger upward momentum
Lower in red: Stronger downward momentum
Legend:
Green Line: DI+ (Positive)
Red Line: DI- (Negative)
Black Line: ADX
How to Read This Indicator:
1) Trend Direction:
DI+ above DI-: Indicates an upward trend.
DI- above DI+: Indicates a downward trend.
2) Trend Strength:
ADX below 20: Indicates a neutral trend.
ADX between 20 and 25: Indicates a weak trend.
ADX above 25: Indicates a strong trend.
Trading Signals in Pairs Trading:
Neutral Trend: Ideal for pairs trading when no strong trend is detected.
Overbought/Oversold: Uses %K and %D to identify overbought/oversold conditions that support trade decisions.
Entry Signals: Green signals for long positions, red signals for short positions, based on combined criteria of neutral trend strength and supportive momentum.
Application in Pairs Trading:
Neutral trend: In pairs trading strategies, where neutral movement is often sought, this indicator provides signals that are especially relevant during periods of neutral trend strength and supportive momentum, aiding traders in identifying optimal entry
Risk Management: Combining signals from ADX, DI+, DI-, %K, and %D helps traders make more informed decisions regarding entry points, enhancing risk management.
Example Chart (The indicator is on the upper right corner):
Clean Presentation: The chart only includes the necessary elements to demonstrate the indicator’s functionality.
Demonstrates: Overbought/oversold conditions, upward/downward/no momentum, and trading signals with/without specific scenarios.
ADR Study [TFO]This indicator is focused on the Average Daily Range (ADR), with the goal of collecting data to show how often price reaches/closes through these levels, as well as a look at historical moves that reached ADR and at similar times of day to study how price moved for the remainder of the session.
The ADR here (blue line) is calculated using the difference between a day's highest and lowest points. If our ADR length is 5, then we are taking this difference from the last 5 days and averaging them together. At the following day's open, we take half of this average and plot it above and below the daily opening price to place theoretical limits on how far price may move according to the lookback period. The triangles indicate when price has reached ADR (either +ADR or -ADR), and alerts can be created for these events.
The Scale Factor is an optional parameter to scale the ADR by a certain amount. If set to 2 for example, then the ADR would be 2x the average daily range. This value will be reflected in the statistics options so that users can see how different values affect the outcomes.
Show Table will display data collected on how often price reaches these levels, and how often price closes through them, for each day of the week. By default, these are colored as blue and red, respectively. From the following chart of NQ1!, we can see for example that on Mondays, price reached +ADR 38% of the time and closed through it 23% of the time. Note that the statistics for closing through the ADR levels are derived from all instances, not just those that reached ADR.
Show Sample Sizes will display how many instances were collected for all given sets of data. Referring to the same example of NQ1!, we can see that this particular chart has collected data from 109 Mondays. From those Mondays, 41 reached +ADR (38%, verifying our initial claim) and 25 closed through it (23%). This is important to understand the scope of the data that we're working with, as percentages can be misleading for smaller sample sizes.
Show Histogram will plot the same exact data as the table, just in a histogram form to visually emphasize the differences on a day-by-day basis. On this chart of RTY1!, we can see for example from the top histogram that on Wednesdays, 40% reached +ADR and only 22% closed through it. Similarly if we look at the bottom histogram, we can see that Wednesdays reached -ADR 46% of the time and closed through it only 28% of the time.
We can also use Show Sample Sizes to display the same information that would be in the table, showing how many instances were collected for each event. In this case we can see that we observed 175 Fridays, where 76 reached +ADR (43%) and 44 closed above it (25%).
Show Historical Moves is an interesting feature of this script. When enabled, if price has reached +/- ADR in the current session, the indicator will plot the evolution of the close prices from all past sessions that reached +/- ADR to see how they traded for the remainder of the session. These calculations are made with respect to the ADR range at the time that price traded through these levels.
Historical Proximity (Bars) allows the user to observe historical moves where price reached ADR within this many bars of the current session (assuming price has reached an ADR level in the current session). In the above chart, this is set to 1000 so that we can observe each and every instance where price reached an ADR level. However, we can refine this a bit more.
By limiting the Historical Proximity to something like 20, we are only considering historical moves that reached ADR within 20 bars of todays +ADR reach (9:50 am EST, noted by the blue triangle up). We can enable Show Average Move to display the average move by the filtered dataset, and Match +/-ADR to only observe moves inline with the current day's price action (in this case, only moves that reached +ADR, since price has not reached -ADR).
We can add one more filter to this data with the setting Only Show Days That: closed through ADR; closed within ADR; or either. The option either is what you see above, as we are considering both days that closed through ADR and days that closed within it (note that in this case, closing within ADR simply means that price reached +ADR and closed the day below it, and vice versa for -ADR; this does not mean that price must have closed in between +ADR and -ADR). If we set this to only show instances that closed within ADR, we see the following data.
Alternatively, we can choose to Only Show Days That closed through ADR, where we would see the following data. In this case, the average move very much resembles the price action that occurred on this particular day. This is in no way guaranteed, but it makes an interesting case for how we could use this data in our analysis by observing similar, historical price action.
Please note that this data will change over time on a rolling basis due to TradingView's bar lookback, and that for this same reason, lower timeframes will yield less data than larger timeframes.
Fusion MFI RSIHello fellas,
This superb indicator summons two monsters called Relative Strength Index (RSI) and Money Flow Index (MFI) and plays the Yu-Gi-Oh! card "Polymerization" to combine them.
Overview
The Fusion MFI RSI Indicator is an advanced analytical tool designed to provide a nuanced understanding of market dynamics by combining the Relative Strength Index (RSI) and the Money Flow Index (MFI). Enhanced with sophisticated smoothing techniques and the Inverse Fisher Transform (IFT), this indicator excels in identifying key market conditions such as overbought and oversold states, trends, and potential reversal points.
Key Features (Brief Overview)
Fusion of RSI and MFI: Integrates momentum and volume for a comprehensive market analysis.
Advanced Smoothing Techniques: Employs Hann Window, Jurik Moving Average (JMA), T3 Smoothing, and Super Smoother to refine signals.
Inverse Fisher Transform (IFT) Enhances the clarity and distinctiveness of indicator outputs.
Detailed Feature Analysis
Fusion of RSI and MFI
RSI (Relative Strength Index): Developed by J. Welles Wilder Jr., the RSI measures the speed and magnitude of directional price movements. Wilder recommended using a 14-day period and identified overbought conditions above 70 and oversold conditions below 30.
MFI (Money Flow Index): Created by Gene Quong and Avrum Soudack, the MFI combines price and volume to measure trading pressure. It is typically calculated using a 14-day period, with over 80 considered overbought and under 20 as oversold.
Application in Fusion: By combining RSI and MFI, the indicator leverages RSI's sensitivity to price changes with MFI's volume-weighted confirmation, providing a robust analysis tool. This combination is particularly effective in confirming the strength behind price movements, making the signals more reliable.
Advanced Smoothing Techniques
Hann Window: Traditionally used to reduce the abrupt data discontinuities at the edges of a sample, it is applied here to smooth the price data.
Jurik Moving Average (JMA): Known for preserving the timing and smoothness of the data, JMA reduces market noise effectively without significant lag.
T3 Smoothing: Developed to respond quickly to market changes, T3 provides a smoother response to price fluctuations.
Super Smoother: Filters out high-frequency noise while retaining important trends.
Application in Fusion: These techniques are chosen to refine the output of the combined RSI and MFI values, ensuring the indicator remains responsive yet stable, providing clearer and more actionable signals.
Inverse Fisher Transform (IFT):
Developed by John Ehlers, the IFT transforms oscillator outputs to enhance the clarity of extreme values. This is particularly useful in this fusion indicator to make critical turning points more distinct and actionable.
Mathematical Calculations for the Fusion MFI RSI Indicator
RSI (Relative Strength Index)
The RSI is calculated using the following steps:
Average Gain and Average Loss: First, determine the average gain and average loss over the specified period (typically 14 days). This is done by summing all the gains and losses over the period and then dividing each by the period.
Average Gain = (Sum of Gains over the past 14 periods) / 14
Average Loss = (Sum of Losses over the past 14 periods) / 14
Relative Strength (RS): This is the ratio of average gain to average loss.
RS = Average Gain / Average Loss
RSI: Finally, the RSI is calculated using the RS value:
RSI = 100 - (100 / (1 + RS))
MFI (Money Flow Index)
The MFI is calculated using several steps that incorporate both price and volume:
Typical Price: Calculate the typical price for each period.
Typical Price = (High + Low + Close) / 3
Raw Money Flow: Multiply the typical price by the volume for the period.
Raw Money Flow = Typical Price * Volume
Positive and Negative Money Flow: Compare the typical price of the current period to the previous period to determine if the money flow is positive or negative.
If today's Typical Price > Yesterday's Typical Price, then Positive Money Flow = Raw Money Flow; Negative Money Flow = 0
If today's Typical Price < Yesterday's Typical Price, then Negative Money Flow = Raw Money Flow; Positive Money Flow = 0
Money Flow Ratio: Calculate the ratio of the sum of Positive Money Flows to the sum of Negative Money Flows over the past 14 periods.
Money Flow Ratio = (Sum of Positive Money Flows over 14 periods) / (Sum of Negative Money Flows over 14 periods)
MFI: Finally, calculate the MFI using the Money Flow Ratio.
MFI = 100 - (100 / (1 + Money Flow Ratio))
Fusion of RSI and MFI
The final Fusion MFI RSI value could be calculated by averaging the IFT-transformed values of RSI and MFI, providing a single oscillator value that reflects both momentum and volume-weighted price action:
Fusion MFI RSI = (MFI weight * MFI) + (RSI weight * RSI)
Suggested Settings and Trading Rules
Original Usage
RSI: Wilder suggested buying when the RSI moves above 30 from below (enter long) and selling when the RSI moves below 70 from above (enter short). He recommended exiting long positions when the RSI reaches 70 or higher and exiting short positions when the RSI falls below 30.
MFI: Quong and Soudack recommended buying when the MFI is below 20 and starts rising (enter long), and selling when it is above 80 and starts declining (enter short). They suggested exiting long positions when the MFI reaches 80 or higher and exiting short positions when the MFI falls below 20.
Fusion Application
Settings: Use a 14-day period for this indicator's calculations to maintain consistency with the original settings suggested by the inventors.
Trading Rules:
Enter Long Signal: Consider entering a long position when both RSI and MFI are below their respective oversold levels and begin to rise. This indicates strong buying pressure supported by both price momentum and volume.
Exit Long Signal: Exit the long position when either RSI or MFI reaches its respective overbought threshold, suggesting a potential reversal or decrease in buying pressure.
Enter Short Signal: Consider entering a short position when both indicators are above their respective overbought levels and begin to decline, suggesting that selling pressure is mounting.
Exit Short Signal: Exit the short position when either RSI or MFI falls below its respective oversold threshold, indicating diminishing selling pressure and a potential upward reversal.
How to Use the Indicator
Select Source and Timeframe: Choose the data source and the timeframe for analysis.
Configure Fusion Settings: Adjust the weights for RSI and MFI.
Choose Smoothing Technique: Select and configure the desired smoothing method to suit the market conditions and personal preference.
Enable Fisherization: Optionally apply the Inverse Fisher Transform to enhance signal clarity.
Customize Visualization: Set up gradient coloring, background plots, and bands according to your preferences.
Interpret the Indicator: Use the Fusion value and visual cues to identify market conditions and potential trading opportunities.
Conclusion
The Fusion MFI RSI Indicator integrates classical and modern technical analysis concepts to provide a comprehensive tool for market analysis. By combining RSI and MFI with advanced smoothing techniques and the Inverse Fisher Transform, this indicator offers enhanced insights, aiding traders in making more informed and timely trading decisions. Customize the settings to align with your trading strategy and leverage this powerful tool to navigate financial markets effectively.
Best regards,
simwai
---
Credits to:
@loxx – T3
@everget – JMA
@cheatcountry – Hann Window
Price vs VWAP PerformancePrice vs VWAP Performance (PvVWAP)
This indicator visually displays the deviation between the current price and VWAP (Volume Weighted Average Price), helping you to determine the strength of a trend.
How it Works
VWAP Calculation: Calculates the Volume Weighted Average Price (VWAP) over a specified period.
Standard Deviation Calculation: Calculates the standard deviation of closing prices over the past 20 periods.
Deviation Calculation: Calculates the difference between the current price and VWAP, expressed as a multiple of the standard deviation.
Color Assignment: Changes the color of bars and background based on the magnitude of the deviation.
Green: Very strong uptrend
Light Green: Strong uptrend
Light Gray: No trend
Pinkish Red: Weak downtrend
Red: Very strong downtrend
How to Use
Trend Strength Assessment:
The greater the deviation of the price from VWAP, the stronger the trend is considered to be.
The color of the bars and background provides a visual indication of trend strength.
Entry/Exit Point Reference:
You can enter/exit by aiming for the movement of the price returning to VWAP after a large deviation from VWAP.
Notes
Parameter Settings:
The standard deviation period is 20 periods by default, but can be adjusted as needed.
Avoid Using Alone:
It is recommended to use this indicator in combination with other technical indicators.
Slow Volume Strength Index (SVSI)The Slow Volume Strength Index (SVSI), introduced by Vitali Apirine in Stocks & Commodities (Volume 33, Chapter 6, Page 28-31), is a momentum oscillator inspired by the Relative Strength Index (RSI). It gauges buying and selling pressure by analyzing the disparity between average volume on up days and down days, relative to the underlying price trend. Positive volume signifies closes above the exponential moving average (EMA), while negative volume indicates closes below. Flat closes register zero volume. The SVSI then applies a smoothing technique to this data and transforms it into an oscillator with values ranging from 0 to 100.
Traders can leverage the SVSI in several ways:
1. Overbought/Oversold Levels: Standard thresholds of 80 and 20 define overbought and oversold zones, respectively.
2. Centerline Crossovers and Divergences: Signals can be generated by the indicator line crossing a midline or by divergences from price movements.
3. Confirmation for Slow RSI: The SVSI can be used to confirm signals generated by the Slow Relative Strength Index (SRSI), another oscillator developed by Apirine.
🔹 Algorithm
In the original article, the SVSI is calculated using the following formula:
SVSI = 100 - (100 / (1 + SVS))
where:
SVS = Average Positive Volume / Average Negative Volume
* Volume is considered positive when the closing price is higher than the six-day EMA.
* Volume is considered negative when the closing price is lower than the six-day EMA.
* Negative volume values are expressed as absolute values (positive).
* If the closing price equals the six-day EMA, volume is considered zero (no change).
* When calculating the average volume, the indicator utilizes Wilder's smoothing technique, as described in his book "New Concepts In Technical Trading Systems."
Note that this indicator, the formula has been simplified to be
SVSI = 100 * Average Positive Volume / (Average Positive Volume + Average Negative Volume)
This formula achieves the same result as the original article's proposal, but in a more concise way and without the need for special handling of division by zero
🔹 Parameters
The SVSI calculation offers configurable parameters that can be adjusted to suit individual trading styles and goals. While the default lookback periods are 6 for the EMA and 14 for volume smoothing, alternative values can be explored. Additionally, the standard overbought and oversold thresholds of 80 and 20 can be adapted to better align with the specific security being analyzed.
MFI- Momentum Fusion IndicatorIndicator Overview
The "MFI - Momentum Fusion Indicator" is a comprehensive trading tool designed for TradingView that combines several technical analysis methods to assist traders in identifying potential buy and sell opportunities in financial markets.
Key Components
Moving Averages (MA): Uses two Simple Moving Averages (SMA) with periods defined by the user (default 10 and 20). The indicator generates buy signals when the shorter MA (MA 10) crosses above the longer MA (MA 20) and sell signals when it crosses below, helping to pinpoint trend reversals.
Relative Strength Index (RSI): A momentum oscillator that helps identify overbought or oversold conditions, adding a layer of confirmation to the signals generated by the moving averages.
Exponential Moving Average (EMA 50): Used to gauge the medium-term trend direction. The color of the EMA line changes based on whether the trend is up (green) or down (red), providing a visual representation of the market trend.
Average True Range (ATR): This component measures market volatility. Signals are only generated when the ATR confirms significant market movement relative to the EMA50, enhancing the reliability of the signals during volatile conditions.
How It Works
Signal Generation: The core of the indicator is based on the crossover of two SMAs. A buy signal is issued when the short-term MA crosses above the long-term MA during sufficient market volatility (confirmed by ATR). Conversely, a sell signal is triggered when the short-term MA crosses below the long-term MA under similar conditions.
Trend Confirmation: The EMA50 helps confirm the broader market trend, while the ATR ensures that the crossover signals occur during periods of meaningful price movement, filtering out noise and less significant price movements.
Use Case
For Traders: The indicator is ideal for traders who need clear, actionable signals combined with an assessment of market conditions. It’s particularly useful in markets where understanding volatility and momentum is crucial, such as in cryptocurrencies and forex.
Benefits
Comprehensive Analysis: Combines trend, momentum, and volatility analysis in one tool, providing a multifaceted approach to the markets.
Enhanced Decision-Making: By integrating multiple indicators, it reduces the likelihood of false signals and enhances decision-making confidence.
Customizable and Dynamic: Allows for easy adjustment of parameters to fit different trading styles and market conditions.
This indicator equips traders with a powerful blend of tools to analyze price movements and make informed trading decisions based on a combination of trend, momentum, and volatility insights.
Volume Bull/Bear Activity [ZC]Volume Bull/Bear Activity Summary
This indicator generates a summary of bull/bear activity for 20 symbols.
For each symbol, two bars are displayed, colored green and red.
The green bar indicates bull volume, reflecting activity within the last candle of the symbol.
The red bar signifies bear volume within the real-time bar, continuously updated.
You can seamlessly adjust the timeframe for this indicator.
Features :
Bear/Bull Volume bars ( Realtime )
ability to add 20 symbols
price is colored in Green or red to determine if its Green/Red candle .
More into its data
Holding Zone Input Parameters
The script has three input parameters:
· length: an integer input with a default value of 20, likely used for calculating moving averages or other indicators.
· zoneSize: a decimal input with a default value of 1.5, likely used to define the size of the "holding zone".
· entryZone: an integer input with a default value of 50, likely used to define the entry point for the strategy.
Calculate Holding Zone
The script calculates two values:
· highs: the highest high over the last length bars.
· lows: the lowest low over the last length bars.
Then, it calculates the zoneHigh and zoneLow values by subtracting/adding a fraction of the difference between highs and lows from/to highs and lows, respectively. This creates a "holding zone" between zoneHigh and zoneLow.
Plot Holding Zone
Finally, the script plots two lines:
· zoneHigh with a blue color and a linewidth of 2.
· zoneLow with a blue color and a linewidth of 2.
________________________________________________________________
For the 15 min timeframe I use the parameters 10 for the length, 0.5 for the zone size and 20 for the entry zone. this makes it more sensitive to price
RSI AcceleratorThe Relative Strength Index (RSI) is like a fitness tracker for the underlying time series. It measures how overbought or oversold an asset is, which is kinda like saying how tired or energized it is.
When the RSI goes too high, it suggests the asset might be tired and due for a rest, so it could be a sign it's gonna drop. On the flip side, when the RSI goes too low, it's like the asset is pumped up and ready to go, so it might be a sign it's gonna bounce back up. Basically, it helps traders figure out if a stock is worn out or revved up, which can be handy for making decisions about buying or selling.
The RSI Accelerator takes the difference between a short-term RSI(5) and a longer-term RSI(14) to detect short-term movements. When the short-term RSI rises more than the long-term RSI, it typically refers to a short-term upside acceleration.
The conditions of the signals through the RSI Accelerator are as follows:
* A bullish signal is generated whenever the Accelerator surpasses -20 after having been below it.
* A bearish signal is generated whenever the Accelerator breaks 20 after having been above it.
Hurst Future Lines of Demarcation StrategyJ. M. Hurst introduced a concept in technical analysis known as the Future Line of Demarcation (FLD), which serves as a forward-looking tool by incorporating a simple yet profound line into future projections on a financial chart. Specifically, the FLD is constructed by offsetting the price half a cycle ahead into the future on the time axis, relative to the Hurst Cycle of interest. For instance, in the context of a 40 Day Cycle, the FLD would be represented by shifting the current price data 20 days forward on the chart, offering an idea of future price movement anticipations.
The utility of FLDs extends into three critical areas of insight, which form the backbone of the FLD Trading Strategy:
A price crossing the FLD signifies the confirmation of either a peak or trough formation, indicating pivotal moments in price action.
Such crossings also help determine precise price targets for the upcoming peak or trough, aligned with the cycle of examination.
Additionally, the occurrence of a peak in the FLD itself signals a probable zone where the price might experience a trough, helping to anticipate of future price movements.
These insights by Hurst in his "Cycles Trading Course" during the 1970s, are instrumental for traders aiming to determine entry and exit points, and to forecast potential price movements within the market.
To use the FLD Trading Strategy, for example when focusing on the 40 Day Cycle, a trader should primarily concentrate on the interplay between three Hurst Cycles:
The 20 Day FLD (Signal) - Half the length of the Trade Cycle
The 40 Day FLD (Trade) - The Cycle you want to trade
The 80 Day FLD (Trend) - Twice the length of the Trade Cycle
Traders can gauge trend or consolidation by watching for two critical patterns:
Cascading patterns, characterized by several FLDs running parallel with a consistent separation, typically emerge during pronounced market trends, indicating strong directional momentum.
Consolidation patterns, on the other hand, occur when multiple FLDs intersect and navigate within the same price bandwidth, often reversing direction to traverse this range multiple times. This tangled scenario results in the formation of Pause Zones, areas where price momentum is likely to temporarily stall or where the emergence of a significant trend might be delayed.
This simple FLD indicator provides 3 FLDs with optional source input and smoothing, A-through-H FLD interaction background, adjustable “Close the Trade” triggers, and a simple strategy for backtesting it all.
The A-through-H FLD interactions are a framework designed to classify the different types of price movements as they intersect with or diverge from the Future Line of Demarcation (FLD). Each interaction (designated A through H by color) represents a specific phase or characteristic within the cycle, and understanding these can help traders anticipate future price movements and make informed decisions.
The adjustable “Close the Trade” triggers are for setting the crossover/under that determines the trade exits. The options include: Price, Signal FLD, Trade FLD, or Trend FLD. For example, a trader may want to exit trades only when price finally crosses the Trade FLD line.
Shoutouts & Credits for all the raw code, helpful information, ideas & collaboration, conversations together, introductions, indicator feedback, and genuine/selfless help:
🏆 @TerryPascoe
🏅 @Hpotter
👏 @parisboy
Momentum spotter(FogWalkerTrader) This a trend following indicator using simple moving averages and price close,high and low of recent candles to plot a buy or sell signal.
IMPORTANT - this indicator does not repaint.Traders need to wait untill the the closing of the candle though as the signal is dependant of the close of the period.
Buy Signal: Price closes above the 20, 50, and 200 simple moving averages (SMAs), with the 50 SMA above the 200 SMA, indicating a strong uptrend. The last 4 prices had their lows below the 5 SMA and highs above it.Plus, the current close is higher than the high from 4 periods ago, further suggesting a bullish move.
BUY = blue labelup plotted below candlestick
Sell Signal: Price closes below the 20, 50, and 200 SMAs, with the 50 SMA below the 200 SMA, signaling a strong downtrend. The last 4 prices had their highs above the 5 SMA and lows below it Plus, the current close is lower than the low from 4 periods ago, further suggesting a bearish move.
SELL = red labeldown plotted above candlestick.
IMPORTANT
It’s important to note that, like any trading tool, this isn't foolproof. The market can be unpredictable, leading to false signals. The logic behind these signals is sound, but due to the complexity and volatility of the market, there are times when the signals may not lead to the expected outcome. It's a useful tool, but it's wise to use it alongside other analyses to make more informed decisions.
Statistics • Chi Square • P-value • SignificanceThe Statistics • Chi Square • P-value • Significance publication aims to provide a tool for combining different conditions and checking whether the outcome is significant using the Chi-Square Test and P-value.
🔶 USAGE
The basic principle is to compare two or more groups and check the results of a query test, such as asking men and women whether they want to see a romantic or non-romantic movie.
–––––––––––––––––––––––––––––––––––––––––––––
| | ROMANTIC | NON-ROMANTIC | ⬅︎ MOVIE |
–––––––––––––––––––––––––––––––––––––––––––––
| MEN | 2 | 8 | 10 |
–––––––––––––––––––––––––––––––––––––––––––––
| WOMEN | 7 | 3 | 10 |
–––––––––––––––––––––––––––––––––––––––––––––
|⬆︎ SEX | 10 | 10 | 20 |
–––––––––––––––––––––––––––––––––––––––––––––
We calculate the Chi-Square Formula, which is:
Χ² = Σ ( (Observed Value − Expected Value)² / Expected Value )
In this publication, this is:
chiSquare = 0.
for i = 0 to rows -1
for j = 0 to colums -1
observedValue = aBin.get(i).aFloat.get(j)
expectedValue = math.max(1e-12, aBin.get(i).aFloat.get(colums) * aBin.get(rows).aFloat.get(j) / sumT) //Division by 0 protection
chiSquare += math.pow(observedValue - expectedValue, 2) / expectedValue
Together with the 'Degree of Freedom', which is (rows − 1) × (columns − 1) , the P-value can be calculated.
In this case it is P-value: 0.02462
A P-value lower than 0.05 is considered to be significant. Statistically, women tend to choose a romantic movie more, while men prefer a non-romantic one.
Users have the option to choose a P-value, calculated from a standard table or through a math.ucla.edu - Javascript-based function (see references below).
Note that the population (10 men + 10 women = 20) is small, something to consider.
Either way, this principle is applied in the script, where conditions can be chosen like rsi, close, high, ...
🔹 CONDITION
Conditions are added to the left column ('CONDITION')
For example, previous rsi values (rsi ) between 0-100, divided in separate groups
🔹 CLOSE
Then, the movement of the last close is evaluated
UP when close is higher then previous close (close )
DOWN when close is lower then previous close
EQUAL when close is equal then previous close
It is also possible to use only 2 columns by adding EQUAL to UP or DOWN
UP
DOWN/EQUAL
or
UP/EQUAL
DOWN
In other words, when previous rsi value was between 80 and 90, this resulted in:
19 times a current close higher than previous close
14 times a current close lower than previous close
0 times a current close equal than previous close
However, the P-value tells us it is not statistical significant.
NOTE: Always keep in mind that past behaviour gives no certainty about future behaviour.
A vertical line is drawn at the beginning of the chosen population (max 4990)
Here, the results seem significant.
🔹 GROUPS
It is important to ensure that the groups are formed correctly. All possibilities should be present, and conditions should only be part of 1 group.
In the example above, the two top situations are acceptable; close against close can only be higher, lower or equal.
The two examples at the bottom, however, are very poorly constructed.
Several conditions can be placed in more than 1 group, and some conditions are not integrated into a group. Even if the results are significant, they are useless because of the group formation.
A population count is added as an aid to spot errors in group formation.
In this example, there is a discrepancy between the population and total count due to the absence of a condition.
The results when rsi was between 5-25 are not included, resulting in unreliable results.
🔹 PRACTICAL EXAMPLES
In this example, we have specific groups where the condition only applies to that group.
For example, the condition rsi > 55 and rsi <= 65 isn't true in another group.
Also, every possible rsi value (0 - 100) is present in 1 of the groups.
rsi > 15 and rsi <= 25 28 times UP, 19 times DOWN and 2 times EQUAL. P-value: 0.01171
When looking in detail and examining the area 15-25 RSI, we see this:
The population is now not representative (only checking for RSI between 15-25; all other RSI values are not included), so we can ignore the P-value in this case. It is merely to check in detail. In this case, the RSI values 23 and 24 seem promising.
NOTE: We should check what the close price did without any condition.
If, for example, the close price had risen 100 times out of 100, this would make things very relative.
In this case (at least two conditions need to be present), we set 1 condition at 'always true' and another at 'always false' so we'll get only the close values without any condition:
Changing the population or the conditions will change the P-value.
In the following example, the outcome is evaluated when:
close value from 1 bar back is higher than the close value from 2 bars back
close value from 1 bar back is lower/equal than the close value from 2 bars back
Or:
close value from 1 bar back is higher than the close value from 2 bars back
close value from 1 bar back is equal than the close value from 2 bars back
close value from 1 bar back is lower than the close value from 2 bars back
In both examples, all possibilities of close against close are included in the calculations. close can only by higher, equal or lower than close
Both examples have the results without a condition included (5 = 5 and 5 < 5) so one can compare the direction of current close.
🔶 NOTES
• Always keep in mind that:
Past behaviour gives no certainty about future behaviour.
Everything depends on time, cycles, events, fundamentals, technicals, ...
• This test only works for categorical data (data in categories), such as Gender {Men, Women} or color {Red, Yellow, Green, Blue} etc., but not numerical data such as height or weight. One might argue that such tests shouldn't use rsi, close, ... values.
• Consider what you're measuring
For example rsi of the current bar will always lead to a close higher than the previous close, since this is inherent to the rsi calculations.
• Be careful; often, there are na -values at the beginning of the series, which are not included in the calculations!
• Always keep in mind considering what the close price did without any condition
• The numbers must be large enough. Each entry must be five or more. In other words, it is vital to make the 'population' large enough.
• The code can be developed further, for example, by splitting UP, DOWN in close UP 1-2%, close UP 2-3%, close UP 3-4%, ...
• rsi can be supplemented with stochRSI, MFI, sma, ema, ...
🔶 SETTINGS
🔹 Population
• Choose the population size; in other words, how many bars you want to go back to. If fewer bars are available than set, this will be automatically adjusted.
🔹 Inputs
At least two conditions need to be chosen.
• Users can add up to 11 conditions, where each condition can contain two different conditions.
🔹 RSI
• Length
🔹 Levels
• Set the used levels as desired.
🔹 Levels
• P-value: P-value retrieved using a standard table method or a function.
• Used function, derived from Chi-Square Distribution Function; JavaScript
LogGamma(Z) =>
S = 1
+ 76.18009173 / Z
- 86.50532033 / (Z+1)
+ 24.01409822 / (Z+2)
- 1.231739516 / (Z+3)
+ 0.00120858003 / (Z+4)
- 0.00000536382 / (Z+5)
(Z-.5) * math.log(Z+4.5) - (Z+4.5) + math.log(S * 2.50662827465)
Gcf(float X, A) => // Good for X > A +1
A0=0., B0=1., A1=1., B1=X, AOLD=0., N=0
while (math.abs((A1-AOLD)/A1) > .00001)
AOLD := A1
N += 1
A0 := A1+(N-A)*A0
B0 := B1+(N-A)*B0
A1 := X*A0+N*A1
B1 := X*B0+N*B1
A0 := A0/B1
B0 := B0/B1
A1 := A1/B1
B1 := 1
Prob = math.exp(A * math.log(X) - X - LogGamma(A)) * A1
1 - Prob
Gser(X, A) => // Good for X < A +1
T9 = 1. / A
G = T9
I = 1
while (T9 > G* 0.00001)
T9 := T9 * X / (A + I)
G := G + T9
I += 1
G *= math.exp(A * math.log(X) - X - LogGamma(A))
Gammacdf(x, a) =>
GI = 0.
if (x<=0)
GI := 0
else if (x
Chisqcdf = Gammacdf(Z/2, DF/2)
Chisqcdf := math.round(Chisqcdf * 100000) / 100000
pValue = 1 - Chisqcdf
🔶 REFERENCES
mathsisfun.com, Chi-Square Test
Chi-Square Distribution Function
STY-Divergencedraws a blue line representing the divergence between a 3-period moving average (3MA) close and the current candle high, and a red line representing the divergence between a 20-period moving average (20MA) close and the 3MA close
This script calculates the moving averages for both 3-period and 20-period and then computes the divergences as described. It plots the lines with blue color if the divergence is positive and red if negative. Adjust the length of moving averages or other parameters according to your preference.
AWR_WaveTrend Multitimeframe [adapted from LazyBear]I've adapted a script from Lazy Bear (WT trend oscillator)
WaveTrend Oscillator is a port of a famous TS/MT indicator.
When the oscillator (WT1 designed as a line) is above the overbought band (50 to 60) and crosses down the WT2 (dotted line), it is usually a good SELL signal. Similarly, when the oscillator crosses above the signal when below the Oversold band ( (-50 to -60)), it is a good BUY signal.
In this indicator, you can display at the same time, different time frames.
Choice possible are 1 mn, 15 mn, 30 mn, 60 mn, 120 mn, 240 mn, 1D, Week, Month.
Small time frames (1 to 30 mn) are represented by a blue lines (light to dark)
1H is in grey
2H & 4H are in purple (light to dark)
1D is in green
1W is in orange
1M is in black
You can choose which timeframes you want to display for the current period or for the last period closed.
In a few seconds, you perfectly see the selected timeframes trends.
There is also at the bottom right a table summing up all the different values of WT1, WT2 and difference between them.
Positive difference means an upside trend
Negative difference means a downside trend.
Another way of using this indicator is displaying only the difference between WT1 & WT2. It's giving the speed & the direction of all trends. Trends are our friends ...
You can observe the significent times frames and look if they are all positives or negatives or if the speed of lower timeframe cross a longer timeframe of if the speed is decreasing or increasing...
Difference values goes generaly from -20 to 20 (it can exceed a bit but really rare). 12 is already high level of speed.
Many uses possible.
In the exemple posted, I've selected WT1 and WT2 for timeframes 4H, Daily & Weekly.
Marker 1:
Orange lines (WT1) are far below - 50 (-67 here) and cross WT2 pointed lines : weekly buy signal
But this buy signal is balanced by 4H & Daily sell signal = it's marking start of hesitations of main trend !!!!
Marker 2 :
Next buy signal in 4H or daily would normaly confirm the start
Marker 3 :
Sell signal in 4H and daily but weekly has an upside trend ! Start of a counter trend in the trend. To find the perfect timing of that you have to look to lower time frames, because 4H and daily are giving many hesitations signals crossing down & crossing up many times in an overbought zone.
Marker 4 :
End of the counter trend. Most of the time, the countertrend don't go in the "over" zone. That's why if you trading in an counter trend, you have to keep it in mind.
Then a few days later you can see the sell signal. And what a sell signal ! 4H & daily are smashed down really fastly ! Trends change warning !
Marker 5
Long hesitation/change of the trend. Daily WT and 4H are below the weekly trends. Weekly start to go down.
Start of a counter trend inside the trend giving us the best selling signal at her end !
Marker 6 :
Long hesitation/change of the trend.
You have to look in lower time frames to identify the short trend. Difficult to find the best timing to get in. ....
I've add many alerts. When a time frame become positive or negative. When many time frames are positive or negative or above or below 47 level...
Please feel free to explore.
Hope it will help you.
Thanks to Lazybear ! Thousands thanks to Lazybear !
Exemple with difference
SPX IB Intraday Real TimeThis indicator was designed for traders doing Iron Butterflies intradays with the SPX.
Draw and assemble the picture of an IB with the call and put wings chosen according to the selected configuration. Additionally, it shows both breakevens according to the credit obtained.
The indicator shows the distance, in real time, between the current price of the SPX and the breakevens (calls and puts) that have been selected. This result is shown in percentages and points. In the upper right corner (for calls) and lower right (for puts). The label will change color as the price moves closer or further away from the breakevens.
Setting:
Open Time (Hour): IB opening time.
Open Time (Minute): IB opening minutes.
Open Price: Strike to which the center or body of the IB was opened.
Auto Price Open: If enabled, it will take the strike at the price closest to the SPX.
Wings Width: width of the IB wings.
Credit: Refers to the credit obtained according to the IB that was opened.
Shows Breakeven: Shows breakeven points at expiration based on credit earned.
Add SMAs: Adds the SMAs 8, 20 and 50 to the chart.
Note 1: It is recommended to use TradingView's Dark Theme Color.
Note 2: this indicator will only work in intraday times of less than 30 minutes (1m,2m,5m,10m,15m,30m) and will only show results while the market is open, that is, in real time.
************************************
Spanish Version:
Este indicador fue diseñado para los traders que hacen intradías de Iron Butterflies con el SPX.
Dibuja y arma el cuadro de un IB con las alas call y puts elegidas de acuerdo a la configuración seleccionada. Además, muestra ambos breakevens según el crédito obtenido.
El indicador muestra la distancia, en tiempo real, entre el actual precio del SPX y los breakevens (calls y puts) que se hayan seleccionado. Este resultado se muestra en porcentajes y en puntos. En la esquina superior derecha (para los calls) e inferior derecha (para los puts). El label cambiará de color a medida que el precio se acerque o aleje de los breakevens.
Configuración:
Open Time (Hour): Hora de apertura del IB.
Open Time (Minute): Minutos de apertura del IB.
Open Price: Strike al que se abrió el centro o cuerpo del IB.
Auto Price Open: Si se encuentra habilitado tomará el strike al precio más cercano al SPX.
Wings Width: ancho de las alas del IB.
Credit: Se refiere al crédito obtenido según el IB que se abrió.
Shows Breakeven: Muestra los puntos de breakeven en la expiración según el crédito obtenido.
Add SMAs: Agrega al cuadro las SMA 8, 20 y 50.
Nota 1: se recomienda usar el Dark Theme Color de TradingView.
Nota 2: este indicador solo funcionará en temporalidades intradías menores a 30 minutos (1m,2m,5m,10m,15m,30m) y solo mostrará resultados mientras el mercado esté abierto, o sea en tiempo real.
Donchian Channel Trend MeterInspired by the Chande Trend Meter (this is not the Chande Trend Meter), this indicator aims to show the trend so you can make trading decisions accordingly. This is calculated by looking at Donchian Channels over a number of lengths (20, 40, 60 periods, etc.), converting them to percent, and then applying a weighting and smoothing similar to the Know Sure Thing Indicator. This results in smooth trend line that is not disturbed by large fluctuations in price action.
When the line is below 20%, you have a strong down trend. Values between 20 - 40% are a weak down trend. Values between 40 - 60% are no trend (slightly bullish or bearish if above or below 50%). Similarly, 60 - 80% is a weak uptrend, and above 80% is a strong uptrend. Trade signals can be turned on or off that correspond to crosses over 50%. It can be useful in spotting divergence.
Vo-S-Di-T-I - Volatility Scaled Directional Trend IndicatorThis code represents just the foundation for what's to come. It lays the groundwork for a more sophisticated quant trading model, offering a glimpse into the potential of future developments. I hope my contribution to this community will be valued. I'm here for idea exchanges and coding together, with the key emphasis on ensuring everything we do is grounded on a solid statistical basis.
----------------------------------------------------------------------------------------------------------------------
The developed code is based on a rigorous quantitative approach for analyzing price trends in the equity sector, utilizing advanced statistical methodology to scale returns based on the volatility observed over predefined periods of 20 and 50 days. This technique for normalizing returns allows us to eliminate distortions due to the intrinsic variability of prices and focus on the underlying structure of price behavior. The primary goal of the code is not to speculatively predict future market movements but rather to identify potential reversal trend signals through price dynamics analysis, within an optimized risk and return context.
Our approach is distinguished by the use of statistical decomposition techniques and time series analysis to interpret price variations as indicators of possible shifts in market behavior. This allows distinguishing between random or short-term price movements and true trend changes, providing a solid foundation for more informed investment decisions.
The current code represents the initial phase of a broader project that envisages the integration of machine learning algorithms to further refine the ability to detect significant changes in price trends. Through the application of predictive models and machine learning techniques, we intend to explore complex patterns in historical price data that may precede trend reversals, always respecting the principles of rigorous statistical analysis and risk management. This development and learning path will allow us to continuously improve investment strategies, leveraging the analytical capabilities of modern data science algorithms applied to the financial sector.
HOW TO READ
Simply put, Z values above 0 indicate an uptrend, while values below indicate a downtrend. IMPORTANT: It is not necessary to consider any crosses between Z-Short and Z-Long, but only potential crosses with 0.
The initial values are set at 20 and 50, but everyone is free to choose the most suitable periods, as long as all choices have valid statistical significance. My advice is to use R or MatLab to explore the best correlation between N and price movements. The reason I have set two values for N (Short and Long) is because it's interesting to assess short-term and medium-to-long-term trends to understand if price movements can lead to reversals only in the short term or also in the medium to long term. This idea came to me because I believe all other trend determination systems have too much lag and unpredictability.
ATE_Common_Functions_LibraryLibrary "ATE_Common_Functions_Library"
- ATE_Common_Functions_Library was created to assist in constructing CCOMET Scanners
RCI(_rciLength, _source, _interval)
You will see me using this a lot. DEFINITELY my favorite oscillator to utilize for SO many different things from
timing entries/exits to determining trends.Calculation of this indicator based on Spearmans Correlation.
Parameters:
_rciLength (int) : (int)
Amount of bars back to use in RCI calculations.
_source (float) : (float)
Source to use in RCI calculations (can use ANY source series. Ie, open,close,high,low,etc).
_interval (int) : (int)
Optional (if parameter not included, it defaults to 3). RCI calculation groups bars by this amount and then will.
rank these groups of bars.
Returns: (float)
Returns a single RCI value that will oscillates between -100 and +100.
RCIAVG(_rciSMAlen, _source, _interval, firstLength, lastLength)
20 RCI's are averaged together to get this RCI Avg (Rank Correlation Index Average). Each RCI (of the 20 total RCI)
has a progressively LARGER Lookback Length. Rather than having ALL of the RCI Lengths be individually adjustable (because of too many inputs),
I have made the FIRST Length used (smallest Length value in the set) and the LAST Length used (largest length value in the set) be adjustable
and all other 18 Lengths are equally spread out between the 'firstLength' and the 'lastLength'.
Parameters:
_rciSMAlen (int) : (int)
Unlike the Single RCI Function, this function smooths out the end result using an SMA with a length value that is this parameter.
_source (float) : (float)
Source to use in RCI calculations (can use ANY source series. Ie, open,close,high,low,etc).
_interval (int) : (int)
Optional (if parameter not included, it defaults to 3). Within the RCI calculation, bars next to each other are grouped together
and then these groups are Ranked against each other. This parameter is the number of adjacent bars that are grouped together.
firstLength (int) : (int)
Optional (if parameter is not included when the function is called on in the script, then it defaults to 200).
This parameter is the Lookback Length for the 1st RCI used (so the SMALLEST Length used) in the RCI Avg.
lastLength (int) : (int)
Optional (if parameter is not included when the function is called on in the script, then it defaults to 2500).
This parameter is the Lookback Length for the 20th(the LAST) RCI used (so the LARGEST Length used) in the RCI Avg.
***** BEWARE ***** The 'lastLength' must be less than (or possibly equal to) 5000 because Tradingview has capped it at 5000, causing an error.
***** BEWARE ***** If the script gives a compiler "time out" error then the 'lastLength' must be lowered until it no longer times out when compiling.
Returns: (float)
Returns a single RCI value that is the Avg of many RCI values that will oscillate between -100 and +100.
PercentChange(_startingValue, _endingValue)
This is a quick function to calculate how much % change has occurred between the '_startingValue' and the '_endingValue'
that you input into the function.
Parameters:
_startingValue (float) : (float)
The source value to START the % change calculation from.
_endingValue (float) : (float)
The source value to END the % change caluclation from.
Returns: Returns a single output being the % value between 0-100 (with trailing numbers behind a decimal). If you want only
a certain amount of numbers behind the decimal, this function needs to be put within a formatting function to do so.
Rescale(_source, _oldMin, _oldMax, _newMin, _newMax)
Rescales series with a known '_oldMin' & '_oldMax'. Use this when the scale of the '_source' to
rescale is known (bounded).
Parameters:
_source (float) : (float)
Source to be normalized.
_oldMin (int) : (float)
The known minimum of the '_source'.
_oldMax (int) : (float)
The known maximum of the '_source'.
_newMin (int) : (float)
What you want the NEW minimum of the '_source' to be.
_newMax (int) : (float)
What you want the NEW maximum of the '_source' to be.
Returns: Outputs your previously bounded '_source', but now the value will only move between the '_newMin' and '_newMax'
values you set in the variables.
Normalize_Historical(_source, _minimumLvl, _maximumLvl)
Normalizes '_source' that has a previously unknown min/max(unbounded) determining the max & min of the '_source'
FROM THE ENTIRE CHARTS HISTORY. ]
Parameters:
_source (float) : (float)
Source to be normalized.
_minimumLvl (int) : (float)
The Lower Boundary Level.
_maximumLvl (int) : (float)
The Upper Boundary Level.
Returns: Returns your same '_source', but now the value will MOSTLY stay between the minimum and maximum values you set in the
'_minimumLvl' and '_maximumLvl' variables (ie. if the source you input is an RSI...the output is the same RSI value but
instead of moving between 0-100 it will move between the maxand min you set).
Normailize_Local(_source, _length, _minimumLvl, _maximumLvl)
Normalizes series with previously unknown min/max(unbounded). Much like the Normalize_Historical function above this one,
but rather than using the Highest/Lowest Values within the ENTIRE charts history, this on looks for the Highest/Lowest
values of '_source' within the last ___ bars (set by user as/in the '_length' parameter. ]
Parameters:
_source (float) : (float)
Source to be normalized.
_length (int) : (float)
The amount of bars to look back to determine the highest/lowest '_source' value.
_minimumLvl (int) : (float)
The Lower Boundary Level.
_maximumLvl (int) : (float)
The Upper Boundary Level.
Returns: Returns a single output variable being the previously unbounded '_source' that is now normalized and bound between
the values used for '_minimumLvl'/'_maximumLvl' of the '_source' within the user defined lookback period.
Cast ForwardThis indicator will not forecast price action. It will not predict price movement nor will it in any way predict the outcome of any trade you may take. This is not a signal for buying or selling. You must do your own back testing and analysis for trading.
Time and price are the two most important components of market data. Where was price at what time? To help visualize this question I created this indicator. It allows for the previous session data to be overlayed onto the chart offset forward 24 hours. What this means is that you have the high, (high/low)/2, and low of each candle plotted on top of your chart for the time frame of the current chart, but offset so that the data from the current candle has the data from the corresponding candle 24 hours prior lined up on the x-axis.
SMA Logic: I used the SMA (Simple Moving Average) function with a length of 1 to plot the data points without any smoothing to give the true values of the data.
For Intraday Charting
For Electronic Trading Hours:
In order to line up the data correctly, for intraday charts, I used the current chart timeframe and divided it into 1380 (number of minutes in the 23 hour futures market trading day) to set the data offset. Using the same math logic, this indicator also gives the correct correlated data on the 30 second time frame. If the chart time frame that is currently being used does not allow for correct data correlation (not a factor of 1380) it will not plot the data.
For Regular Trading Hours:
In order to line up the data correctly, for intraday charts, I used the current chart timeframe and divided it into 405 (number of minutes in the 6 hour 45 minutes New York regular session trading day, including the 15 minute settlement time) to set the data offset. This indicator also gives the correct correlated data on the 30 second time frame. If the chart time frame that is currently being used does not allow for correct data correlation (not a factor of 405) it will not plot the data.
For the Daily Chart:
This indicator plots a visualization of the 20-40-60 day IPDA data range; (The IPDA data range helps traders identify liquidity, price gaps, and equilibrium points in the market, providing insights for optimal trade entries and market structure shifts). It does this using the same SMA logic as the intraday plot. What this means is it offsets the historical data of the daily chart 20, 40, or 60 bars forward. You can plot any combination of the three on the chart at one time, but these will not show on the intraday chart. This allows for visualization of where the market will possibly seek liquidity, seek to rebalance, or seek equilibrium in the future.
Envelope and Moving Average**Description:**
- This script creates an indicator that combines an envelope and a simple moving average (MA).
- The envelope is constructed using a specified length, percentage deviation, and source price (close by default).
- The moving average is calculated based on a specified length and source price.
**Inputs:**
1. Envelope:
- Length: Number of periods used for the envelope calculation (default is 20).
- Percentage Deviation: Percentage above and below the envelope basis (default is 10%).
- Source: The price used for the envelope calculation (default is close).
- Exponential MA: Option to use exponential moving average for the envelope basis (default is false).
2. Moving Average:
- Length: Number of periods used for the moving average calculation (default is 20).
- Source: The price used for the moving average calculation (default is close).
**Plotting:**
- The script plots the envelope basis, upper envelope line, and lower envelope line.
- The area between the upper and lower envelope lines is filled with a semi-transparent color for better visualization.
- The moving average is plotted on the chart with a specified color and line width.
**How to Use in a Strategy:**
1. **Envelope Crossovers:**
- Go Long (Buy): When the close price crosses above the upper envelope line.
- Go Short (Sell): When the close price crosses below the lower envelope line.
2. **Moving Average Crossovers:**
- Go Long (Buy): When the close price crosses above the moving average.
- Go Short (Sell): When the close price crosses below the moving average.
3. **Confirmation:**
- Consider additional confirmation signals or filters to improve the robustness of your strategy.
- For example, you might require a certain amount of price momentum or use other technical indicators in conjunction with envelope and moving average signals.
4. **Optimization:**
- Experiment with different parameter values (e.g., envelope length, percentage deviation, moving average length) to optimize the strategy for specific market conditions.
5. **Risk Management:**
- Implement proper risk management techniques, such as setting stop-loss orders and position sizing, to control risk.
Remember to thoroughly backtest any strategy before deploying it in a live trading environment. Additionally, consider the current market conditions and adapt your strategy accordingly.
Leveraged Share Decay Tracker [SS]Releasing this utility tool for leveraged share traders and investors.
It is very difficult to track the amount of decay and efficiency that is associated with leveraged shares and since not all leveraged shares are created equally, I developed this tool to help investors/traders ascertain:
1. The general risk, in $$, per share associated with investing in a particular leveraged ETF
2. The ability of a leveraged share to match what it purports to do (i.e. if it is a 3X Bull share, is it actually returning consistently 3X the underlying or is there a large variance?)
3. The general decay at various timepoints expressed in $$$
How to use:
You need to be opened on the chart of the underlying. In the example above, the chart is on DIA, the leveraged share being tracked is UDOW (3X bull share of the DOW).
Once you are on the chart of the underlying, you then put in the leveraged share of interest. The indicator will perform two major assessments:
1. An analysis of the standard error between the underlying and the leveraged share. This is accomplished through linear regression, but instead of creating a linreg equation, it simply uses the results to ascertain the degree of error associated at various time points (the time points are 10, 20, 30, 40, 50, 100, 252).
2. An analysis of the variance of returns. The indicator requires you to put in the leverage amount. So if the leverage amount is 3% (i.e. SPXL or UPRO is 3 X SPY), be sure that you are putting that factor in the settings. It will then modify the underlying to match the leverage amount, and perform an assessment of variance over 10, 20, 30, 40, 50, 100, 252 days to ensure stability. This will verify whether the leveraged ETF is actually consistently performing how it purports to perform.
Here are some examples, and some tales of caution so you can see, for yourself, how not all leveraged shares are created equal.
SPY and SPXL:
SPY and UPRO:
XBI and LABU (3 x bull share):
XBI and LABD (3 x bear share):
SOX and SOXL:
AAPL and AAPU:
It is VERY pivotal you remember to check and adjust the Leveraged % factor.
For example, AAPU is leveraged 1.5%. You can see above it tracks this well. However, if you accidently leave it at 3%, you will get an erroneous result:
You can also see how some can fail to track the quoted leveraged amount, but still produce relatively lower risk decay.
And, as a final example, let's take a look at the worst leveraged share of life, BOIL:
Trainwreck that one. Stay far away from it!
The chart:
The chart will show you the drift (money value over time) and the variance (% variance between the expected and actual returns) over time. From here, you can ascertain the general length you feel comfortable holding a leveraged share. In general, for most stable shares, <= 50 trading days tends to be the sweet spot, but always check the chart.
There are also options to plot the variances and the drifts so you can see them visually.
And that is the indicator! Kind of boring, but there are absolutely 0 resources out there for doing this job, so hopefully you see the use for it!
Safe trades everyone!