Weis Wave Max█ Overview
Weis Wave Max is the result of my weis wave study.
David Weis said,
"Trading with the Weis Wave involves changes in behavior associated with springs, upthrusts, tests of breakouts/breakdowns, and effort vs reward. The most common setup is the low-volume pullback after a bullish/bearish change in behavior."
THE STOCK MARKET UPDATE (February 24, 2013)
I inspired from his sentences and made this script.
Its Main feature is to identify the largest wave in Weis wave and advantageous trading opportunities.
█ Features
This indicator includes several features related to the Weis Wave Method.
They help you analyze which is more bullish or bearish.
Highlight Max Wave Value (single direction)
Highlight Abnormal Max Wave Value (both directions)
Support and Resistance zone
Signals and Setups
█ Usage
Weis wave indicator displays cumulative volume for each wave.
Wave volume is effective when analyzing volume from VSA (Volume Spread Analysis) perspective.
The basic idea of Weis wave is large wave volume hint trend direction. This helps identify proper entry point.
This indicator highlights max wave volume and displays the signal and then proper Risk Reward Ratio entry frame.
I defined Change in Behavior as max wave volume (single direction).
Pullback is next wave that does not exceed the starting point of CiB wave (LH sell entry, HL buy entry).
Change in Behavior Signal ○ appears when pullback is determined.
Change in Behavior Setup (Entry frame) appears when condition of Min/Max Pullback is met and follow through wave breaks end point of CiB wave.
This indicator has many other features and they can also help a user identify potential levels of trade entry and which is more bullish or bearish.
In the screenshot below we can see wave volume zones as support and resistance levels. SOT and large wave volume /delta price (yellow colored wave text frame) hint stopping action.
█ Settings
Explains the main settings.
-- General --
Wave size : Allows the User to select wave size from ① Fixed or ② ATR. ② ATR is Factor x ATR(Length).
Display : Allows the User to select how many wave text and zigzag appear.
-- Wave Type --
Wave type : Allows the User to select from Volume or Volume and Time.
Wave Volume / delta price : Displays Wave Volume / delta price.
Simplified value : Allows the User to select wave text display style from ① Divisor or ② Normalized. Normalized use SMA.
Decimal : Allows the User to select the decimal point in the Wave text.
-- Highlight Abnormal Wave --
Highlight Max Wave value (single direction) : Adds marks to the Wave text to highlight the max wave value.
Lookback : Allows the User to select how many waves search for the max wave value.
Highlight Abnormal Wave value (both directions) : Changes wave text size, color or frame color to highlight the abnormal wave value.
Lookback : Allows the User to select SMA length to decide average wave value.
Large/Small factor : Allows the User to select the threshold large wave value and small wave value. Average wave value is 1.
delta price : Highlights large delta price by large wave text size, small by small text size.
Wave Volume : Highlights large wave volume by yellow colored wave text, small by gray colored.
Wave Volume / delta price : highlights large Wave Volume / delta price by yellow colored wave text frame, small by gray colored.
-- Support and Resistance --
Single side Max Wave Volume / delta price : Draws dashed border box from end point of Max wave volume / delta price level.
Single side Max Wave Volume : Draws solid border box from start point of Max wave volume level.
Bias Wave Volume : Draws solid border box from start point of bias wave volume level.
-- Signals --
Bias (Wave Volume / delta price) : Displays Bias mark when large difference in wave volume / delta price before and after.
Ratio : Decides the threshold of become large difference.
3Decrease : Displays 3D mark when a continuous decrease in wave volume.
Shortening Of the Thrust : Displays SOT mark when a continuous decrease in delta price.
Change in Behavior and Pullback : Displays CiB mark when single side max wave volume and pullback.
-- Setups --
Change in Behavior and Pullback and Breakout : Displays entry frame when change in behavior and pullback and then breakout.
Min / Max Pullback : Decides the threshold of min / max pullback.
If you need more information, please read the indicator's tooltip.
█ Conclusion
Weis Wave is powerful interpretation of volume and its tell us potential trend change and entry point which can't find without weis wave.
It's not the holy grail, but improve your chart reading skills and help you trade rationally (at least from VSA perspective).
Komut dosyalarını "entry" için ara
SMA Buy/Sell Strategy with Significant Slope and Dynamic TP/SLDescription:
This strategy uses a simple moving average (SMA) to detect trading opportunities based on the slope and proximity of price action. It ensures trades are only executed during significant trends, reducing false signals caused by sideways movements. The strategy incorporates dynamic risk management with an initial ambitious Take Profit (TP) and a Trailing Stop Loss (SL) to protect profits.
Key Features:
Trend Detection with SMA:
Two SMAs are calculated: one on High values and one on Low values.
Signals are generated when the price crosses these SMAs, ensuring:
Buy: Price closes above the SMA on High, with a significant upward slope.
Sell: Price closes below the SMA on Low, with a significant downward slope.
Slope Significance Check:
The slope of the SMA is calculated over a configurable period.
Only trends with a slope variation exceeding a user-defined percentage threshold are considered significant.
Dynamic Risk Management:
Ambitious Initial TP: Positions target a high percentage gain upon entry.
Trailing SL: Automatically adjusts as the price moves in favor of the trade, locking in profits.
Automatic Position Management:
Opposing signals close existing positions to avoid conflicting trades.
Configurable position size for risk control.
Parameters:
SMA Period: Number of candles for calculating the SMA.
Initial Take Profit (%): Percentage gain for the initial TP.
Trailing Stop Loss (%): Percentage for trailing SL based on the current price.
Slope Threshold (%): Minimum percentage change in SMA slope to confirm trend significance.
How It Works:
Buy Signal:
The price closes above the SMA on High values.
The slope of the SMA (on High) is positive and exceeds the slope threshold.
Sell Signal:
The price closes below the SMA on Low values.
The slope of the SMA (on Low) is negative and exceeds the slope threshold.
Exits:
A position closes at the Take Profit level, Trailing Stop Loss, or when an opposing signal is generated.
Use Case:
This strategy is ideal for trending markets where price action respects moving averages. It can be used on any timeframe or asset but is particularly effective in markets with clear directional movements.
Recommended Settings:
Timeframe: Works well on higher timeframes (e.g., 1H, 4H, Daily).
Slope Threshold (%): Default is 5%, adjust based on market volatility.
Initial TP and Trailing SL: Tailor to your risk/reward preferences.
By utilizing this strategy, traders can capitalize on significant market trends while dynamically managing risk. Test it on historical data to optimize the parameters for your preferred market!
Azlan MA Silang PLUS++Overview
Azlan MA Silang PLUS++ is an advanced moving average crossover trading indicator designed for traders who want to jump back into the market when they missed their first opportunity to take a trade. It implements a sophisticated dual moving average system with customizable settings and re-entry signals, making it suitable for both trend following and swing trading strategies.
Key Features
• Dual Moving Average System with multiple MA types (EMA, SMA, WMA, LWMA)
• Customizable price sources for each moving average
• Smart re-entry system with configurable maximum re-entries
• Visual signals with background coloring and shape markers
• Comprehensive alert system for both initial and re-entry signals
• Flexible parameter customization through input options
Input Parameters
Moving Average Configuration
• MA1 Type: Choice between SMA, EMA, WMA, LWMA (default: EMA)
• MA2 Type: Choice between SMA, EMA, WMA, LWMA (default: EMA)
• MA1 Length: Minimum value 1 (default: 8)
• MA2 Length: Minimum value 1 (default: 15)
• MA1 & MA2 Shift: Offset values for moving averages
• Price Sources: Configurable for each MA (Open, High, Low, Close, HL/2, HLC/3, HLCC/4)
Re-entry System
• Enable/Disable re-entry signals
• Maximum re-entries allowed (default: 3)
Technical Implementation
Price Source Calculation
The script implements a flexible price source system through the price_source() function:
• Supports standard OHLC values
• Includes compound calculations (HL/2, HLC/3, HLCC/4)
• Defaults to close price if invalid source specified
Moving Average Types
Implements four MA calculations:
1. SMA (Simple Moving Average)
2. EMA (Exponential Moving Average)
3. WMA (Weighted Moving Average)
4. LWMA (Linear Weighted Moving Average)
Signal Generation Logic
Initial Signals
• Buy Signal: MA1 crosses above MA2 with price above both MAs
• Sell Signal: MA1 crosses below MA2 with price below both MAs
Re-entry Signals
Re-entry system activates when:
1. Price crosses under MA1 in buy mode (or over in sell mode)
2. Price returns to cross back over MA1 (or under for sells)
3. Position relative to MA2 confirms trend direction
4. Number of re-entries hasn't exceeded maximum allowed
Visual Components
• MA1: Blue line (width: 2)
• MA2: Red line (width: 2)
• Background Colors:
o Green (60% opacity): Bullish conditions
o Red (60% opacity): Bearish conditions
• Signal Markers:
o Initial Buy/Sell: Up/Down arrows with "BUY"/"SELL" labels
o Re-entry Buy/Sell: Up/Down arrows with "RE-BUY"/"RE-SELL" labels
Alert System
Generates alerts for:
• Initial buy/sell signals
• Re-entry opportunities
• Alerts include ticker and timeframe information
• Configured for once-per-bar-close frequency
Usage Tips
1. Moving Average Selection
o Shorter periods (MA1) capture faster moves
o Longer periods (MA2) identify overall trend
o EMA responds faster to price changes than SMA
2. Re-entry System
o Best used in strong trending markets
o Limit maximum re-entries based on market volatility
o Monitor price action around MA1 for potential re-entry points
3. Risk Management
o Use additional confirmation indicators
o Set appropriate stop-loss levels
o Consider market conditions when using re-entry signals
Code Structure
The script follows a modular design with distinct sections:
1. Input parameter definitions
2. Helper functions for price and MA calculations
3. Main signal generation logic
4. Visual elements and plotting
5. Alert system implementation
This organization makes the code maintainable and easy to modify for custom needs.
ROI Levels IndicatorROI Levels Indicator 📈💰
Description: The "ROI Levels Indicator" helps you visualize key Return on Investment (ROI) levels directly on your chart, making it easier to track your profit milestones! 🚀 This tool allows you to enter your entry price, and it calculates levels from 100% up to 1000% ROI, each with a spread to represent potential support and resistance zones. The levels are visually represented by red rectangles to help identify zones where the market might react. This is a great way for traders to easily understand profit-taking points and psychological price levels!
Features:
🛠️ Custom Entry Price: Set your own entry price to start calculating ROI levels.
📊 Multiple ROI Levels: Levels from 100% to 1000%, with a customizable spread for visual clarity.
🔴 Visual Representation: Each level is marked with a full-screen-width rectangle and label, making it easy to track.
🚨 Entry Price Plot: A red dashed line marks your entry price for easy reference.
How to Use:
Enter Your Price: Use the "Entry Price" input field to specify the entry price of your trade.
Spread Adjustment: Adjust the spread percentage if you want more or less tolerance around each ROI level.
View the Levels: The script automatically plots 100% to 1000% ROI levels. Each level is represented by a red rectangle and labeled on the right side for quick identification.
Track Profit Zones: Use the plotted ROI levels to identify key profit-taking areas or potential zones of support and resistance.
Pro Tip: Use these levels as reference points to decide when to scale out of positions or manage risk effectively! 🎯
Happy trading, and may your ROI always be on the rise! 📈🔥
Marcel's Dynamic Profit / Loss Calculator for GoldOverview
This Dynamic Risk / Reward Tool for Gold is designed to help traders efficiently plan and manage their trades in the volatile gold market. This script provides a clear visualisation of trade levels (Entry, Stop Loss, Take Profit) while dynamically calculating potential profit and loss. It ensures gold traders can assess their positions with precision, saving time and improving risk management.
Key Features
1. Trade Level Visualisation:
Plots Entry (Blue), Stop Loss (Red), and Take Profit (Green) lines directly on the chart.
Helps you visualise and confirm trade setups quickly which is good for scalping and day trades.
2. Dynamic Risk and Reward Calculations:
Calculates potential profit and loss in real time based on user-defined inputs such as position size, leverage, and account equity.
Displays a summary panel showing risk/reward metrics directly on the chart.
3. Customisable Settings:
Allows you to adjust key parameters like account equity, position size, leverage, and specific price levels for Entry, Stop Loss, and Take Profit.
Defaults are dynamically generated for convenience but remain fully adjustable for flexibility.
How It Works
The script uses gold-specific conventions (e.g., 1 lot = 100 ounces, 1 pip = 0.01 price change) to calculate accurate risk and reward metrics.
It dynamically positions Stop Loss and Take Profit levels relative to the entry price, based on user-defined or default offsets.
A real-time summary panel is displayed in the bottom-right corner of the chart, showing:
Potential Profit: The monetary value if the Take Profit is hit.
Potential Lo
ss: The monetary value if the Stop Loss is hit.
How to Use It
1. Add the script to your chart on a gold trading pair (e.g., XAUUSD).
2. Input your:
Account equity.
Leverage.
Position size (in lots).
Desired En
try Price (default: current close price).
3. Adjust the Stop Loss and Take Profit levels to your strategy, or let the script use default offsets of:
500 pips below the Entry for Stop Loss.
1000 pips above the Entry for Take Profit.
4. Review the plotted levels and the summary panel to confirm your trade aligns with your risk/reward goals.
Why Use This Tool?
Clarity and Precision:
Provides clear trade visuals and financial metrics for confident decision-making.
Time-Saving:
Automates the calculations needed to evaluate trade risk and reward.
Improved Risk Management:
Ensures you never trade without knowing your exact potential loss and gain.
This script is particularly useful for both novice and experienced traders looking to enhance their risk management and trading discipline in the Gold market. Enjoy clearer trades at speed.
Dynamic TestingInput Parameters
`lookbackPeriod` : Number of candles to check for determining the highest high (resistance) and lowest low (support) levels.
`atrPeriod` : The period for calculating the Average True Range (ATR), a measure of market volatility.
`atrMultiplierSL` : Multiplier to calculate the stop-loss distance relative to the ATR.
`atrMultiplierTP1` and `atrMultiplierTP2` : Multipliers to calculate two take-profit levels relative to ATR.
`rewardToRisk` : The ratio between reward (profit) and risk (stop loss) for trade management.
---
Core Calculations
ATR (Average True Range)
atr = ta.atr(atrPeriod)
ATR is computed using the specified period to gauge price volatility.
Volume SMA
volumeSMA = ta.sma(volume, atrPeriod)
The script calculates the simple moving average of volume over the same period as ATR. This is used as a threshold for validating high-volume scenarios.
---
Support and Resistance Levels
`support` : Lowest price over the last `lookbackPeriod` candles.
`resistance` : Highest price over the same period.
`supportBuffer` and `resistanceBuffer` : These are "buffered" zones around support and resistance, calculated using half of the ATR to prevent false breakouts.
---
Entry Scenarios
Bullish Entry (`isBullishEntry`)
The close is above the buffered support level.
The low of the current candle touches or breaks below the support level.
The trading volume is greater than the `volumeSMA`.
Bearish Entry (`isBearishEntry`)
The close is below the buffered resistance level.
The high of the current candle touches or exceeds the resistance level.
The trading volume is greater than the `volumeSMA`.
---
Box Visualization
Bullish and Bearish Boxes
Bullish Box (`bullishBox`):
- A green, semi-transparent rectangle around the support level to highlight the bullish entry zone.
- Dynamically updates based on recent price action.
Bearish Box (`bearishBox`):
- A red, semi-transparent rectangle around the resistance level to highlight the bearish entry zone.
- Adjusts similarly as price evolves.
---
Stop Loss and Take Profit Calculations
Bullish Trades
Stop Loss (`bullishSL`): Calculated as support - atrMultiplierSL * ATR .
Take Profit 1 (`bullishTP1`): support + rewardToRisk * atrMultiplierTP1 * ATR .
Take Profit 2 (`bullishTP2`): support + rewardToRisk * atrMultiplierTP2 * ATR .
Bearish Trades
Stop Loss (`bearishSL`): resistance + atrMultiplierSL * ATR .
Take Profit 1 (`bearishTP1`): resistance - rewardToRisk * atrMultiplierTP1 * ATR .
Take Profit 2 (`bearishTP2`): resistance - rewardToRisk * atrMultiplierTP2 * ATR .
---
Visualization for Key Levels
Bullish Scenario
Green lines represent `bullishTP1` and `bullishTP2` for profit targets.
A red line indicates the `bullishSL` .
Labels like "TP1," "TP2," and "SL" dynamically appear at respective levels to make the targets and risk visually clear.
Bearish Scenario
Red lines represent `bearishTP1` and `bearishTP2` .
A green line marks the `bearishSL` .
Similar dynamic labeling for `TP1` , `TP2` , and `SL` at corresponding bearish levels.
---
Dynamic Updates
Both the entry boxes and key level visualizations (lines and labels) adjust dynamically based on real-time price and volume data.
---
Purpose
Identify high-probability bullish and bearish trade setups.
Define clear entry zones (using boxes) and exit levels (TP1, TP2, SL).
Incorporate volatility (via ATR) and volume into decision-making.
---
Technical Summary
Dynamically visualize support/resistance levels.
Set risk-managed trades using ATR-based stop-loss and profit levels.
Automate visual trade zones for enhanced chart clarity.
---
B-Xtrender By Neal inspired from @PuppytherapyThanks to @puppytherapy for creating the original B-Xtrender indicator, available at this link: B-Xtrender by @QuantTherapy
I played around the code to have entry and exit condition. The B-Xtrender @QuantTherapy
indicator is a momentum-based tool designed to help traders identify potential trade opportunities by tracking shifts in market momentum. Using a smoothed momentum oscillator, it detects changes in trend direction and provides clear signals for entry and exit points.
Features
Momentum Detection:
Tracks market momentum using the BX-Trender Oscillator.
Green bars indicate bullish momentum, while red bars indicate bearish momentum.
Lighter shades of green/red reflect weakening momentum.
Entry and Exit Signals:
Entry Condition: A long trade is triggered when the oscillator changes from red to green .
Exit Condition: A long trade exit is triggered when the oscillator changes from green to red .
Dynamic PnL Calculation:
Automatically calculates profit or loss in percentage (%) when a trade is exited.
Positive PnL values are prefixed with `+`, and negative values are shown as `-`.
Clear Visualization:
Bar chart-style oscillator in a separate pane for better trend visualization.
Trade labels on the main price chart for clear entry and exit points.
Inputs
Short-Term Momentum Parameters:
Short - L1: Length of the first EMA for short-term momentum calculations.
Short - L2: Length of the second EMA for short-term momentum calculations.
Short - L3: RSI smoothing period applied to the short-term momentum.
Long-Term Momentum Parameters:
Long - L1: Length of the EMA for long-term momentum calculations.
Long - L2: RSI smoothing period applied to the long-term momentum.
Entry and Exit Logic
Entry Condition:
A long trade is triggered when:
The BX-Trender Oscillator changes from red to green .
This shift indicates bullish momentum.
Exit Condition:
A long trade exit is triggered when:
The BX-Trender Oscillator changes from green to red .
This shift indicates a loss of bullish momentum or the start of bearish momentum.
PnL Calculation:
When exiting a trade, the indicator calculates the profit or loss as a percentage of the entry price.
Example:
A profit is displayed as +5.67% .
A loss is displayed as -3.21% .
Visualization
Oscillator Bars:
Green Bars: Represent increasing bullish momentum.
Light Green Bars: Represent weakening bullish momentum.
Red Bars: Represent increasing bearish momentum.
Light Red Bars: Represent weakening bearish momentum.
Just make sure that you checked off the B-Xtrend oscillator off from the style so chart can be active
Trade Labels:
Entry Labels: Displayed below the candle with the text Entry, long .
Exit Labels: Displayed above the candle with the text Exit .
Bar Chart Pane:
The oscillator is displayed in a separate pane for clear trend visualization.
Default Style
Oscillator Colors:
Green for bullish momentum.
Red for bearish momentum.
Light green and light red for weaker momentum.
Trade Labels:
Green labels for entries.
Red labels for exits, with percentage PnL displayed.
Use Cases
Momentum-Based Entries:
Detects shifts in momentum from bearish to bullish for precise trade entry points.
Trend Reversal Detection:
Identifies when bullish momentum weakens, signaling an exit opportunity.
Visual Simplicity:
Offers an intuitive way to track trends with its bar chart-style oscillator and clear trade labels.
This indicator doesn't indicate that it will work perfectly. More updates on the way.
Trend Trader-RemasteredThe script was originally coded in 2018 with Pine Script version 3, and it was in invite only status. It has been updated and optimised for Pine Script v5 and made completely open source.
Overview
The Trend Trader-Remastered is a refined and highly sophisticated implementation of the Parabolic SAR designed to create strategic buy and sell entry signals, alongside precision take profit and re-entry signals based on marked Bill Williams (BW) fractals. Built with a deep emphasis on clarity and accuracy, this indicator ensures that only relevant and meaningful signals are generated, eliminating any unnecessary entries or exits.
Key Features
1) Parabolic SAR-Based Entry Signals:
This indicator leverages an advanced implementation of the Parabolic SAR to create clear buy and sell position entry signals.
The Parabolic SAR detects potential trend shifts, helping traders make timely entries in trending markets.
These entries are strategically aligned to maximise trend-following opportunities and minimise whipsaw trades, providing an effective approach for trend traders.
2) Take Profit and Re-Entry Signals with BW Fractals:
The indicator goes beyond simple entry and exit signals by integrating BW Fractal-based take profit and re-entry signals.
Relevant Signal Generation: The indicator maintains strict criteria for signal relevance, ensuring that a re-entry signal is only generated if there has been a preceding take profit signal in the respective position. This prevents any misleading or premature re-entry signals.
Progressive Take Profit Signals: The script generates multiple take profit signals sequentially in alignment with prior take profit levels. For instance, in a buy position initiated at a price of 100, the first take profit might occur at 110. Any subsequent take profit signals will then occur at prices greater than 110, ensuring they are "in favour" of the original position's trajectory and previous take profits.
3) Consistent Trend-Following Structure:
This design allows the Trend Trader-Remastered to continue signaling take profit opportunities as the trend advances. The indicator only generates take profit signals in alignment with previous ones, supporting a systematic and profit-maximising strategy.
This structure helps traders maintain positions effectively, securing incremental profits as the trend progresses.
4) Customisability and Usability:
Adjustable Parameters: Users can configure key settings, including sensitivity to the Parabolic SAR and fractal identification. This allows flexibility to fine-tune the indicator according to different market conditions or trading styles.
User-Friendly Alerts: The indicator provides clear visual signals on the chart, along with optional alerts to notify traders of new buy, sell, take profit, or re-entry opportunities in real-time.
WiseOwl Indicator - 1.0 The WiseOwl Indicator - 1.0 is a technical analysis tool designed to help traders identify potential entry points and market trends based on Exponential Moving Averages (EMAs) across multiple timeframes. It focuses on providing clear visual cues for bullish and bearish market conditions, as well as potential breakout opportunities.
Key Features
Multi-Timeframe EMA Analysis: Calculates EMAs on the current timeframe, Daily timeframe, and 15-minute timeframe to confirm trends.
Bullish and Bearish Market Identification: Determines market conditions based on the 200-period EMA on the Daily timeframe.
Directional Candle Coloring: Highlights candles based on their position relative to EMAs to provide immediate visual feedback.
Entry Signals: Plots buy and sell signals on the chart when specific conditions are met on the 1-hour and 4-hour timeframes.
Breakout Candle Highlighting: Colors candles differently when significant price movements occur, indicating potential breakout opportunities.
How It Works
Market Condition Determination:
Bullish Market: When the close price is above the 200-period EMA on the Daily timeframe.
Bearish Market: When the close price is below the 200-period EMA on the Daily timeframe.
Directional Candle Coloring:
Green Background: Applied when the close is above the 50-period EMA and the market is not bearish.
Red Background: Applied when the close is below the 50-period EMA and the market is not bullish.
Uses the Average True Range (ATR) to define a range threshold.
Suppresses signals when EMAs are within this range, indicating a sideways market.
Plotting Entry Signals:
Plots arrows on the chart for potential long and short entries on the 1-hour and 4-hour timeframes.
Breakout Candle Coloring:
Colors candles blue when a bullish breakout condition is met.
Colors candles orange when a bearish breakout condition is met.
How to Use
Trend Identification: Use the background coloring to quickly identify the overall market trend.
Green Background: Suggests bullish conditions; consider looking for long opportunities.
Red Background: Suggests bearish conditions; consider looking for short opportunities.
Entry Signals: Look for plotted arrows on the chart.
Green Upward Arrow: Indicates a potential long entry signal on the 1-hour or 4-hour timeframe.
Red Downward Arrow: Indicates a potential short entry signal on the 1-hour or 4-hour timeframe.
Breakout Opportunities: Watch for candles colored blue or orange.
Blue Candles: Highlight significant upward price movements.
Orange Candles: Highlight significant downward price movements.
Avoiding Ranging Markets: Be cautious when signals are suppressed due to ranging conditions; the market may not have a clear direction.
Example Usage
Identifying a Bullish Market:
The background turns green.
Price crosses above the 50 EMA.
A green upward arrow appears below a candle on the 1-hour or 4-hour chart.
Identifying a Bearish Market:
The background turns red.
Price crosses below the 50 EMA.
A red downward arrow appears above a candle on the 1-hour or 4-hour chart.
Notes
Open-Source Code: The script is open-source, allowing users to review and understand the logic behind the indicator.
Educational Purpose: This indicator is intended to aid in technical analysis and should not be used as the sole basis for trading decisions.
Disclaimer
This indicator is for educational purposes only and does not constitute financial advice. Trading involves risk, and you should consult with a qualified financial advisor before making any investment decisions.
Target Trend [BigBeluga]The Target Trend indicator is a trend-following tool designed to assist traders in capturing directional moves while managing entry, stop loss, and profit targets visually on the chart. Using adaptive SMA bands as the core trend detection method, this indicator dynamically identifies shifts in trend direction and provides structured exit points through customizable target levels.
SP500:
🔵 IDEA
The Target Trend indicator’s concept is to simplify trade management by providing automated visual cues for entries, stops, and targets directly on the chart. When a trend change is detected, the indicator prints an up or down triangle to signal entry direction, plots three customizable target levels for potential exits, and calculates a stop-loss level below or above the entry point. The indicator continuously adapts as price moves, making it easier for traders to follow and manage trades in real time.
When price crosses a target level, the label changes to a check mark, confirming that the target has been achieved. Similarly, if the stop-loss level is hit, the label changes to an "X," and the line becomes dashed, indicating that the stop loss has been activated. This feature provides traders with a clear visual trail of whether their targets or stop loss have been hit, allowing for easier trade tracking and exit strategy management.
🔵 KEY FEATURES & USAGE
SMA Bands for Trend Detection: The indicator uses adaptive SMA bands to identify the trend direction. When price crosses above or below these bands, a new trend is detected, triggering entry signals. The entry point is marked on the chart with a triangle symbol, which updates with each new trend change.
Automated Targets and Stop Loss Management: Upon a new trend signal, the indicator automatically plots three price targets and a stop loss level. These levels provide traders with structured exit points for potential gains and a clear risk limit. The stop loss is placed below or above the entry point, depending on the trend direction, to manage downside risk effectively.
Visual Target and Stop Loss Validation: As price hits each target, the label beside the level updates to a check mark, indicating that the target has been reached. Similarly, if the stop loss is activated, the stop loss label changes to an "X," and the line becomes dashed. This feature visually confirms whether targets or stop losses are hit, simplifying trade management.
The indicator also marks the entry price at each trend change with a label on the chart, allowing traders to quickly see their initial entry point relative to current price and target levels.
🔵 CUSTOMIZATION
Trend Length: Set the lookback period for the trend-detection SMA bands to adjust the sensitivity to trend changes.
Targets Setting: Customize the number and spacing of the targets to fit your trading style and market conditions.
Visual Styles: Adjust the appearance of labels, lines, and symbols on the chart for a clearer view and personalized layout.
🔵 CONCLUSION
The Target Trend indicator offers a streamlined approach to trend trading by integrating entry, target, and stop loss management into a single visual tool. With automatic tracking of target levels and stop loss hits, it helps traders stay focused on the current trend while keeping track of risk and reward with minimal effort.
Fibonacci ATR Fusion - Strategy [presentTrading]Open-script again! This time is also an ATR-related strategy. Enjoy! :)
If you have any questions, let me know, and I'll help make this as effective as possible.
█ Introduction and How It Is Different
The Fibonacci ATR Fusion Strategy is an advanced trading approach that uniquely integrates Fibonacci-based weighted averages with the Average True Range (ATR) to identify and capitalize on significant market trends.
Unlike traditional strategies that rely on single indicators or static parameters, this method combines multiple timeframes and dynamic volatility measurements to enhance precision and adaptability. Additionally, it features a 4-step Take Profit (TP) mechanism, allowing for systematic profit-taking at various levels, which optimizes both risk management and return potential in long and short market positions.
BTCUSD 6hr Performance
█ Strategy, How It Works: Detailed Explanation
The Fibonacci ATR Fusion Strategy utilizes a combination of technical indicators and weighted averages to determine optimal entry and exit points. Below is a breakdown of its key components and operational logic.
🔶 1. Enhanced True Range Calculation
The strategy begins by calculating the True Range (TR) to measure market volatility accurately.
TR = max(High - Low, abs(High - Previous Close), abs(Low - Previous Close))
High and Low: Highest and lowest prices of the current trading period.
Previous Close: Closing price of the preceding trading period.
max: Selects the largest value among the three calculations to account for gaps and limit movements.
🔶 2. Buying Pressure (BP) Calculation
Buying Pressure (BP) quantifies the extent to which buyers are driving the price upwards within a period.
BP = Close - True Low
Close: Current period's closing price.
True Low: The lower boundary determined in the True Range calculation.
🔶 3. Ratio Calculation for Different Periods
To assess the strength of buying pressure relative to volatility, the strategy calculates a ratio over various Fibonacci-based timeframes.
Ratio = 100 * (Sum of BP over n periods) / (Sum of TR over n periods)
n: Length of the period (e.g., 8, 13, 21, 34, 55).
Sum of BP: Cumulative Buying Pressure over n periods.
Sum of TR: Cumulative True Range over n periods.
This ratio normalizes buying pressure, making it comparable across different timeframes.
🔶 4. Weighted Average Calculation
The strategy employs a weighted average of ratios from multiple Fibonacci-based periods to smooth out signals and enhance trend detection.
Weighted Avg = (w1 * Ratio_p1 + w2 * Ratio_p2 + w3 * Ratio_p3 + w4 * Ratio_p4 + Ratio_p5) / (w1 + w2 + w3 + w4 + 1)
w1, w2, w3, w4: Weights assigned to each ratio period.
Ratio_p1 to Ratio_p5: Ratios calculated for periods p1 to p5 (e.g., 8, 13, 21, 34, 55).
This weighted approach emphasizes shorter periods more heavily, capturing recent market dynamics while still considering longer-term trends.
🔶 5. Simple Moving Average (SMA) of Weighted Average
To further smooth the weighted average and reduce noise, a Simple Moving Average (SMA) is applied.
Weighted Avg SMA = SMA(Weighted Avg, m)
- m: SMA period (e.g., 3).
This smoothed line serves as the primary signal generator for trade entries and exits.
🔶 6. Trading Condition Thresholds
The strategy defines specific threshold values to determine optimal entry and exit points based on crossovers and crossunders of the SMA.
Long Condition = Crossover(Weighted Avg SMA, Long Entry Threshold)
Short Condition = Crossunder(Weighted Avg SMA, Short Entry Threshold)
Long Exit = Crossunder(Weighted Avg SMA, Long Exit Threshold)
Short Exit = Crossover(Weighted Avg SMA, Short Exit Threshold)
Long Entry Threshold (T_LE): Level at which a long position is triggered.
Short Entry Threshold (T_SE): Level at which a short position is triggered.
Long Exit Threshold (T_LX): Level at which a long position is exited.
Short Exit Threshold (T_SX): Level at which a short position is exited.
These conditions ensure that trades are only executed when clear trends are identified, enhancing the strategy's reliability.
Previous local performance
🔶 7. ATR-Based Take Profit Mechanism
When enabled, the strategy employs a 4-step Take Profit system to systematically secure profits as the trade moves in the desired direction.
TP Price_1 Long = Entry Price + (TP1ATR * ATR Value)
TP Price_2 Long = Entry Price + (TP2ATR * ATR Value)
TP Price_3 Long = Entry Price + (TP3ATR * ATR Value)
TP Price_1 Short = Entry Price - (TP1ATR * ATR Value)
TP Price_2 Short = Entry Price - (TP2ATR * ATR Value)
TP Price_3 Short = Entry Price - (TP3ATR * ATR Value)
- ATR Value: Calculated using ATR over a specified period (e.g., 14).
- TPxATR: User-defined multipliers for each take profit level.
- TPx_percent: Percentage of the position to exit at each TP level.
This multi-tiered exit strategy allows for partial position closures, optimizing profit capture while maintaining exposure to potential further gains.
█ Trade Direction
The Fibonacci ATR Fusion Strategy is designed to operate in both long and short market conditions, providing flexibility to traders in varying market environments.
Long Trades: Initiated when the SMA of the weighted average crosses above the Long Entry Threshold (T_LE), indicating strong upward momentum.
Short Trades: Initiated when the SMA of the weighted average crosses below the Short Entry Threshold (T_SE), signaling robust downward momentum.
Additionally, the strategy can be configured to trade exclusively in one direction—Long, Short, or Both—based on the trader’s preference and market analysis.
█ Usage
Implementing the Fibonacci ATR Fusion Strategy involves several steps to ensure it aligns with your trading objectives and market conditions.
1. Configure Strategy Parameters:
- Trading Direction: Choose between Long, Short, or Both based on your market outlook.
- Trading Condition Thresholds: Set the Long Entry, Short Entry, Long Exit, and Short Exit thresholds to define when to enter and exit trades.
2. Set Take Profit Levels (if enabled):
- ATR Multipliers: Define how many ATRs away from the entry price each take profit level is set.
- Take Profit Percentages: Allocate what percentage of the position to close at each TP level.
3. Apply to Desired Chart:
- Add the strategy to the chart of the asset you wish to trade.
- Observe the plotted Fibonacci ATR and SMA Fibonacci ATR indicators for visual confirmation.
4. Monitor and Adjust:
- Regularly review the strategy’s performance through backtesting.
- Adjust the input parameters based on historical performance and changing market dynamics.
5. Risk Management:
- Ensure that the sum of take profit percentages does not exceed 100% to avoid over-closing positions.
- Utilize the ATR-based TP levels to adapt to varying market volatilities, maintaining a balanced risk-reward ratio.
█ Default Settings
Understanding the default settings is crucial for optimizing the Fibonacci ATR Fusion Strategy's performance. Here's a precise and simple overview of the key parameters and their effects:
🔶 Key Parameters and Their Effects
1. Trading Direction (`tradingDirection`)
- Default: Both
- Effect: Determines whether the strategy takes both long and short positions or restricts to one direction. Selecting Both allows maximum flexibility, while Long or Short can be used for directional bias.
2. Trading Condition Thresholds
Long Entry (long_entry_threshold = 58.0): Higher values reduce false positives but may miss trades.
Short Entry (short_entry_threshold = 42.0): Lower values capture early short trends but may increase false signals.
Long Exit (long_exit_threshold = 42.0): Exits long positions early, securing profits but potentially cutting trends short.
Short Exit (short_exit_threshold = 58.0): Delays short exits to capture favorable movements, avoiding premature exits.
3. Take Profit Configuration (`useTakeProfit` = false)
- Effect: When enabled, the strategy employs a 4-step TP mechanism to secure profits at multiple levels. By default, it is disabled to allow users to opt-in based on their trading style.
4. ATR-Based Take Profit Multipliers
TP1 (tp1ATR = 3.0): Sets the first TP at 3 ATRs for initial profit capture.
TP2 (tp2ATR = 8.0): Targets larger trends, though less likely to be reached.
TP3 (tp3ATR = 14.0): Optimizes for extreme price moves, seldom triggered.
5. Take Profit Percentages
TP Level 1 (tp1_percent = 12%): Secures 12% at the first TP.
TP Level 2 (tp2_percent = 12%): Exits another 12% at the second TP.
TP Level 3 (tp3_percent = 12%): Closes an additional 12% at the third TP.
6. Weighted Average Parameters
Ratio Periods: Fibonacci-based intervals (8, 13, 21, 34, 55) balance responsiveness.
Weights: Emphasizes recent data for timely responses to market trends.
SMA Period (weighted_avg_sma_period = 3): Smoothens data with minimal lag, balancing noise reduction and responsiveness.
7. ATR Period (`atrPeriod` = 14)
Effect: Sets the ATR calculation length, impacting TP sensitivity to volatility.
🔶 Impact on Performance
- Sensitivity and Responsiveness:
- Shorter Ratio Periods and Higher Weights: Make the weighted average more responsive to recent price changes, allowing quicker trade entries and exits but increasing the likelihood of false signals.
- Longer Ratio Periods and Lower Weights: Provide smoother signals with fewer false positives but may delay trade entries, potentially missing out on significant price moves.
- Profit Taking:
- ATR Multipliers: Higher multipliers set take profit levels further away, targeting larger price movements but reducing the probability of reaching these levels.
- Fixed Percentages: Allocating equal percentages at each TP level ensures consistent profit realization and risk management, preventing overexposure.
- Trade Direction Control:
- Selecting Specific Directions: Restricting trades to Long or Short can align the strategy with market trends or personal biases, potentially enhancing performance in trending markets.
- Risk Management:
- Take Profit Percentages: Dividing the position into smaller percentages at multiple TP levels helps lock in profits progressively, reducing risk and allowing the remaining position to ride further trends.
- Market Adaptability:
- Weighted Averages and ATR: By combining multiple timeframes and adjusting to volatility, the strategy adapts to different market conditions, maintaining effectiveness across various asset classes and timeframes.
---
If you want to know more about ATR, can also check "SuperATR 7-Step Profit".
Enjoy trading.
SecretSauceByVipzOverview:
SecretSauceByVipz is a sophisticated trading indicator designed to help traders identify high-probability buy and sell signals by integrating multiple technical analysis tools. By combining Exponential Moving Averages (EMAs), Average True Range (ATR) buffer zones, Volume Weighted Average Price (VWAP), and Relative Strength Index (RSI) momentum confirmation, this indicator aims to reduce false signals and enhance trading decisions.
Key Features:
Exponential Moving Averages (EMAs):
200-period EMA (Long EMA): Serves as a long-term trend indicator.
8-period EMA (Fast EMA): Captures short-term price movements.
21-period EMA (Slow EMA): Reflects medium-term price trends.
EMA Crossovers: Generates initial buy/sell signals when the fast EMA crosses over or under the slow EMA.
ATR-Based Buffer Zones:
ATR Calculation: Utilizes a 14-period ATR to measure market volatility.
Buffer Zone Multiplier: User-adjustable multiplier (default 1.0) applied to the ATR to create dynamic buffer zones around the 200 EMA.
Buffer Zones: Helps filter out false signals by requiring price to move beyond these zones for certain signals.
Volume Weighted Average Price (VWAP):
VWAP Plotting: Provides an average price weighted by volume, useful for identifying fair value areas and potential support/resistance levels.
Signal Confirmation Logic:
Confirmation Candle: Requires the next candle after a crossover to close in the signal's direction for added reliability.
Early Signals: Triggers when price crosses the 200 EMA and moves beyond the buffer zone, indicating potential early trend changes.
Strong Signals: Occur when both the price crosses the fast EMA and the fast EMA crosses the slow EMA simultaneously.
RSI Momentum Confirmation:
RSI Calculation: Uses a 14-period RSI to gauge market momentum.
Momentum Filter: Confirms signals only when RSI aligns with the trend (above 50 for bullish, below 50 for bearish signals).
Visual Aids:
EMA and VWAP Plots: Overlays the EMAs and VWAP directly on the price chart for easy visualization.
Buffer Zone Lines: Plots the upper and lower buffer zones around the 200 EMA.
Signal Labels:
Buy Signals: Displayed as green "BUY" labels below the bars.
Sell Signals: Displayed as red "SELL" labels above the bars.
How to Use:
Trend Identification:
Use the 200 EMA to determine the overall market trend.
Price above the 200 EMA suggests a bullish trend; below indicates a bearish trend.
Signal Generation:
Confirmed Signals: Wait for the confirmation candle after an EMA crossover before considering entry.
Early Signals: Consider early entries when price crosses the 200 EMA and moves beyond the buffer zone.
Strong Signals: Pay attention to strong signals where both price and EMAs are crossing over, indicating robust trend momentum.
Momentum Confirmation:
Ensure the RSI aligns with the signal direction:
Buy Signals: RSI should be above 50.
Sell Signals: RSI should be below 50.
Adjusting Sensitivity:
Modify the ATR Multiplier and Buffer Multiplier to suit different market conditions and personal trading styles.
A higher multiplier may reduce signal frequency but increase reliability.
Customization Parameters:
ATR Multiplier for Distance Filter (Default: 1.5):
Adjusts the sensitivity of the distance filter based on ATR.
Buffer Multiplier for 200 EMA (Default: 1.0):
Alters the width of the buffer zones around the 200 EMA.
Benefits:
Reduces False Signals: The combination of confirmation candles and buffer zones helps filter out noise.
Enhances Trend Detection: Multiple EMA crossovers provide insights into short-term and medium-term trends.
Incorporates Volatility and Momentum: ATR and RSI ensure signals consider market volatility and momentum.
Disclaimer:
This indicator is a tool to assist in technical analysis and should not be used as the sole basis for trading decisions. Always conduct thorough analysis and consider risk management strategies before executing trades. Past performance is not indicative of future results.
Credits:
Developed by Vipink1203.
Version:
Pine Script Version 5
Forex Relative Strength MatrixTraders often feel uncertain about which Forex pair to open a position with. This indicator is designed to help in that regard.
This indicator was created as described in the book Swing Trading with Heiken Ashi and Stochastics. In the original, the author suggests using it for swing trading. The author recommends applying it to a monthly chart with an 8-period moving average to analyze the context.
The logic of the indicator is to measure the relative strength of each currency by checking if the price of each Forex pair is above or below a chosen moving average. If the price is above the moving average, the base currency is awarded 1 point, indicating strength. If below, it scores 0, indicating weakness. By accumulating points across multiple pairs, the indicator ranks currencies from strongest to weakest, helping traders identify potential pairs for trading.
Trend Identification:
After identifying relative strength, the trader should observe the general trend using a 100-period SMA on 4-hour charts. If the price is above the SMA, the trend is bullish; if below, it is bearish.
Buy Logic:
A buy is triggered when the base currency is strong (price is above the moving average) and the quote currency is weak (price is below the moving average). After identifying the trend direction, the entry is confirmed by a color change in Heiken Ashi candles (from red to green in an uptrend) and a stochastic crossover in the trend’s direction.
Sell Logic:
A sell is triggered when the base currency is weak (price is below the moving average) and the quote currency is strong (price is above the moving average). The sell entry is confirmed by a color change in Heiken Ashi candles (from green to red in a downtrend) and a stochastic crossover aligned with the trend.
Entry Chart:
The entry chart used is the 4-hour chart. The trader should look for entry signals following a pullback in the trend direction, using Heiken Ashi candles. Entry is made when the Heiken Ashi candles change color (from red to green in an uptrend) and there is a smooth crossover of the stochastic indicator in the trend’s direction.
It would also be possible to adapt the indicator for day trading strategies with targets of 1 to 2 days. Here is a recommended setup:
Relative Strength Identification (1-Hour Chart):
Instead of monthly charts, use a 1-hour chart to identify currency strength with a 20-period moving average.
The 20-period moving average on the 1-hour chart captures a balanced view of short- to medium-term direction, covering nearly a day’s worth of trading but with enough sensitivity for day trading.
General Trend (5-Minute Chart with 100 SMA):
On the 5-minute chart, observe the 100-period SMA to identify the general trend direction throughout the day.
Price above the 100 SMA indicates an uptrend, and below indicates a downtrend, confirming the movement in shorter timeframes.
Entry Chart and Signals (5-Minute Chart):
Use the 15-minute chart to look for entry opportunities, focusing on pullbacks in the main trend direction.
Entry Signals: Enter the position when Heiken Ashi candles change color in the trend direction (from red to green in an uptrend) and the stochastic indicator makes a smooth crossover in the trend’s direction.
Ultimate Multi Indicator - by SachaThe Ultimate Multi Indicator: The Ultimate Guide To Profit
This custom indicator, the Ultimate Multi Indicator , integrates multiple trading indicators to have powerful buy and sell signals. I combined MACD, EMA, RSI, Bollinger Bands, Volume Profile, and Ichimoku Cloud indicators to help traders analyze both short-term and long-term price movements.
Key Components and How to Use Them
- MACD (Moving Average Convergence Divergence):
- Use for trend direction and potentiality of reversals.
- The blue line (MACD Line) crossing above the orange line (Signal Line) indicates a bullish reversal; the opposite signals a bearish reversal.
- Watch for crossovers to confirm the direction of smaller price movements.
- 200 EMA (Long) (Exponential Moving Average):
- Use to indicate a long-term trend direction.
- If the price is above the 200 EMA, the market is in an uptrend; below it suggests a downtrend.
- The chart’s background color shifts subtly green (uptrend) or red (downtrend) depending on the EMA's relative position.
- RSI (Relative Strength Index):
- Tracks momentum and overbought/oversold levels.
- RSI over 70 signifies overbought conditions; under 30 indicates oversold.
- Look for RSI turning points around these levels to identify potential reversals.
- Bollinger Bands :
- The price touching or crossing the upper Bollinger Band may mean overbought conditions are filled, while a touch at the lower band indicates oversold.
- Bollinger Band interactions often align with key reversal points, especially when combined with other signals.
- Volume Profile :
- A yellow VP line on the chart represents significant trading volume occurred.
- This line can be used as both a support and resistance level, and especially during consolidations or trend changes.
- Ichimoku Cloud :
- Identifies support/resistance levels and trend direction.
- Green and red cloud regions visually show if the price is above (bullish) or below (bearish) key levels.
- Price above the cloud (green) confirms a bullish market, while below (red) signals bearish.
Signal Conditions and Visualization
- Buy Signals :
- This is triggered right away when MACD crosses up, RSI is oversold, or price touches the lower Bollinger Band, provided price is above both the Ichimoku Cloud and the 200 EMA.
- A green “BUY” label appears below the bar, suggesting a potential entry.
- Sell Signals :
- This signal is generated when MACD crosses down, RSI is overbought, or price touches the upper Bollinger Band, and price is below the Ichimoku Cloud and the 200 EMA.
- A red “SELL” label is shown above the bar, indicating a potential exit.
Tips & Tricks
- Confirm Signals : Use multiple signals to confirm entries and exits. For example, if both the MACD and RSI align with the Ichimoku Cloud direction, the trade setup is stronger.
- Trend Directions : Only take buy signals if the price is above the 200 EMA, and sell signals if it is below, aligning trades with the overall trend.
- Adjust for Volatility : In high-volatility markets, especially in the crypto markets, pay close attention to the Bollinger Bands for breakout potential.
- Ichimoku as a Trend Guide : Use the Ichimoku Cloud as a guide for long-term support and resistance levels, especially for swing trades.
This multi-layered indicator gives a balanced blend of short-term signals and long-term trend insights, making it a versatile tool for day trading, swing trading, or even longer-term analysis.
Remember that indicators that will make you rich instantly don't exist. To expect minimum profit from them, you shouldn't trade all you have at the same time but only trade with the money you can afford to lose.
After that being said, I wish you traders luck with the Ultimate Multi Indicator!
The Pattern-Synced Moving Average System (PSMA)Description:
The Pattern-Synced Moving Average System (PSMA) is a comprehensive trading indicator that combines the reliability of moving averages with automated candlestick pattern detection, real-time alerts, and dynamic risk management to enhance both trend-following and reversal strategies. The PSMA system integrates key elements of trend analysis and pattern recognition to provide users with configurable entry, stop-loss, and take-profit levels. It is designed for all levels of traders who seek to trade in alignment with market context, using signals from trend direction and established candlestick patterns.
Key Functional Components:
Multi-Type Moving Average:
Provides flexibility with multiple moving average options: SMA, EMA, WMA, and SMMA.
The selected moving average helps users determine market trend direction, with price positions relative to the MA acting as a trend confirmation.
Automatic Candlestick Pattern Detection:
Identifies pivotal patterns, including bullish/bearish engulfing and reversal signals.
Helps traders spot potential market turning points and adjust their strategies accordingly.
Configurable Entry, Stop-Loss, and Take-Profit:
Risk management is customizable through risk/reward ratios and risk tolerance settings.
Entry, stop-loss, and take-profit levels are automatically plotted when patterns appear, facilitating rapid trade decision-making with predefined exit points.
Higher Timeframe Trend Confirmation:
Optional feature to verify trend alignment on a higher timeframe (e.g., checking a daily trend on an intraday chart).
This added filter improves signal reliability by focusing on patterns aligned with the broader market trend.
Real-Time Alerts:
Alerts can be set for key pattern detections, allowing traders to respond promptly without constant chart monitoring.
How to Use PSMA:
Set Moving Average Preferences:
Choose the preferred moving average type and length based on your trading strategy. The MA acts as a foundational trend indicator, with price positions indicating potential uptrends (price above MA) or downtrends (price below MA).
Adjust Risk Management Settings:
Set a Risk/Reward Ratio for defining take-profit levels relative to the entry and stop-loss levels.
Modify the Risk Tolerance Percentage to adjust stop-loss placement, adding flexibility in managing trades based on market volatility.
Activate Higher Timeframe Confirmation (Optional):
Enable higher timeframe trend confirmation to filter out counter-trend trades, ensuring that detected patterns are in sync with the larger market trend.
Review Alerts and Trade Levels:
With PSMA’s real-time alerts, traders receive notifications for detected patterns without having to continuously monitor charts.
Visualized entry, stop-loss, and take-profit lines simplify trade execution by highlighting levels directly on the chart.
Execute Based on Entry and Exit Levels:
The entry line suggests the potential entry price once a bullish or bearish pattern is detected.
The stop-loss line is based on your set risk tolerance, establishing a predefined risk level.
The take-profit line is calculated according to your preferred risk/reward ratio, providing a clear profit target.
Example Strategy:
Ensure price is above or below the selected moving average to confirm trend direction.
Await a PSMA signal for a bullish or bearish pattern.
Review the plotted entry, stop-loss, and take-profit lines, and enter the trade if the setup aligns with your risk/reward criteria.
Activate alerts for continuous monitoring, allowing PSMA to notify you of emerging trade opportunities.
Release Notes:
Line Color and Style Customization: Customizable colors and line styles for entry, stop-loss, and take-profit levels.
Dynamic Trade Tracking: Tracks trade statistics, including total trades, win rate, and average P/L, displayed in the data window for comprehensive trade performance analysis.
Summary: The PSMA indicator is a powerful, user-friendly tool that combines trend detection, pattern recognition, and risk management into a cohesive system for improved trade decision-making. Suitable for stocks, forex, and futures, PSMA offers a unique blend of adaptability and precision, making it valuable for day traders and long-term investors alike. Enjoy this tool as it enhances your ability to execute timely, well-informed trades on TradingView.
MFI Strategy with Oversold Zone Exit and AveragingThis strategy is based on the Money Flow Index (MFI) and aims to enter a long position when the MFI exits an oversold zone, with specific rules for limit orders, stop-loss, and take-profit settings. Here's a detailed breakdown:
Key Components
1. **Money Flow Index (MFI)**: The strategy uses the MFI, a volume-weighted indicator, to gauge whether the market is in an oversold condition (default threshold of MFI < 20). Once the MFI rises above the oversold threshold, it signals a potential buying opportunity.
2. **Limit Order for Long Entry**: Instead of entering immediately after the oversold condition is cleared, the strategy places a limit order at a price slightly below the current price (by a user-defined percentage). This helps achieve a better entry price.
3. **Stop-Loss and Take-Profit**:
- **Stop-Loss**: A stop-loss is set to protect against significant losses, calculated as a percentage below the entry price.
- **Take-Profit**: A take-profit target is set as a percentage above the entry price to lock in gains.
4. **Order Cancellation**: If the limit order isn’t filled within a specific number of bars (default is 5 bars), it’s automatically canceled to avoid being filled at a potentially suboptimal price as market conditions change.
Strategy Workflow
1. **Identify Oversold Zone**: The strategy checks if the MFI falls below a defined oversold level (default is 20). Once this condition is met, the flag `inOversoldZone` is set to `true`.
2. **Wait for Exit from Oversold Zone**: When the MFI rises back above the oversold level, it’s considered a signal that the market is potentially recovering, and the strategy prepares to enter a position.
3. **Place Limit Order**: Upon exiting the oversold zone, the strategy places a limit order for a long position at a price below the current price, defined by the `Long Entry Percentage` parameter.
4. **Monitor Limit Order**: A counter (`barsSinceEntryOrder`) starts counting the bars since the limit order was placed. If the order isn’t filled within the specified number of bars, it’s canceled automatically.
5. **Set Stop-Loss and Take-Profit**: Once the order is filled, a stop-loss and take-profit are set based on user-defined percentages relative to the entry price.
6. **Exit Strategy**: The trade will close automatically when either the stop-loss or take-profit level is hit.
Advantages
- **Risk Management**: With configurable stop-loss and take-profit, the strategy ensures losses are limited while capturing profits at pre-defined levels.
- **Controlled Entry**: The use of a limit order below the current price helps secure a better entry point, enhancing risk-reward.
- **Oversold Exit Trigger**: Using the exit from an oversold zone as an entry condition can help catch reversals.
Disadvantages
- **Missed Entries**: If the limit order isn’t filled due to insufficient downward movement after the oversold signal, potential opportunities may be missed.
- **Dependency on MFI Sensitivity**: As the MFI is sensitive to both price and volume, its fluctuations might not always accurately represent oversold conditions.
Overall Purpose
The strategy is suited for traders who want to capture potential reversals after oversold conditions in the market, with a focus on precise entries, risk management, and an automated exit plan.
Immediate Rebalance ICT [TradingFinder] No Imbalances - MTF Gaps🔵 Introduction
The concept of "Immediate Rebalance" in technical analysis is a powerful and advanced strategy within the ICT (Inner Circle Trader) framework, widely used to identify key market levels.
Unlike the "Fair Value Gap," which leaves a price gap requiring a retracement for a fill, an Immediate Rebalance fills the gap immediately, representing an instant balance that strengthens the prevailing market trend. This structure allows traders to quickly spot critical price zones, capitalizing on strong trend continuations without the need for price retracement.
The "Immediate Rebalance ICT" indicator leverages this concept, providing traders with automated identification of critical supply and demand zones, order blocks, liquidity voids, and key buy-side and sell-side liquidity levels.
Through features like crucial liquidity points and immediate rebalancing areas, this tool enables traders to perform precise real-time market analysis and seize profitable opportunities.
🔵 How to Use
The Immediate Rebalance indicator assists traders in identifying reliable trading signals by detecting and analyzing Immediate Rebalance zones. By focusing on supply and demand areas, the indicator pinpoints optimal entry and exit positions.
Here’s how to use the indicator in both bearish (Supply Immediate Rebalance) and bullish (Demand Immediate Rebalance) structures :
🟣 Bullish Structure (Demand Immediate Rebalance)
In a bullish scenario, the indicator detects a Demand Immediate Rebalance formed by two consecutive bullish candles with overlapping wicks. This structure signifies an immediate demand zone, where price instantly balances within the zone, reducing the likelihood of a revisit and indicating potential upside momentum.
Zone Identification : Look for two consecutive bullish candles with overlapping wicks, forming a demand zone. This structure, due to its rapid balance, usually does not require a revisit and supports further upward movement.
Entry and Exit Levels : If price revisits this zone, percentage markers, particularly 50% and 75%, act as supportive levels, creating ideal entry points for long positions.
Example : In the second image, an example of a Demand Immediate Rebalance is shown, where overlapping bullish candle shadows indicate immediate balance, supporting the continuation of the bullish trend.
🟣 Bearish Structure (Supply Immediate Rebalance)
In a bearish setup, the indicator identifies a Supply Immediate Rebalance when two consecutive bearish candles with overlapping wicks appear. This formation signals an immediate supply zone, suggesting a high probability of trend continuation to the downside, with minimal expectation for price to retrace back to this area.
Zone Identificatio n: Look for two consecutive bearish candles with overlapping shadows. This structure forms a supply area where price is expected to continue its downtrend without revisiting the zone.
Entry and Exit Level s: Should price revisit this zone, percentage-based levels (e.g., 50% and 75%) serve as potential resistance points, optimizing entry for short positions, especially if the downtrend is expected to persist.
Example : The attached chart illustrates a Supply Immediate Rebalance, where overlapping candle shadows define this area, reassuring traders of a continued downward trend with a low likelihood of price returning to this zone.
🔵 Settings
ImmR Filter : This filter allows users to adjust the detection of Immediate Rebalance zones in four modes, from "Very Aggressive" to "Very Defensive," based on zone width. The chosen mode controls the sensitivity of Immediate Rebalance detection, allowing users to fine-tune the indicator to their trading style.
Multi Time Frame : Enabling this option allows users to set the indicator to a specific timeframe (1 minute, 5 minutes, 15 minutes, 30 minutes, 1 hour, 4 hours, daily, weekly, or monthly), broadening the perspective for identifying Immediate Rebalance zones across multiple timeframes.
🔵 Conclusion
The Immediate Rebalance indicator, based on rapid balancing zones within supply and demand areas, serves as a powerful tool for market analysis and improving trade decision-making.
By accurately identifying zones where price achieves instant balance without gaps, the indicator highlights areas likely to support strong trend continuations, exempt from common retracements.
The indicator’s use of percentage levels enables traders to pinpoint optimal entry and exit points more effectively, with levels like 50% and 75% acting as support within demand zones and resistance within supply zones. This empowers traders to ride strong trends without the worry of abrupt reversals.
Overall, the Immediate Rebalance is a reliable tool for both professional and beginner traders seeking precise methods to recognize supply and demand zones, capitalizing on consistent trends.
By choosing appropriate settings and focusing on the zones highlighted by this indicator, traders can enter trades with greater confidence and improve their risk management.
PineConnectorLibrary "PineConnector"
This library is a comprehensive alert webhook text generator for PineConnector. It contains every possible alert syntax variation from the documentation, along with some debugging functions.
To use it, just import the library (eg. "import ZenAndTheArtOfTrading/PineConnector/1 as pc") and use pc.buy(licenseID) to send an alert off to PineConnector - assuming all your webhooks etc are set up correctly.
View the PineConnector documentation for more information on how to send the commands you're looking to send (all of this library's function names match the documentation).
all()
Usage: pc.buy(pc_id, freq=pc.all())
Returns: "all"
once_per_bar()
Usage: pc.buy(pc_id, freq=pc.once_per_bar())
Returns: "once_per_bar"
once_per_bar_close()
Usage: pc.buy(pc_id, freq=pc.once_per_bar_close())
Returns: "once_per_bar_close"
na0(value)
Checks if given value is either 'na' or 0. Useful for streamlining scripts with float user setting inputs which default values to 0 since na is unavailable as a user input default.
Parameters:
value (float) : The value to check
Returns: True if the given value is 0 or na
getDecimals()
Calculates how many decimals are on the quote price of the current market.
Returns: The current decimal places on the market quote price
truncate(number, decimals)
Truncates the given number. Required params: mumber.
Parameters:
number (float) : Number to truncate
decimals (int) : Decimal places to cut down to
Returns: The input number, but as a string truncated to X decimals
getPipSize(multiplier)
Calculates the pip size of the current market.
Parameters:
multiplier (int) : The mintick point multiplier (1 by default, 10 for FX/Crypto/CFD but can be used to override when certain markets require)
Returns: The pip size for the current market
toWhole(number)
Converts pips into whole numbers. Required params: number.
Parameters:
number (float) : The pip number to convert into a whole number
Returns: The converted number
toPips(number)
Converts whole numbers back into pips. Required params: number.
Parameters:
number (float) : The whole number to convert into pips
Returns: The converted number
debug(txt, tooltip, displayLabel)
Prints to console and generates a debug label with the given text. Required params: txt.
Parameters:
txt (string) : Text to display
tooltip (string) : Tooltip to display (optional)
displayLabel (bool) : Turns on/off chart label (default: off)
Returns: Nothing
order(licenseID, command, symbol, parameters, accfilter, comment, secret, freq, debug)
Generates an alert string. Required params: licenseID, command.
Parameters:
licenseID (string) : Your PC license ID
command (string) : Command to send
symbol (string) : The symbol to trigger this order on
parameters (string) : Other optional parameters to include
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: An alert string with valid PC syntax based on supplied parameters
market_order(licenseID, buy, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a market entry alert with relevant syntax commands. Required params: licenseID, buy, risk.
Parameters:
licenseID (string) : Your PC license ID
buy (bool) : true=buy/long, false=sell/short
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A market order alert string with valid PC syntax based on supplied parameters
buy(licenseID, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a market buy alert with relevant syntax commands. Required params: licenseID, risk.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A market order alert string with valid PC syntax based on supplied parameters
sell(licenseID, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a market sell alert with relevant syntax commands. Required params: licenseID, risk.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A market order alert string with valid PC syntax based on supplied parameters
closeall(licenseID, comment, secret, freq, debug)
Closes all open trades at market regardless of symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closealleaoff(licenseID, comment, secret, freq, debug)
Closes all open trades at market regardless of symbol, and turns the EA off. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closelong(licenseID, symbol, comment, secret, freq, debug)
Closes all long trades at market for the given symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closeshort(licenseID, symbol, comment, secret, freq, debug)
Closes all open short trades at market for the given symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closelongshort(licenseID, symbol, comment, secret, freq, debug)
Closes all open trades at market for the given symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closelongbuy(licenseID, risk, symbol, comment, secret, freq, debug)
Close all long positions and open a new long at market for the given symbol with given risk/contracts. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : Risk or contracts (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closeshortsell(licenseID, risk, symbol, comment, secret, freq, debug)
Close all short positions and open a new short at market for the given symbol with given risk/contracts. Required params: licenseID, risk.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : Risk or contracts (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
newsltplong(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any open long trades on the given symbol with the given values. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
newsltpshort(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any open short trades on the given symbol with the given values. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closelongpct(licenseID, symbol, comment, secret, freq, debug)
Close a percentage of open long positions (according to EA settings). Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closeshortpct(licenseID, symbol, comment, secret, freq, debug)
Close a percentage of open short positions (according to EA settings). Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closelongvol(licenseID, risk, symbol, comment, secret, freq, debug)
Close all open long contracts on the current symbol until the given risk value is remaining. Required params: licenseID, risk.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : The quantity to leave remaining
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
closeshortvol(licenseID, risk, symbol, comment, secret, freq, debug)
Close all open short contracts on the current symbol until the given risk value is remaining. Required params: licenseID, risk.
Parameters:
licenseID (string) : Your PC license ID
risk (float) : The quantity to leave remaining
symbol (string) : Symbol to act on (defaults to current symbol)
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
limit_order(licenseID, buy, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a limit order alert with relevant syntax commands. Required params: licenseID, buy, price, risk.
Parameters:
licenseID (string) : Your PC license ID
buy (bool) : true=buy/long, false=sell/short
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A limit order alert string with valid PC syntax based on supplied parameters
buylimit(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a buylimit order alert with relevant syntax commands. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A limit order alert string with valid PC syntax based on supplied parameters
selllimit(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a selllimit order alert with relevant syntax commands. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A limit order alert string with valid PC syntax based on supplied parameters
stop_order(licenseID, buy, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a stop order alert with relevant syntax commands. Required params: licenseID, buy, price, risk.
Parameters:
licenseID (string) : Your PC license ID
buy (bool) : true=buy/long, false=sell/short
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
buystop(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a buystop order alert with relevant syntax commands. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
sellstop(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Generates a sellstop order alert with relevant syntax commands. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancel_neworder(licenseID, order, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Cancel + place new order template function.
Parameters:
licenseID (string) : Your PC license ID
order (string) : Cancel order type
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancellongbuystop(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Cancels all long orders with the specified symbol and places a new buystop order. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancellongbuylimit(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Cancels all long orders with the specified symbol and places a new buylimit order. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancelshortsellstop(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Cancels all short orders with the specified symbol and places a sellstop order. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancelshortselllimit(licenseID, price, risk, sl, tp, betrigger, beoffset, spread, trailtrig, traildist, trailstep, atrtimeframe, atrperiod, atrmultiplier, atrshift, atrtrigger, symbol, accfilter, comment, secret, freq, debug)
Cancels all short orders with the specified symbol and places a selllimit order. Required params: licenseID, price, risk.
Parameters:
licenseID (string) : Your PC license ID
price (float) : Price or pips to set limit order (according to EA settings)
risk (float) : Risk quantity (according to EA settings)
sl (float) : Stop loss distance in pips or price
tp (float) : Take profit distance in pips or price
betrigger (float) : Breakeven will be activated after the position gains this number of pips
beoffset (float) : Offset from entry price. This is the amount of pips you'd like to protect
spread (float) : Enter the position only if the spread is equal or less than the specified value in pips
trailtrig (float) : Trailing stop-loss will be activated after a trade gains this number of pips
traildist (float) : Distance of the trailing stop-loss from current price
trailstep (float) : Moves trailing stop-loss once price moves to favourable by a specified number of pips
atrtimeframe (int) : ATR Trailing Stop timeframe, only updates once per bar close. Options: 1, 5, 15, 30, 60, 240, 1440
atrperiod (int) : ATR averaging period
atrmultiplier (float) : Multiple of ATR to utilise in the new SL computation, default = 1
atrshift (int) : Relative shift of price information, 0 uses latest candle, 1 uses second last, etc. Default = 0
atrtrigger (int) : Activate the trigger of ATR Trailing after market moves favourably by a number of pips. Default = 0 (instant)
symbol (string) : The symbol to trigger this order on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment (maximum 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A stop order alert string with valid PC syntax based on supplied parameters
cancellong(licenseID, symbol, accfilter, comment, secret, freq, debug)
Cancels all pending long orders with the specified symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A cancel long alert command
cancelshort(licenseID, symbol, accfilter, comment, secret, freq, debug)
Cancels all pending short orders with the specified symbol. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: A cancel short alert command
newsltpbuystop(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any pending buy stop orders on the given symbol. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
newsltpbuylimit(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any pending buy limit orders on the given symbol. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
newsltpsellstop(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any pending sell stop orders on the given symbol. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
newsltpselllimit(licenseID, sl, tp, symbol, accfilter, comment, secret, freq, debug)
Updates the stop loss and/or take profit of any pending sell limit orders on the given symbol. Required params: licenseID, sl and/or tp.
Parameters:
licenseID (string) : Your PC license ID
sl (float) : Stop loss pips or price (according to EA settings)
tp (float) : Take profit pips or price (according to EA settings)
symbol (string) : Symbol to act on (defaults to current symbol)
accfilter (float) : Optional minimum account balance filter
comment (string) : Optional comment to include (max 20 characters)
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
eaoff(licenseID, secret, freq, debug)
Turns the EA off. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
eaon(licenseID, secret, freq, debug)
Turns the EA on. Required params: licenseID.
Parameters:
licenseID (string) : Your PC license ID
secret (string) : Optional secret key (must be enabled in dashboard)
freq (string) : Alert frequency. Default = "all", options = "once_per_bar", "once_per_bar_close" and "none"
debug (bool) : Turns on/off debug label
Returns: The required alert syntax as a string
MTF EHMA & HMA Insights [FibonacciFlux]MTF EHMA & HMA Insights
Overview
The Multi-Timeframe EHMA, HMA, and Midline with Fill script is a powerful technical analysis tool designed for traders seeking to enhance their market insights and decision-making processes. By integrating two advanced moving averages—Exponential Hull Moving Average (EHMA) and Hull Moving Average (HMA)—along with a dynamic midline, this indicator provides a comprehensive view of market trends across multiple timeframes.
Key Features
1. Dual Moving Averages
- Exponential Hull Moving Average (EHMA) :
- Offers a rapid response to price changes, making it particularly useful for identifying short-term trends.
- Utilizes a unique calculation method that reduces lag, allowing traders to react quickly to market movements.
- Hull Moving Average (HMA) :
- Known for its smoothness and ability to filter out noise, the HMA presents a clear picture of the underlying trend.
- The HMA is specifically designed to achieve a balance between responsiveness and smoothness, enabling traders to make informed decisions.
2. Midline Calculation
- Dynamic Midline (m) :
- The midline is calculated as the average of EHMA and HMA, providing a neutral reference point for evaluating price movements.
- It visually represents market sentiment; a rising midline suggests bullish conditions, while a declining midline indicates bearish trends.
3. Visual Components
- Fill Areas :
- Color-coded fills between the EHMA and HMA enhance visual clarity by indicating the relative position of these moving averages.
- The fill color dynamically changes based on the relationship between the two averages (green for EHMA below HMA and red for EHMA above HMA), allowing traders to quickly assess market conditions.
4. Signal Generation and Alerts
- Buy/Sell Signals :
- The indicator generates buy signals when the midline crosses above its previous value, indicating a potential upward trend.
- Conversely, sell signals are triggered when the midline crosses below its previous value, suggesting a possible downward movement.
- Alert Conditions :
- Built-in alerts notify traders in real-time when significant changes occur, allowing them to act swiftly on potential trading opportunities.
- Customizable alert messages ensure traders receive relevant information tailored to their strategies.
Technical Details
Input Parameters
- Timeframe Settings :
- Traders can customize the timeframes for both EHMA and HMA, enabling them to adapt the indicator to different trading styles and market conditions.
- Length Settings :
- Adjustable lengths for both moving averages impact their sensitivity, allowing traders to optimize their performance based on volatility and market dynamics.
Plotting and Visualization
- Plotting :
- The script plots the EHMA, HMA, and midline directly on the chart for easy visualization.
- Signal labels (BUY and SELL) are displayed prominently, helping traders to identify potential entry and exit points without ambiguity.
Benefits
1. Clarity and Insight
- The combination of EHMA, HMA, and midline provides a clear and concise visual representation of market trends, aiding traders in making informed decisions.
2. Flexibility
- Customizable parameters allow traders to tailor the indicator to their specific needs, making it suitable for various market conditions and trading styles.
3. Efficiency
- Real-time alerts and visual signals minimize response times, enabling traders to capitalize on opportunities as they arise.
4. Enhanced Trading Conditions
- When utilizing the Fibonacci number 144 on a daily chart, the indicator facilitates optimal trading conditions:
- "The entry was made before the bubble began, using 144 as the Fibonacci variable."
- "The exit occurred right before the bubble burst, or alternatively, a short position was initiated."
- "When the next bubble started, a long entry was made again."
- "Despite some lag, the position was exited and a long entry was made."
- "The exit or short entry took place at the second double top peak."
- "A short position was already established before the double top formation occurred."
- On a 4-hour chart, traders can effectively set stop losses at HMA levels, achieving a risk-reward ratio between 4 and 8.
- Additionally, analyzing the 15-minute chart with a multi-timeframe approach allows for more precise entry points.
Conclusion
The Multi-Timeframe EHMA, HMA, and Midline with Fill script is a robust tool for traders looking to enhance their technical analysis capabilities. By combining multiple moving averages with a dynamic midline and alert system, this indicator offers a comprehensive approach to understanding market trends. Its flexibility, clarity, and efficiency make it an invaluable asset for both novice and experienced traders alike.
Important Note
As with any trading tool, it is crucial to conduct thorough analysis and risk management when using this indicator. Past performance does not guarantee future results, and traders should always be prepared for potential market fluctuations.
Trading IQ - ICT LibraryLibrary "ICTlibrary"
Used to calculate various ICT related price levels and strategies. An ongoing project.
Hello Coders!
This library is meant for sourcing ICT related concepts. While some functions might generate more output than you require, you can specify "Lite Mode" as "true" in applicable functions to slim down necessary inputs.
isLastBar(userTF)
Identifies the last bar on the chart before a timeframe change
Parameters:
userTF (simple int) : the timeframe you wish to calculate the last bar for, must be converted to integer using 'timeframe.in_seconds()'
Returns: bool true if bar on chart is last bar of higher TF, dalse if bar on chart is not last bar of higher TF
necessaryData(atrTF)
returns necessaryData UDT for historical data access
Parameters:
atrTF (float) : user-selected timeframe ATR value.
Returns: logZ. log return Z score, used for calculating order blocks.
method gradBoxes(gradientBoxes, idColor, timeStart, bottom, top, rightCoordinate)
creates neon like effect for box drawings
Namespace types: array
Parameters:
gradientBoxes (array) : an array.new() to store the gradient boxes
idColor (color)
timeStart (int) : left point of box
bottom (float) : bottom of box price point
top (float) : top of box price point
rightCoordinate (int) : right point of box
Returns: void
checkIfTraded(tradeName)
checks if recent trade is of specific name
Parameters:
tradeName (string)
Returns: bool true if recent trade id matches target name, false otherwise
checkIfClosed(tradeName)
checks if recent closed trade is of specific name
Parameters:
tradeName (string)
Returns: bool true if recent closed trade id matches target name, false otherwise
IQZZ(atrMult, finalTF)
custom ZZ to quickly determine market direction.
Parameters:
atrMult (float) : an atr multiplier used to determine the required price move for a ZZ direction change
finalTF (string) : the timeframe used for the atr calcuation
Returns: dir market direction. Up => 1, down => -1
method drawBos(id, startPoint, getKeyPointTime, getKeyPointPrice, col, showBOS, isUp)
calculates and draws Break Of Structure
Namespace types: array
Parameters:
id (array)
startPoint (chart.point)
getKeyPointTime (int) : the actual time of startPoint, simplystartPoint.time
getKeyPointPrice (float) : the actual time of startPoint, simplystartPoint.price
col (color) : color of the BoS line / label
showBOS (bool) : whether to show label/line. This function still calculates internally for other ICT related concepts even if not drawn.
isUp (bool) : whether BoS happened during price increase or price decrease.
Returns: void
method drawMSS(id, startPoint, getKeyPointTime, getKeyPointPrice, col, showMSS, isUp, upRejections, dnRejections, highArr, lowArr, timeArr, closeArr, openArr, atrTFarr, upRejectionsPrices, dnRejectionsPrices)
calculates and draws Market Structure Shift. This data is also used to calculate Rejection Blocks.
Namespace types: array
Parameters:
id (array)
startPoint (chart.point)
getKeyPointTime (int) : the actual time of startPoint, simplystartPoint.time
getKeyPointPrice (float) : the actual time of startPoint, simplystartPoint.price
col (color) : color of the MSS line / label
showMSS (bool) : whether to show label/line. This function still calculates internally for other ICT related concepts even if not drawn.
isUp (bool) : whether MSS happened during price increase or price decrease.
upRejections (array)
dnRejections (array)
highArr (array) : array containing historical highs, should be taken from the UDT "necessaryData" defined above
lowArr (array) : array containing historical lows, should be taken from the UDT "necessaryData" defined above
timeArr (array) : array containing historical times, should be taken from the UDT "necessaryData" defined above
closeArr (array) : array containing historical closes, should be taken from the UDT "necessaryData" defined above
openArr (array) : array containing historical opens, should be taken from the UDT "necessaryData" defined above
atrTFarr (array) : array containing historical atr values (of user-selected TF), should be taken from the UDT "necessaryData" defined above
upRejectionsPrices (array) : array containing up rejections prices. Is sorted and used to determine selective looping for invalidations.
dnRejectionsPrices (array) : array containing down rejections prices. Is sorted and used to determine selective looping for invalidations.
Returns: void
method getTime(id, compare, timeArr)
gets time of inputted price (compare) in an array of data
this is useful when the user-selected timeframe for ICT concepts is greater than the chart's timeframe
Namespace types: array
Parameters:
id (array) : the array of data to search through, to find which index has the same value as "compare"
compare (float) : the target data point to find in the array
timeArr (array) : array of historical times
Returns: the time that the data point in the array was recorded
method OB(id, highArr, signArr, lowArr, timeArr, sign)
store bullish orderblock data
Namespace types: array
Parameters:
id (array)
highArr (array) : array of historical highs
signArr (array) : array of historical price direction "math.sign(close - open)"
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
sign (int) : orderblock direction, -1 => bullish, 1 => bearish
Returns: void
OTEstrat(OTEstart, future, closeArr, highArr, lowArr, timeArr, longOTEPT, longOTESL, longOTElevel, shortOTEPT, shortOTESL, shortOTElevel, structureDirection, oteLongs, atrTF, oteShorts)
executes the OTE strategy
Parameters:
OTEstart (chart.point)
future (int) : future time point for drawings
closeArr (array) : array of historical closes
highArr (array) : array of historical highs
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
longOTEPT (string) : user-selected long OTE profit target, please create an input.string() for this using the example below
longOTESL (int) : user-selected long OTE stop loss, please create an input.string() for this using the example below
longOTElevel (float) : long entry price of selected retracement ratio for OTE
shortOTEPT (string) : user-selected short OTE profit target, please create an input.string() for this using the example below
shortOTESL (int) : user-selected short OTE stop loss, please create an input.string() for this using the example below
shortOTElevel (float) : short entry price of selected retracement ratio for OTE
structureDirection (string) : current market structure direction, this should be "Up" or "Down". This is used to cancel pending orders if market structure changes
oteLongs (bool) : input.bool() for whether OTE longs can be executed
atrTF (float) : atr of the user-seleceted TF
oteShorts (bool) : input.bool() for whether OTE shorts can be executed
@exampleInputs
oteLongs = input.bool(defval = false, title = "OTE Longs", group = "Optimal Trade Entry")
longOTElevel = input.float(defval = 0.79, title = "Long Entry Retracement Level", options = , group = "Optimal Trade Entry")
longOTEPT = input.string(defval = "-0.5", title = "Long TP", options = , group = "Optimal Trade Entry")
longOTESL = input.int(defval = 0, title = "How Many Ticks Below Swing Low For Stop Loss", group = "Optimal Trade Entry")
oteShorts = input.bool(defval = false, title = "OTE Shorts", group = "Optimal Trade Entry")
shortOTElevel = input.float(defval = 0.79, title = "Short Entry Retracement Level", options = , group = "Optimal Trade Entry")
shortOTEPT = input.string(defval = "-0.5", title = "Short TP", options = , group = "Optimal Trade Entry")
shortOTESL = input.int(defval = 0, title = "How Many Ticks Above Swing Low For Stop Loss", group = "Optimal Trade Entry")
Returns: void (0)
displacement(logZ, atrTFreg, highArr, timeArr, lowArr, upDispShow, dnDispShow, masterCoords, labelLevels, dispUpcol, rightCoordinate, dispDncol, noBorders)
calculates and draws dispacements
Parameters:
logZ (float) : log return of current price, used to determine a "significant price move" for a displacement
atrTFreg (float) : atr of user-seleceted timeframe
highArr (array) : array of historical highs
timeArr (array) : array of historical times
lowArr (array) : array of historical lows
upDispShow (int) : amount of historical upside displacements to show
dnDispShow (int) : amount of historical downside displacements to show
masterCoords (map) : a map to push the most recent displacement prices into, useful for having key levels in one data structure
labelLevels (string) : used to determine label placement for the displacement, can be inside box, outside box, or none, example below
dispUpcol (color) : upside displacement color
rightCoordinate (int) : future time for displacement drawing, best is "last_bar_time"
dispDncol (color) : downside displacement color
noBorders (bool) : input.bool() to remove box borders, example below
@exampleInputs
labelLevels = input.string(defval = "Inside" , title = "Box Label Placement", options = )
noBorders = input.bool(defval = false, title = "No Borders On Levels")
Returns: void
method getStrongLow(id, startIndex, timeArr, lowArr, strongLowPoints)
unshift strong low data to array id
Namespace types: array
Parameters:
id (array)
startIndex (int) : the starting index for the timeArr array of the UDT "necessaryData".
this point should start from at least 1 pivot prior to find the low before an upside BoS
timeArr (array) : array of historical times
lowArr (array) : array of historical lows
strongLowPoints (array) : array of strong low prices. Used to retrieve highest strong low price and see if need for
removal of invalidated strong lows
Returns: void
method getStrongHigh(id, startIndex, timeArr, highArr, strongHighPoints)
unshift strong high data to array id
Namespace types: array
Parameters:
id (array)
startIndex (int) : the starting index for the timeArr array of the UDT "necessaryData".
this point should start from at least 1 pivot prior to find the high before a downside BoS
timeArr (array) : array of historical times
highArr (array) : array of historical highs
strongHighPoints (array)
Returns: void
equalLevels(highArr, lowArr, timeArr, rightCoordinate, equalHighsCol, equalLowsCol, liteMode)
used to calculate recent equal highs or equal lows
Parameters:
highArr (array) : array of historical highs
lowArr (array) : array of historical lows
timeArr (array) : array of historical times
rightCoordinate (int) : a future time (right for boxes, x2 for lines)
equalHighsCol (color) : user-selected color for equal highs drawings
equalLowsCol (color) : user-selected color for equal lows drawings
liteMode (bool) : optional for a lite mode version of an ICT strategy. For more control over drawings leave as "True", "False" will apply neon effects
Returns: void
quickTime(timeString)
used to quickly determine if a user-inputted time range is currently active in NYT time
Parameters:
timeString (string) : a time range
Returns: true if session is active, false if session is inactive
macros(showMacros, noBorders)
used to calculate and draw session macros
Parameters:
showMacros (bool) : an input.bool() or simple bool to determine whether to activate the function
noBorders (bool) : an input.bool() to determine whether the box anchored to the session should have borders
Returns: void
po3(tf, left, right, show)
use to calculate HTF po3 candle
@tip only call this function on "barstate.islast"
Parameters:
tf (simple string)
left (int) : the left point of the candle, calculated as bar_index + left,
right (int) : :the right point of the candle, calculated as bar_index + right,
show (bool) : input.bool() whether to show the po3 candle or not
Returns: void
silverBullet(silverBulletStratLong, silverBulletStratShort, future, userTF, H, L, H2, L2, noBorders, silverBulletLongTP, historicalPoints, historicalData, silverBulletLongSL, silverBulletShortTP, silverBulletShortSL)
used to execute the Silver Bullet Strategy
Parameters:
silverBulletStratLong (simple bool)
silverBulletStratShort (simple bool)
future (int) : a future time, used for drawings, example "last_bar_time"
userTF (simple int)
H (float) : the high price of the user-selected TF
L (float) : the low price of the user-selected TF
H2 (float) : the high price of the user-selected TF
L2 (float) : the low price of the user-selected TF
noBorders (bool) : an input.bool() used to remove the borders from box drawings
silverBulletLongTP (series silverBulletLevels)
historicalPoints (array)
historicalData (necessaryData)
silverBulletLongSL (series silverBulletLevels)
silverBulletShortTP (series silverBulletLevels)
silverBulletShortSL (series silverBulletLevels)
Returns: void
method invalidFVGcheck(FVGarr, upFVGpricesSorted, dnFVGpricesSorted)
check if existing FVGs are still valid
Namespace types: array
Parameters:
FVGarr (array)
upFVGpricesSorted (array) : an array of bullish FVG prices, used to selective search through FVG array to remove invalidated levels
dnFVGpricesSorted (array) : an array of bearish FVG prices, used to selective search through FVG array to remove invalidated levels
Returns: void (0)
method drawFVG(counter, FVGshow, FVGname, FVGcol, data, masterCoords, labelLevels, borderTransp, liteMode, rightCoordinate)
draws FVGs on last bar
Namespace types: map
Parameters:
counter (map) : a counter, as map, keeping count of the number of FVGs drawn, makes sure that there aren't more FVGs drawn
than int FVGshow
FVGshow (int) : the number of FVGs to show. There should be a bullish FVG show and bearish FVG show. This function "drawFVG" is used separately
for bearish FVG and bullish FVG.
FVGname (string) : the name of the FVG, "FVG Up" or "FVG Down"
FVGcol (color) : desired FVG color
data (FVG)
masterCoords (map) : a map containing the names and price points of key levels. Used to define price ranges.
labelLevels (string) : an input.string with options "Inside", "Outside", "Remove". Determines whether FVG labels should be inside box, outside,
or na.
borderTransp (int)
liteMode (bool)
rightCoordinate (int) : the right coordinate of any drawings. Must be a time point.
Returns: void
invalidBlockCheck(bullishOBbox, bearishOBbox, userTF)
check if existing order blocks are still valid
Parameters:
bullishOBbox (array) : an array declared using the UDT orderBlock that contains bullish order block related data
bearishOBbox (array) : an array declared using the UDT orderBlock that contains bearish order block related data
userTF (simple int)
Returns: void (0)
method lastBarRejections(id, rejectionColor, idShow, rejectionString, labelLevels, borderTransp, liteMode, rightCoordinate, masterCoords)
draws rejectionBlocks on last bar
Namespace types: array
Parameters:
id (array) : the array, an array of rejection block data declared using the UDT rejection block
rejectionColor (color) : the desired color of the rejection box
idShow (int)
rejectionString (string) : the desired name of the rejection blocks
labelLevels (string) : an input.string() to determine if labels for the block should be inside the box, outside, or none.
borderTransp (int)
liteMode (bool) : an input.bool(). True = neon effect, false = no neon.
rightCoordinate (int) : atime for the right coordinate of the box
masterCoords (map) : a map that stores the price of key levels and assigns them a name, used to determine price ranges
Returns: void
method OBdraw(id, OBshow, BBshow, OBcol, BBcol, bullishString, bearishString, isBullish, labelLevels, borderTransp, liteMode, rightCoordinate, masterCoords)
draws orderblocks and breaker blocks for data stored in UDT array()
Namespace types: array
Parameters:
id (array) : the array, an array of order block data declared using the UDT orderblock
OBshow (int) : the number of order blocks to show
BBshow (int) : the number of breaker blocks to show
OBcol (color) : color of order blocks
BBcol (color) : color of breaker blocks
bullishString (string) : the title of bullish blocks, which is a regular bullish orderblock or a bearish orderblock that's converted to breakerblock
bearishString (string) : the title of bearish blocks, which is a regular bearish orderblock or a bullish orderblock that's converted to breakerblock
isBullish (bool) : whether the array contains bullish orderblocks or bearish orderblocks. If bullish orderblocks,
the array will naturally contain bearish BB, and if bearish OB, the array will naturally contain bullish BB
labelLevels (string) : an input.string() to determine if labels for the block should be inside the box, outside, or none.
borderTransp (int)
liteMode (bool) : an input.bool(). True = neon effect, false = no neon.
rightCoordinate (int) : atime for the right coordinate of the box
masterCoords (map) : a map that stores the price of key levels and assigns them a name, used to determine price ranges
Returns: void
FVG
UDT for FVG calcualtions
Fields:
H (series float) : high price of user-selected timeframe
L (series float) : low price of user-selected timeframe
direction (series string) : FVG direction => "Up" or "Down"
T (series int) : => time of bar on user-selected timeframe where FVG was created
fvgLabel (series label) : optional label for FVG
fvgLineTop (series line) : optional line for top of FVG
fvgLineBot (series line) : optional line for bottom of FVG
fvgBox (series box) : optional box for FVG
labelLine
quickly pair a line and label together as UDT
Fields:
lin (series line) : Line you wish to pair with label
lab (series label) : Label you wish to pair with line
orderBlock
UDT for order block calculations
Fields:
orderBlockData (array) : array containing order block x and y points
orderBlockBox (series box) : optional order block box
vioCount (series int) : = 0 violation count of the order block. 0 = Order Block, 1 = Breaker Block
traded (series bool)
status (series string) : = "OB" status == "OB" => Level is order block. status == "BB" => Level is breaker block.
orderBlockLab (series label) : options label for the order block / breaker block.
strongPoints
UDT for strong highs and strong lows
Fields:
price (series float) : price of the strong high or strong low
timeAtprice (series int) : time of the strong high or strong low
strongPointLabel (series label) : optional label for strong point
strongPointLine (series line) : optional line for strong point
overlayLine (series line) : optional lines for strong point to enhance visibility
overlayLine2 (series line) : optional lines for strong point to enhance visibility
displacement
UDT for dispacements
Fields:
highPrice (series float) : high price of displacement
lowPrice (series float) : low price of displacement
timeAtPrice (series int) : time of bar where displacement occurred
displacementBox (series box) : optional box to draw displacement
displacementLab (series label) : optional label for displacement
po3data
UDT for po3 calculations
Fields:
dHigh (series float) : higher timeframe high price
dLow (series float) : higher timeframe low price
dOpen (series float) : higher timeframe open price
dClose (series float) : higher timeframe close price
po3box (series box) : box to draw po3 candle body
po3line (array) : line array to draw po3 wicks
po3Labels (array) : label array to label price points of po3 candle
macros
UDT for session macros
Fields:
sessions (array) : Array of sessions, you can populate this array using the "quickTime" function located above "export macros".
prices (matrix) : Matrix of session data -> open, high, low, close, time
sessionTimes (array) : Array of session names. Pairs with array sessions.
sessionLines (matrix) : Optional array for sesion drawings.
OTEtimes
UDT for data storage and drawings associated with OTE strategy
Fields:
upTimes (array) : time of highest point before trade is taken
dnTimes (array) : time of lowest point before trade is taken
tpLineLong (series line) : line to mark tp level long
tpLabelLong (series label) : label to mark tp level long
slLineLong (series line) : line to mark sl level long
slLabelLong (series label) : label to mark sl level long
tpLineShort (series line) : line to mark tp level short
tpLabelShort (series label) : label to mark tp level short
slLineShort (series line) : line to mark sl level short
slLabelShort (series label) : label to mark sl level short
sweeps
UDT for data storage and drawings associated with liquidity sweeps
Fields:
upSweeps (matrix) : matrix containing liquidity sweep price points and time points for up sweeps
dnSweeps (matrix) : matrix containing liquidity sweep price points and time points for down sweeps
upSweepDrawings (array) : optional up sweep box array. Pair the size of this array with the rows or columns,
dnSweepDrawings (array) : optional up sweep box array. Pair the size of this array with the rows or columns,
raidExitDrawings
UDT for drawings associated with the Liquidity Raid Strategy
Fields:
tpLine (series line) : tp line for the liquidity raid entry
tpLabel (series label) : tp label for the liquidity raid entry
slLine (series line) : sl line for the liquidity raid entry
slLabel (series label) : sl label for the liquidity raid entry
m2022
UDT for data storage and drawings associated with the Model 2022 Strategy
Fields:
mTime (series int) : time of the FVG where entry limit order is placed
mIndex (series int) : array index of FVG where entry limit order is placed. This requires an array of FVG data, which is defined above.
mEntryDistance (series float) : the distance of the FVG to the 50% range. M2022 looks for the fvg closest to 50% mark of range.
mEntry (series float) : the entry price for the most eligible fvg
fvgHigh (series float) : the high point of the eligible fvg
fvgLow (series float) : the low point of the eligible fvg
longFVGentryBox (series box) : long FVG box, used to draw the eligible FVG
shortFVGentryBox (series box) : short FVG box, used to draw the eligible FVG
line50P (series line) : line used to mark 50% of the range
line100P (series line) : line used to mark 100% (top) of the range
line0P (series line) : line used to mark 0% (bottom) of the range
label50P (series label) : label used to mark 50% of the range
label100P (series label) : label used to mark 100% (top) of the range
label0P (series label) : label used to mark 0% (bottom) of the range
sweepData (array)
silverBullet
UDT for data storage and drawings associated with the Silver Bullet Strategy
Fields:
session (series bool)
sessionStr (series string) : name of the session for silver bullet
sessionBias (series string)
sessionHigh (series float) : = high high of session // use math.max(silverBullet.sessionHigh, high)
sessionLow (series float) : = low low of session // use math.min(silverBullet.sessionLow, low)
sessionFVG (series float) : if applicable, the FVG created during the session
sessionFVGdraw (series box) : if applicable, draw the FVG created during the session
traded (series bool)
tp (series float) : tp of trade entered at the session FVG
sl (series float) : sl of trade entered at the session FVG
sessionDraw (series box) : optional draw session with box
sessionDrawLabel (series label) : optional label session with label
silverBulletDrawings
UDT for trade exit drawings associated with the Silver Bullet Strategy
Fields:
tpLine (series line) : tp line drawing for strategy
tpLabel (series label) : tp label drawing for strategy
slLine (series line) : sl line drawing for strategy
slLabel (series label) : sl label drawing for strategy
unicornModel
UDT for data storage and drawings associated with the Unicorn Model Strategy
Fields:
hPoint (chart.point)
hPoint2 (chart.point)
hPoint3 (chart.point)
breakerBlock (series box) : used to draw the breaker block required for the Unicorn Model
FVG (series box) : used to draw the FVG required for the Unicorn model
topBlock (series float) : price of top of breaker block, can be used to detail trade entry
botBlock (series float) : price of bottom of breaker block, can be used to detail trade entry
startBlock (series int) : start time of the breaker block, used to set the "left = " param for the box
includes (array) : used to store the time of the breaker block, or FVG, or the chart point sequence that setup the Unicorn Model.
entry (series float) : // eligible entry price, for longs"math.max(topBlock, FVG.get_top())",
tpLine (series line) : optional line to mark PT
tpLabel (series label) : optional label to mark PT
slLine (series line) : optional line to mark SL
slLabel (series label) : optional label to mark SL
rejectionBlocks
UDT for data storage and drawings associated with rejection blocks
Fields:
rejectionPoint (chart.point)
bodyPrice (series float) : candle body price closest to the rejection point, for "Up" rejections => math.max(open, close),
rejectionBox (series box) : optional box drawing of the rejection block
rejectionLabel (series label) : optional label for the rejection block
equalLevelsDraw
UDT for data storage and drawings associated with equal highs / equal lows
Fields:
connector (series line) : single line placed at the first high or low, y = avgerage of distinguished equal highs/lows
connectorLab (series label) : optional label to be placed at the highs or lows
levels (array) : array containing the equal highs or lows prices
times (array) : array containing the equal highs or lows individual times
startTime (series int) : the time of the first high or low that forms a sequence of equal highs or lows
radiate (array) : options label to "radiate" the label in connector lab. Can be used for anything
necessaryData
UDT for data storage of historical price points.
Fields:
highArr (array) : array containing historical high points
lowArr (array) : array containing historical low points
timeArr (array) : array containing historical time points
logArr (array) : array containing historical log returns
signArr (array) : array containing historical price directions
closeArr (array) : array containing historical close points
binaryTimeArr (array) : array containing historical time points, uses "push" instead of "unshift" to allow for binary search
binaryCloseArr (array) : array containing historical close points, uses "push" instead of "unshift" to allow the correct
binaryOpenArr (array) : array containing historical optn points, uses "push" instead of "unshift" to allow the correct
atrTFarr (array) : array containing historical user-selected TF atr points
openArr (array) : array containing historical open points
First Heikin-Ashi Candle Tracker [CHE] First Heikin-Ashi Candle Tracker
"A Heikin-Ashi Candle Rarely Comes Alone"
1. Introduction
Fundamental Observation
- "A Heikin-Ashi Candle Rarely Comes Alone"
- This principle highlights the tendency of Heikin-Ashi candles to appear in sequences, indicating sustained trends rather than isolated movements.
- Recognizing these patterns can significantly enhance trading strategies by identifying stronger and more reliable entry points.
2. Understanding Heikin-Ashi Candles
What Are Heikin-Ashi Candles?
- Heikin-Ashi is a type of candlestick chart used to identify market trends more clearly.
- Calculation Method:
- Ha_Close: (Open + High + Low + Close) / 4
- Ha_Open: (Previous Ha_Open + Previous Ha_Close) / 2
- Ha_High: Maximum of High, Ha_Open, Ha_Close
- Ha_Low: Minimum of Low, Ha_Open, Ha_Close
- Visual Differences:
- Smoother appearance compared to traditional candlesticks.
- Helps in filtering out market noise and highlighting the prevailing trend.
Benefits of Heikin-Ashi Candles
- Trend Clarity: Easier identification of uptrends and downtrends.
- Reduced Noise: Minimizes the impact of insignificant price movements.
- Visual Appeal: Cleaner charts enhance decision-making processes.
3. Introducing the First Heikin-Ashi Candle Tracker [CHE ]
Purpose of the Indicator
- Track First Heikin-Ashi Candles: Identifies the initial appearance of Heikin-Ashi candles across multiple timeframes.
- Enhance Trading Decisions: Provides visual cues for potential long and short entries based on trend confirmations.
Key Features
- Multi-Timeframe Support: Monitor Heikin-Ashi candles across different timeframes (e.g., 240, 60, 30, 15 minutes).
- Customizable Visuals: Adjustable colors and line widths for better chart integration.
- User-Friendly Interface: Easy-to-configure settings tailored to individual trading preferences.
- Max Line Management: Controls the number of displayed lines to maintain chart clarity.
4. How to Use the First Heikin-Ashi Candle Tracker
Step-by-Step Guide
1. Enable Desired Groups:
- Activate up to four groups, each representing a different timeframe.
- Customize each group's settings according to your trading strategy.
2. Configure Timeframes:
- Select timeframes that align with your trading style (e.g., short-term vs. long-term).
3. Set Candle Types to Track:
- Choose to monitor Both, Green (Bullish), or Red (Bearish) Heikin-Ashi candles.
- Focus on specific candle types to streamline entry signals.
4. Customize Visual Indicators:
- Adjust Green Line Color and Red Line Color for clear distinction.
- Modify Line Width to ensure visibility without cluttering the chart.
5. Manage Line Limits:
- Set the Max Number of Lines to prevent overcrowding.
- The indicator will automatically remove the oldest lines when the limit is exceeded.
6. Interpret Signals:
- Green Lines: Indicate potential Long entry points.
- Red Lines: Indicate potential Short entry points.
- Observe the sequence and frequency of candles to assess trend strength.
Practical Example
- Uptrend Identification:
- Consecutive green Heikin-Ashi candles with corresponding green lines signal a strong upward trend.
- Consider entering a Long position when the first green candle appears.
- Downtrend Identification:
- Consecutive red Heikin-Ashi candles with corresponding red lines signal a strong downward trend.
- Consider entering a Short position when the first red candle appears.
5. Benefits and Utility
Enhanced Trend Detection
- Early Signals: Identify the beginning of new trends promptly.
- Confirmation: Multiple timeframes provide robust confirmation of trend direction.
Improved Entry Points
- Precision: Pinpoint optimal moments to enter trades, reducing the risk of false signals.
- Flexibility: Suitable for both Long and Short strategies across various markets.
User-Friendly Operation
- Intuitive Settings: Easily configurable to match individual trading preferences.
- Visual Clarity: Clear lines and color-coding facilitate quick decision-making.
Time Efficiency
- Automated Tracking: Saves time by automatically identifying and marking relevant candles.
- Multi-Timeframe Analysis: Consolidates information from different timeframes into a single view.
6. Why Use the First Heikin-Ashi Candle Tracker ?
Strategic Advantages
- Market Insight: Gain deeper understanding of market dynamics through Heikin-Ashi analysis.
- Risk Management: Improved entry points contribute to better risk-reward ratios.
- Versatility: Applicable to various trading instruments, including stocks, forex, and cryptocurrencies.
Why Heikin-Ashi for Entries?
- Trend Reliability: Heikin-Ashi candles smooth out price data, providing more reliable trend indicators.
- Reduced Whipsaws: Fewer false signals compared to traditional candlestick charts.
- Clarity in Decision-Making: Simplifies the process of identifying and acting on market trends.
Conclusion
- The First Heikin-Ashi Candle Tracker is an essential tool for traders seeking to enhance their trend analysis and improve entry strategies.
- By leveraging the power of Heikin-Ashi candles, this indicator offers a clear, user-friendly approach to identifying profitable trading opportunities.
7. Getting Started
Installation
1. Add the Indicator:
- Open TradingView and navigate to the Pine Script editor.
- Paste the translated Pine Script code for the First Heikin-Ashi Candle Tracker .
- Save and add the indicator to your chart.
2. Configure Settings:
- Enable desired groups and set appropriate timeframes.
- Customize colors and line widths as per your preference.
- Adjust the maximum number of lines to maintain chart clarity.
3. Start Trading:
- Monitor the chart for green and red lines indicating potential Long and Short entries.
- Combine with other analysis tools for enhanced trading decisions.
Support and Resources
- Documentation: Refer to the included comments within the Pine Script for detailed explanations.
- Community Forums: Join TradingView communities for tips and shared experiences.
- Customer Support: Reach out for assistance with installation or configuration issues.
8. Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Happy Trading!
Best regards
Chervolino (Volker)
TEMA For Loop [Mattes]The TEMA For Loop indicator is a powerful tool designed for technical analysis, combining the Triple Exponential Moving Average (TEMA) with a custom scoring mechanism based on a for loop. It evaluates price trends over a specified period, allowing traders to identify potential entry and exit points in the market. This indicator enhances decision-making by providing visual cues through dynamic candle coloring, reflecting market sentiment and trends effectively.
Technical Details:
Triple Exponential Moving Average (TEMA):
- TEMA is known for its responsiveness to price changes, as it reduces lag compared to traditional moving averages. The TEMA calculation employs three nested Exponential Moving Averages (EMAs) to produce a smoother trend line, which helps traders identify the direction and momentum of the market.
Scoring Mechanism:
- The scoring mechanism is based on a custom for loop that compares the current TEMA value to previous values over a specified range. The loop counts how many previous values are less than the current value, generating a score that reflects the strength of the trend:
- A higher score indicates a stronger upward trend.
- A lower (negative) score suggests a downward trend.
Threshold Levels:
- Upper Threshold: A score above this level signals a potential long entry, indicating strong bullish momentum.
- Lower Threshold: A score below this level indicates a potential short entry, suggesting bearish sentiment.
>>>These thresholds are adjustable, allowing traders to fine-tune their strategy according to their risk tolerance and market conditions.
Signal Logic:
- The indicator provides clear signals for entering long or short positions based on the score crossing the defined thresholds.
>>Long Entry Signal: When the smoothed score crosses above the upper threshold.
>>Short Entry Signal: When the smoothed score crosses below the lower threshold.
Why This Indicator Is Useful:
>>> Enhanced Decision-Making: The TEMA For Loop indicator offers traders a clear and objective view of market trends, reducing the emotional aspect of trading. By visualizing bullish and bearish conditions, it assists traders in making timely decisions.
>>> Customizable Parameters: The ability to adjust TEMA period, thresholds, and other settings allows traders to tailor the indicator to their specific trading strategies and market conditions.
Visual Clarity: The integration of dynamic candle coloring provides immediate visual cues about the prevailing trend, making it easier for traders to spot potential trade opportunities at a glance.
The TEMA For Loop - Smoothed with Candle Colors indicator is a sophisticated trading tool that utilizes TEMA and a custom scoring mechanism to identify and visualize market trends effectively. By employing dynamic candle coloring, traders gain immediate insights into market sentiment, enabling informed decision-making for entry and exit strategies. This indicator is designed for traders seeking a systematic approach to trend analysis, enhancing their trading performance through clear, actionable signals.
Overnight Positioning w EMA - Strategy [presentTrading]I've recently started researching Market Timing strategies, and it’s proving to be quite an interesting area of study. The idea of predicting optimal times to enter and exit the market, based on historical data and various indicators, brings a dynamic edge to trading. Additionally, it is integrated with the 3commas bot for automated trade execution.
I'm still working on it. Welcome to share your point of view.
█ Introduction and How it is Different
The "Overnight Positioning with EMA " is designed to capitalize on market inefficiencies during the overnight trading period. This strategy takes a position shortly before the market closes and exits shortly after it opens the following day. What sets this strategy apart is the integration of an optional Exponential Moving Average (EMA) filter, which ensures that trades are aligned with the underlying trend. The strategy provides flexibility by allowing users to select between different global market sessions, such as the US, Asia, and Europe.
It is integrated with the 3commas bot for automated trade execution and has a built-in mechanism to avoid holding positions over the weekend by force-closing positions on Fridays before the market closes.
BTCUSD 20 mins Performance
█ Strategy, How it Works: Detailed Explanation
The core logic of this strategy is simple: enter trades before market close and exit them after market open, taking advantage of potential price movements during the overnight period. Here’s how it works in more detail:
🔶 Market Timing
The strategy determines the local market open and close times based on the selected market (US, Asia, Europe) and adjusts entry and exit points accordingly. The entry is triggered a specific number of minutes before market close, and the exit is triggered a specific number of minutes after market open.
🔶 EMA Filter
The strategy includes an optional EMA filter to help ensure that trades are taken in the direction of the prevailing trend. The EMA is calculated over a user-defined timeframe and length. The entry is only allowed if the closing price is above the EMA (for long positions), which helps to filter out trades that might go against the trend.
The EMA formula:
```
EMA(t) = +
```
Where:
- EMA(t) is the current EMA value
- Close(t) is the current closing price
- n is the length of the EMA
- EMA(t-1) is the previous period's EMA value
🔶 Entry Logic
The strategy monitors the market time in the selected timezone. Once the current time reaches the defined entry period (e.g., 20 minutes before market close), and the EMA condition is satisfied, a long position is entered.
- Entry time calculation:
```
entryTime = marketCloseTime - entryMinutesBeforeClose * 60 * 1000
```
🔶 Exit Logic
Exits are triggered based on a specified time after the market opens. The strategy checks if the current time is within the defined exit period (e.g., 20 minutes after market open) and closes any open long positions.
- Exit time calculation:
exitTime = marketOpenTime + exitMinutesAfterOpen * 60 * 1000
🔶 Force Close on Fridays
To avoid the risk of holding positions over the weekend, the strategy force-closes any open positions 5 minutes before the market close on Fridays.
- Force close logic:
isFriday = (dayofweek(currentTime, marketTimezone) == dayofweek.friday)
█ Trade Direction
This strategy is designed exclusively for long trades. It enters a long position before market close and exits the position after market open. There is no shorting involved in this strategy, and it focuses on capturing upward momentum during the overnight session.
█ Usage
This strategy is suitable for traders who want to take advantage of price movements that occur during the overnight period without holding positions for extended periods. It automates entry and exit times, ensuring that trades are placed at the appropriate times based on the market session selected by the user. The 3commas bot integration also allows for automated execution, making it ideal for traders who wish to set it and forget it. The strategy is flexible enough to work across various global markets, depending on the trader's preference.
█ Default Settings
1. entryMinutesBeforeClose (Default = 20 minutes):
This setting determines how many minutes before the market close the strategy will enter a long position. A shorter duration could mean missing out on potential movements, while a longer duration could expose the position to greater price fluctuations before the market closes.
2. exitMinutesAfterOpen (Default = 20 minutes):
This setting controls how many minutes after the market opens the position will be exited. A shorter exit time minimizes exposure to market volatility at the open, while a longer exit time could capture more of the overnight price movement.
3. emaLength (Default = 100):
The length of the EMA affects how the strategy filters trades. A shorter EMA (e.g., 50) reacts more quickly to price changes, allowing more frequent entries, while a longer EMA (e.g., 200) smooths out price action and only allows entries when there is a stronger underlying trend.
The effect of using a longer EMA (e.g., 200) would be:
```
EMA(t) = +
```
4. emaTimeframe (Default = 240):
This is the timeframe used for calculating the EMA. A higher timeframe (e.g., 360) would base entries on longer-term trends, while a shorter timeframe (e.g., 60) would respond more quickly to price movements, potentially allowing more frequent trades.
5. useEMA (Default = true):
This toggle enables or disables the EMA filter. When enabled, trades are only taken when the price is above the EMA. Disabling the EMA allows the strategy to enter trades without any trend validation, which could increase the number of trades but also increase risk.
6. Market Selection (Default = US):
This setting determines which global market's open and close times the strategy will use. The selection of the market affects the timing of entries and exits and should be chosen based on the user's preference or geographic focus.