The Ultimate Lot Size Calculator Backstory
I created this Pine Script tool to calculate lot sizes with precision. While there are many lot size calculators available on TradingView, I found that most had significant flaws. I started teaching myself Pine Script over three and a half years ago with the sole purpose of building this tool. My first version was messy and lacked accuracy, so I never published it. I wanted it to be better than any other available tool, but my limited knowledge back then held me back.
Recently, I received a request to create a similar tool, as the current options still fail to deliver the precision and reliability traders need. This inspired me to revisit my original idea. With improved skills and a better understanding of Pine Script, I redesigned the tool from scratch, making it as precise, reliable, and efficient as possible.
This tool features built-in error detection to minimize mistakes and ensure accuracy in lot size calculations. I've spent more time on this project than on any other, focusing on delivering a solution that stands out on TradingView. While I plan to add more features based on user feedback, the current version is already a powerful, dependable, and easy-to-use tool for traders who value precision and efficiency in their lot size calculations.
How to use the tool ?
At first it might seem complicated, but it is quite easy to use the tool. There are two modes: auto and manual. By default, the tool is set on manual mode. When you apply the tool on the chart, it will ask you to choose the entry price, then the stop-loss price, and at last the take-profit price. Select all of them one by one. These values can be changed later.
Settings
There are various setting given for making the tool as flexible as possible. Here is the explanation for some of most important settings. Play with them and make yourself comfortable.
General settings
Auto mode : Use this mode if you want the the risk reward to be fixed and stop loss to be based on ATR. However the stop loss can be changed to be based on user input.
Manual mode : Use this mode if you want full control over entry, stop loss and take profit.
Contract Size : The tool works perfectly for all forex pairs including gold and silver but as the contract size is different for different assets it is difficult to add every single asset into the script manually so i have provided this option. In case you want to calculate lot size for a asset other then forex, gold or silver make sure to change this. Contract size = Quantity of the asset in 1 standerd lot.
Account settings
Automatic mode settings and ATR stop settings
Manual mode settings
Table and risk-reward box settings are pretty much self-explanatory i guess.
Error handling
A lot size calculator is a complex program. There are numerous points where it may fail and produce incorrect results. To make it robust and accurate, these issues must be addressed and managed properly, which practically all existing lot size calculator scripts fail to do.
Golden tip
When the symbol is changed it will display a symbol change warning as the entry, stop loss and take profit price won't change.
There are 2 ways to get fix this. Either manually enter all three values which i hate the most or remove the script from the chart and re-apply the script on chart again.
So to re-apply the indicator in most easy way follow the following instructions:
Note : If you encounter any other error then read the instruction to fix it and if it is an unknow error pleas report it to me in comments or DM.
Cerca negli script per "GOLD"
ChaosPulse Fractal Dimension IndicatorOverview:
The ChaosPulse Fractal Dimension Indicator is designed to measure the "complexity" or "chaos" of price movements over time. By calculating the fractal dimension of the price series, the indicator provides insights into whether the market is trending smoothly or exhibiting turbulent, potentially unpredictable behavior.
How It Works:
Fractal Dimension Calculation:
The indicator uses a fixed lookback window (default: 30 bars) to compute the fractal dimension. It does this by:
Summing the absolute differences between consecutive closing prices (the “path length”) within the window.
Measuring the direct distance between the current closing price and the closing price at the beginning of the window.
Calculating the fractal dimension using the formula:
FD
=
1
+
ln
(
sumDistances
/
𝑑
)
ln
(
window
−
1
)
FD=1+
ln(window−1)
ln(sumDistances/d)
This produces a value that indicates the degree of complexity in the price path.
Smoothing:
To filter out noise, the computed fractal dimension is smoothed using a simple moving average (SMA) over a configurable number of bars (default: 5).
Visual Cues:
The primary plot displays the smoothed fractal dimension. Its color changes based on whether the value is above or below a set threshold (default: 1.4), which is commonly interpreted as the point where market behavior transitions from smooth (closer to 1) to increasingly chaotic (approaching 2).
The indicator also draws several horizontal reference lines at key levels:
0.618
1.4 (default chaos threshold)
1.618 (the Golden Ratio)
2.0
2.618
These levels provide additional visual context. For instance, values near 1.618 might hint at a natural balance point, while higher values (closer to 2 or 2.618) suggest significant market turbulence.
The background color shifts (green for lower complexity, red for higher complexity) based on whether the smoothed fractal dimension exceeds the default threshold.
Interpreting the Values:
Fractal Dimension ≈ 1:
Indicates a smooth, nearly linear price movement—a trending or stable market.
Fractal Dimension Around 1.4:
Often used as a threshold, this level may signal the beginning of increased price complexity. When the indicator rises above 1.4, it might warn that the market is entering a more volatile, “chaotic” phase.
Fractal Dimension Near 1.618, 2.0, or 2.618:
These higher values suggest a significantly more complex, turbulent market. Such conditions could precede sharp price movements, reversals, or breakouts.
Fractal Dimension Around 0.618:
Represents extremely low complexity—suggesting a very calm market, potentially with little opportunity for dramatic changes.
Usage:
The ChaosPulse Fractal Dimension Indicator is not a standalone forecasting tool but rather a means to assess the “texture” of market movements. Traders can use it alongside other technical indicators to:
Identify periods of stability versus high volatility.
Gain additional insight into potential trend changes.
Adjust risk management strategies when the market enters a phase of increased complexity.
This description should help users understand both the theory behind the indicator and its practical application. The additional horizontal lines provide multiple reference points (including the intriguing 1.618 level, inspired by the Golden Ratio) to enhance the visual and analytical appeal of the tool.
Global Inflation Indicator🔹 Overview:
The Global Inflation Indicator is a macro-analysis tool designed to track and compare inflation trends across major economies. It pulls Consumer Price Index (CPI) data from multiple regions, helping traders and investors analyze how inflation impacts global markets, particularly gold, forex, and commodities.
📊 Key Features:
✅ Tracks inflation in six major economies:
🇺🇸 USA (CPIAUCSL) – Key driver for USD and gold prices
🇪🇺 Eurozone (CPHPTT01EZM659N) – Euro inflation impact
🇬🇧 United Kingdom (GBRCPIALLMINMEI) – GBP & economic trends
🇨🇳 China (CHNCPIALLMINMEI) – Emerging market impact
🇯🇵 Japan (JPNCPIALLMINMEI) – Yen & inflation control policies
🇮🇳 India (INDCPIALLMINMEI) – Key gold-consuming economy
✅ Real-time Inflation Trends:
Provides a visual comparison of inflation levels in different regions.
Helps traders identify inflationary cycles & their effect on global assets.
✅ Macro-Driven Trading Decisions:
Gold & Forex Correlation: High inflation may increase demand for gold.
Interest Rate Expectations: Central banks respond to inflation shifts.
Currency Strength: Inflation impacts USD, EUR, GBP, JPY, CNY, INR.
📉 How to Use It:
Gold traders can assess inflation trends to predict potential price movements.
Forex traders can compare inflation effects on major currency pairs (EUR/USD, USD/JPY, GBP/USD, etc.).
Stock investors can evaluate how inflation affects central bank policies and interest rates.
📌 Conclusion:
The Global Inflation Indicator is a powerful tool for macroeconomic analysis, providing real-time insights into global inflation trends. By integrating this indicator into your gold, forex, and commodity trading strategies, you can make more informed investment decisions in response to economic changes.
Advanced Multi-Timeframe Trading System (Risk Managed)Description:
This strategy is an original approach that combines two main analytical components to identify potential trade opportunities while simulating realistic trading conditions:
1. Market Trend Analysis via an Approximate Hurst Exponent
• What It Does:
The strategy computes a rough measure of market trending using an approximate Hurst exponent. A value above 0.5 suggests persistent, trending behavior, while a value below 0.5 indicates a tendency toward mean-reversion.
• How It’s Used:
The Hurst exponent is calculated on both the chart’s current timeframe and a higher timeframe (default: Daily) to capture both local and broader market dynamics.
2. Fibonacci Retracement Levels
• What It Does:
Using daily high and low data from a selected timeframe (default: Daily), the script computes key Fibonacci retracement levels.
• How It’s Used:
• The 61.8% level (Golden Ratio) serves as a key threshold:
• A long entry is signaled when the price crosses above this level if the daily Hurst exponent confirms a trending market.
• The 38.2% level is used to identify short-entry opportunities when the price crosses below it and the daily Hurst indicates non-trending conditions.
Signal Logic:
• Long Entry:
When the price crosses above the 61.8% Fibonacci level (Golden Ratio) and the daily Hurst exponent is greater than 0.5, suggesting a trending market.
• Short Entry:
When the price crosses below the 38.2% Fibonacci level and the daily Hurst exponent is less than 0.5, indicating a less trending or potentially reversing market.
Risk Management & Trade Execution:
• Stop-Loss:
Each trade is risk-managed with a stop-loss set at 2% below (for longs) or above (for shorts) the entry price. This ensures that no single trade risks more than a small, sustainable portion of the account.
• Take Profit:
A take profit order targets a risk-reward ratio of 1:2 (i.e., the target profit is twice the amount risked).
• Position Sizing:
Trades are executed with a fixed position size equal to 10% of account equity.
• Trade Frequency Limits:
• Daily Limit: A maximum of 5 trades per day
• Overall Limit: No more than 510 trades during the backtesting period (e.g., since 2019)
These limits are imposed to simulate realistic trading frequency and to avoid overtrading in backtest results.
Backtesting Parameters:
• Initial Capital: $10,000
• Commission: 0.1% per trade
• Slippage: 1 tick per bar
These settings aim to reflect the conditions faced by the average trader and help ensure that the backtesting results are realistic and not misleading.
Chart Overlays & Visual Aids:
• Fibonacci Levels:
The key Fibonacci retracement levels are plotted on the chart, and the zone between the 61.8% and 38.2% levels is highlighted to show a key retracement area.
• Market Trend Background:
The chart background is tinted green when the daily Hurst exponent indicates a trending market (value > 0.5) and red otherwise.
• Information Table:
An on-chart table displays key parameters such as the current Hurst exponent, daily Hurst value, the number of trades executed today, and the global trade count.
Disclaimer:
Past performance is not indicative of future results. This strategy is experimental and provided solely for educational purposes. It is essential that you backtest and paper trade using your own settings before considering any live deployment. The Hurst exponent calculation is an approximation and should be interpreted as a rough gauge of market behavior. Adjust the parameters and risk management settings according to your personal risk tolerance and market conditions.
Additional Notes:
• Originality & Usefulness:
This script is an original mashup that combines trend analysis with Fibonacci retracement methods. The description above explains how these components work together to provide trading signals.
• Realistic Results:
The strategy uses realistic account sizes, commission rates, slippage, and risk management rules to generate backtesting results that are representative of real-world trading.
• Educational Purpose:
This script is intended to support the TradingView community by offering insights into combining multiple analysis techniques in one strategy. It is not a “get-rich-quick” system but rather an educational tool to help traders understand risk management and trade signal logic.
By using this script, you acknowledge that trading involves risk and that you are responsible for testing and adjusting the strategy to fit your own trading environment. This publication is fully open source, and any modifications should include proper attribution if significant portions of the code are reused.
Advanced Trend and Volatility Indicator with Alerts by ZaimonThis script presents a comprehensive analytical tool that integrates multiple technical indicators to provide a holistic view of market trends and volatility. By uniquely combining Moving Averages (MA), Relative Strength Index (RSI), Stochastic Oscillator, Bollinger Bands, and Average True Range (ATR), it offers nuanced insights into price movements and helps identify potential trading opportunities.
---
### **Key Features and Integration:**
1. **Moving Averages (MA20 & MA50):**
- **Trend Identification:**
- **Methodology:** Calculates two Simple Moving Averages—MA20 (short-term) and MA50 (long-term).
- **Bullish Trend:** When MA20 crosses above MA50, indicating upward momentum.
- **Bearish Trend:** When MA20 crosses below MA50, signaling downward momentum.
- **Golden Cross & Death Cross Alerts:**
- **Golden Cross:** MA20 crossing above MA50 generates a bullish alert and visual symbol.
- **Death Cross:** MA20 crossing below MA50 triggers a bearish alert and visual symbol.
- **Integration:**
- Serves as the foundational trend indicator, influencing interpretations of other indicators within the script.
2. **Relative Strength Index (RSI):**
- **Momentum Measurement:**
- **Methodology:** Calculates RSI to assess the speed and change of price movements over a 14-period length.
- **Overbought/Oversold Conditions:** Customizable thresholds set at 70 (overbought) and 30 (oversold).
- **Alerts:**
- Generates alerts when RSI crosses above or below the specified thresholds.
- **Integration:**
- Confirms trend strength identified by MAs.
- Overbought/Oversold signals can precede potential trend reversals, especially when aligned with MA crossovers.
3. **Stochastic Oscillator:**
- **Momentum and Reversal Signals:**
- **Methodology:** Uses %K and %D lines to evaluate price momentum relative to high-low range over recent periods.
- **Bullish Signal:** %K crossing above %D in oversold territory (below 20).
- **Bearish Signal:** %K crossing below %D in overbought territory (above 80).
- **Alerts:**
- Provides alerts on bullish and bearish crossovers in extreme regions.
- **Integration:**
- Enhances RSI signals by providing additional momentum confirmation.
- When both RSI and Stochastic indicate overbought/oversold conditions, it strengthens the likelihood of a reversal.
4. **Bollinger Bands:**
- **Volatility Visualization:**
- **Methodology:** Plots upper and lower bands based on standard deviations from a moving average (BB Basis).
- **Dynamic Support/Resistance:** Prices touching or exceeding the bands may indicate potential reversals.
- **Integration:**
- Works with RSI and Stochastic to identify overextended price movements.
- Helps in assessing volatility alongside trend and momentum indicators.
5. **Average True Range (ATR):**
- **Volatility Assessment:**
- **Methodology:** Calculates ATR over a 14-period length to measure market volatility.
- **ATR Bands:** Plots upper and lower bands relative to the current price using an ATR multiplier.
- **Integration:**
- Assists in setting stop-loss and take-profit levels based on current volatility.
- Complements Bollinger Bands for a comprehensive volatility analysis.
6. **Information Table:**
- **Real-Time Data Display:**
- Shows current values of MA20, MA50, RSI, Stochastic %K and %D, BB Basis, ATR, and Trend Status.
- **Trend Status Indicator:**
- Displays "Bullish," "Bearish," or "Sideways" based on MA conditions.
- **Integration:**
- Provides a consolidated view for quick decision-making without analyzing individual indicators separately.
7. **Periodic Labels:**
- **Enhanced Visibility:**
- Adds labels every 50 bars showing RSI and Stochastic values.
- **Integration:**
- Helps track momentum changes over time and spot longer-term patterns.
---
### **How the Components Work Together:**
- **Synergistic Analysis:**
- **Trend Confirmation:** MA crossovers establish the primary trend, while RSI and Stochastic confirm momentum within that trend.
- **Volatility Context:** Bollinger Bands and ATR provide context on market volatility, refining entry and exit points suggested by trend and momentum indicators.
- **Signal Strength:** Concurrent signals from multiple indicators increase confidence in trading decisions.
---
### **Usage Guidelines:**
1. **Trend Analysis:**
- **Identify Trend Direction:**
- Observe MA20 and MA50 crossovers.
- Refer to the Trend Status in the information table.
- **Confirm with Momentum Indicators:**
- Ensure RSI and Stochastic support the identified trend.
2. **Entry and Exit Points:**
- **Overbought/Oversold Conditions:**
- Look for RSI and Stochastic reaching extreme levels.
- Consider entering positions when oversold in a bullish trend or overbought in a bearish trend.
- **Bollinger Band Interactions:**
- Use price interactions with Bollinger Bands to identify potential reversal zones.
3. **Risk Management:**
- **ATR-Based Levels:**
- Set stop-loss and take-profit levels using ATR bands to account for current volatility.
- **Adjusting to Volatility:**
- Modify position sizes and targets based on Bollinger Band width and ATR values.
4. **Alerts Setup:**
- **Customize Alert Thresholds:**
- Configure alerts for MA crossovers, RSI levels, and Stochastic crossovers according to your trading strategy.
- **Stay Informed:**
- Use alerts to monitor key events without constant chart observation.
---
### **Customization:**
- **Flexible Parameters:**
- All indicator lengths, thresholds, and settings are adjustable to suit different trading styles and timeframes.
- **Adjustable Visuals:**
- Modify plot colors, line styles, and label positions to enhance chart readability.
---
### **Originality and Value Addition:**
This script differentiates itself by:
- **Integrated Approach:**
- Seamlessly combining multiple indicators to provide a more comprehensive analysis than using each indicator separately.
- **Enhanced Visualization:**
- Utilizing plots, fills, labels, and an information table to present data intuitively.
- **User-Friendly Features:**
- Pre-configured alerts and real-time data displays reduce the need for manual monitoring.
By explaining how each component interacts and contributes to the overall analysis, the script adds substantial value to traders seeking a multi-faceted tool for market analysis.
---
### **Additional Notes:**
- **Learning Resource:**
- The script is well-commented, serving as an educational tool for those learning Pine Script and technical analysis integration.
- **Further Enhancements:**
- Opportunities exist to incorporate additional indicators like MACD or ADX, and to develop advanced alert logic, such as RSI or Stochastic divergences.
---
### **Disclaimer:**
- **Educational Purpose Only:**
- This script is provided for informational purposes and should not be construed as financial advice.
- **Risk Acknowledgment:**
- Trading involves significant risk; past performance is not indicative of future results.
- **Due Diligence:**
- Users should conduct their own analysis and consider consulting a financial professional before making trading decisions.
---
By providing detailed explanations of the methodologies and the synergistic use of multiple indicators, this script aligns with TradingView's guidelines for originality and usefulness. It offers traders a unique tool that enhances market analysis through the thoughtful integration of technical indicators.
Kubricks Super Colliding Indicator v2The Kubricks Super Colliding Indicator v2 is a comprehensive technical analysis tool designed for TradingView. It combines multiple indicators and conditions to help traders identify potential buy/sell signals and trend directions. The script is highly customizable, allowing users to toggle specific features on/off and adjust parameters to suit their trading style.
Key Features
Moving Averages:
Plots SMAs (Simple Moving Averages) and EMAs (Exponential Moving Averages) with customizable periods and colors.
Includes Golden Cross (bullish) and Death Cross (bearish) conditions based on SMA and EMA crossovers.
RSI (Relative Strength Index):
Identifies overbought and oversold conditions using customizable RSI levels.
Displays visual alerts (plotshapes) for overbought/oversold conditions.
MACD (Moving Average Convergence Divergence):
Detects bullish and bearish crossovers of the MACD line and signal line.
Displays visual alerts for MACD crossovers.
Customizable Alerts:
Alerts for Golden Cross, Death Cross, RSI overbought/oversold, MACD crossovers, and close above SMA.
Toggleable Indicators:
Allows users to enable/disable specific features (e.g., RSI, MACD, SMA cross signals) for a cleaner chart.
Visual Enhancements:
Highlights Golden Cross and Death Cross conditions with background colors.
Uses plotshapes to mark key signals (e.g., overbought/oversold, MACD crossovers, close above SMA).
How It Helps Traders
Trend Identification: The combination of SMAs and EMAs helps identify long-term and short-term trends.
Momentum Confirmation: RSI and MACD provide additional confirmation of momentum and potential reversals.
Customizability: Traders can tailor the script to their preferences, focusing on the indicators and conditions most relevant to their strategy.
Visual Alerts: Clear visual cues and alerts make it easier to spot trading opportunities in real-time.
Ideal For
Swing Traders: Identifying trend reversals and momentum shifts.
Position Traders: Confirming long-term trends with Golden/Death Crosses.
Day Traders: Using RSI and MACD for short-term entry/exit signals.
This script is a powerful, all-in-one tool for traders looking to combine multiple technical indicators into a single, easy-to-use interface. Let me know if you need further assistance!
Geo. Geo.
This library provides a comprehensive set of geometric functions based on 2 simple types for point and line manipulation, point array calculations, some vector operations (Borrowed from @ricardosantos ), angle calculations, and basic polygon analysis. It offers tools for creating, transforming, and analyzing geometric shapes and their relationships.
View the source code for detailed documentation on each function and type.
═════════════════════════════════════════════════════════════════════════
█ OVERVIEW
This library enhances TradingView's Pine Script with robust geometric capabilities. It introduces the Point and Line types, along with a suite of functions for various geometric operations. These functionalities empower you to perform advanced calculations, manipulations, and analyses involving points, lines, vectors, angles, and polygons directly within your Pine scripts. The example is at the bottom of the script. ( Commented out )
█ CONCEPTS
This library revolves around two fundamental types:
• Point: Represents a point in 2D space with x and y coordinates, along with optional 'a' (angle) and 'v' (value) fields for versatile use. Crucially, for plotting, utilize the `.to_chart_point()` method to convert Points into plottable chart.point objects.
• Line: Defined by a starting Point and a slope , enabling calculations like getting y for a given x, or finding intersection points.
█ FEATURES
• Point Manipulation: Perform operations like addition, subtraction, scaling, rotation, normalization, calculating distances, dot products, cross products, midpoints, and more with Point objects.
• Line Operations: Create lines, determine their slope, calculate y from x (and vice versa), and find the intersection points of two lines.
• Vector Operations: Perform vector addition, subtraction, multiplication, division, negation, perpendicular vector calculation, floor, fractional part, sine, absolute value, modulus, sign, round, scaling, rescaling, rotation, and ceiling operations.
• Angle Calculations: Compute angles between points in degrees or radians, including signed, unsigned, and 360-degree angles.
• Polygon Analysis: Calculate the area, perimeter, and centroid of polygons. Check if a point is inside a given polygon and determine the convex hull perimeter.
• Chart Plotting: Conveniently convert Point objects to chart.point objects for plotting lines and points on the chart. The library also includes functions for plotting lines between individual and series of points.
• Utility Functions: Includes helper functions such as square root, square, cosine, sine, tangent, arc cosine, arc sine, arc tangent, atan2, absolute distance, golden ratio tolerance check, fractional part, and safe index/check for chart plotting boundaries.
█ HOW TO USE
1 — Include the library in your script using:
import kaigouthro/geo/1
2 — Create Point and Line objects:
p1 = geo.Point(bar_index, close)
p2 = geo.Point(bar_index , open)
myLine = geo.Line(p1, geo.slope(p1, p2))
// maybe use that line to detect a crossing for an alert ... hmmm
3 — Utilize the provided functions:
distance = geo.distance(p1, p2)
intersection = geo.intersection(line1, line2)
4 — For plotting labels, lines, convert Point to chart.point :
label.new(p1.to_chart_point(), " Hi ")
line.new(p1.to_chart_point(),p2.to_chart_point())
█ NOTES
This description provides a concise overview. Consult the library's source code for in-depth documentation, including detailed descriptions, parameter types, and return values for each function and method. The source code is structured with comprehensive comments using the `//@` format for seamless integration with TradingView's auto-documentation features.
█ Possibilities..
Library "geo"
This library provides a comprehensive set of geometric functions and types, including point and line manipulation, vector operations, angle calculations, and polygon analysis. It offers tools for creating, transforming, and analyzing geometric shapes and their relationships.
sqrt(value)
Square root function
Parameters:
value (float) : (float) - The number to take the square root of
Returns: (float) - The square root of the input value
sqr(x)
Square function
Parameters:
x (float) : (float) - The number to square
Returns: (float) - The square of the input value
cos(v)
Cosine function
Parameters:
v (float) : (series float) - The value to find the cosine of
Returns: (series float) - The cosine of the input value
sin(v)
Sine function
Parameters:
v (float) : (series float) - The value to find the sine of
Returns: (series float) - The sine of the input value
tan(v)
Tangent function
Parameters:
v (float) : (series float) - The value to find the tangent of
Returns: (series float) - The tangent of the input value
acos(v)
Arc cosine function
Parameters:
v (float) : (series float) - The value to find the arc cosine of
Returns: (series float) - The arc cosine of the input value
asin(v)
Arc sine function
Parameters:
v (float) : (series float) - The value to find the arc sine of
Returns: (series float) - The arc sine of the input value
atan(v)
Arc tangent function
Parameters:
v (float) : (series float) - The value to find the arc tangent of
Returns: (series float) - The arc tangent of the input value
atan2(dy, dx)
atan2 function
Parameters:
dy (float) : (float) - The y-coordinate
dx (float) : (float) - The x-coordinate
Returns: (float) - The angle in radians
gap(_value1, __value2)
Absolute distance between any two float values
Parameters:
_value1 (float) : First value
__value2 (float)
Returns: Absolute Positive Distance
phi_tol(a, b, tolerance)
Check if the ratio is within the tolerance of the golden ratio
Parameters:
a (float) : (float) The first number
b (float) : (float) The second number
tolerance (float) : (float) The tolerance percennt as 1 = 1 percent
Returns: (bool) True if the ratio is within the tolerance, false otherwise
frac(x)
frad Fractional
Parameters:
x (float) : (float) - The number to convert to fractional
Returns: (float) - The number converted to fractional
safeindex(x, limit)
limiting int to hold the value within the chart range
Parameters:
x (float) : (float) - The number to limit
limit (int)
Returns: (int) - The number limited to the chart range
safecheck(x, limit)
limiting int check if within the chartplottable range
Parameters:
x (float) : (float) - The number to limit
limit (int)
Returns: (int) - The number limited to the chart range
interpolate(a, b, t)
interpolate between two values
Parameters:
a (float) : (float) - The first value
b (float) : (float) - The second value
t (float) : (float) - The interpolation factor (0 to 1)
Returns: (float) - The interpolated value
gcd(_numerator, _denominator)
Greatest common divisor of two integers
Parameters:
_numerator (int)
_denominator (int)
Returns: (int) The greatest common divisor
method set_x(self, value)
Set the x value of the point, and pass point for chaining
Namespace types: Point
Parameters:
self (Point) : (Point) The point to modify
value (float) : (float) The new x-coordinate
method set_y(self, value)
Set the y value of the point, and pass point for chaining
Namespace types: Point
Parameters:
self (Point) : (Point) The point to modify
value (float) : (float) The new y-coordinate
method get_x(self)
Get the x value of the point
Namespace types: Point
Parameters:
self (Point) : (Point) The point to get the x-coordinate from
Returns: (float) The x-coordinate
method get_y(self)
Get the y value of the point
Namespace types: Point
Parameters:
self (Point) : (Point) The point to get the y-coordinate from
Returns: (float) The y-coordinate
method vmin(self)
Lowest element of the point
Namespace types: Point
Parameters:
self (Point) : (Point) The point
Returns: (float) The lowest value between x and y
method vmax(self)
Highest element of the point
Namespace types: Point
Parameters:
self (Point) : (Point) The point
Returns: (float) The highest value between x and y
method add(p1, p2)
Addition
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (Point) - the add of the two points
method sub(p1, p2)
Subtraction
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (Point) - the sub of the two points
method mul(p, scalar)
Multiplication by scalar
Namespace types: Point
Parameters:
p (Point) : (Point) - The point
scalar (float) : (float) - The scalar to multiply by
Returns: (Point) - the multiplied point of the point and the scalar
method div(p, scalar)
Division by scalar
Namespace types: Point
Parameters:
p (Point) : (Point) - The point
scalar (float) : (float) - The scalar to divide by
Returns: (Point) - the divided point of the point and the scalar
method rotate(p, angle)
Rotate a point around the origin by an angle (in degrees)
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to rotate
angle (float) : (float) - The angle to rotate by in degrees
Returns: (Point) - the rotated point
method length(p)
Length of the vector from origin to the point
Namespace types: Point
Parameters:
p (Point) : (Point) - The point
Returns: (float) - the length of the point
method length_squared(p)
Length squared of the vector
Namespace types: Point
Parameters:
p (Point) : (Point) The point
Returns: (float) The squared length of the point
method normalize(p)
Normalize the point to a unit vector
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to normalize
Returns: (Point) - the normalized point
method dot(p1, p2)
Dot product
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (float) - the dot of the two points
method cross(p1, p2)
Cross product result (in 2D, this is a scalar)
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (float) - the cross of the two points
method distance(p1, p2)
Distance between two points
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (float) - the distance of the two points
method Point(x, y, a, v)
Point Create Convenience
Namespace types: series float, simple float, input float, const float
Parameters:
x (float)
y (float)
a (float)
v (float)
Returns: (Point) new point
method angle(p1, p2)
Angle between two points in degrees
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (float) - the angle of the first point and the second point
method angle_between(p, pivot, other)
Angle between two points in degrees from a pivot point
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to calculate the angle from
pivot (Point) : (Point) - The pivot point
other (Point) : (Point) - The other point
Returns: (float) - the angle between the two points
method translate(p, from_origin, to_origin)
Translate a point from one origin to another
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to translate
from_origin (Point) : (Point) - The origin to translate from
to_origin (Point) : (Point) - The origin to translate to
Returns: (Point) - the translated point
method midpoint(p1, p2)
Midpoint of two points
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (Point) - The midpoint of the two points
method rotate_around(p, angle, pivot)
Rotate a point around a pivot point by an angle (in degrees)
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to rotate
angle (float) : (float) - The angle to rotate by in degrees
pivot (Point) : (Point) - The pivot point to rotate around
Returns: (Point) - the rotated point
method multiply(_a, _b)
Multiply vector _a with _b
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (Point) The result of the multiplication
method divide(_a, _b)
Divide vector _a by _b
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (Point) The result of the division
method negate(_a)
Negative of vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to negate
Returns: (Point) The negated point
method perp(_a)
Perpendicular Vector of _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The perpendicular point
method vfloor(_a)
Compute the floor of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The floor of the point
method fractional(_a)
Compute the fractional part of the elements from vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The fractional part of the point
method vsin(_a)
Compute the sine of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The sine of the point
lcm(a, b)
Least common multiple of two integers
Parameters:
a (int) : (int) The first integer
b (int) : (int) The second integer
Returns: (int) The least common multiple
method vabs(_a)
Compute the absolute of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The absolute of the point
method vmod(_a, _b)
Compute the mod of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
_b (float) : (float) The mod
Returns: (Point) The mod of the point
method vsign(_a)
Compute the sign of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The sign of the point
method vround(_a)
Compute the round of argument vector _a
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (Point) The round of the point
method normalize_y(p, height)
normalizes the y value of a point to an input height
Namespace types: Point
Parameters:
p (Point) : (Point) - The point to normalize
height (float) : (float) - The height to normalize to
Returns: (Point) - the normalized point
centroid(points)
Calculate the centroid of multiple points
Parameters:
points (array) : (array) The array of points
Returns: (Point) The centroid point
random_point(_height, _width, _origin, _centered)
Random Point in a given height and width
Parameters:
_height (float) : (float) The height of the area to generate the point in
_width (float) : (float) The width of the area to generate the point in
_origin (Point) : (Point) The origin of the area to generate the point in (default: na, will create a Point(0, 0))
_centered (bool) : (bool) Center the origin point in the area, otherwise, positive h/w (default: false)
Returns: (Point) The random point in the given area
random_point_array(_origin, _height, _width, _centered, _count)
Random Point Array in a given height and width
Parameters:
_origin (Point) : (Point) The origin of the area to generate the array (default: na, will create a Point(0, 0))
_height (float) : (float) The height of the area to generate the array
_width (float) : (float) The width of the area to generate the array
_centered (bool) : (bool) Center the origin point in the area, otherwise, positive h/w (default: false)
_count (int) : (int) The number of points to generate (default: 50)
Returns: (array) The random point array in the given area
method sort_points(points, by_x)
Sorts an array of points by x or y coordinate
Namespace types: array
Parameters:
points (array) : (array) The array of points to sort
by_x (bool) : (bool) Whether to sort by x-coordinate (true) or y-coordinate (false)
Returns: (array) The sorted array of points
method equals(_a, _b)
Compares two points for equality
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (bool) True if the points are equal, false otherwise
method max(origin, _a, _b)
Maximum of two points from origin, using dot product
Namespace types: Point
Parameters:
origin (Point)
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (Point) The maximum point
method min(origin, _a, _b)
Minimum of two points from origin, using dot product
Namespace types: Point
Parameters:
origin (Point)
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (Point) The minimum point
method avg_x(points)
Average x of point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The average x-coordinate
method avg_y(points)
Average y of point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The average y-coordinate
method range_x(points)
Range of x values in point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The range of x-coordinates
method range_y(points)
Range of y values in point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The range of y-coordinates
method max_x(points)
max of x values in point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The max of x-coordinates
method min_y(points)
min of x values in point array
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (float) The min of x-coordinates
method scale(_a, _scalar)
Scale a point by a scalar
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to scale
_scalar (float) : (float) The scalar value
Returns: (Point) The scaled point
method rescale(_a, _length)
Rescale a point to a new magnitude
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to rescale
_length (float) : (float) The new magnitude
Returns: (Point) The rescaled point
method rotate_rad(_a, _radians)
Rotate a point by an angle in radians
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to rotate
_radians (float) : (float) The angle in radians
Returns: (Point) The rotated point
method rotate_degree(_a, _degree)
Rotate a point by an angle in degrees
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to rotate
_degree (float) : (float) The angle in degrees
Returns: (Point) The rotated point
method vceil(_a, _digits)
Ceil a point to a certain number of digits
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to ceil
_digits (int) : (int) The number of digits to ceil to
Returns: (Point) The ceiled point
method vpow(_a, _exponent)
Raise both point elements to a power
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
_exponent (float) : (float) The exponent
Returns: (Point) The point with elements raised to the power
method perpendicular_distance(_a, _b, _c)
Distance from point _a to line between _b and _c
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
_b (Point) : (Point) The start point of the line
_c (Point) : (Point) The end point of the line
Returns: (float) The perpendicular distance
method project(_a, _axis)
Project a point onto another
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to project
_axis (Point) : (Point) The point to project onto
Returns: (Point) The projected point
method projectN(_a, _axis)
Project a point onto a point of unit length
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to project
_axis (Point) : (Point) The unit length point to project onto
Returns: (Point) The projected point
method reflect(_a, _axis)
Reflect a point on another
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to reflect
_axis (Point) : (Point) The point to reflect on
Returns: (Point) The reflected point
method reflectN(_a, _axis)
Reflect a point to an arbitrary axis
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to reflect
_axis (Point) : (Point) The axis to reflect to
Returns: (Point) The reflected point
method angle_rad(_a)
Angle in radians of a point
Namespace types: Point
Parameters:
_a (Point) : (Point) The point
Returns: (float) The angle in radians
method angle_unsigned(_a, _b)
Unsigned degree angle between 0 and +180 by given two points
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (float) The unsigned angle in degrees
method angle_signed(_a, _b)
Signed degree angle between -180 and +180 by given two points
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (float) The signed angle in degrees
method angle_360(_a, _b)
Degree angle between 0 and 360 by given two points
Namespace types: Point
Parameters:
_a (Point) : (Point) The first point
_b (Point) : (Point) The second point
Returns: (float) The angle in degrees (0-360)
method clamp(_a, _vmin, _vmax)
Restricts a point between a min and max value
Namespace types: Point
Parameters:
_a (Point) : (Point) The point to restrict
_vmin (Point) : (Point) The minimum point
_vmax (Point) : (Point) The maximum point
Returns: (Point) The restricted point
method lerp(_a, _b, _rate_of_move)
Linearly interpolates between points a and b by _rate_of_move
Namespace types: Point
Parameters:
_a (Point) : (Point) The starting point
_b (Point) : (Point) The ending point
_rate_of_move (float) : (float) The rate of movement (0-1)
Returns: (Point) The interpolated point
method slope(p1, p2)
Slope of a line between two points
Namespace types: Point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
Returns: (float) - The slope of the line
method gety(self, x)
Get y-coordinate of a point on the line given its x-coordinate
Namespace types: Line
Parameters:
self (Line) : (Line) - The line
x (float) : (float) - The x-coordinate
Returns: (float) - The y-coordinate
method getx(self, y)
Get x-coordinate of a point on the line given its y-coordinate
Namespace types: Line
Parameters:
self (Line) : (Line) - The line
y (float) : (float) - The y-coordinate
Returns: (float) - The x-coordinate
method intersection(self, other)
Intersection point of two lines
Namespace types: Line
Parameters:
self (Line) : (Line) - The first line
other (Line) : (Line) - The second line
Returns: (Point) - The intersection point
method calculate_arc_point(self, b, p3)
Calculate a point on the arc defined by three points
Namespace types: Point
Parameters:
self (Point) : (Point) The starting point of the arc
b (Point) : (Point) The middle point of the arc
p3 (Point) : (Point) The end point of the arc
Returns: (Point) A point on the arc
approximate_center(point1, point2, point3)
Approximate the center of a spiral using three points
Parameters:
point1 (Point) : (Point) The first point
point2 (Point) : (Point) The second point
point3 (Point) : (Point) The third point
Returns: (Point) The approximate center point
createEdge(center, radius, angle)
Get coordinate from center by radius and angle
Parameters:
center (Point) : (Point) - The center point
radius (float) : (float) - The radius of the circle
angle (float) : (float) - The angle in degrees
Returns: (Point) - The coordinate on the circle
getGrowthFactor(p1, p2, p3)
Get growth factor of spiral point
Parameters:
p1 (Point) : (Point) - The first point
p2 (Point) : (Point) - The second point
p3 (Point) : (Point) - The third point
Returns: (float) - The growth factor
method to_chart_point(point)
Convert Point to chart.point using chart.point.from_index(safeindex(point.x), point.y)
Namespace types: Point
Parameters:
point (Point) : (Point) - The point to convert
Returns: (chart.point) - The chart.point representation of the input point
method plotline(p1, p2, col, width)
Draw a line from p1 to p2
Namespace types: Point
Parameters:
p1 (Point) : (Point) First point
p2 (Point) : (Point) Second point
col (color)
width (int)
Returns: (line) Line object
method drawlines(points, col, ignore_boundary)
Draw lines between points in an array
Namespace types: array
Parameters:
points (array) : (array) The array of points
col (color) : (color) The color of the lines
ignore_boundary (bool) : (bool) The color of the lines
method to_chart_points(points)
Draw an array of points as chart points on the chart with line.new(chartpoint1, chartpoint2, color=linecolor)
Namespace types: array
Parameters:
points (array) : (array) - The points to draw
Returns: (array) The array of chart points
polygon_area(points)
Calculate the area of a polygon defined by an array of points
Parameters:
points (array) : (array) The array of points representing the polygon vertices
Returns: (float) The area of the polygon
polygon_perimeter(points)
Calculate the perimeter of a polygon
Parameters:
points (array) : (array) Array of points defining the polygon
Returns: (float) Perimeter of the polygon
is_point_in_polygon(point, _polygon)
Check if a point is inside a polygon
Parameters:
point (Point) : (Point) The point to check
_polygon (array)
Returns: (bool) True if the point is inside the polygon, false otherwise
method perimeter(points)
Calculates the convex hull perimeter of a set of points
Namespace types: array
Parameters:
points (array) : (array) The array of points
Returns: (array) The array of points forming the convex hull perimeter
Point
A Point, can be used for vector, floating calcs, etc. Use the cp method for plots
Fields:
x (series float) : (float) The x-coordinate
y (series float) : (float) The y-coordinate
a (series float) : (float) An Angle storage spot
v (series float) : (float) A Value
Line
Line
Fields:
point (Point) : (Point) The starting point of the line
slope (series float) : (float) The slope of the line
GOMTRY.
XAUMOvisionXAUMOvision: T he XAU/USD Composite Correlation Indicator with Weighted Spillover & Dynamic Lines
XAUMOvision is a custom-built trading indicator designed to track the intricate relationship between XAU/USD (Gold) and key economic factors: DXY (US Dollar Index), US Treasury Yields, S&P 500, and Crude Oil. By blending correlation metrics with weighted spillover effects, XAUMOvision offers actionable insights to refine your Gold trading strategy.
Core Features of XAUMOvision
1. Correlation (CC)
Definition: Measures how closely two assets move together over a given period.
Calculation: Pearson Correlation is used to assess Gold's relationship with:
DXY: Negative correlation—when DXY rises, Gold typically falls.
US Treasury Yields: Negative correlation—higher yields reduce Gold’s appeal.
S&P 500: Opposite movement, as Gold acts as a safe-haven.
Crude Oil: Positive correlation—both often rise during inflationary pressures.
2. Weighted Spillover
What It Does: Quantifies how movements in each asset (DXY, Yields, etc.) influence Gold.
Weighting: User-defined values (e.g., DXY weight = 0.4) scale each factor’s impact.
Result: A total spillover score reveals bullish or bearish sentiment for XAU/USD.
3. Composite Bias Line
Purpose: Consolidates spillover impacts into a single sentiment indicator.
Readings:
Strong Bullish: Composite Bias > 0.5.
Neutral: Close to 0.
Strong Bearish: Composite Bias < -0.5.
Output: A directional bias to guide your trading decisions.
4. Traffic Signal Line
Visual Cues:
Green: Strong Bullish Signal.
Red: Strong Bearish Signal.
Gray: Neutral—avoid trading.
Utility: A quick, color-coded overview of market conditions.
Using XAUMOvision Effectively
When to Use
During high volatility or major news events (e.g., CPI, interest rate decisions).
To understand macroeconomic forces driving Gold’s price action.
Recommended Timeframes
4-Hour: Ideal for swing traders seeking medium-term setups.
Daily: Perfect for macro trend analysis.
Weekly: Suitable for long-term investors aligning with broader trends.
---------------------------------------------------------------------------------
Practical Example
Monday, January 13, 2025 (Neutral Market)
Market Behavior: Gold stagnated (-0.96%), with low volume (681.13K).
Indicator Insights:
Composite Spillover: -0.92 (mild bearish pressure).
Traffic Signal Line: Gray—stay out of the market.
Bias Line: Weak Bearish (-1), signaling no strong trend.
Result: XAUMOvision kept traders from entering a choppy, low-volume market.
Wednesday, January 15, 2025 (CPI-Driven Rally)
CPI Release: Core CPI softer than expected (0.2% vs. 0.3%), weakening the DXY and Yields. Gold surged.
Indicator Insights:
Composite Spillover: +0.57 (strong bullish sentiment).
Traffic Signal Line: Green—clear buy signal.
Bias Line: Strong Bullish (+2), confirming the trend.
Result: Traders aligned with institutional flows and profited from the CPI-driven rally.
--------------------------------------------------------------------------------
Why XAUMOvision Stands Out
Avoids Bad Trades: Neutral signals and low-volume days keep you sidelined during indecisive markets.
Pinpoints Big Moves: Green signals during high-impact events help you capitalize on major trends.
Volume Validation: Confirms institutional activity to distinguish real trends from fakeouts.
Conclusion: Trade Like a Pro
XAUMOvision blends macroeconomic analysis with real-time technical indicators, ensuring you stay ahead of market moves. Whether navigating neutral markets or CPI-driven surges, this tool provides clarity and confidence in your trading decisions. For swing traders and macro enthusiasts, XAUMOvision is the ultimate weapon in Gold trading.
Key Intraday Range Analysis - K.I.R.A. The KIRA Indicator is a unique tool designed to provide traders with actionable insights by identifying and analyzing key intraday price ranges. Built upon a specialized methodology, it uses Fibonacci-derived levels anchored to significant opening ranges to generate trading levels for the day. Unlike other indicators that focus on broader trend analysis, KIRA’s approach provides precision, simplicity, and adaptability for intraday traders.
How It Works
KIRA takes the first 30-second range of the European market open and calculates Fibonacci projections derived solely from the golden ratio. These projections form potential areas of interest, such as support and resistance levels, that guide traders in their decision-making process.
By visualizing these levels directly on the chart, KIRA simplifies intraday trading, helping traders identify key reaction zones with high clarity.
Key Features:
-Clean and Readable Output: Generates easily identifiable levels directly on a clear chart to reduce visual clutter.
-Dynamic and Adaptive: Works across various assets, including indices, forex, and commodities, while maintaining reliability on lower timeframes.
How to Use
1. Set Up: Ensure your chart timeframe is aligned with intraday trading, ideally 1-minute or 5-minute intervals.
2. Monitor Levels: Observe how price reacts to the projected levels generated from the opening range.
3. Strategize: Use these levels as potential entries, exits, or areas to tighten risk management, depending on price action.
Unlike conventional indicators that reuse public domain methodologies or classic technical analysis tools, KIRA is based on a nuanced approach to anchoring Fibonacci projections. Its uniqueness lies in its precise application of golden ratio derivatives, specifically tailored to intraday price movements.
The chart accompanying this script provides a clean visualization of the KIRA levels applied to a 1-minute chart of . All outputs are directly from the KIRA script to ensure clarity and ease of use.
Fibonacci Channel Standard Deviation levels based off 200MAThis script dynamically combines Fibonacci levels with the 200-period simple moving average (SMA), offering a powerful tool for identifying high-probability support and resistance zones. By adjusting to the changing 200 SMA, the script remains relevant across different market phases.
Key Features:
Dynamic Fibonacci Levels:
The script automatically calculates Fibonacci retracements and extensions relative to the 200 SMA.
These levels adapt to market trends, offering more relevant zones compared to static Fibonacci tools.
Support and Resistance Zones:
In uptrends, price often respects retracement levels above the 200 SMA (e.g., 38.2%, 50%, 61.8%).
In downtrends, price may interact with retracements and extensions below the 200 SMA (e.g., 23.6%, 1.618).
Customizable Confluence Zones:
Key levels such as the golden pocket (61.8%–65%) are highlighted as high-probability zones for reversals or continuations.
Extensions (e.g., 1.618) can serve as profit targets or bearish continuation points.
Practical Applications:
Identifying Reversal Zones:
Look for confluence between Fibonacci levels and the 200 SMA to identify potential reversal points.
Example: A pullback to the 61.8%–65% golden pocket near the 200 SMA often signals a bullish reversal.
Trend Confirmation:
In uptrends, price respecting Fibonacci retracements above the 200 SMA (e.g., 38.2%, 50%) confirms strength.
Use Fibonacci extensions (e.g., 1.618) as profit targets during strong trends.
Dynamic Risk Management:
Place stop-losses just below key Fibonacci retracement levels near the 200 SMA to minimize risk.
Bearish Scenarios:
Below the 200 SMA, Fibonacci retracements and extensions act as resistance levels and bearish targets.
How to Use:
Volume Confirmation: Watch for volume spikes near Fibonacci levels to confirm support or resistance.
Price Action: Combine with candlestick patterns (e.g., engulfing candles, pin bars) for precise entries.
Trend Indicators: Use in conjunction with shorter moving averages or RSI to confirm market direction.
Example Setup:
Scenario: Price retraces to the 61.8% Fibonacci level while holding above the 200 SMA.
Confirmation: Volume spikes, and a bullish engulfing candle forms.
Action: Enter long with a stop-loss just below the 200 SMA and target extensions like 1.618.
Key Takeaways:
The 200 SMA serves as a reliable long-term trend anchor.
Fibonacci retracements and extensions provide dynamic zones for trade entries, exits, and risk management.
Combining this tool with volume, price action, or other indicators enhances its effectiveness.
Economic RegimeThis indicator, "Economic Regime" , provides a comprehensive analysis of market conditions by combining multiple asset classes and financial metrics. It uses normalized scores and trend analysis to classify the current economic regime into one of four categories: Goldilocks, Reflation, Inflation, or Deflation. The classification is based on inputs like S&P 500 performance, bond yields, commodity prices, volatility indices, and sector ETFs. Additionally, it plots key financial spreads, including the yield spread (10Y-2Y) and credit spread (HYG-LQD), to offer deeper insights into liquidity and market sentiment. The background color dynamically reflects the identified economic regime, facilitating quick visual interpretation.
EMA Crossover Strategy with 50 & 200 EMAs - Faisal AnwarThis indicator uses 50 and 200-day Exponential Moving Averages (EMAs) to identify significant trend directions and potential trading opportunities through golden crossovers and death crosses. It highlights the role of EMAs as dynamic support in uptrends and downtrends, enhancing trend-following strategies.
Detailed Explanation:
EMAs Used:
The strategy utilizes two key EMAs — the 50-day EMA and the 200-day EMA. The 50-day EMA is often seen as a medium-term trend indicator, while the 200-day EMA is regarded as a benchmark for the long-term market trend.
Golden Crossover:
This occurs when the 50-day EMA crosses above the 200-day EMA, traditionally considered a bullish signal indicating potential long positions.
Death Cross:
This event is marked by the 50-day EMA crossing below the 200-day EMA, typically viewed as a bearish signal suggesting potential short positions.
Trend Support Identification:
The script also identifies when the price is above the 50-day EMA during an uptrend (indicating ongoing support) and when the price is above the 200-day EMA during a downtrend, suggesting the EMA is acting as resistance turning into support.
Visual Tools:
The indicator plots these EMAs on the chart with distinct colors for easy differentiation and uses background color changes to visually indicate when these EMAs act as support. Buy and sell signals are clearly marked with shapes and text directly on the chart for actionable insights.
Usage Tips:
Trading Decisions:
This indicator is best used in markets with clear trends, where EMAs can effectively identify shifts in momentum and serve as reliable support or resistance levels.
Complementary Tools:
Consider combining this EMA strategy with other technical analysis tools like RSI or MACD for confirmation of signals to enhance the reliability of the trading signals.
Ideal for:
Traders looking for a visual tool to assist in identifying trend directions and optimal points for entering or exiting trades based on established technical analysis principles.
Multi SMA EMA VWAP1. Moving Average Crossover
This is one of the most common strategies with moving averages, and it involves observing crossovers between EMAs and SMAs to determine buy or sell signals.
Buy signal: When a faster EMA (like a short-term EMA) crosses above a slower SMA, it can indicate a potential upward movement.
Sell signal: When a faster EMA crosses below a slower SMA, it can indicate a potential downward movement.
With 4 EMAs and 5 SMAs, you can set up crossovers between different combinations, such as:
EMA(9) crosses above SMA(50) → buy.
EMA(9) crosses below SMA(50) → sell.
2. Divergence Confirmation Between EMAs and SMAs
Divergence between the EMAs and SMAs can offer additional confirmation. If the EMAs are pointing in one direction and the SMAs are still in the opposite direction, it is a sign that the movement could be stronger and continue in the same direction.
Positive divergence: If the EMAs are making new highs while the SMAs are still below, it could be a sign that the market is in a strong trend.
Negative divergence: If the EMAs are making new lows and the SMAs are still above, you might consider that the market is in a downtrend or correction.
3. Using EMAs as Dynamic Support and Resistance
EMAs can act as dynamic support and resistance in strong trends. If the price approaches a faster EMA from above and doesn’t break it, it could be a good entry point for a long position (buy). If the price approaches a slower EMA from below and doesn't break it, it could be a good point to sell (short).
Buy: If the price is above all EMAs and approaches the fastest EMA (e.g., EMA(9)), it could be a good buy point if the price bounces upward.
Sell: If the price is below all EMAs and approaches the fastest EMA, it could be a good sell point if the price bounces downward.
4. Combining SMAs and EMAs to Filter Signals
SMAs can serve as a trend filter to avoid trading in sideways markets. For example:
Bullish trend condition: If the longer-term SMAs (such as SMA(100) or SMA(200)) are below the price, and the shorter EMAs are aligned upward, you can look for buy signals.
Bearish trend condition: If the longer-term SMAs are above the price and the shorter EMAs are aligned downward, you can look for sell signals.
5. Consolidation Zone Between EMAs and SMAs
When the price moves between EMAs and SMAs without a clear trend (consolidation zone), you can expect a breakout. In this case, you can use the EMAs and SMAs to identify the direction of the breakout:
If the price is in a narrow range between the EMAs and SMAs and then breaks above the fastest EMA, it’s a sign that an upward trend may begin.
If the price breaks below the fastest EMA, it could indicate a potential downward trend.
6. "Golden Cross" and "Death Cross" Strategy
These are classic strategies based on crossovers between moving averages of different periods.
Golden Cross: Occurs when a faster EMA (e.g., EMA(50)) crosses above a slower SMA (e.g., SMA(200)), which suggests a potential bullish trend.
Death Cross: Occurs when a faster EMA crosses below a slower SMA, which suggests a potential bearish trend.
Additional Recommendations:
Combining with other indicators: You can combine EMA and SMA signals with other indicators like the RSI (Relative Strength Index) or MACD (Moving Average Convergence/Divergence) for confirmation and to avoid false signals.
Risk management: Always use stop-loss and take-profit orders to protect your capital. Moving averages are trend-following indicators but don’t guarantee that the price will move in the same direction.
Timeframe analysis: It’s recommended to use different timeframes to confirm the trend (e.g., use EMAs on hourly charts along with SMAs on daily charts).
VWAP
1. VWAP + EMAs for Trend Confirmation
VWAP can act as a trend filter, confirming the direction provided by the EMAs.
Buy Signal: If the price is above the VWAP and the EMAs are aligned in an uptrend (e.g., short-term EMAs are above longer-term EMAs), this indicates that the trend is bullish and you can look for buy opportunities.
Sell Signal: If the price is below the VWAP and the EMAs are aligned in a downtrend (e.g., short-term EMAs are below longer-term EMAs), this suggests a bearish trend and you can look for sell opportunities.
In this case, VWAP is used to confirm the overall trend. For example:
Bullish: Price above VWAP, EMAs aligned to the upside (e.g., EMA(9) > EMA(50) > EMA(200)), buy.
Bearish: Price below VWAP, EMAs aligned to the downside (e.g., EMA(9) < EMA(50) < EMA(200)), sell.
2. VWAP as Dynamic Support and Resistance
VWAP can act as a dynamic support or resistance level during the day. Combining this with EMAs and SMAs helps you refine your entry and exit points.
Support: If the price is above VWAP and starts pulling back to VWAP, it could act as support. If the price bounces off the VWAP and aligns with bullish EMAs (e.g., EMA(9) crossing above EMA(50)), you can consider entering a buy position.
Resistance: If the price is below VWAP and approaches VWAP from below, it can act as resistance. If the price fails to break through VWAP and aligns with bearish EMAs (e.g., EMA(9) crossing below EMA(50)), it could be a good signal for a sell.
AuriumFlowAURIUM (GOLD-Weighted Average with Fractal Dynamics)
Aurium is a cutting-edge indicator that blends volume-weighted moving averages (VWMA), fractal geometry, and Fibonacci-inspired calculations to deliver a precise and holistic view of market trends. By dynamically adjusting to price and volume, Aurium uncovers key levels of confluence for trend reversals and continuations, making it a powerful tool for traders.
Key Features:
Dynamic Trendline (GOLD):
The central trendline is a weighted moving average based on price and volume, tuned using Fibonacci-based fast (34) and slow (144) exponential moving average lengths. This ensures the trendline adapts seamlessly to the flow of market dynamics.
Formula:
GOLD = VWMA(34) * Volume Factor + VWMA(144) * (1 - Volume Factor)
Fractal Highs and Lows:
Detects pivotal market points using a fractal lookback period (default 5, odd-numbered). Fractals identify local highs and lows over a defined window, capturing the structure of market cycles.
Trend Background Highlighting:
Bullish Zone: Price above the GOLD line with a green background.
Bearish Zone: Price below the GOLD line with a red background.
Buy and Sell Alerts:
Generates actionable signals when fractals align with GOLD. Bullish fractals confirm continuation or reversal in an uptrend, while bearish fractals validate a downtrend.
The Math Behind Aurium:
Volume-Weighted Adjustments:
By integrating volume into the calculation, Aurium dynamically emphasizes price levels with greater participation, giving traders insight into zones of institutional interest.
Formula:
VWMA = EMA(Close * Volume) / EMA(Volume)
Fractal Calculations:
Fractals are identified as local maxima (highs) or minima (lows) based on the surrounding bars, leveraging the natural symmetry in price behavior.
Fibonacci Relationships:
The 34 and 144 EMA lengths are Fibonacci numbers, offering a natural alignment with price cycles and market rhythms.
Ideal For:
Traders seeking a precise and intuitive indicator for aligning with trends and detecting reversals.
Strategies inspired by Bill Williams, with added volume and fractal-based insights.
Short-term scalpers and long-term trend-followers alike.
Unlock deeper market insights and trade with precision using Aurium!
Combined Zero Lag EMA with Crosses | ASHGCombined Zero Lag EMA with Crosses
This indicator combines the power of Zero Lag Exponential Moving Averages (EMAs) with the widely used Golden Cross and Death Cross signals. It provides an efficient and precise trend-following tool for traders.
Key Features:
Short and Long Zero Lag EMAs: The indicator uses two Zero Lag EMAs with customizable periods (Short and Long). The short EMA is typically more responsive to price changes, while the long EMA smooths out price data, providing a broader trend perspective.
Golden Cross and Death Cross signals: The Golden Cross occurs when the short EMA crosses above the long EMA, indicating a potential bullish trend. The Death Cross occurs when the short EMA crosses below the long EMA, signaling a possible bearish trend.
Combined Zero Lag EMA: The average of the Short and Long Zero Lag EMAs gives a balanced view of the market's overall direction.
Plotting and Alerts: The indicator plots both the short and long Zero Lag EMAs, as well as the combined EMA, with visual cues for Golden and Death Crosses. Alerts can be set for when these crosses occur.
Use this indicator for clearer entry and exit points, helping you stay ahead of market movements.
This indicator is based on Kıvanç ÖZBİLGİÇ's "Zero Lag EMA v2" indicator.
tr.tradingview.com
Birleştirilmiş Zero Lag EMA ve Cross (Kesişim) Sinyalleri
Bu gösterge, Zero Lag (Sıfır Gecikmeli) Üssel Hareketli Ortalamaların (EMA) gücünü, yaygın olarak kullanılan Golden Cross (Altın Kesişim) ve Death Cross (Ölüm Kesişimi) sinyalleriyle birleştirir. Yatırımcılar için verimli ve hassas bir trend takip aracıdır.
Öne Çıkan Özellikler:
Kısa ve Uzun Zero Lag EMA: Gösterge, özelleştirilebilir periyotlarla iki Zero Lag EMA kullanır (Kısa ve Uzun). Kısa EMA, fiyat değişimlerine daha hızlı tepki verirken, uzun EMA fiyat verilerini düzleştirerek daha geniş bir trend perspektifi sunar.
Golden Cross ve Death Cross sinyalleri: Golden Cross, kısa EMA'nın uzun EMA'yı yukarı doğru kesmesiyle oluşur ve potansiyel bir yükseliş trendine işaret eder. Death Cross ise, kısa EMA'nın uzun EMA'yı aşağı doğru kesmesiyle oluşur ve düşüş trendi sinyali verir.
Birleştirilmiş Zero Lag EMA: Kısa ve uzun Zero Lag EMA'larının ortalaması, piyasanın genel yönünü dengeli bir şekilde gösterir.
Grafik ve Uyarılar: Gösterge, kısa ve uzun Zero Lag EMA'ları ile birleştirilmiş EMA'yı çizerek Golden Cross ve Death Cross sinyalleri için görsel uyarılar sağlar. Bu kesişimler gerçekleştiğinde alarm kurabilirsiniz.
Bu göstergeleri kullanarak, piyasa hareketlerinden önce net giriş ve çıkış noktaları belirleyebilir, böylece daha bilinçli kararlar alabilirsiniz.
Bu indikatör Kıvanç ÖZBİLGİÇ'in "Zero Lag EMA v2" indikatörünü temel alarak hazırlanmıştır.
tr.tradingview.com
Fibonacci Snap Tool [TradersPro]
OVERVIEW
The Fibonacci Snap tool automatically snaps to the swing high and swing low of the price data shown on the chart display. Fibonacci retracement levels can be used for entry, exit, or as a confirmation of trend continuation.
If the swing high on the chart comes before the swing low, the price is in a downtrend.If the swing high comes after the swing low, the price is in an uptrend.
We call the 23.60% Fibonacci level the momentum zone of the trend. Price in a solid trend, either up or down, will typically hold the 23.60% Fibonacci level as support (demand) in an uptrend or resistance (supply) in a downtrend.
Deeper Fibonacci levels of 38.20%, 50.00%, and 61.80% are corrective supply/demand zones. As price moves against the found trend, it can move into this range block we call the corrective zone.
Fibonacci retracement levels are used to identify potential supply/demand areas where price could reverse or consolidate. These levels are based on key ratios derived from the Fibonacci sequence, and we only use the core 23.60%, 38.20%, 50.00%, and 61.80% ratios.
CONCEPTS
Price action moves in trend cycles, these retracement levels help traders measure proportional relationships between the high/low swings in the price trend.
When a price trend is moving against the trend, traders can find opportunities to trade with the current trend at key Fibonacci levels. Fibonacci levels can be used to anticipate where price might find supply/demand imbalance and continue moving in the trend direction.
Traders apply the indicator by selecting a window of price they want to analyze in the chart display, and the Fibonacci Snap tool will snap to the high and low of the visible price display.
The Intent and Use of This Tool
The 23.60% level acts as a momentum or continuation of trend. The 38.20% to 61.80% range are corrective zones of the trend.
The 61.80% level, also known as the golden ratio (Google the term “Golden Ratio”; it's fun), can often represent the location of supply/demand imbalance.
In an uptrend, it can represent the area of no more selling supply, and the balance can shift to buying demand. In a downtrend, it can represent the area of no more buying demand and the balance can shift to selling supply.
When used with the Momentum Zones indicator, these two tools create a powerful combination for traders to find, implement, and manage trades.
Math Art with Fibonacci, Trigonometry, and Constants-AYNETScientific Explanation of the Code
This Pine Script code is a dynamic visual representation that combines mathematical constants, trigonometric functions, and Fibonacci sequences to generate geometrical patterns on a TradingView chart. The code leverages Pine Script’s drawing functions (line.new) and real-time bar data to create evolving shapes. Below is a detailed scientific explanation of its components:
1. Inputs and User-Defined Parameters
num_points: Specifies the number of points used to generate the geometrical pattern. Higher values result in more complex and smoother shapes.
scale: A scaling factor to adjust the size of the shape.
rotation: A dynamic rotation factor that evolves the shape over time based on the bar index (bar_index).
shape_color: Defines the color of the drawn shapes.
2. Mathematical Constants
The script employs essential mathematical constants:
Phi (ϕ): Known as the golden ratio
(
1
+
5
)
/
2
(1+
5
)/2, which governs proportions in Fibonacci spirals and natural growth patterns.
Pi (π): Represents the ratio of a circle's circumference to its diameter, crucial for trigonometric calculations.
Euler’s Number (e): The base of natural logarithms, incorporated in exponential growth modeling.
3. Geometric and Trigonometric Calculations
Fibonacci-Based Radius: The radius for each point is determined using a Fibonacci-inspired formula:
𝑟
=
scale
×
𝜙
⋅
𝑖
num_points
r=scale×
num_points
ϕ⋅i
Here,
𝑖
i is the point index. This ensures the shape grows proportionally based on the golden ratio.
Angle Calculation: The angular position of each point is calculated as:
𝜃
=
𝑖
⋅
Δ
𝜃
+
rotation
⋅
bar_index
100
θ=i⋅Δθ+rotation⋅
100
bar_index
where
Δ
𝜃
=
2
𝜋
num_points
Δθ=
num_points
2π
. This generates evenly spaced points along a circle, with dynamic rotation.
Coordinates: Cartesian coordinates
(
𝑥
,
𝑦
)
(x,y) for each point are derived using:
𝑥
=
𝑟
⋅
cos
(
𝜃
)
,
𝑦
=
𝑟
⋅
sin
(
𝜃
)
x=r⋅cos(θ),y=r⋅sin(θ)
These coordinates describe a polar-to-Cartesian transformation.
4. Dynamic Line Drawing
Connecting Points: For each pair of consecutive points, a line is drawn using:
line.new
(
𝑥
1
,
𝑦
1
,
𝑥
2
,
𝑦
2
)
line.new(x
1
,y
1
,x
2
,y
2
)
The coordinates are adjusted by:
bar_index: Aligns the x-axis to the chart’s time-based bar index.
int() Conversion: Ensures x-coordinates are integers, as required by line.new.
Line Properties:
Color: Set by the user.
Width: Fixed at 1 for simplicity.
5. Real-Time Adaptation
The shapes evolve dynamically as new bars form:
Rotation Over Time: The rotation parameter modifies angles proportionally to bar_index, creating a rotating effect.
Bar Index Alignment: Shapes are positioned relative to the current bar on the chart, ensuring synchronization with market data.
6. Visualization and Applications
This script generates evolving geometrical shapes, which have both aesthetic and educational value. Potential applications include:
Mathematical Visualization: Demonstrating the interplay of Fibonacci sequences, trigonometry, and geometry.
Technical Analysis: Serving as a visual overlay for price movement patterns, highlighting cyclical or wave-like behavior.
Dynamic Art: Creating visually appealing and evolving patterns on financial charts.
Scientific Relevance
This code synthesizes principles from:
Mathematical Analysis: Incorporates constants and formulas central to calculus, trigonometry, and algebra.
Geometry: Visualizes patterns derived from polar coordinates and Fibonacci scaling.
Real-Time Systems: Adapts dynamically to market data, showcasing practical applications of mathematics in financial visualization.
If further optimization or additional functionality is required, let me know! 😊
Self-Adaptive RSI with Fractal Dimension and Entropy ScalingSelf-Adaptive RSI with Fractal Dimension and Entropy Scaling
This advanced oscillator is a refined version of the RSI that integrates multi-timeframe analysis, fractal scaling, and entropy to create an adaptive, highly responsive indicator. The script leverages a range of techniques to dynamically adjust to market conditions and enhance sensitivity to trend and volatility. Here’s a breakdown of the core features:
Base and Fixed Adaptive Lengths:
A base length (input by the user) seeds the initial length for calculations. The script then calculates a fixed adaptive length as a multiplier of this base, providing consistency across different calculations.
Multi-Timeframe RSI Calculation:
The script calculates RSI across multiple timeframes (5 minutes to daily) and aggregates these values using a weighted average based on the Golden Ratio. This multi-timeframe RSI accounts for both short-term and long-term trends, making it more robust and responsive to shifts in market direction.
Enhanced RSI Using Adaptive Volume Weighting:
Price differences are smoothed and adjusted incorporating volume-based weights, allowing the RSI to adapt to changes in trading volume. This volume impact factor enhances trend detection accuracy.
Adaptive Zero-Lag RSI with Golden Ratio Smoothing:
To eliminate lag, the multi-timeframe RSI is smoothed using a zero-lag EMA based on a Golden Ratio length, adding precision to the RSI’s responsiveness while minimizing delay.
Fractal Dimension Scaling:
The oscillator is scaled to expand its range using fractal dimensions, capturing market complexity and adjusting for periods of high or low volatility. This scaling enhances sensitivity to price fluctuations.
Entropy-Based Trend Sensitivity and Volatility Compression:
The final RSI incorporates entropy scaling, achieved through a trend factor derived from a linear regression. This factor adjusts the RSI output based on market volatility and directional strength, compressing the indicator during stable periods and expanding it in high-volatility conditions.
Overbought and Oversold Thresholds Using Statistical Percentiles:
Rather than fixed thresholds, the overbought and oversold levels are set dynamically using percentile ranks (99th and 1st percentiles) over a long period, making them adaptive and reflective of historical price extremes.
This self-adaptive RSI, combining multi-timeframe weighting, fractal scaling, and entropy, provides a nuanced view of market trends and momentum. It dynamically adjusts to market volatility and structure, offering a sophisticated tool for traders seeking adaptive trend analysis and reliable entry/exit signals.
Pulse DPO: Major Cycle Tops and Bottoms█ OVERVIEW
Pulse DPO is an oscillator designed to highlight Major Cycle Tops and Bottoms .
It works on any market driven by cycles. It operates by removing the short-term noise from the price action and focuses on the market's cyclical nature.
This indicator uses a Normalized version of the Detrended Price Oscillator (DPO) on a 0-100 scale, making it easier to identify major tops and bottoms.
Credit: The DPO was first developed by William Blau in 1991.
█ HOW TO READ IT
Pulse DPO oscillates in the range between 0 and 100. A value in the upper section signals an OverBought (OB) condition, while a value in the lower section signals an OverSold (OS) condition.
Generally, the triggering of OB and OS conditions don't necessarily translate into swing tops and bottoms, but rather suggest caution on approaching a market that might be overextended.
Nevertheless, this indicator has been customized to trigger the signal only during remarkable top and bottom events.
I suggest using it on the Daily Time Frame , but you're free to experiment with this indicator on other time frames.
The indicator has Built-in Alerts to signal the crossing of the Thresholds. Please don't act on an isolated signal, but rather integrate it to work in conjunction with the indicators present in your Trading Plan.
█ OB SIGNAL ON: ENTERING OVERBOUGHT CONDITION
When Pulse DPO crosses Above the Top Threshold it Triggers ON the OB signal. At this point the oscillator line shifts to OB color.
When Pulse DPO enters the OB Zone, please beware! In this Area the Major Players usually become Active Sellers to the Public. While the OB signal is On, it might be wise to Consider Selling a portion or the whole Long Position.
Please note that even though this indicator aims to focus on major tops and bottoms, a strong trending market might trigger the OB signal and stay with it for a long time. That's especially true on young markets and on bubble-mode markets.
█ OB SIGNAL OFF: EXITING OVERBOUGHT CONDITION
When Pulse DPO crosses Below the Top Threshold it Triggers OFF the OB signal. At this point the oscillator line shifts to its normal color.
When Pulse DPO exits the OB Zone, please beware because a Major Top might just have occurred. In this Area the Major Players usually become Aggressive Sellers. They might wind up any remaining Long Positions and Open new Short Positions.
This might be a good area to Open Shorts or to Close/Reverse any remaining Long Position. Whatever you choose to do, it's usually best to act quickly because the market is prone to enter into panic mode.
█ OS SIGNAL ON: ENTERING OVERSOLD CONDITION
When Pulse DPO crosses Below the Bottom Threshold it Triggers ON the OS signal. At this point the oscillator line shifts to OS color.
When Pulse DPO enters the OS Zone, please beware because in this Area the Major Players usually become Active Buyers accumulating Long Positions from the desperate Public.
While the OS signal is On, it might be wise to Consider becoming a Buyer or to implement a Dollar-Cost Averaging (DCA) Strategy to build a Long Position towards the next Cycle. In contrast to the tops, the OS state usually takes longer to resolve a major bottom.
█ OS SIGNAL OFF: EXITING OVERSOLD CONDITION
When Pulse DPO crosses Above the Bottom Threshold it Triggers OFF the OS signal. At this point the oscillator line shifts to its normal color.
When Pulse DPO exits the OS Zone, please beware because a Major Bottom might already be in place. In this Area the Major Players become Aggresive Buyers. They might wind up any remaining Short Positions and Open new Long Positions.
This might be a good area to Open Longs or to Close/Reverse any remaining Short Positions.
█ WHY WOULD YOU BE INTERESTED IN THIS INDICATOR?
This indicator is built over a solid foundation capable of signaling Major Cycle Tops and Bottoms across many markets. Let's see some examples:
Early Bitcoin Years: From 0 to 1242
This chart is in logarithmic mode in order to properly display various exponential cycles. Pulse DPO is properly signaling the major early highs from 9-Jun-2011 at 31.50, to the next one on 9-Apr-2013 at 240 and the epic top from 29-Nov-2013 at 1242.
Due to the massive price movements, the OB condition stays pinned during most of the exponential price action. But as you can see, the OB condition quickly vanishes once the Cycle Top has been reached. As the market matures, the OB condition becomes more exceptional and triggers much closer from the Cycle Top.
With regards to Cycle Bottoms, the early bottom of 2 after having peaked at 31.50 doesn’t get captured by the indicator. That is the only cycle bottom that escapes the Pulse DPO when the bottom threshold is set at a value of 5. In that event, the oscillator low reached 6.95.
Bitcoin Adoption Spreading: From 257 to 73k
This chart is in logarithmic mode in order to properly display various exponential cycles. Pulse DPO is properly signaling all the major highs from 17-Dec-2017 at 19k, to the next one on 14-Apr-2021 at 64k and the most recent top from 9-Nov-2021 at 68k.
During the massive run of 2017, the OB condition still stayed triggered for a few weeks on each swing top. But on the next cycles it started to signal only for a few days before each swing top actually happened. The OB condition during the last cycle top triggered only for 3 days. Therefore the signal grows in focus as the market matures.
At the time of publishing this indicator, Bitcoin printed a new All Time High (ATH) on 13-Mar-2024 at 73k. That run didn’t trigger the OB condition. Therefore, if the indicator is correct the Bitcoin market still has some way to grow during the next months.
With regards to Cycle Bottoms, the bottom of 3k after having peaked at19k got captured within the wide OS zone. The bottom of 15k after having peaked at 68k got captured too within the OS accumulation area.
Gold
Pulse DPO behaves surprisingly well on a long standing market such as Gold. Moving back to the 197x years it’s been signaling most Cycle Tops and Bottoms with precision. During the last cycle, it shows topping at 2k and bottoming at 1.6k.
The current price action is signaling OB condition in the range of 2.5k to 2.7k. Looking at past cycles, it tends to trigger on and off at multiple swing tops until reaching the final cycle top. Therefore this might indicate the first wave within a potential gold run.
Oil
On the Oil market, we can see that most of the cycle tops and bottoms since the 80s got signaled. The only exception being the low from 2020 which didn’t trigger.
EURUSD
On Forex markets the Pulse DPO also behaves as expected. Looking back at EURUSD we can see the marketing triggering OB and OS conditions during major cycle tops and bottoms from recent times until the 80s.
S&P 500
On the S&P 500 the Pulse DPO catched the lows from 2016 and 2020. Looking at present price action, the recent ATH didn’t trigger the OB condition. Therefore, the indicator is allowing room for another leg up during the next months.
Amazon
On the Amazon chart the Pulse DPO is mirroring pretty accurately the major swings. Scrolling back to the early 2000s, this chart resembles early exponential swings in the crypto space.
Tesla
Moving onto a younger tech stock, Pulse DPO captures pretty accurately the major tops and bottoms. The chart is shown in logarithmic scale to better display the magnitude of the moves.
█ SETTINGS
This indicator is ideal for identifying major market turning points while filtering out short-term noise. You are free to adjust the parameters to align with your preferred trading style.
Parameters : This section allows you to customize any of the Parameters that shape the Oscillator.
Oscillator Length: Defines the period for calculating the Oscillator.
Offset: Shifts the oscillator calculation by a certain number of periods, which is typically half the Oscillator Length.
Lookback Period: Specifies how many bars to look back to find tops and bottoms for normalization.
Smoothing Length: Determines the length of the moving average used to smooth the oscillator.
Thresholds : This section allows you to customize the Thresholds that trigger the OB and OS conditions.
Top: Defines the value of the Top Threshold.
Bottom: Defines the value of the Bottom Threshold.
Trend Strength Momentum Indicator (TSMI)Introducing the Trend Strength Momentum Indicator (TSMI)
With over two decades of experience, I've found that no single indicator can consistently predict market movements. The key lies in combining multiple indicators to capture different market dimensions—trend, momentum, and volume. With this in mind, I present the Trend Strength Momentum Indicator (TSMI), a comprehensive tool designed to spot emerging uptrends and downtrends in cryptocurrency and other asset markets.
1. Overview of TSMI
The TSMI amalgamates three critical market aspects:
Trend Direction and Strength: Utilizing Moving Averages (MA) and the Average Directional Index (ADX).
Momentum: Incorporating the Moving Average Convergence Divergence (MACD) and the Relative Strength Index (RSI).
Volume Confirmation: Employing the On-Balance Volume (OBV) indicator.
By combining these elements, TSMI aims to provide a robust signal that not only indicates the direction of the trend but also confirms its strength and sustainability through momentum and volume analysis.
2. Components and Calculations
A. Trend Component
Exponential Moving Averages (EMA):
50-day EMA: Captures the short to medium-term trend.
200-day EMA: Reflects the long-term trend.
Average Directional Index (ADX):
Measures the strength of the trend regardless of its direction.
A value above 25 indicates a strong trend, while below 20 suggests a weak or non-trending market.
B. Momentum Component
Moving Average Convergence Divergence (MACD):
Calculated by subtracting the 26-day EMA from the 12-day EMA.
The MACD line crossing above the signal line (9-day EMA of MACD) indicates bullish momentum; crossing below suggests bearish momentum.
Relative Strength Index (RSI):
Oscillates between 0 and 100.
Readings above 70 indicate overbought conditions; below 30 suggest oversold conditions.
C. Volume Component
On-Balance Volume (OBV):
Cumulatively adds volume on up days and subtracts volume on down days.
A rising OBV alongside rising prices confirms an uptrend; divergence may signal a reversal.
3. TSMI Calculation Steps
Step 1: Trend Analysis
EMA Crossover:
Identify if the 50-day EMA crosses above the 200-day EMA (Golden Cross), indicating a potential uptrend.
Conversely, if the 50-day EMA crosses below the 200-day EMA (Death Cross), it may signal a downtrend.
ADX Confirmation:
Confirm the strength of the trend. An ADX value above 25 supports the EMA crossover signal.
Step 2: Momentum Assessment
MACD Evaluation:
Look for MACD crossing above its signal line for bullish momentum or below for bearish momentum.
RSI Check:
Ensure RSI is not in overbought (>70) or oversold (<30) territory to avoid potential reversals against the trend.
Step 3: Volume Verification
OBV Direction:
Confirm that OBV is moving in the same direction as the price trend.
Rising OBV with rising prices strengthens the bullish signal; falling OBV with falling prices strengthens the bearish signal.
Step 4: Composite Signal Generation
Bullish Signal:
50-day EMA crosses above 200-day EMA (Golden Cross).
ADX above 25, indicating a strong trend.
MACD crosses above its signal line.
RSI is between 30 and 70, avoiding overbought conditions.
OBV is rising.
Bearish Signal:
50-day EMA crosses below 200-day EMA (Death Cross).
ADX above 25.
MACD crosses below its signal line.
RSI is between 30 and 70, avoiding oversold conditions.
OBV is falling.
4. How to Use the TSMI
A. Entry Points
Buying into an Uptrend:
Wait for the bullish signal criteria to align.
Enter the position after the 50-day EMA crosses above the 200-day EMA, supported by positive momentum (MACD and RSI) and volume (OBV).
Selling or Shorting into a Downtrend:
Look for the bearish signal criteria.
Initiate the position after the 50-day EMA crosses below the 200-day EMA, with confirming momentum and volume indicators.
B. Exit Strategies
Protecting Profits:
Monitor RSI for overbought or oversold conditions, which may indicate potential reversals.
Watch for MACD divergences or crossovers against your position.
Use trailing stops based on the ATR (Average True Range) to allow profits to run while protecting against sharp reversals.
C. Risk Management
Position Sizing:
Use the ADX value to adjust position sizes. A stronger trend (higher ADX) may justify a larger position, whereas a weaker trend suggests caution.
Avoiding False Signals:
Be cautious during sideways markets where EMAs may whipsaw.
Confirm signals with multiple indicators before acting.
5. Examples
Example 1: Spotting an Emerging Uptrend in Bitcoin
Date: Let's assume on March 1st.
Observations:
EMA Crossover: The 50-day EMA crosses above the 200-day EMA.
ADX: Reading is 28, indicating a strong trend.
MACD: Crosses above the signal line and moves into positive territory.
RSI: Reading is 55, comfortably away from overbought levels.
OBV: Shows a rising trend, confirming increasing buying pressure.
Action:
Enter a long position in Bitcoin.
Set a stop-loss below recent swing lows.
Outcome:
Over the next few weeks, Bitcoin's price continues to rise, validating the TSMI signal.
Example 2: Identifying a Downtrend in Ethereum
Date: Let's assume on July 15th.
Observations:
EMA Crossover: The 50-day EMA crosses below the 200-day EMA.
ADX: Reading is 30, confirming a strong trend.
MACD: Crosses below the signal line into negative territory.
RSI: Reading is 45, not yet oversold.
OBV: Declining, indicating selling pressure.
Action:
Initiate a short position or exit long positions in Ethereum.
Place a stop-loss above recent resistance levels.
Outcome:
Ethereum's price declines over the following weeks, confirming the downtrend.
6. When to Use the TSMI
Trending Markets: TSMI is most effective in markets exhibiting clear trends, whether bullish or bearish.
Avoiding Sideways Markets: In range-bound markets, EMAs and momentum indicators may provide false signals. ADX readings below 20 suggest it's best to stay on the sidelines.
Volatile Assets: Particularly useful in cryptocurrency markets, which are known for their volatility and extended trends.
7. Limitations and Considerations
Lagging Indicators: Moving averages and ADX are lagging by nature. Rapid reversals may not be immediately captured.
False Signals: No indicator is foolproof. Always confirm signals with multiple components of TSMI.
Market Conditions: External factors like news events can significantly impact prices. Consider combining TSMI with fundamental analysis.
8. Enhancing TSMI
Customization: Adjust EMA periods (e.g., 20-day and 100-day) based on the asset's volatility and your trading timeframe.
Additional Indicators: Incorporate Bollinger Bands to gauge volatility or Fibonacci retracement levels to identify potential support and resistance.
Conclusion
The Trend Strength Momentum Indicator (TSMI) offers a holistic approach to spotting emerging trends by combining trend direction, momentum, and volume. By synthesizing the strengths of various traditional indicators while mitigating their individual limitations, TSMI provides traders with a powerful tool to navigate the complex landscape of cryptocurrency and other asset markets.
Key Benefits of TSMI:
Comprehensive Analysis: Integrates multiple market dimensions for well-rounded insights.
Early Trend Identification: Aims to spot trends early for optimal entry points.
Risk Management: Helps in making informed decisions, thereby reducing exposure to false signals.
By applying TSMI diligently and complementing it with sound risk management practices, traders can enhance their ability to capitalize on market trends and improve their overall trading performance.
Rolling Reversion BandsRolling Reversion Bands: A Technical Trading Indicator
This indicator helps traders spot potential reversal opportunities by showing where price might be overextended and likely to return to average levels. It combines two powerful technical tools - Volume Weighted Average Price (VWAP) and Hull Moving Average (HMA) smoothing - to create a more reliable signal.
Key Features:
Golden centerline: A smoothed VWAP that filters out market noise
Uses volume-weighted pricing for better accuracy than simple averages
HMA smoothing reduces false signals while staying responsive to real moves
Works like a "fair value" level that price tends to return to
Colored bands:
Turquoise bands (#32f0dd): Show shorter-term price ranges (100 periods)
Pink/red bands (#c2024f): Show longer-term price ranges (200 periods)
Two levels for each color (inner and outer bands)
How to Use It:
When price moves outside the bands, it might be overextended
The golden HMA-smoothed VWAP centerline acts as a target level where price often returns to
Wider bands show higher volatility, narrower bands show lower volatility
You can toggle different bands on/off to keep your chart clean
Customization:
Adjust HMA smoothing to make the centerline more or less responsive
Change how wide you want the bands to be
Turn different bands on or off as needed
The indicator combines advanced technical concepts (VWAP, HMA, volatility bands) in a visually clean way, using smoothing techniques to reduce noise and help identify clearer trading opportunities.
Multi-Average Trend Indicator (MATI)[FibonacciFlux]Multi-Average Trend Indicator (MATI)
Overview
The Multi-Average Trend Indicator (MATI) is a versatile technical analysis tool designed for traders who aim to enhance their market insights and streamline their decision-making processes across various timeframes. By integrating multiple advanced moving averages, this indicator serves as a robust framework for identifying market trends, making it suitable for different trading styles—from scalping to swing trading.
MATI 4-hourly support/resistance
MATI 1-hourly support/resistance
MATI 15 minutes support/resistance
MATI 1 minutes support/resistance
Key Features
1. Diverse Moving Averages
- COVWMA (Coefficient of Variation Weighted Moving Average) :
- Provides insights into price volatility, helping traders identify the strength of trends in fast-moving markets, particularly useful for 1-minute scalping .
- DEMA (Double Exponential Moving Average) :
- Minimizes lag and quickly responds to price changes, making it ideal for capturing short-term price movements during volatile trading sessions .
- EMA (Exponential Moving Average) :
- Focuses on recent price action to indicate the prevailing trend, vital for day traders looking to enter positions based on current momentum.
- KAMA (Kaufman's Adaptive Moving Average) :
- Adapts to market volatility, smoothing out price action and reducing false signals, which is crucial for 4-hour day trading strategies.
- SMA (Simple Moving Average) :
- Provides a foundational view of the market trend, useful for swing traders looking at overall price direction over longer periods.
- VIDYA (Variable Index Dynamic Average) :
- Adjusts based on market conditions, offering a dynamic perspective that can help traders capture emerging trends.
2. Combined Moving Average
- The MATI's combined moving average synthesizes all individual moving averages into a single line, providing a clear and concise summary of market direction. This feature is especially useful for identifying trend continuations or reversals across various timeframes .
3. Dynamic Color Coding
- Each moving average is visually represented with color coding:
- Green indicates bullish conditions, while Red suggests bearish trends.
- This visual feedback allows traders to quickly assess market sentiment, facilitating faster decision-making.
4. Signal Generation and Alerts
- The indicator generates buy signals when the combined moving average crosses above its previous value, indicating a potential upward trend—ideal for quick entries in scalping.
- Conversely, sell signals are triggered when the combined moving average crosses below its previous value, useful for exiting positions or entering short trades.
Insights and Applications
1. Scalping on 1-Minute Charts
- The MATI excels in fast-paced environments, allowing scalpers to identify quick entry and exit points based on short-term trends. With dynamic signals and alerts, traders can react swiftly to price movements, maximizing profit potential in brief price fluctuations.
2. Day Trading on 4-Hour Charts
- For day traders, the MATI provides essential insights into intraday trends. By analyzing the combined moving average and its relation to individual moving averages, traders can make informed decisions on when to enter or exit positions, capitalizing on daily price swings.
3. Swing Trading on Daily Charts
- The MATI also serves as a valuable tool for swing traders. By evaluating longer-term trends through the combined moving average, traders can identify potential swing points and adjust their strategies accordingly. The flexibility of adjusting the lengths of the moving averages allows for tailored approaches based on market volatility.
Benefits
1. Clarity and Insight
- The combination of diverse moving averages offers a clear visual representation of market trends, aiding traders in making informed decisions across multiple timeframes.
2. Flexibility and Customization
- With adjustable parameters, traders can adapt the MATI to their specific strategies, making it suitable for various market conditions and trading styles.
3. Real-Time Alerts and Efficiency
- Built-in alerts minimize response times, allowing traders to capitalize on opportunities as they arise, regardless of their trading style.
Conclusion
The Multi-Average Trend Indicator (MATI) is an essential tool for traders seeking to enhance their technical analysis capabilities. By seamlessly integrating multiple moving averages with dynamic color coding and real-time alerts, this indicator provides a comprehensive approach to understanding market trends. Its versatility makes it an invaluable asset for scalpers, day traders, and swing traders alike.
Important Note
As with any trading tool, thorough analysis and risk management are crucial when using this indicator. Past performance does not guarantee future results, and traders should always be prepared for market fluctuations.
High Volume Strikes - NovaTheMachineConverts your inputs into Horizontal Lines on a chart, Creates a table to indicate all known levels input & tell you how far away you are from each level.
This is a quality of life indicator, not a signal, or trend indicator.
In order for the indicator to plot the levels correctly, please use the following format (Where '$TICKER' is replaced by your instrument of choice such as ' AMEX:SPY ', and 'value' is a positive number with up to 2 decimal places, such as '123.45';
"$TICKER: Golden Strike:value, HVOL Upper:value, HVOL Lower:value, MVC:value, MVP:value, CVR Upper:value, CVR Lower:value, PVR Upper:value, PVR Lower:value, Block 1:value, Block 2:value, Block 3:value, Block 4:value, Block 5:value, Block 6:value"
These Key Levels described below, are values You must determine yourself via Options Chain Volume Analysis
MVC: Most Volume Call - Single Strike with Highest Volume Traded on Call Side
MVP: Most Volume Put - Single Strike with Highest Volume Traded on Put Side
Golden Strike: When MVC = MVP, otherwise = The Sum of (MVP + MVC)/2
HVOL Range: The Range in which Strikes are traded most on both Call & Put sides
PVR: The Total useful Range that is un-interrupted on both Call & Put sides
CVR: The Range of Strikes that is un-interrupted on both Call & Puts sides for the Next Expiry
Blocks: Individual Blocks that may be of significant Volume, on either Call or Put sides, outside the range of CVR & PVR