DrawZigZag🟩 OVERVIEW
This library draws zigzag lines for existing pivots. It is designed to be simple to use. If your script creates pivots and you want to join them up while handling edge cases, this library does that quickly and efficiently. If you want your pivots created for you, choose one of the many other zigzag libraries that do that.
🟩 HOW TO USE
Pine Script libraries contain reusable code for importing into indicators. You do not need to copy any code out of here. Just import the library and call the function you want.
For example, for version 1 of this library, import it like this:
import SimpleCryptoLife/DrawZigZag/1
See the EXAMPLE USAGE sections within the library for examples of calling the functions.
For more information on libraries and incorporating them into your scripts, see the Libraries section of the Pine Script User Manual.
🟩 WHAT IT DOES
I looked at every zigzag library on TradingView, after finishing this one. They all seemed to fall into two groups in terms of functionality:
• Create the pivots themselves, using a combination of Williams-style pivots and sometimes price distance.
• Require an array of pivot information, often in a format that uses user-defined types.
My library takes a completely different approach.
Firstly, it only does the drawing. It doesn't calculate the pivots for you. This isn't laziness. There are so many ways to define pivots and that should be up to you. If you've followed my work on market structure you know what I think of Williams pivots.
Secondly, when you pass information about your pivots to the library function, you only need the minimum of pivot information -- whether it's a High or Low pivot, the price, and the bar index. Pass these as normal variables -- bools, ints, and floats -- on the fly as your pivots confirm. It is completely agnostic as to how you derive your pivots. If they are confirmed an arbitrary number of bars after they happen, that's fine.
So why even bother using it if all it does it draw some lines?
Turns out there is quite some logic needed in order to connect highs and lows in the right way, and to handle edge cases. This is the kind of thing one can happily outsource.
🟩 THE RULES
• Zigs and zags must alternate between Highs and Lows. We never connect a High to a High or a Low to a Low.
• If a candle has both a High and Low pivot confirmed on it, the first line is drawn to the end of the candle that is the opposite to the previous pivot. Then the next line goes vertically through the candle to the other end, and then after that continues normally.
• If we draw a line up from a Low to a High pivot, and another High pivot comes in higher, we *extend* the line up, and the same for lines down. Yes this is a form of repainting. It is in my opinion the only way to end up with a correct structure.
• We ignore lower highs on the way up and higher lows on the way down.
🟩 WHAT'S COOL ABOUT THIS LIBRARY
• It's simple and lightweight: no exported user-defined types, no helper methods, no matrices.
• It's really fast. In my profiling it runs at about ~50ms, and changing the options (e.g., trimming the array) doesn't make very much difference.
• You only need to call one function, which does all the calculations and draws all lines.
• There are two variations of this function though -- one simple function that just draws lines, and one slightly more advanced method that modifies an array containing the lines. If you don't know which one you want, use the simpler one.
🟩 GEEK STUFF
• There are no dependencies on other libraries.
• I tried to make the logic as clear as I could and comment it appropriately.
• In the `f_drawZigZags` function, the line variable is declared using the `var` keyword *inside* the function, for simplicity. For this reason, it persists between function calls *only* if the function is called from the global scope or a local if block. In general, if a function is called from inside a loop , or multiple times from different contexts, persistent variables inside that function are re-initialised on each call. In this case, this re-initialisation would mean that the function loses track of the previous line, resulting in incorrect drawings. This is why you cannot call the `f_drawZigZags` function from a loop (not that there's any reason to). The `m_drawZigZagsArray` does not use any internal `var` variables.
• The function itself takes a Boolean parameter `_showZigZag`, which turns the drawings on and off, so there is no need to call the function conditionally. In the examples, we do call the functions from an if block, purely as an illustration of how to increase performance by restricting the amount of code that needs to be run.
🟩 BRING ON THE FUNCTIONS
f_drawZigZags(_showZigZag, _isHighPivot, _isLowPivot, _highPivotPrice, _lowPivotPrice, _pivotIndex, _zigzagWidth, _lineStyle, _upZigColour, _downZagColour)
This function creates or extends the latest zigzag line. Takes real-time information about pivots and draws lines. It does not calculate the pivots. It must be called once per script and cannot be called from a loop.
Parameters:
_showZigZag (bool) : Whether to show the zigzag lines.
_isHighPivot (bool) : Whether the current bar confirms a high pivot. Note that pivots are confirmed after the bar in which they occur.
_isLowPivot (bool) : Whether the current bar confirms a low pivot.
_highPivotPrice (float) : The price of the high pivot that was confirmed this bar. It is NOT the high price of the current bar.
_lowPivotPrice (float) : The price of the low pivot that was confirmed this bar. It is NOT the low price of the current bar.
_pivotIndex (int) : The bar index of the pivot that was confirmed this bar. This is not an offset. It's the `bar_index` value of the pivot.
_zigzagWidth (int) : The width of the zigzag lines.
_lineStyle (string) : The style of the zigzag lines.
_upZigColour (color) : The colour of the up zigzag lines.
_downZagColour (color) : The colour of the down zigzag lines.
Returns: The function has no explicit returns. As a side effect, it draws or updates zigzag lines.
method m_drawZigZagsArray(_a_zigZagLines, _showZigZag, _isHighPivot, _isLowPivot, _highPivotPrice, _lowPivotPrice, _pivotIndex, _zigzagWidth, _lineStyle, _upZigColour, _downZagColour, _trimArray)
Namespace types: array
Parameters:
_a_zigZagLines (array)
_showZigZag (bool) : Whether to show the zigzag lines.
_isHighPivot (bool) : Whether the current bar confirms a high pivot. Note that pivots are usually confirmed after the bar in which they occur.
_isLowPivot (bool) : Whether the current bar confirms a low pivot.
_highPivotPrice (float) : The price of the high pivot that was confirmed this bar. It is NOT the high price of the current bar.
_lowPivotPrice (float) : The price of the low pivot that was confirmed this bar. It is NOT the low price of the current bar.
_pivotIndex (int) : The bar index of the pivot that was confirmed this bar. This is not an offset. It's the `bar_index` value of the pivot.
_zigzagWidth (int) : The width of the zigzag lines.
_lineStyle (string) : The style of the zigzag lines.
_upZigColour (color) : The colour of the up zigzag lines.
_downZagColour (color) : The colour of the down zigzag lines.
_trimArray (bool) : If true, the array of lines is kept to a maximum size of two lines (the line elements are not deleted). If false (the default), the array is kept to a maximum of 500 lines (the maximum number of line objects a single Pine script can display).
Returns: This function has no explicit returns but it modifies a global array of zigzag lines.
אינדיקטורים ואסטרטגיות
ATR, ADX, RSI TableATR, ADX & RSI Dashboard (Color-Coded)
Overview
This indicator provides a clean, all-in-one dashboard that displays the current values for three of the most popular technical indicators: Average True Range (ATR), Average Directional Index (ADX), and Relative Strength Index (RSI).
To make analysis faster and more intuitive, the values in the table are dynamically color-coded based on key thresholds. This allows you to get an immediate visual summary of market volatility, trend strength, and momentum without cluttering your main chart area.
Features
The indicator displays a simple table in the bottom-right corner of your chart with the following color logic:
ATR (Volatility): Measures the average volatility of an asset.
Green: Low Volatility (ATR is less than 3% of the current price).
Orange: Moderate Volatility (ATR is between 3% and 5%).
Red: High Volatility (ATR is greater than 5%).
ADX (Trend Strength): Measures the strength of the underlying trend, regardless of its direction.
Red: Weak or Non-Trending Market (ADX is below 20).
Orange: Developing or Neutral Trend (ADX is between 20 and 25).
Green: Strong Trend (ADX is above 25).
RSI (Momentum): Measures the speed and change of price movements to identify overbought or oversold conditions.
Green: Potentially Oversold (RSI is below 40).
Orange: Neutral/Normal Conditions (RSI is between 40 and 70).
Red: Potentially Overbought (RSI is above 70).
How to Use
This tool is perfect for traders who want a quick, at-a-glance understanding of the current market state. Instead of analyzing three separate indicators, you can use this dashboard to:
Quickly confirm if a strong trend is present before entering a trade.
Assess volatility to adjust your stop-loss and take-profit levels.
Instantly spot potential overbought or oversold conditions.
Customization
All input lengths for the ATR, ADX, and RSI are fully customizable in the indicator's settings menu, allowing you to tailor the calculations to your specific trading style and timeframe.
Position Size Calculatorcalculates what size position you should enter given desired risk and distance from SL in ticks on any symbol
Auto-Trend Finder (Pivot + ADX)Inspired in part by LuxAlgo Trendlines with Breaks. Extended and enhanced for directional clarity and pivot-based precision.
🔍 What It Does
The Auto-Trend Finder (Pivot + ADX) is a smart trend-detection toolkit that combines:
Pivot-based swing detection (HH, HL, LH, LL)
ADX-filtered trendline projections
Custom slope estimation using ATR, Standard Deviation, Linear Regression, or a blended approach
Candlestick pattern detection for added confirmation (e.g., hammer, engulfing, shooting star)
📈 How It Works
1. Swing Detection
Uses ta.pivothigh / ta.pivotlow to mark major price turning points.
Labels pivots as Higher High (HH), Lower High (LH), Lower Low (LL), or Higher Low (HL).
Optionally overlays basic candle pattern names for visual context.
2. Trendline Logic
Connects successive pivot highs/lows with real-time trendlines.
Draws separate Uptrend and Downtrend lines with distinct colors.
3. Extended Projections
Projects extended dashed lines from the last pivot using slope formulas:
ATR-based (volatility)
Stdev-based (dispersion)
Linear Regression (trend best-fit)
Or a Combined slope using user-defined weights.
Color changes dynamically on breakout to visually signal momentum shifts.
4. ADX Trend Strength Filter
Optional ADX filter disables trendline updates unless directional strength exceeds a threshold (e.g. 20+).
Helps remove noise in sideways markets.
⚠️ Important Notes
Backpainting Warning: This script includes a backpainting setting (backpaint) that may cause lines to appear "reliably predictive" in historical data. Backpainting does not repaint once the pivot is confirmed, but it still reflects a post-fact state. Use this feature cautiously in live trading decisions.
Reused Code Attribution: Extended trendline concept and breakout color logic were inspired by publicly available open-source versions of LuxAlgo's trendline logic. Credit is given in the script comments and here as required.
🛠️ How to Use It
Adjust Pivot Length for swing detection sensitivity.
Toggle ADX filtering on or off to avoid choppy signals.
Choose your preferred Slope Calculation Method.
Use candlestick labels as potential entry signals near trendline retests or breaks.
✅ Why This Is More Than a Mashup
This tool integrates several separate technical methods into one cohesive, customizable framework:
It’s not just combining indicators, it’s engineering synergy between them.
The slope and ADX filtering mechanics dynamically adjust to trend strength.
Candlestick confirmation and labeling give visual, real-time trade confidence.
It enhances open-source logic by adding modular slope options, ADX gating, pattern labeling, and user control.
"Know the structure. Follow the strength. Trade with clarity. Auto-Trend Finder is your edge in the chaos."
Discount to Net Asset ValueOverview
This indicator helps investors and analysts identify when a company’s stock is trading below or above its intrinsic value. A persistent discount may highlight potential value opportunities, while a sustained premium could signal overvaluation or strong market sentiment. By visually shading the background and plotting the discount/premium percentage, users can quickly screen for undervalued stocks, confirm fundamental research, and make more informed buy or sell decisions.
Usage
Calculates the Net Asset Value discount (or premium) for any symbol.
By default the indicator uses the current chart symbol’s TOTAL_ASSETS, TOTAL_LIABILITIES, and TOTAL_SHARES_OUTSTANDING.
You can select another symbol by checking “Use Custom Symbol” and entering the ticker of the other symbol. This is useful for comparing the Discount to NAV across symbols.
Shows the percentage discount (or premium) of market capitalization relative to net asset value.
Recommended timeframes: daily bars or higher.
Reporting Periods:
• FQ = Fiscal Quarter
• FY = Fiscal Year
• TTM = Trailing Twelve Months
Note: NAV is pulled on the chosen reporting period (FQ, FY, TTM).
By default the background is shaded red to illustrate a discount to NAV and green to illustrate a premium to NAV. This can be toggled in the settings.
ETH Day TraderThis is the new script I try creating with chatgpt. The winrate is low but the profit is higher than expected. Please help me revise and let's improve it together. BINANCE:ETHUSDT
Double EMA + Ma Pullback by vimel🧠 Combined Double EMA + MA Pullback Strategy
This indicator merges two popular trend-following and pullback trading concepts into a single, powerful tool:
🔹 1. Double EMA Pullback Logic
Uses two EMAs (default 20 & 50) to define trend direction.
Buy Signal: Triggered when price crosses above the shorter EMA and is above the longer EMA.
Sell Signal: Triggered when price crosses below the shorter EMA and is below the longer EMA.
Ideal for momentum-based trend continuation setups.
🔸 2. MA Cloud Pullback Strategy
Uses three EMAs to form a dynamic cloud zone.
Cloud Buy: Price dips into the cloud (pullback) and breaks out upward with bullish momentum.
Cloud Sell: Price rallies into the cloud and breaks down with bearish momentum.
Additional filters:
Candle body % strength (momentum validation).
Historical interaction with cloud (bar_limit lookback).
Designed to catch pullbacks within strong trends.
📈 Visuals
EMA lines and dynamic cloud with color fill.
Clear Buy and Sell markers for both systems:
D Buy / D Sell: Double EMA Pullback.
Buy / Sell: MA Cloud Pullback.
⚙️ Inputs
Fully customizable EMA lengths and sources.
Toggle each EMA independently.
Adjust candle strength % and backstep limit for fine-tuning entries.
📣 Ideal For
Trend traders who want both momentum and pullback confirmation.
Works well in strong directional markets (crypto, forex, indices).
Can be combined with volume or higher timeframe filters for added precision.
Live Momentum Alerts - Darrin G.detect setups pre-market, regular hours, and after-hours.
Run this on both stocks and crypto charts.
Receive alerts when momentum crosses the 9 EMA (with RVOL and VWAP filters still active).
Inside DayOnly uses completed bars (high , low ) — ignores today's intraday bar.
Plots only after market close, not during the current session.
Designed for end-of-day screeners and alerts, reliable for after-hours analysis.
Session Time MarkersAdds colored time markers on your 1 min, 5 min chart.
9:30am = White
11:00am = Blue
12:00 noon = Yellow
2:00pm = Purple
3:00pm = Orange
Inside DayOnly uses completed bars (high , low ) — ignores today's intraday bar.
Plots only after market close, not during the current session.
Designed for end-of-day screeners and alerts, reliable for after-hours analysis.
Anti-SMT + FVG StrategieMade by Laila
4h gives 57% winrate!
Instead of trading based on an expected SMT divergence, you assume that the divergence will not continue. You combine this with a Fair Value Gap (FVG) that is touched by price as additional confirmation.
Anti-SMT Logic (False Divergence)
Short:
EURUSD makes a new high (candle 1)
DXY does not make a new low
Long:
EURUSD makes a new low (candle 1)
DXY does not make a new high
This looks like SMT divergence, but your expectation is: "There will be no SMT."
Fair Value Gap (FVG) Detection
Detects an unfilled gap between candle 1 and 3.
You only trade if the FVG is touched during:
🔹 Candle 1 (the false SMT candle) or
🔹 Candle 2 (the entry candle)
Extra Filters
Only go long if price is above the 50 EMA
Only go short if price is below the 50 EMA
Only trade between 08:00 and 18:00 UTC
Wait 10 candles cooldown between trades
Result:
You only trade when:
There is a possible SMT illusion
An FVG is touched
The setup aligns with trend, session, and timing
This gives you a rational, rare, but strong edge.
Inside DayCompares the current bar’s high and low to the previous day’s high and low.
Triggers when the current day is fully inside the prior day’s range.
Plots an orange label above the bar.
21EMA Pullback✅ Rising EMA
✅ EMA above longer EMA
✅ Closed above EMA for 10 prior bars
✅ Touch and close on EMA in the last bar
✅ Bar size smaller than 14-day ATR%
✅ Lower wick ≥ 25% of daily range
✅ Score-based screener signal
9EMA Pullback9EMA pullback
✅ Rising 9 EMA
✅ 9 EMA above longer 21 EMA
✅ Closed above EMA for 10 prior bars
✅ Touch and close on EMA in the last bar
✅ Bar size smaller than 14-day ATR%
✅ Lower wick ≥ 25% of daily range
✅ Score-based screener signal
Refined EMA Pullback Screener (v4) fully integrated Pine Script (v4) for your screener. It includes all prior conditions plus optional toggles for:
✅ Rising EMA
✅ EMA above longer EMA
✅ Closed above EMA for 10 prior bars
✅ Touch and close on EMA in the last bar
✅ Bar size smaller than 14-day ATR%
✅ Lower wick ≥ 25% of daily range
✅ Score-based screener signal
Futures vs CFD Price Display
🎯 Trading the same asset in CFDs and Futures but tired of switching charts to compare prices? This is your indicator!
Stop the constant chart hopping! This live price comparison shows you instantly where the better conditions are.
✨ What you get:
Bidirectional: Works in both Futures AND CFD charts
Live prices: Real-time comparison of both markets
Spread calculation: Automatic difference in points and percentage
Fully customizable: Colors, position, size to your liking
Professional design: Clean display with symbol header
🎯 Perfect for:
Gold traders (Futures vs CFD)
Arbitrage strategies
Spread monitoring
Multi-broker comparisons
⚙️ Customization:
3 sizes (Small/Normal/Large) for all screens
4 positions available
Individual color schemes
Toggle features on/off
💡 Simply enter the symbol and keep both markets in sight!
Notice: "Co-developed with Claude AI (Anthropic) - because even AI needs to pay the server bills! 😄"
Buying Force in Last 66 DaysThis shows buying force in the stock. how much is stock up in last 66 days
Moving Average ExponentialUsing VWAP and two different EMAs. Also includes BollingerBands, showing if the Close is above or below VWAP.
Pierre's H4 EMA/MA Compression Strategy (BTC)Pierre's logic and trading strategy from the X post and its related threads. The post focuses on Bitcoin (BTC) price action on a 4-hour (H4) chart, using Exponential Moving Averages (EMAs) and Moving Averages (MAs) to identify a potential "EMA/MA compression" scenario, which is a key part of his analysis.
Summary of Pierre's Logic
Pierre is analyzing Bitcoin's price movement on the H4 timeframe, focusing on a technical pattern he calls "EMA/MA compression." This concept is central to his analysis and involves the interaction of key moving averages (H4 100 MA, H4 200 EMA, and H4 300 MA) to predict price behavior. Here's the breakdown of his logic:
EMA/MA Compression Concept:
Pierre describes "EMA/MA compression" as a scenario where the price consolidates around key moving averages, leading to a tightening of volatility before a breakout or breakdown.
In this case, the H4 100 MA, H4 200 EMA, and H4 300 MA are the critical levels to watch. These moving averages act as dynamic support/resistance levels, and their behavior (break, hold, or flip) dictates the trend direction.
He notes that this compression often follows a cycle: EMA/MA compression → Trend → Gap Fills → Repeat. This cycle suggests that after a compression phase, the price tends to trend, fill any price gaps, and then return to another compression phase.
Key Levels and Conditions for a Bullish Scenario:
H4 100 MA: Must break or flip to the upside. A break above this level signals bullish momentum, while a failure to hold above it (a "flip") invalidates the bullish case.
H4 200 EMA: Acts as an "intermediary" level that must hold during pullbacks. If this level holds, it supports the bullish structure.
H4 300 MA: A critical support level. It must hold to keep the bullish scenario intact. If the price loses this level (and it flips to resistance), the bullish outlook is invalidated.
Pierre mentions that after the price breaks the H4 100 MA, it should aim to fill gaps between 109.5 and 110.5 (likely in thousands, so $109,500–$110,500). If the H4 200 EMA holds, the price might pull back to the H4 300 MA, where it could consolidate further before continuing the trend.
Invalidation Scenarios:
The bullish scenario is invalidated if:
The H4 100 MA is broken and flips to resistance (i.e., price closes below it after initially breaking above).
The H4 300 MA is lost and flips to resistance (i.e., price closes below it and fails to reclaim it).
Current Market Context:
Pierre notes a "nice bounce" in BTC's price, bringing it back into the compression zone. The price is currently fighting a key area on lower timeframes (LTF), likely referring to shorter timeframes like H1 or M15.
He mentions that all gaps have been filled for now (referencing the cycle of gap fills), which aligns with his expectation of reduced volatility as the price enters another compression phase.
Historical Context and Consistency:
Pierre has been tracking this scenario since the H4 100 MA break, as shared in his group @TheHavenCrypto
. He references notes from Monday (likely June 2, 2025, as the post is from June 6), indicating that his analysis has been consistent over the week.
In a follow-up post, he reflects on a recent trade where he took partial profits on the bounce but couldn’t fully capitalize on the move due to being on his phone and managing only a fraction of his intended position size near the H4 300 MA (for BTC) and H4 200 EMA (for ETH).
Pierre's Trading Strategy
Based on the post and its context, Pierre’s trading strategy revolves around the EMA/MA compression framework. Here’s how he approaches trades:
Setup Identification:
Pierre identifies setups using the H4 timeframe, focusing on the interaction of the H4 100 MA, H4 200 EMA, and H4 300 MA.
He looks for a "compression" phase where the price consolidates around these moving averages, signaling a potential breakout or breakdown.
In this case, the price breaking the H4 100 MA to the upside was his initial signal for a bullish setup.
Entry Points:
Pierre likely entered a long position (buy) near the H4 300 MA or H4 200 EMA during the recent bounce, as he mentions taking partial profits on the move.
He prefers entering after a pullback to these key levels (e.g., H4 200 EMA or H4 300 MA) as long as they hold as support. For example, in Thread 1 (Post 1930270942871118081), he shares a chart showing a long entry near the H4 300 MA with an upside target near 110,000–111,000.
Target Setting:
His primary target after the H4 100 MA break is to fill gaps between $109,500 and $110,500.
If the price reaches these levels and the H4 200 EMA holds, he expects a potential pullback to the H4 300 MA, followed by another leg up (as part of the trend phase in his cycle).
Risk Management:
Pierre sets clear invalidation levels:
A close below the H4 100 MA after breaking above it.
A close below the H4 300 MA with a failure to reclaim it.
He takes partial profits on bounces, as seen in his follow-up post where he mentions securing gains but not fully capitalizing on the move due to limited position size.
Position Sizing and Execution:
Pierre mentions being limited by trading from his phone, which restricted his position size. This suggests he typically scales into trades with a planned size but adjusts based on execution conditions.
He also notes going "AFK for the weekend" after taking profits, indicating a disciplined approach to stepping away from the market when not actively monitoring.
Cycle-Based Trading:
His strategy follows the cycle of EMA/MA compression → Trend → Gap Fills → Repeat. After the gaps are filled, he expects volatility to tighten (another compression phase), which could set up the next trade.
Key Takeaways for Traders
Focus on Key Levels: Pierre’s strategy hinges on the H4 100 MA, H4 200 EMA, and H4 300 MA. These levels are used to confirm trends, identify entries, and set invalidation points.
Patience for Compression: He waits for the price to enter a compression phase (tight consolidation around MAs) before expecting a breakout or breakdown.
Gap-Filling as a Target: Pierre uses price gaps (e.g., $109,500–$110,500) as targets, aligning with the market’s tendency to fill these gaps (as noted in the related web result from investing.com about CME gaps).
Risk Management: He has clear invalidation rules and takes partial profits to lock in gains while letting the trade play out.
Cycle Awareness: His trades are part of a broader cycle (compression → trend → gap fill → repeat), which helps him anticipate market behavior.
Additional Context from Related Threads
Thread 1 (June 4–June 6): Pierre’s earlier posts (e.g., Post 1930270942871118081) show historical examples of EMA/MA compression leading to trends and gap fills, reinforcing his current analysis. He also shares a chart with a potential upside target of $110,000–$111,000 if the H4 300 MA holds.
Thread 2 (June 3): Pierre mentions a Daily (D1) timeframe analysis where the D1 100 MA and D1 200 EMA align with range lows, suggesting a potential "wet dream swing long opportunity" if the price holds these levels. This indicates he’s also considering higher timeframes for confirmation.
Thread 3 (May 27): Pierre’s earlier analysis highlights similar concepts (e.g., H4 100 MA break, H4 200 EMA hold), showing consistency in his approach over time.
Conclusion
Pierre’s logic is rooted in technical analysis, specifically the interaction of moving averages on the H4 timeframe to identify "EMA/MA compression" setups. His strategy involves buying on pullbacks to key support levels (H4 200 EMA, H4 300 MA) after a breakout (H4 100 MA), targeting gap fills ($109,500–$110,500), and managing risk with clear invalidation levels. He follows a cyclical approach to trading, expecting periods of compression, trending, and gap-filling to repeat, which guides his entries, exits, and overall market outlook.
Premarket & Previous Day High/LowLines for Premarket High Low as well as Previous Day High and Low. Also adds Bollinger Bands. Colors the Bollinger Bands depending wether the Close is above or below PMH or PML
Mariam Market DashboardMariam Market Dashboard – A Quick Guide
Purpose:
Shows if the market is trending, volatile, or stuck so you can decide when to trade or wait.
How to Use
Add the indicator to your chart. Adjust basic settings like EMA, RSI, ATR lengths, and timezone if needed. Use it before entering any trade to confirm market conditions.
What Each Metric Means (with general ranges)
Session: Identifies which market session is active (New York, London, Tokyo).
Trend: Shows current market direction. “Up” means price above EMA and VWAP, “Down” means price below. Use this to confirm bullish or bearish bias.
HTF Trend: Confirms trend on a higher timeframe for stronger signals.
ATR (Average True Range): Measures market volatility or price movement speed.
Low ATR (e.g., below 0.5% of price) means quiet or slow market; high ATR (above 1% of price) means volatile or fast-moving market, good for active trades.
Strong Bar: A candlestick closing near its high (above 75% of range) indicates strong buying momentum; closing near its low indicates strong selling momentum.
Higher Volume: Volume higher than average (typically 10-20% above normal) means more market activity and stronger moves.
Volume / Avg Volume: Ratio above 1.2 (120%) shows volume is significantly higher than usual, signaling strong interest.
RVol % (Relative Volume %): Above 100% means volume is hotter than normal, increasing chances of strong moves; below 50% means low activity and possible indecision.
Delta: Difference between buying and selling volume (if available). A positive delta means buyers dominate; negative means sellers dominate.
ADX (Average Directional Index): Measures trend strength:
Below 20 means weak or no trend;
Above 25 means strong trend;
Between 20-25 is moderate trend.
RSI (Relative Strength Index): Momentum oscillator:
Below 30 = oversold (potential buy);
Above 70 = overbought (potential sell);
Between 40-60 means neutral momentum.
MACD: Confirms momentum direction:
Positive MACD histogram bars indicate bullish momentum;
Negative bars indicate bearish momentum.
Choppiness Index: Measures how much the market is ranging versus trending:
Above 60 = very choppy/sideways market;
Below 40 = trending market.
Consolidation: When true, price is stuck in a narrow range, signaling indecision. Avoid breakout trades during this.
Quick Trading Reminder
Trade only when the trend is clear and volume is above average. Avoid trading in low volume or choppy markets.
Triad RotationHey guys, this is the first indicator I've created. I have done some selective testing to validate the calculations against the FullStochastic indicators using the same settings.
From my review it looks to match correctly, but please do your own due diligence to verify this indicator matches your needs and strategy.
This indicator was designed closely with the Quad rotation strategy, where you use multiple stochastic indicators to identify overbought and oversold conditions.
Once all the stochastics are determined to be over/under the overbought/oversold threshold, the section will be highlighted red or green based on which condition is met. Green indicates a potential period to buy, and red indicates a potential period to sell.
P.S. I pair this with the MACD indicator to determine momentum of to aid in determining entry and exits, along with support and resistance levels. Thus far, I am an unprofitable trader, so this strategy may change. Again do your own due diligence to design a strategy that works for you.