ORB Breakout Strategy with reversalORB 1,5,15,30,60min with reversals, its my first strategy Im not 100% sure it works well. Im not a programmer nor a profitable trader.
Max stoploss in points sets maximum fixed stoploss
Stop offset sets additional points below/above signal bar
RR Ratio is pretty self explanatory, it sets target based on stoploss
American session is time when positions can be opened
ORB SessionIs basically almost the same but when the time runs it closes all positions\
ORB candle timeframe is the time which orb is measured
Enable reverse position enables reversing positions on stoploss of first position, stoploss of reverse position is based on max stoploss and target is set by RR times max stoploss
Im sharing this to share this with my friends, discuss some things and dont have to test it manually.
I made it all myself and with help of AI
Sorry for bad english
Search in scripts for "candle"
Divergent Bar Strategy [declarative] v0.2Divergent Bar Strategy v0.2
Divergent Bar is a price action that signals potential trend reversal.
This strategy uses repeating divergent bars during a bearish local trend as signals to issue multiple averaging long orders in the direction of potentially emerging bullish trend. As the local trend reverses from bearish to bullish, position could become profitable and is closed by an opposite signal.
As an averaging strategy, this strategy can accumulate substantial order sizes, so this implementation uses a stop loss which is adjusted dynamically according to the current position size to protect deposit.
What you see on a chart:
Greenish background under the divergent bars. This designates detected divergent signals.
Alligator Fast Period and Required Bar Amplitude affect the amount of divergent bars detected.
Red green and blue alligator lines display the alligator indicator used as part of divergent bar detection. In general, you don’t need to see it, you can color the lines transparent in the Style section.
Green triangles designate placed long orders. Required Divergents for Long Cummulative Signal parameter affects those signals.
Parameters and default values:
Alligator Fast Period, default 9.
Length of the alligator fast EMA. The alligator indicator used to filter a divergent bar. A bar is considered divergent only if it is located below the alligator for bollish signal and above for a bearish. In general you can leave default value, as the period 9 corresponds to a reasonable value for an alligator, used for bars on a specific timeframe.
Required Bar Amplitude (%), default 0.4.
This is an important parameter that needs to be adjusted for different timeframes. It specifies minimum size of candle shadow used to detect divergent bars. Higher values produce more false signals, lower values tend produce only strong signals. Be careful, because it also filters out bearish signals used to close the trades, so you need a bearish signal to appear. If you filter small signals you risk ending up with a trade that does not close in profit. You need to find a balance here.
Required Divergents for Long Cummulative Signal, default 3.
Divergent bar does not necessarily signal an immidiate trend reversal. Sometimes several signals need to accumulate. This parameter specifies the count at which the orders start. If you increase this count, orders are only placed after the count is achieved, so your position has bigger chance to go in profit sooner. It does not necessarily mean the most profitable position.
Required Divergents for Short Cummulative Signal, default 1.
It is the same as for long positions, but the opposite.
These signals are used to close the trades. Higher value can mean that a take profit signal would happen at potentially higher price, but be aware that it could also lead to missign oportunity to take profit if there is not enough signals in the sequence.
Long Order Size (%), default 5.0.
Percentage of deposit used for the first order in sequence. Actual order size is comuted dynamically, it depends on Reinvest and parameter. In case Reinvest is turned on, it is computed relative to the current equity, that is initial deposit and netprofit combined.
Reinvest (only for backtesting), default - turned off.
Affects Long Order Size. If turned off, order size is computed according to percentage of total equity, that is initial deposit + net profit. In an automated strategy, you should not turn this parameter on, because this way you can’t control the position size, as it growith or reduces during the actual period of the study.
Martingale, default 1.0.
Affects dynamically computed order size. First order is calculated in percentage from deposit or equity, as specified by Long Order Size and Reinvest parameters.
Order will be scaled by the following values:
Martingale = 0.0 - only the first order would be placed.
Martingale = 1.0 - equal orders will be placed in sequence, with leads to unlimited position growth.
Martingale = 1.3 - orders will be scaled by 1.3, 1.69, 2.197 etc. That is geometric increasing sequnce, which leads to unlimited position growth.
Sequential long order size is multiplied by the martingale value.
Martingale < 1.0 - orders will be scaled by geometrically decreasing sequence, resulting in limited growth of position.
Long Stop Loss (%), default 10.0.
Dynamically adjusted stop loss, which is computed according to the current average position price, so the value potentially lost is proportional to the percentage specified.
Show Long Stop Loss Line, default is off.
Draws a graph line corresponding to the dynamic stop loss on the chart.
Bullish Line Visual Offset (% of price), default -10
For convenience, the count of sequential orders is drawn as a green line over a black EMA on the same chart, offset from an EMA. This is just a visual aid to visualize the strength of long signal as divergent bars accumulate in sequence. EMA is just used so the visual cue is always displayed somewhere close the price graph.
FlowHello, everyone,
Recently I found a useful indicator for the short-term minute-level trading called Liquidity Sweeps. This is a technical indicator that studies the resistance and support levels of candle patterns.
The strategy takes into account the following market factors:
Lql -> resistance formed by a rapid rise or support formed by a rapid rise
Sweep Area -> potential entry point
The inspiration of this strategy comes mostly from Liquidity Sweeps (LuxAlgo), but I have also optimized it based on my own trading experience.
What are the differences from the original strategy?
The Only Outbreaks & Retest option has been removed, and the formation of Wicks is enough to prevent conflicting signals.
The P&L ratio of the strategy has been set, which allows more combinations of the appropriate strategy parameters to match different characteristics of trading pairs.
Signals
1. Enter the trade when three consecutive bars are formed in the Wicks block (resistance or support) and set the stop-loss/stop-profit
2. The condition is not met when three bars are formed in the Wicks block, and the Wicks index is reset when the price returns.
Risk Management
1. Use the P&L ratio, plus appropriate ATR volatility to prevent false breakouts.
2. When the signal is reversed.
3. The strategy is suitable for the short-term level, not for the trend market.
Now, for the inexperienced reader, a series of knowledge. ATR: Like Boolean channel and ADX, Average True Rage is an indicator used to measure price volatility. But unlike these two indicators, it can reflect the price volatility more accurately because of the factors such as gaps added in its calculation process. For this reason, it is called "true" volatility.
Sincerely,
Special thanks to @LuxAlgo for sharing.
Positive Bars % StrategyBased on the calculations by ZenAndTheArtOfTrading. I added stop loss, take profit and reverse code lines.
The Positive Bars % calculates the number of green (positive) bars, relative to a look back period, defined
by the user. If the percentage is low, it means that there was a bigger number of red candles in the
lookback period. The strategy goes long when the percentage is high and short when it's low.
This logic can be reversed with positive results on different time frames.
Big Bar Strategy// This strategy detects and uses big bars to enter a position. When the Big Bar
// is bearish (red candle) the position will be long and viceversa
// for short positions. The stop loss (optional) is placed on the low of the
// candle used to trigger the position and user inputs allow you to modify the
// size of the SL. Take profit is placed on a reward ratio of 1. User can also modify
// the size of the bar body used to determine if we have a real Big Bar and
// filter out Doji bars. Big Bars are determined relative to the previous X period size,
// which can also be modified, as well as the required size of the Big Bar relative to this period average.
Trend Reversal / Potential pressureThis strategy looks for potential trend reversals by looking at hammer candles (defined in the is_hammer and is_stick functions). After getting confirmation a trade is open with determined SL/TP. ATR is used to justify the volatility. Fine-tune the parameters for your specific use case.
Trend Pattern StrategySTRATEGY VERSION
With thanks to AndresVasconez
14 candle crossovers (price>price(14)) displayed as grid pattern.
so thats price value (user choose if price is open,close,OHLC4 etc) greater than (>) previous price value, = show green square
then (if price>price(2) = show green square (etc all the way up to 14))
Resulting combination of square patterns showing trend and trend strength, mirrored so indicator forms a visual pattern, where a new trend starts as a color change in the middle like a point, and grows outwards if the trend continues.
recommended basic entry / exit is:
Enter Buy when all squares (directly below candle) are green, exit buy when all squares are red.
Enter Sell when all squares are red, Exit Sell when all squares are green
Strategy Test - Cancel Limit Order and Position SizingWhile working thru another project had the need to troubleshoot the canceling of a limit order syntax/process as well as work thru the code and logic to automagically set the position sizing based off two user inputs (Amount to Risk in USD and Leverage to Use) and the potential entry and stop levels for an inside bar candle pattern in this scenario. Once we find the distance between the entry and stop level we can figure out the stop percentage amount which matches up with what a user would see manually drawing using the long or short tool in tradingview. Once we have the user inputs and levels we can get an amount to be used in later qty= type of places in zeeee pine script....
Strategy without indicators v11. General Script Strategy
The objective of this strategy is to open buy or sell orders every new hour based on:
Whether the previous candle closed high (buy) or low (sell).
The presence of tops and bottoms to avoid opening orders at times of possible reversals.
The strategy also allows the user to set a date range (start date and end date) to calculate profit, loss, percentage of gain and percentage of loss only in that period.
2. Initial Settings and Parameters
Start Date and End Date: The start_date and end_date variables define the date range to account for profits and losses. These dates can be adjusted by the user to view results in specific periods.
3. Conditions for Order Entry
At each time change, the script checks the conditions for buying or selling, using the following variables and logic:
Detection of Bullish or Bearish Candle:
bullish_candle: True if the previous candle closed high.
bearish_candle: True if the previous candle closed lower.
Analysis of Tops and Bottoms:
To avoid opening orders close to tops and bottoms, the script uses the function find_top_and_bottom(period), which analyzes the last 500 candles and identifies the highest value (top) and the lowest value (bottom).
The variables current_top and current_bottom store these values.
next_top and next_bottom indicate whether the current candle is close to a top (prevents buying) or a bottom (prevents selling).
4. Opening Orders (Buy and Sell)
At each time change, the script checks the conditions to open buy or sell orders:
Condition for Sell:
The sell order is opened if the previous candle was bullish (bullish_candle) and is not close to a top (not next_top).
If there is an open buy order, it is closed before the new sell order.
Buy Condition:
The buy order is opened if the previous candle was bearish (bearish_candle) and is not near a bottom (not_near_bottom).
If there is an open sell order, it is closed before the new buy order.
5. Calculating Profit and Loss
The profit and loss calculation is only done within the configured date range (start_date and end_date):
Profit and Loss:
total_profit and total_loss accumulate the profit and loss values of all operations during the defined period.
percentage_gain and percentage_loss calculate the percentage of gain and loss in relation to the initial capital.
6. Displaying Results on the Chart
The script displays on the chart, next to the candles, the information on Total Profit, Total Loss, % Gain and % Loss:
Strategy Summary
Setting the Date Range: Allows you to set the period for calculating profit and loss.
Previous Candlestick Analysis: Decide whether to buy or sell based on the previous candlestick.
Preventing Entries at Tops and Bottoms: Avoids buying at tops and selling at bottoms to reduce false signals.
Result Calculation: Accumulates profits, losses and percentages within the configured date range.
Results Display on Chart: Displays the configured statistics directly on the chart, next to the candlesticks.
1. Estratégia Geral do Script
O objetivo dessa estratégia é abrir ordens de compra ou venda a cada nova hora com base em:
Se a vela anterior fechou em alta (compra) ou em baixa (venda).
A presença de topos e fundos para evitar abrir ordens em momentos de possíveis reversões.
A estratégia também permite que o usuário configure um intervalo de datas (data inicial e data final) para calcular o lucro, perda, percentual de ganho e percentual de perda apenas nesse período.
2. Configurações e Parâmetros Iniciais
Data Inicial e Data Final: As variáveis data_inicial e data_final definem o intervalo de datas para contabilizar os lucros e perdas. Essas datas podem ser ajustadas pelo usuário para visualizar resultados em períodos específicos.
3. Condições para Entrada de Ordens
A cada mudança de hora, o script verifica as condições de compra ou venda, usando as seguintes variáveis e lógicas:
Detecção de Vela de Alta ou Baixa:
vela_de_alta: Verdadeiro se a vela anterior fechou em alta.
vela_de_baixa: Verdadeiro se a vela anterior fechou em baixa.
Análise de Topos e Fundos:
Para evitar abrir ordens próximas de topos e fundos, o script utiliza a função find_top_and_bottom(periodo), que analisa as últimas 500 velas e identifica o valor mais alto (topo) e o valor mais baixo (fundo).
As variáveis topo_atual e fundo_atual armazenam esses valores.
topo_proximo e fundo_proximo indicam se a vela atual está perto de um topo (evita compra) ou de um fundo (evita venda).
4. Abertura de Ordens (Compra e Venda)
A cada mudança de hora, o script verifica as condições para abrir ordens de compra ou venda:
Condição para Venda:
A ordem de venda é aberta se a vela anterior foi de alta (vela_de_alta) e não está perto de um topo (not topo_proximo).
Se houver uma ordem de compra aberta, ela é fechada antes da nova ordem de venda.
Condição para Compra:
A ordem de compra é aberta se a vela anterior foi de baixa (vela_de_baixa) e não está perto de um fundo (not fundo_proximo).
Se houver uma ordem de venda aberta, ela é fechada antes da nova ordem de compra.
5. Cálculo de Lucros e Perdas
O cálculo de lucro e perda só é feito dentro do intervalo de datas configurado (data_inicial e data_final):
Lucro e Perda:
lucro_total e perca_total acumulam os valores de lucro e perda de todas as operações durante o período definido.
percentual_ganho e percentual_perca calculam o percentual de ganho e perda em relação ao capital inicial.
6. Exibição dos Resultados no Gráfico
O script exibe no gráfico, próximo das velas, as informações de Lucro Total, Perda Total, % de Ganho e % de Perda:
Resumo da Estratégia
Configuração de Intervalo de Datas: Permite configurar o período para cálculo do lucro e da perda.
Análise de Vela Anterior: Decide se a ordem é de compra ou venda com base na vela anterior.
Prevenção de Entradas em Topos e Fundos: Evita compras em topos e vendas em fundos para reduzir sinais falsos.
Cálculo de Resultados: Acumula lucros, perdas e percentuais dentro do período de datas configurado.
Exibição dos Resultados no Gráfico: Exibe as estatísticas configuradas diretamente no gráfico, próximo das velas.
Script_Algo - Fibo Correction Strategy🔹 Core Concept
The strategy is built on combining Fibonacci retracement levels, candlestick pattern confirmation, and trend filtering for trade selection. It performs well on the 1-hour timeframe across many cryptocurrency pairs. Particularly on LINKUSDT over the past year and a half, despite the not very optimal 1:1 risk/reward ratio.
The logic is simple: after a strong impulse move, the price often retraces to key Fibonacci levels (specifically, the 61.8% level). If a confirming candlestick (pattern) appears at this moment, the strategy looks for an entry in the direction of the main trend.
🔹 Indicators Used in the Strategy
ATR (Average True Range) — Used to calculate the stop-loss and take-profit levels.
EMA (9 and 21) — Additional moving averages for assessing the direction of movement (not directly used in entry conditions, but the logic can be expanded to include them).
SMA (Trend Filter, 20 by default) — The trend direction filter. Trades are only opened in its direction.
Fibonacci Levels — The 61.8% retracement level is calculated based on the high and low of the previous candle.
🔹 Entry Conditions
🟢 Long (Buy):
Previous Candle:
Must be green (close higher than open).
Must have a body not smaller than a specified minimum.
The upper wick must not exceed 30% of the body size.
→ This filters out "weak" or "indecisive" candles.
Current Candle:
Price touches or breaches the Fibonacci 61.8% retracement level from the previous range.
Closes above this level.
Closes above the Trend Filter (SMA) line.
A position is opened only if there are no other open trades at the moment.
🔴 Short (Sell):
Previous Candle:
Must be red (close lower than open).
Must have a body not smaller than a specified minimum.
The lower wick must not exceed 30% of the body size.
Current Candle:
Price touches or breaches the Fibonacci 61.8% retracement level from the previous range.
Closes below this level.
Closes below the Trend Filter (SMA) line.
A trade is opened only if there are no other open positions.
🔹 Risk Management
Stop-Loss = ATR × multiplier (default is 5).
Take-Profit = ATR × the same multiplier.
Thus, the default risk/reward ratio is 1:1, but it can be easily adjusted by changing the coefficient. Although, strangely enough, this ratio has shown the best results on some assets on the 1-hour timeframe.
🔹 Chart Visualization
Fibonacci level for Long — Green line with circles.
Fibonacci level for Short — Red line with circles.
Trend Filter line (SMA) — Blue.
🔹 Strengths of the Strategy
✅ Utilizes a proven market pattern — retracement to the 61.8% level.
✅ Further filters entries using trend and candlestick patterns.
✅ Simple, transparent logic that is easy to expand (e.g., adding other Fib levels, an EMA filter, etc.).
🔹 Limitations
⚠️ Performs better in trending markets; can generate false signals during ranging (sideways) conditions.
⚠️ The fixed 1:1 risk/reward ratio is not always optimal and could be refined.
⚠️ Performance depends on the selected timeframe and ATR parameters.
📌 Summary:
The strategy seeks corrective entries in the direction of the trend, confirmed by candlestick patterns. It is versatile and can be applied to forex pairs, cryptocurrencies, and stocks.
⚠️ Not financial advice. Pay close attention to risk management to avoid blowing your account. The strategy is not repainting — I have personally verified it through real testing — but it may not necessarily replicate the same results in the future, as the market is constantly changing. Test it, profit, and good luck to everyone!
IsAlgo - AI Trend Strategy► Overview:
The AI Trend Strategy employs a combination of technical indicators to guide trading decisions across various markets and timeframes. It uses a custom Super Trend indicator and an Exponential Moving Average (EMA) to analyze market trends and executes trades based on specific candlestick patterns. This strategy includes options for setting stop losses, take profit levels, and features an alert system for trade notifications.
► Description:
This strategy focuses on identifying the optimal "entry candle," which signals either a potential correction within the ongoing trend or the emergence of a new trend. The entry criteria for this candle are highly customizable, allowing traders to specify dimensions such as the candle's minimum and maximum size and body ratio. Additional settings include whether this candle should be the highest or lowest compared to recent candles and if a confirmation candle is necessary to validate the entry.
The Super Trend indicator is central to the strategy’s operation, dictating the direction of trades by identifying bullish or bearish trends. Traders have the option to configure trades to align with the direction of the trend identified by this indicator, or alternatively, to take positions counter to the trend for potential reversal strategies. This flexibility can be crucial during varying market conditions.
Additionally, the strategy incorporates an EMA alongside the Super Trend indicator to further analyze trend directions. This combined approach aims to reduce the occurrence of false signals and improve the strategy's overall trend analysis.
The learning algorithm is a standout feature of the AI Trend Strategy. After accumulating data from a predefined number of trades (e.g., after the first 100 trades), the algorithm begins to analyze past performances to identify patterns in wins and losses. It considers variables such as the distance from the current price to the trend line, the range between the highest and lowest prices during the trend, and the duration of the trend. This data informs the algorithm's predictions for future trades, aiming to improve accuracy and reduce losses by adapting to the evolving market conditions.
► Examples of Trade Execution:
1. In an Uptrend: The strategy might detect a suitable entry candle during a correction phase, which aligns with the continuing uptrend for a potential long trade.
2. In a Downtrend: Alternatively, the strategy might identify an entry candle at the end of a downtrend, suggesting a potential reversal or correction where a long trade could be initiated.
3. In an Uptrend: The strategy may also spot an entry candle at the end of an uptrend and execute a short trade, anticipating a reversal or significant pullback.
4. In a Downtrend: The strategy might find a suitable entry candle during a correction phase, indicating a continuation of the downtrend for a potential short trade.
These examples illustrate how the strategy identifies potential trading opportunities based on trend behavior and candlestick patterns.
► Features and Settings:
⚙︎ Trend: Utilizes a custom Super Trend indicator to identify the direction of the market trend. Users can configure the strategy to execute trades in alignment with this trend, take positions contrary to the trend, or completely ignore the trend information for their trading decisions.
⚙︎ Moving average: Employs an Exponential Moving Average (EMA) to further confirm the trend direction indicated by the Super Trend indicator. This setting can be used in conjunction with the Super Trend or disabled if preferred.
⚙︎ Entry candle: Defines the criteria for the candle that triggers a trade. Users can customize aspects such as the candle's size, body, and its relative position to previous candles to ensure it meets specific trading requirements before initiating a trade.
⚙︎ Learning algorithm: This component uses historical trade data to refine the strategy. It assesses various aspects of past trades, such as price trends and market conditions, to make more informed trading decisions in the future.
⚙︎ Trading session: Users can define specific trading hours during which the strategy should operate, allowing trades to be executed only during preferred market periods.
⚙︎ Trading days: This option enables users to specify which days the strategy should be active, providing the flexibility to avoid trading on certain days of the week if desired.
⚙︎ Backtesting: Enables a period during which the strategy can be tested over a selected start and end date, with an option to deactivate this feature if not needed.
⚙︎ Trades: Detailed configuration options include the direction of trades (long, short, or both), position sizing (fixed or percentage-based), the maximum number of open trades, and limitations on the number of trades per day or based on trend changes.
⚙︎ Trades Exit: Offers various strategies for exiting trades, such as setting limits on profits or losses, specifying the duration a trade should remain open, or closing trades based on trend reversal signals.
⚙︎ Stop loss: Various methods for setting stop losses are available, including fixed pips, based on Average True Range (ATR), or utilizing the highest or lowest price points within a designated number of previous candles. Another option allows for closing the trade after a specific number of candles moving in the opposite direction.
⚙︎ Break even: This feature adjusts the stop loss to a break-even point under certain conditions, such as reaching predefined profit levels, to protect gains.
⚙︎ Trailing stop: The trailing stop feature adjusts the stop loss as the trade moves into profit, aiming to secure gains while potentially capturing further upside.
⚙︎ Take profit: Up to three take profit levels can be established using various methods, such as a fixed amount of pips, risk-to-reward ratios based on the stop loss, ATR, or after a set number of candles that move in the direction of the trade.
⚙︎ Alerts: Includes a comprehensive alert system that informs the user of all significant actions taken by the strategy, such as trade openings and closings. It supports placeholders for dynamic values like take profit levels, stop loss prices, and more.
⚙︎ Dashboard: Provides a visual display of detailed information about ongoing and past trades on the chart, helping users monitor the strategy’s performance and make informed decisions.
► Backtesting Details:
Timeframe: 15-minute BTCUSD chart.
Initial Balance: $10,000.
Order Size: 4% of equity per trade.
Commission: 0.01%.
Slippage: 5 ticks.
Risk Management: Strategic stop loss settings are applied based on the most extreme price points within the last 18 candles.
Liquidity strategy tester [Influxum]This tool is based on the concept of liquidity. It includes 10 methods for identifying liquidity in the market. Although this tool is presented as a strategy, we see it more as a data-gathering instrument.
Warning: This indicator/strategy is not intended to generate profitable strategies. It is designed to identify potential market advantages and help with identifying effective entry points to capitalize on those advantages.
Once again, we have advanced the methods of effectively searching for liquidity in the market. With strategies, defined by various entry methods and risk management, you can find your edge in the market. This tool is backed by thorough testing and development, and we plan to continue improving it.
In its current form, it can also be used to test well-known ICT or Smart Money concepts. Using various methods, you can define market structure and identify areas where liquidity is located.
Fair Value Gaps - one of the entry signal options is fair value gaps, where an imbalance between buyers and sellers in the market can be expected.
Time and Price Theory - you can test this by setting liquidity from a specific session and testing entries as that liquidity is grabbed
Judas Swing - can be tested as a market reversal after a breakout during the first hours of trading.
Power of Three - accumulation can be observed as the market moving within a certain range, identified as cluster liquidity in our tool, manipulation occurs with the break of liquidity, and distribution is the direction of the entry.
🟪 Methods of Identifying Liquidity
Pivot Liquidity
This refers to liquidity formed by local extremes – the highest or lowest prices reached in the market over a certain period. The period is defined by a pivot number and determines how many candles before and after the high/low were higher/lower. Simply put, the pivot number represents the number of adjacent candles to the left and right, with a lower high for a pivot high and a higher low for a pivot low. The higher the number, the more significant the high/low is. Behind these local market extremes, we expect to find orders waiting for breakout as well as stop-losses.
Gann Swing
Similar to pivot liquidity, Gann swing identifies significant market points. However, instead of candle highs and lows, it focuses on the closing prices. A Gann swing is formed when a candle closes above (or below) several previous closes (the number is again defined by a strength parameter).
Percentage Change
Apart from ticks, percentages are also a key unit of market movement. In the search for liquidity, we monitor when a local high or low is formed. For liquidity defined by percentage change, a high must be a certain percentage higher than the last low to confirm a significant high. Similarly, a low must be a defined percentage away from the last significant high to confirm a new low. With the right percentage settings, you can eliminate market noise.
Session Range (3x)
Session range is a popular concept for finding liquidity, especially in smart money concepts (SMC). You can set up liquidity visualization for the Asian, London, or New York sessions – or even all three at once. This tool allows you to work with up to three sessions, so you can easily track how and if the market reacts to liquidity grabs during these sessions.
Tip for traders: If you want to see the reaction to liquidity grab during a specific session at a certain time (e.g., the well-known killzone), you can set the Trading session in this tool to the exact time where you want to look for potential entries.
Unfinished Auction
Based on order flow theory, an unfinished auction occurs when the market reverses sharply without filling all pending orders. In price action terms, this can be seen as two candles at a local high or low with very similar or identical highs/lows. The maximum difference between these values is defined as Tolerance, with the default setting being 3 ticks. This setting is particularly useful for filtering out noise during slower market periods, like the Asian session.
Double Tops and Bottoms
A very popular concept not only from smart money concepts but also among price pattern traders is the double bottom and double top. This occurs when the market stops and reverses at a certain price twice in a row. In the tool, you can set how many candles apart these bottoms/tops can be by adjusting the Length parameter. According to some theories, double bottoms are more effective when there is a significant peak between the two bottoms. You can set this in the tool as the Swing value, which defines how large the movement (expressed in ticks) must be between the two peaks/bottoms. The final parameter you can adjust is Tolerance, which defines the possible price difference between the two peaks/bottoms, also expressed in ticks.
Range or Cluster Liquidity
When the market stays within a certain price range, there’s a chance that breakout orders and stop-losses are accumulating outside of this range. Our tool defines ranges in two ways:
Candle balance calculates the average price within a candle (open, high, low, and close), and it defines consolidation when the centers of candles are within a certain distance from each other.
Overlap confirms consolidation when a candle overlaps with the previous one by a set percentage.
Daily, Weekly, and Monthly Highs or Lows
These options simply define liquidity as the previous day’s, week’s, or month’s highs or lows.
Visual Settings
You can easily adjust how liquidity is displayed on the chart, choosing line style, color, and thickness. To display only uncollected liquidity, select "Delete grabbed liquidity."
Liquidity Duration
This setting allows you to control how long liquidity areas remain valid. You can cancel liquidity at the end of the day, the second day, or after a specific number of candles.
🟪 Strategy
Now we come to the part of working with strategies.
Max # of bars after liquidity grab – This parameter allows you to define how many candles you can search for entry signals from the moment liquidity is grabbed. If you are using engulfing as an entry signal, which consists of 2 candles, keep in mind that this number must be at least 2. In general, if you want to test a quick and sharp reaction, set this number as low as possible. If you want to wait for a structural change after the liquidity grab, which may require more candles, set the number a bit higher.
🟪 Strategy - entries
In this section, we define the signals or situations where we can enter the market after liquidity has been taken out.
Liquidity grab - This setup triggers a trade immediately after liquidity is grabbed, meaning the trade opens as the next candle forms.
Close below, close above - This refers to situations where the price closes below liquidity, but then reverses and closes above liquidity again, suggesting the liquidity grab was a false breakout.
Over bar - This occurs when the entire candle (high and low) passes beyond the liquidity level but then experiences a pullback.
Engulfing - A popular price action pattern that is included in this tool.
2HL - weak, medium, strong - A variation of a popular candlestick pattern.
Strong bar - A strong reactionary candle that forms after a liquidity grab. If liquidity is grabbed at a low, this would be a strong long candle that closes near its high and is significantly larger compared to typical volatility.
Naked bar - A candlestick pattern we’ve tested that serves as a good confirmation of market movement.
FVG (Fair Value Gap) - A currently popular concept. This is the only signal with additional settings. “Pending FVG order valid” means if a fair value gap forms after a liquidity grab, a limit order is placed, which remains valid for a set number of candles. “FVG minimal tick size” allows you to filter based on the gap size, measured in ticks. “GAP entry model” lets you decide whether to place the limit order at the gap close or its edge.
🟪 Strategy - General
Long, short - You can choose whether to focus on long or short trades. It’s interesting to see how long and short trades yield different results across various markets.
Pyramiding - By default, the tool opens only one trade at a time. If a new signal arises while a trade is open, it won’t enter another position unless the pyramiding box is checked. You also need to set the maximum number of open trades in the Properties.
Position size - Simply set the size of the traded position.
🟪 Strategy - Time
In this section, you can set time parameters for the strategy being tested.
Test since year - As the name implies, you can limit the testing to start from a specific year.
Trading session - Define the trading session during which you want to test entries. You can also visualize the background (BG) for confirmation.
Exclude session - You can set a session period during which you prefer not to search for trades. For example, when the New York session opens, volatility can sharply increase, potentially reducing the long-term success rate of the tested setup.
🟪 Strategy - Exits
This section lets you define risk management rules.
PT & SL - Set the profit target (PT) and stop loss (SL) here.
Lowest/highest since grab - This option sets the stop loss at the lowest point after a liquidity grab at a low or at the highest point after a liquidity grab at a high. Since markets usually overshoot during liquidity grabs, it’s good practice to place the stop loss at the furthest point after the grab. You can also set your risk-reward ratio (RRR) here. A value of 1 sets an RRR of 1:1, 2 means 2:1, and so on.
Lowest/highest last # bars - Similar to the previous option, but instead of finding the extreme after a liquidity grab, it identifies the furthest point within the last number of candles. You can set how far back to look using the # bars field (for an engulfing pattern, 2 is optimal since it’s made of two candles, and the stop loss can be placed at the edge of the engulfing pattern). The RRR setting works the same way as in the previous option.
Other side liquidity grab - If this option is checked, the trade will exit when liquidity is grabbed on the opposite side (i.e., if you entered on a liquidity grab at a low, the trade will exit when liquidity is grabbed at a high).
Exit after # bars - A popular exit strategy where you close the position after a set number of candles.
Exit after # bars in profit - This option exits the trade once the position is profitable for a certain number of consecutive candles. For example, if set to 5, the position will close when 5 consecutive candles are profitable. You can also set a maximum number of candles (in the max field), ensuring the trade is closed after a certain time even if the profit condition hasn’t been met.
🟪 Alerts
Alerts are a key tool for traders to ensure they don’t miss trading opportunities. They also allow traders to manage their time effectively. Who would want to sit in front of the computer all day waiting for a trading opportunity when they could be attending to other matters? In our tool, you currently have two options for receiving alerts:
Liquidity grabs alert – if you enable this feature and set an alert, the alert will be triggered every time a candle on the current timeframe closes and intersects with the displayed liquidity line.
Entry signals alert – this feature triggers an alert when a signal for entry is generated based on the option you’ve selected in the Entry type. It’s an ideal way to be notified only when a trading opportunity appears according to your predefined rules.
MNO_2Step_Strategy_MOU_KAKU (Publish-Clear)//@version=5
strategy("MNO_2Step_Strategy_MOU_KAKU (Publish-Clear)", overlay=true, pyramiding=0,
max_labels_count=500, max_lines_count=500,
initial_capital=100000,
default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// =========================
// Inputs
// =========================
emaSLen = input.int(5, "EMA Short (5)")
emaMLen = input.int(13, "EMA Mid (13)")
emaLLen = input.int(26, "EMA Long (26)")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
macdZeroTh = input.float(0.2, "MOU: MACD near-zero threshold", step=0.05)
volLookback = input.int(5, "Volume MA days", minval=1)
volMinRatio = input.float(1.3, "MOU: Volume ratio min", step=0.1)
volStrong = input.float(1.5, "Strong volume ratio (Breakout/KAKU)", step=0.1)
volMaxRatio = input.float(3.0, "Volume ratio max (filter)", step=0.1)
wickBodyMult = input.float(2.0, "Pinbar: lowerWick >= body*x", step=0.1)
pivotLen = input.int(20, "Resistance lookback", minval=5)
pullMinPct = input.float(5.0, "Pullback min (%)", step=0.1)
pullMaxPct = input.float(15.0, "Pullback max (%)", step=0.1)
breakLookbackBars = input.int(5, "Pullback route: valid bars after break", minval=1)
// --- Breakout route (押し目なし初動ブレイク) ---
useBreakoutRoute = input.bool(true, "Enable MOU Breakout Route (no pullback)")
breakConfirmPct = input.float(0.3, "Break confirm: close > R*(1+%)", step=0.1)
bigBodyLookback = input.int(20, "Break candle body MA length", minval=5)
bigBodyMult = input.float(1.2, "Break candle: body >= MA*mult", step=0.1)
requireCloseNearHigh = input.bool(true, "Break candle: close near high")
closeNearHighPct = input.float(25.0, "Close near high threshold (% of range)", step=1.0)
allowMACDAboveZeroInstead = input.bool(true, "Breakout route: allow MACD GC above zero instead")
// 表示
showEMA = input.bool(true, "Plot EMAs")
showMouLabels = input.bool(true, "Show MOU/MOU-B labels")
showKakuLabels = input.bool(true, "Show KAKU labels")
showDebugTbl = input.bool(true, "Show debug table (last bar)")
showStatusLbl = input.bool(true, "Show status label (last bar always)")
locChoice = input.string("Below Bar", "Label location", options= )
lblLoc = locChoice == "Below Bar" ? location.belowbar : location.abovebar
// =========================
// 必ず決済が起きる設定(投稿クリア用)
// =========================
enableTPSL = input.bool(true, "Enable TP/SL")
tpPct = input.float(2.0, "Take Profit (%)", step=0.1, minval=0.1) // ←投稿クリア向けに近め
slPct = input.float(1.0, "Stop Loss (%)", step=0.1, minval=0.1) // ←投稿クリア向けに近め
maxHoldBars = input.int(30, "Max bars in trade (force close)", minval=1)
entryMode = input.string("MOU or KAKU", "Entry trigger", options= )
// ✅ 保険:トレード0件を避ける(投稿クリア用)
// 1回でもクローズトレードができたら自動で沈黙
publishAssist = input.bool(true, "Publish Assist (safety entry if 0 trades)")
// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)
plot(showEMA ? emaS : na, color=color.new(color.yellow, 0), title="EMA 5")
plot(showEMA ? emaM : na, color=color.new(color.blue, 0), title="EMA 13")
plot(showEMA ? emaL : na, color=color.new(color.orange, 0), title="EMA 26")
emaUpS = emaS > emaS
emaUpM = emaM > emaM
emaUpL = emaL > emaL
goldenOrder = emaS > emaM and emaM > emaL
above26_2days = close > emaL and close > emaL
baseTrendOK = (emaUpS and emaUpM and emaUpL) and goldenOrder and above26_2days
// =========================
// MACD
// =========================
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdGC = ta.crossover(macdLine, macdSig)
macdUp = macdLine > macdLine
macdNearZero = math.abs(macdLine) <= macdZeroTh
macdGCAboveZero = macdGC and macdLine > 0 and macdSig > 0
macdMouOK = macdGC and macdNearZero and macdUp
macdBreakOK = allowMACDAboveZeroInstead ? (macdMouOK or macdGCAboveZero) : macdMouOK
// =========================
// Volume
// =========================
volMA = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na
volumeMouOK = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong and volRatio <= volMaxRatio
// =========================
// Candle patterns
// =========================
body = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
bullEngulf = close > open and close < open and close >= open and open <= close
bigBull = close > open and open < emaM and close > emaS and (body > ta.sma(body, 20))
candleOK = pinbar or bullEngulf or bigBull
// =========================
// Resistance / Pullback route
// =========================
res = ta.highest(high, pivotLen)
pullbackPct = res > 0 ? (res - close) / res * 100.0 : na
pullbackOK = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct
brokeRes = ta.crossover(close, res )
barsSinceBreak = ta.barssince(brokeRes)
afterBreakZone = (barsSinceBreak >= 0) and (barsSinceBreak <= breakLookbackBars)
pullbackRouteOK = afterBreakZone and pullbackOK
// =========================
// Breakout route (押し目なし初動ブレイク)
// =========================
breakConfirm = close > res * (1.0 + breakConfirmPct / 100.0)
bullBreak = close > open
bodyMA = ta.sma(body, bigBodyLookback)
bigBodyOK = bodyMA > 0 ? (body >= bodyMA * bigBodyMult) : false
rng = math.max(high - low, syminfo.mintick)
closeNearHighOK = not requireCloseNearHigh ? true : ((high - close) / rng * 100.0 <= closeNearHighPct)
mou_breakout = useBreakoutRoute and baseTrendOK and breakConfirm and bullBreak and bigBodyOK and closeNearHighOK and volumeStrongOK and macdBreakOK
mou_pullback = baseTrendOK and volumeMouOK and candleOK and macdMouOK and pullbackRouteOK
mou = mou_pullback or mou_breakout
// =========================
// KAKU (Strict): 8条件 + 最終三点
// =========================
cond1 = emaUpS and emaUpM and emaUpL
cond2 = goldenOrder
cond3 = above26_2days
cond4 = macdGCAboveZero
cond5 = volumeMouOK
cond6 = candleOK
cond7 = pullbackOK
cond8 = pullbackRouteOK
all8_strict = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
final3 = pinbar and macdGCAboveZero and volumeStrongOK
kaku = all8_strict and final3
// =========================
// Entry (strategy)
// =========================
entrySignal = entryMode == "KAKU only" ? kaku : (mou or kaku)
canEnter = strategy.position_size == 0
newEntryKaku = canEnter and kaku and entrySignal
newEntryMouB = canEnter and (not kaku) and mou_breakout and entrySignal
newEntryMou = canEnter and (not kaku) and mou_pullback and entrySignal
// --- Publish Assist(保険エントリー) ---
// 条件が厳しすぎて「トレード0件」だと投稿時に警告が出る。
// closedtradesが0の間だけ、軽いEMAクロスで1回だけ拾う(その後は沈黙)。
assistFast = ta.ema(close, 5)
assistSlow = ta.ema(close, 20)
assistEntry = publishAssist and strategy.closedtrades == 0 and canEnter and ta.crossover(assistFast, assistSlow)
// 実エントリー
if newEntryKaku or newEntryMouB or newEntryMou or assistEntry
strategy.entry("LONG", strategy.long)
// ラベル(視認)
if showMouLabels and newEntryMou
label.new(bar_index, low, "猛(IN)", style=label.style_label_up, color=color.new(color.lime, 0), textcolor=color.black)
if showMouLabels and newEntryMouB
label.new(bar_index, low, "猛B(IN)", style=label.style_label_up, color=color.new(color.lime, 0), textcolor=color.black)
if showKakuLabels and newEntryKaku
label.new(bar_index, low, "確(IN)", style=label.style_label_up, color=color.new(color.yellow, 0), textcolor=color.black)
if assistEntry
label.new(bar_index, low, "ASSIST(IN)", style=label.style_label_up, color=color.new(color.aqua, 0), textcolor=color.black)
// =========================
// Exit (TP/SL + 強制クローズ)
// =========================
inPos = strategy.position_size > 0
tpPx = inPos ? strategy.position_avg_price * (1.0 + tpPct/100.0) : na
slPx = inPos ? strategy.position_avg_price * (1.0 - slPct/100.0) : na
if enableTPSL
strategy.exit("TP/SL", from_entry="LONG", limit=tpPx, stop=slPx)
// 最大保有バーで強制決済(これが「レポート無し」回避の最後の保険)
var int entryBar = na
if strategy.position_size > 0 and strategy.position_size == 0
entryBar := bar_index
if strategy.position_size == 0
entryBar := na
forceClose = inPos and not na(entryBar) and (bar_index - entryBar >= maxHoldBars)
if forceClose
strategy.close("LONG")
// =========================
// 利確/損切/強制クローズのラベル
// =========================
closedThisBar = (strategy.position_size > 0) and (strategy.position_size == 0)
avgPrev = strategy.position_avg_price
tpPrev = avgPrev * (1.0 + tpPct/100.0)
slPrev = avgPrev * (1.0 - slPct/100.0)
hitTP = closedThisBar and high >= tpPrev
hitSL = closedThisBar and low <= slPrev
// 同一足TP/SL両方は厳密に判断できないので、表示は「TP優先」で簡略(投稿ギリギリ版)
if hitTP
label.new(bar_index, high, "利確", style=label.style_label_down, color=color.new(color.lime, 0), textcolor=color.black)
else if hitSL
label.new(bar_index, low, "損切", style=label.style_label_up, color=color.new(color.red, 0), textcolor=color.white)
else if closedThisBar and forceClose
label.new(bar_index, close, "時間決済", style=label.style_label_left, color=color.new(color.gray, 0), textcolor=color.white)
// =========================
// Signals (猛/猛B/確)
// =========================
plotshape(showMouLabels and mou_pullback and not kaku, title="MOU_PULLBACK", style=shape.labelup, text="猛",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showMouLabels and mou_breakout and not kaku, title="MOU_BREAKOUT", style=shape.labelup, text="猛B",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showKakuLabels and kaku, title="KAKU", style=shape.labelup, text="確",
color=color.new(color.yellow, 0), textcolor=color.black, location=lblLoc, size=size.small)
// =========================
// Alerts
// =========================
alertcondition(mou, title="MNO_MOU", message="MNO: MOU triggered")
alertcondition(mou_breakout, title="MNO_MOU_BREAKOUT", message="MNO: MOU Breakout triggered")
alertcondition(mou_pullback, title="MNO_MOU_PULLBACK", message="MNO: MOU Pullback triggered")
alertcondition(kaku, title="MNO_KAKU", message="MNO: KAKU triggered")
alertcondition(assistEntry, title="MNO_ASSIST_ENTRY", message="MNO: ASSIST ENTRY (publish safety)")
// =========================
// Status label(最終足に必ず表示)
// =========================
var label status = na
if showStatusLbl and barstate.islast
label.delete(status)
statusTxt =
"MNO RUNNING\n" +
"ClosedTrades: " + str.tostring(strategy.closedtrades) + "\n" +
"BaseTrend: " + (baseTrendOK ? "OK" : "NO") + "\n" +
"MOU: " + (mou ? "YES" : "no") + " (猛=" + (mou_pullback ? "Y" : "n") + " / 猛B=" + (mou_breakout ? "Y" : "n") + ")\n" +
"KAKU: " + (kaku ? "YES" : "no") + "\n" +
"VolRatio: " + (na(volRatio) ? "na" : str.tostring(volRatio, format.mintick)) + "\n" +
"Pull%: " + (na(pullbackPct) ? "na" : str.tostring(pullbackPct, format.mintick)) + "\n" +
"Pos: " + (inPos ? "IN" : "OUT")
status := label.new(bar_index, high, statusTxt, style=label.style_label_left, textcolor=color.white, color=color.new(color.black, 0))
// =========================
// Debug table(最終足のみ)
// =========================
var table t = table.new(position.top_right, 2, 14, border_width=1, border_color=color.new(color.white, 60))
fRow(_name, _cond, _r) =>
bg = _cond ? color.new(color.lime, 70) : color.new(color.red, 80)
tx = _cond ? "OK" : "NO"
table.cell(t, 0, _r, _name, text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, _r, tx, text_color=color.white, bgcolor=bg)
if showDebugTbl and barstate.islast
table.cell(t, 0, 0, "MNO Debug", text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, 0, "", text_color=color.white, bgcolor=color.new(color.black, 0))
fRow("BaseTrend", baseTrendOK, 1)
fRow("MOU Pullback", mou_pullback, 2)
fRow("MOU Breakout", mou_breakout, 3)
fRow("Break confirm", breakConfirm, 4)
fRow("Break big body", bigBodyOK, 5)
fRow("Break close high", closeNearHighOK, 6)
fRow("Break vol strong", volumeStrongOK, 7)
fRow("Break MACD", macdBreakOK, 8)
fRow("KAKU all8", all8_strict, 9)
fRow("KAKU final3", final3, 10)
fRow("AssistEntry", assistEntry, 11)
fRow("ClosedTrades>0", strategy.closedtrades > 0, 12)
just takesi TimeMNO_2Step_Strategy_MOU_KAKU (Publish-Clear)//@version=5
strategy("MNO_2Step_Strategy_MOU_KAKU (Publish-Clear)", overlay=true, pyramiding=0,
max_labels_count=500, max_lines_count=500,
initial_capital=100000,
default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// =========================
// Inputs
// =========================
emaSLen = input.int(5, "EMA Short (5)")
emaMLen = input.int(13, "EMA Mid (13)")
emaLLen = input.int(26, "EMA Long (26)")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
macdZeroTh = input.float(0.2, "MOU: MACD near-zero threshold", step=0.05)
volLookback = input.int(5, "Volume MA days", minval=1)
volMinRatio = input.float(1.3, "MOU: Volume ratio min", step=0.1)
volStrong = input.float(1.5, "Strong volume ratio (Breakout/KAKU)", step=0.1)
volMaxRatio = input.float(3.0, "Volume ratio max (filter)", step=0.1)
wickBodyMult = input.float(2.0, "Pinbar: lowerWick >= body*x", step=0.1)
pivotLen = input.int(20, "Resistance lookback", minval=5)
pullMinPct = input.float(5.0, "Pullback min (%)", step=0.1)
pullMaxPct = input.float(15.0, "Pullback max (%)", step=0.1)
breakLookbackBars = input.int(5, "Pullback route: valid bars after break", minval=1)
// --- Breakout route (押し目なし初動ブレイク) ---
useBreakoutRoute = input.bool(true, "Enable MOU Breakout Route (no pullback)")
breakConfirmPct = input.float(0.3, "Break confirm: close > R*(1+%)", step=0.1)
bigBodyLookback = input.int(20, "Break candle body MA length", minval=5)
bigBodyMult = input.float(1.2, "Break candle: body >= MA*mult", step=0.1)
requireCloseNearHigh = input.bool(true, "Break candle: close near high")
closeNearHighPct = input.float(25.0, "Close near high threshold (% of range)", step=1.0)
allowMACDAboveZeroInstead = input.bool(true, "Breakout route: allow MACD GC above zero instead")
// 表示
showEMA = input.bool(true, "Plot EMAs")
showMouLabels = input.bool(true, "Show MOU/MOU-B labels")
showKakuLabels = input.bool(true, "Show KAKU labels")
showDebugTbl = input.bool(true, "Show debug table (last bar)")
showStatusLbl = input.bool(true, "Show status label (last bar always)")
locChoice = input.string("Below Bar", "Label location", options= )
lblLoc = locChoice == "Below Bar" ? location.belowbar : location.abovebar
// =========================
// 必ず決済が起きる設定(投稿クリア用)
// =========================
enableTPSL = input.bool(true, "Enable TP/SL")
tpPct = input.float(2.0, "Take Profit (%)", step=0.1, minval=0.1) // ←投稿クリア向けに近め
slPct = input.float(1.0, "Stop Loss (%)", step=0.1, minval=0.1) // ←投稿クリア向けに近め
maxHoldBars = input.int(30, "Max bars in trade (force close)", minval=1)
entryMode = input.string("MOU or KAKU", "Entry trigger", options= )
// ✅ 保険:トレード0件を避ける(投稿クリア用)
// 1回でもクローズトレードができたら自動で沈黙
publishAssist = input.bool(true, "Publish Assist (safety entry if 0 trades)")
// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)
plot(showEMA ? emaS : na, color=color.new(color.yellow, 0), title="EMA 5")
plot(showEMA ? emaM : na, color=color.new(color.blue, 0), title="EMA 13")
plot(showEMA ? emaL : na, color=color.new(color.orange, 0), title="EMA 26")
emaUpS = emaS > emaS
emaUpM = emaM > emaM
emaUpL = emaL > emaL
goldenOrder = emaS > emaM and emaM > emaL
above26_2days = close > emaL and close > emaL
baseTrendOK = (emaUpS and emaUpM and emaUpL) and goldenOrder and above26_2days
// =========================
// MACD
// =========================
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdGC = ta.crossover(macdLine, macdSig)
macdUp = macdLine > macdLine
macdNearZero = math.abs(macdLine) <= macdZeroTh
macdGCAboveZero = macdGC and macdLine > 0 and macdSig > 0
macdMouOK = macdGC and macdNearZero and macdUp
macdBreakOK = allowMACDAboveZeroInstead ? (macdMouOK or macdGCAboveZero) : macdMouOK
// =========================
// Volume
// =========================
volMA = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na
volumeMouOK = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong and volRatio <= volMaxRatio
// =========================
// Candle patterns
// =========================
body = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
bullEngulf = close > open and close < open and close >= open and open <= close
bigBull = close > open and open < emaM and close > emaS and (body > ta.sma(body, 20))
candleOK = pinbar or bullEngulf or bigBull
// =========================
// Resistance / Pullback route
// =========================
res = ta.highest(high, pivotLen)
pullbackPct = res > 0 ? (res - close) / res * 100.0 : na
pullbackOK = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct
brokeRes = ta.crossover(close, res )
barsSinceBreak = ta.barssince(brokeRes)
afterBreakZone = (barsSinceBreak >= 0) and (barsSinceBreak <= breakLookbackBars)
pullbackRouteOK = afterBreakZone and pullbackOK
// =========================
// Breakout route (押し目なし初動ブレイク)
// =========================
breakConfirm = close > res * (1.0 + breakConfirmPct / 100.0)
bullBreak = close > open
bodyMA = ta.sma(body, bigBodyLookback)
bigBodyOK = bodyMA > 0 ? (body >= bodyMA * bigBodyMult) : false
rng = math.max(high - low, syminfo.mintick)
closeNearHighOK = not requireCloseNearHigh ? true : ((high - close) / rng * 100.0 <= closeNearHighPct)
mou_breakout = useBreakoutRoute and baseTrendOK and breakConfirm and bullBreak and bigBodyOK and closeNearHighOK and volumeStrongOK and macdBreakOK
mou_pullback = baseTrendOK and volumeMouOK and candleOK and macdMouOK and pullbackRouteOK
mou = mou_pullback or mou_breakout
// =========================
// KAKU (Strict): 8条件 + 最終三点
// =========================
cond1 = emaUpS and emaUpM and emaUpL
cond2 = goldenOrder
cond3 = above26_2days
cond4 = macdGCAboveZero
cond5 = volumeMouOK
cond6 = candleOK
cond7 = pullbackOK
cond8 = pullbackRouteOK
all8_strict = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
final3 = pinbar and macdGCAboveZero and volumeStrongOK
kaku = all8_strict and final3
// =========================
// Entry (strategy)
// =========================
entrySignal = entryMode == "KAKU only" ? kaku : (mou or kaku)
canEnter = strategy.position_size == 0
newEntryKaku = canEnter and kaku and entrySignal
newEntryMouB = canEnter and (not kaku) and mou_breakout and entrySignal
newEntryMou = canEnter and (not kaku) and mou_pullback and entrySignal
// --- Publish Assist(保険エントリー) ---
// 条件が厳しすぎて「トレード0件」だと投稿時に警告が出る。
// closedtradesが0の間だけ、軽いEMAクロスで1回だけ拾う(その後は沈黙)。
assistFast = ta.ema(close, 5)
assistSlow = ta.ema(close, 20)
assistEntry = publishAssist and strategy.closedtrades == 0 and canEnter and ta.crossover(assistFast, assistSlow)
// 実エントリー
if newEntryKaku or newEntryMouB or newEntryMou or assistEntry
strategy.entry("LONG", strategy.long)
// ラベル(視認)
if showMouLabels and newEntryMou
label.new(bar_index, low, "猛(IN)", style=label.style_label_up, color=color.new(color.lime, 0), textcolor=color.black)
if showMouLabels and newEntryMouB
label.new(bar_index, low, "猛B(IN)", style=label.style_label_up, color=color.new(color.lime, 0), textcolor=color.black)
if showKakuLabels and newEntryKaku
label.new(bar_index, low, "確(IN)", style=label.style_label_up, color=color.new(color.yellow, 0), textcolor=color.black)
if assistEntry
label.new(bar_index, low, "ASSIST(IN)", style=label.style_label_up, color=color.new(color.aqua, 0), textcolor=color.black)
// =========================
// Exit (TP/SL + 強制クローズ)
// =========================
inPos = strategy.position_size > 0
tpPx = inPos ? strategy.position_avg_price * (1.0 + tpPct/100.0) : na
slPx = inPos ? strategy.position_avg_price * (1.0 - slPct/100.0) : na
if enableTPSL
strategy.exit("TP/SL", from_entry="LONG", limit=tpPx, stop=slPx)
// 最大保有バーで強制決済(これが「レポート無し」回避の最後の保険)
var int entryBar = na
if strategy.position_size > 0 and strategy.position_size == 0
entryBar := bar_index
if strategy.position_size == 0
entryBar := na
forceClose = inPos and not na(entryBar) and (bar_index - entryBar >= maxHoldBars)
if forceClose
strategy.close("LONG")
// =========================
// 利確/損切/強制クローズのラベル
// =========================
closedThisBar = (strategy.position_size > 0) and (strategy.position_size == 0)
avgPrev = strategy.position_avg_price
tpPrev = avgPrev * (1.0 + tpPct/100.0)
slPrev = avgPrev * (1.0 - slPct/100.0)
hitTP = closedThisBar and high >= tpPrev
hitSL = closedThisBar and low <= slPrev
// 同一足TP/SL両方は厳密に判断できないので、表示は「TP優先」で簡略(投稿ギリギリ版)
if hitTP
label.new(bar_index, high, "利確", style=label.style_label_down, color=color.new(color.lime, 0), textcolor=color.black)
else if hitSL
label.new(bar_index, low, "損切", style=label.style_label_up, color=color.new(color.red, 0), textcolor=color.white)
else if closedThisBar and forceClose
label.new(bar_index, close, "時間決済", style=label.style_label_left, color=color.new(color.gray, 0), textcolor=color.white)
// =========================
// Signals (猛/猛B/確)
// =========================
plotshape(showMouLabels and mou_pullback and not kaku, title="MOU_PULLBACK", style=shape.labelup, text="猛",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showMouLabels and mou_breakout and not kaku, title="MOU_BREAKOUT", style=shape.labelup, text="猛B",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showKakuLabels and kaku, title="KAKU", style=shape.labelup, text="確",
color=color.new(color.yellow, 0), textcolor=color.black, location=lblLoc, size=size.small)
// =========================
// Alerts
// =========================
alertcondition(mou, title="MNO_MOU", message="MNO: MOU triggered")
alertcondition(mou_breakout, title="MNO_MOU_BREAKOUT", message="MNO: MOU Breakout triggered")
alertcondition(mou_pullback, title="MNO_MOU_PULLBACK", message="MNO: MOU Pullback triggered")
alertcondition(kaku, title="MNO_KAKU", message="MNO: KAKU triggered")
alertcondition(assistEntry, title="MNO_ASSIST_ENTRY", message="MNO: ASSIST ENTRY (publish safety)")
// =========================
// Status label(最終足に必ず表示)
// =========================
var label status = na
if showStatusLbl and barstate.islast
label.delete(status)
statusTxt =
"MNO RUNNING\n" +
"ClosedTrades: " + str.tostring(strategy.closedtrades) + "\n" +
"BaseTrend: " + (baseTrendOK ? "OK" : "NO") + "\n" +
"MOU: " + (mou ? "YES" : "no") + " (猛=" + (mou_pullback ? "Y" : "n") + " / 猛B=" + (mou_breakout ? "Y" : "n") + ")\n" +
"KAKU: " + (kaku ? "YES" : "no") + "\n" +
"VolRatio: " + (na(volRatio) ? "na" : str.tostring(volRatio, format.mintick)) + "\n" +
"Pull%: " + (na(pullbackPct) ? "na" : str.tostring(pullbackPct, format.mintick)) + "\n" +
"Pos: " + (inPos ? "IN" : "OUT")
status := label.new(bar_index, high, statusTxt, style=label.style_label_left, textcolor=color.white, color=color.new(color.black, 0))
// =========================
// Debug table(最終足のみ)
// =========================
var table t = table.new(position.top_right, 2, 14, border_width=1, border_color=color.new(color.white, 60))
fRow(_name, _cond, _r) =>
bg = _cond ? color.new(color.lime, 70) : color.new(color.red, 80)
tx = _cond ? "OK" : "NO"
table.cell(t, 0, _r, _name, text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, _r, tx, text_color=color.white, bgcolor=bg)
if showDebugTbl and barstate.islast
table.cell(t, 0, 0, "MNO Debug", text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, 0, "", text_color=color.white, bgcolor=color.new(color.black, 0))
fRow("BaseTrend", baseTrendOK, 1)
fRow("MOU Pullback", mou_pullback, 2)
fRow("MOU Breakout", mou_breakout, 3)
fRow("Break confirm", breakConfirm, 4)
fRow("Break big body", bigBodyOK, 5)
fRow("Break close high", closeNearHighOK, 6)
fRow("Break vol strong", volumeStrongOK, 7)
fRow("Break MACD", macdBreakOK, 8)
fRow("KAKU all8", all8_strict, 9)
fRow("KAKU final3", final3, 10)
fRow("AssistEntry", assistEntry, 11)
fRow("ClosedTrades>0", strategy.closedtrades > 0, 12)
CE_ZLSMA_5MIN_CANDLECHART-- Overview
The "CE_ZLSMA_5MIN_CANDLECHART" strategy, developed by DailyPanda, is a comprehensive trading strategy designed for analyzing trading on 5-minute candlestick charts.
It aims to use some indicators calculated from a Hekin Ashi chart, while running it on a normal candlestick chart, making sure that no price distortion affects the strategy results .
It also brings a feature to show, on the candlestick chart, where the entries would take place on the HA chart, to also be able to study the effect that the price distortion would make on your backtest.
-- Credit
The code in this script is based on open-source indicators originally written by veryfid and everget, I've made significant changes and additions to the scripts but all credit for the idea goes to them, I just built on top of it:
-- Key Features
It incorporate already built indicators (ZLSMA) and CandelierExit (CE)
-- Zero Lag Least Squares Moving Average (ZLSMA) - by veryfid
The ZLSMA is used to detect trends with minimal lag, improving the accuracy of entry and exit signals.
It incorporates a double-smoothed linear regression to minimize lag and enhance trend-following capabilities.
Buy signals are generated when the price closes above the ZLSMA together with the CE signal.
It is calculated based on the HA candlestick pattern.
-- Chandelier Exit (CE) - by everget
The Chandelier Exit indicator is used to dynamically manage stop-loss levels based on the Average True Range (ATR).
It ensures that stop-loss levels are adaptive to market volatility, protecting profits and limiting losses.
The ATR period and multiplier can be customized to fit different trading styles and risk tolerances.
It is calculated based on the HA candlestick pattern.
-- Heikin Ashi Candles
The strategy leverages Heikin Ashi candlesticks to be able identify trends more clearly and leverage this to stay on winning trades longer.
Traders can choose to display Heikin Ashi candlesticks and order fills on the chart for better visualization.
-- Risk Management
The strategy includes multiple risk management options to protect traders' capital.
Maximum intraday loss limit based on a percentage of equity.
Maximum stop-loss in points to filter out entries with excessive risk.
Daily profit target to stop trading once the goal is achieved.
Options to use fixed contract sizes or dynamically adjust based on a percentage of equity.
These features help traders manage risk and ensure sustainable trading practices.
Moving Averages
Several moving averages (EMA 9, EMA 20, EMA 50, EMA 72, EMA 200, SMA 200, and SMA 500) are plotted to provide additional context and trend confirmation.
A "Zone of Value" is highlighted between the EMA 200 and SMA 200 to identify potential support and resistance areas.
-- Customizable Inputs
The strategy includes various customizable inputs, allowing traders to tailor it to their specific needs.
Start and stop trading times.
Risk management parameters (e.g., maximum stop-loss, daily drawdown limit, and daily profit target).
Display options for Heikin Ashi candles and moving averages.
ZLSMA length and offset.
-- Usage
-- Setting Up the Strategy
Configure the start year for the strategy and the trading hours using the input fields. The first candle of each day will be filled black for easy identification, while candles that are outside the allowed time range will be filled purple.
Customize the risk management parameters to match your risk tolerance and trading style.
Enable or disable the display of Heikin Ashi candlesticks and moving averages as desired.
-- Interpreting Signals
Buy signals are indicated by a "Buy" label when the Heikin Ashi close price is above the ZLSMA and the Chandelier Exit indicates a long position.
The strategy will automatically enter a long position with a stop-loss level determined the swing low.
Positions are closed when the close price falls below the ZLSMA.
-- Risk Management
The strategy monitors the maximum intraday loss and stops trading if the loss limit is reached.
If enabled, also stops trading once the daily profit target is achieved, helping to lock in gains.
You have the option to filter operations based on a maximum accepted stop-loss level, based on your risk tolerance.
You can also operate with a fixed amount of contracts or dynamically adjust it based on your allowed risk per trade, ensuring optimal protection of capital.
-- Visual Aids
The strategy plots various moving averages to provide additional trend context.
The "Zone of Value" between the EMA 200 and SMA 200 highlights potential support and resistance areas.
Heikin Ashi candlesticks and order fills can be displayed to enhance the difference this strategy would take if you were to backtest it on a Heikin Ashi chart.
-- Table of results
This strategy also breaks down the results on a monthly basis for better understanding of your capital development along the way.
-- Conclusion
The "CE_ZLSMA_5MIN_CANDLECHART" strategy is a tool for intraday traders looking to understand and leaverage the Heikin Ashi chart while still using the normal candle chart. Traders can customize the strategy to fit their specific needs, making it a versatile addition to any trading toolkit.
Bullish Reversal Bar Strategy [Skyrexio]Overview
Bullish Reversal Bar Strategy leverages the combination of candlestick pattern Bullish Reversal Bar (description in Methodology and Justification of Methodology), Williams Alligator indicator and Williams Fractals to create the high probability setups. Candlestick pattern is used for the entering into trade, while the combination of Williams Alligator and Fractals is used for the trend approximation as close condition. Strategy uses only long trades.
Unique Features
No fixed stop-loss and take profit: Instead of fixed stop-loss level strategy utilizes technical condition obtained by Fractals and Alligator or the candlestick pattern invalidation to identify when current uptrend is likely to be over (more information in "Methodology" and "Justification of Methodology" paragraphs)
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Trend Trade Filter: strategy uses Alligator and Fractal combination as high probability trend filter.
Methodology
The strategy opens long trade when the following price met the conditions:
1.Current candle's high shall be below the Williams Alligator's lines (Jaw, Lips, Teeth)(all details in "Justification of Methodology" paragraph)
2.Price shall create the candlestick pattern "Bullish Reversal Bar". Optionally if MFI and AO filters are enabled current candle shall have the decreasing AO and at least one of three recent bars shall have the squat state on the MFI (all details in "Justification of Methodology" paragraph)
3.If price breaks through the high of the candle marked as the "Bullish Reversal Bar" the long trade is open at the price one tick above the candle's high
4.Initial stop loss is placed at the Bullish Reversal Bar's candle's low
5.If price hit the Bullish Reversal Bar's low before hitting the entry price potential trade is cancelled
6.If trade is active and initial stop loss has not been hit, trade is closed when the combination of Alligator and Williams Fractals shall consider current trend change from upward to downward.
Strategy settings
In the inputs window user can setup strategy setting:
Enable MFI (if true trades are filtered using Market Facilitation Index (MFI) condition all details in "Justification of Methodology" paragraph), by default = false)
Enable AO (if true trades are filtered using Awesome Oscillator (AO) condition all details in "Justification of Methodology" paragraph), by default = false)
Justification of Methodology
Let's explore the key concepts of this strategy and understand how they work together. The first and key concept is the Bullish Reversal Bar candlestick pattern. This is just the single bar pattern. The rules are simple:
Candle shall be closed in it's upper half
High of this candle shall be below all three Alligator's lines (Jaw, Lips, Teeth)
Next, let’s discuss the short-term trend filter, which combines the Williams Alligator and Williams Fractals. Williams Alligator
Developed by Bill Williams, the Alligator is a technical indicator that identifies trends and potential market reversals. It consists of three smoothed moving averages:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When the lines diverge and align in order, the "Alligator" is "awake," signaling a strong trend. When the lines overlap or intertwine, the "Alligator" is "asleep," indicating a range-bound or sideways market. This indicator helps traders determine when to enter or avoid trades.
Fractals, another tool by Bill Williams, help identify potential reversal points on a price chart. A fractal forms over at least five consecutive bars, with the middle bar showing either:
Up Fractal: Occurs when the middle bar has a higher high than the two preceding and two following bars, suggesting a potential downward reversal.
Down Fractal: Happens when the middle bar shows a lower low than the surrounding two bars, hinting at a possible upward reversal.
Traders often use fractals alongside other indicators to confirm trends or reversals, enhancing decision-making accuracy.
How do these tools work together in this strategy? Let’s consider an example of an uptrend.
When the price breaks above an up fractal, it signals a potential bullish trend. This occurs because the up fractal represents a shift in market behavior, where a temporary high was formed due to selling pressure. If the price revisits this level and breaks through, it suggests the market sentiment has turned bullish.
The breakout must occur above the Alligator’s teeth line to confirm the trend. A breakout below the teeth is considered invalid, and the downtrend might still persist. Conversely, in a downtrend, the same logic applies with down fractals.
How we can use all these indicators in this strategy? This strategy is a counter trend one. Candle's high shall be below all Alligator's lines. During this market stage the bullish reversal bar candlestick pattern shall be printed. This bar during the downtrend is a high probability setup for the potential reversal to the upside: bulls were able to close the price in the upper half of a candle. The breaking of its high is a high probability signal that trend change is confirmed and script opens long trade. If market continues going down and break down the bullish reversal bar's low potential trend change has been invalidated and strategy close long trade.
If market really reversed and started moving to the upside strategy waits for the trend change form the downtrend to the uptrend according to approximation of Alligator and Fractals combination. If this change happens strategy close the trade. This approach helps to stay in the long trade while the uptrend continuation is likely and close it if there is a high probability of the uptrend finish.
Optionally users can enable MFI and AO filters. First of all, let's briefly explain what are these two indicators. The Awesome Oscillator (AO), created by Bill Williams, is a momentum-based indicator that evaluates market momentum by comparing recent price activity to a broader historical context. It assists traders in identifying potential trend reversals and gauging trend strength.
AO = SMA5(Median Price) − SMA34(Median Price)
where:
Median Price = (High + Low) / 2
SMA5 = 5-period Simple Moving Average of the Median Price
SMA 34 = 34-period Simple Moving Average of the Median Price
This indicator is filtering signals in the following way: if current AO bar is decreasing this candle can be interpreted as a bullish reversal bar. This logic is applicable because initially this strategy is a trend reversal, it is searching for the high probability setup against the current trend. Decreasing AO is the additional high probability filter of a downtrend.
Let's briefly look what is MFI. The Market Facilitation Index (MFI) is a technical indicator that measures the price movement per unit of volume, helping traders gauge the efficiency of price movement in relation to trading volume. Here's how you can calculate it:
MFI = (High−Low)/Volume
MFI can be used in combination with volume, so we can divide 4 states. Bill Williams introduced these to help traders interpret the interaction between volume and price movement. Here’s a quick summary:
Green Window (Increased MFI & Increased Volume): Indicates strong momentum with both price and volume increasing. Often a sign of trend continuation, as both buying and selling interest are rising.
Fake Window (Increased MFI & Decreased Volume): Shows that price is moving but with lower volume, suggesting weak support for the trend. This can signal a potential end of the current trend.
Squat Window (Decreased MFI & Increased Volume): Shows high volume but little price movement, indicating a tug-of-war between buyers and sellers. This often precedes a breakout as the pressure builds.
Fade Window (Decreased MFI & Decreased Volume): Indicates a lack of interest from both buyers and sellers, leading to lower momentum. This typically happens in range-bound markets and may signal consolidation before a new move.
For our purposes we are interested in squat bars. This is the sign that volume cannot move the price easily. This type of bar increases the probability of trend reversal. In this indicator we added to enable the MFI filter of reversal bars. If potential reversal bar or two preceding bars have squat state this bar can be interpret as a reversal one.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.12.31. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 50%
Maximum Single Position Loss: -5.29%
Maximum Single Profit: +29.99%
Net Profit: +5472.66 USDT (+54.73%)
Total Trades: 103 (33.98% win rate)
Profit Factor: 1.634
Maximum Accumulated Loss: 1231.15 USDT (-8.32%)
Average Profit per Trade: 53.13 USDT (+0.94%)
Average Trade Duration: 76 hours
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 4h ETH/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
Strategy Impulse Pivot EU - [AstroHub]The strategy is built on analyzing market impulses and their intensity. Its main goal is to help traders identify critical market moments when significant changes occur, signaling either a trend continuation or reversal.
Core Methodology
Impulse Movement
Measured by the difference between the current price and the previous bar’s price.
The indicator filters out minor fluctuations, focusing on meaningful changes.
Color Interpretation
Candles are color-coded based on the strength and direction of the impulse, providing a quick graphical understanding:
Green candles: Indicate moderate price growth, potentially signaling the end of the current trend.
Red candles: Reflect moderate price decline, possibly indicating a trend reversal.
Orange candles: Highlight strong price movements in either direction, signaling a potential trend continuation or reversal.
When a Signal Appears
Impulse Threshold : The price must change by at least a specified number of pips (e.g., 30 pips). This filters out weak movements.
Movement Intensity : Impulse is calculated and compared against threshold values to determine the signal’s strength.
Time Filter : Signals are generated 10 seconds before the hourly bar closes (at 59 minutes and 50 seconds). This ensures traders can prepare to act promptly.
Interpreting the Signals
Green Candle
Moderate price growth: A possible moment to take profit on long positions or open short positions.
Red Candle
Moderate price decline: A potential signal to open long positions or close short positions.
Orange Candle
Strong impulse movement:
If the price rises: A likely continuation of an upward trend.
If the price falls: A probable intensification of the downward trend.
I recommend using it on currency pairs with a 1-hour and 4-hour chart. EUR/USD, AUD/USD
Indicator Features
Impulse Analysis : The indicator highlights only significant price changes, ignoring market "noise."
Color Interpretation : Every movement is color-coded, simplifying the visualization of market dynamics.
Time Filter : Signals appear at critical moments — right before the hour closes. This enhances reliability and gives traders time to react.
Opening Levels : The indicator automatically marks opening levels for significant signals on the chart, helping traders visualize entry and exit zones.
Closed Code : The unique logic is protected, preventing unauthorized copying
Conclusion
This indicator is a powerful tool for analyzing impulse movements and their impact on the market. Its logic is straightforward, and its visualization makes signals easy to interpret. Suitable for both beginners and experienced traders, it offers clear entry and exit points with minimal false signal
IsAlgo - Manual TrendLine► Overview:
Manual TrendLine is a strategy that allows traders to manually insert a trendline and opens trades when the trendline is retested or when the price hits a new highest high or lowest low. It provides flexibility in trendline configuration and trading behavior, enabling responsive and adaptable trading strategies.
► Description:
The Manual TrendLine strategy revolves around using manually defined trendlines as the primary tool for making trading decisions. Traders start by specifying two key points on the chart to establish the trendline. Each point is defined by a specific time and price, enabling precise placement according to the trader’s analysis and insights. Additionally, the strategy allows for the adjustment of the trendline’s width, which acts as a buffer zone around the trendline, providing flexibility in how closely price movements must align with the trendline to trigger trades.
Once the trendline is established, the strategy continuously monitors price movements relative to this line. One of its core functions is to execute trades when the price retests the trendline. A retest occurs when the price approaches the trendline after initially diverging from it, indicating potential continuation of the prevailing trend. This behavior is often seen as a confirmation of the trend’s strength, and the strategy takes advantage of these moments to enter trades in the direction of the trend.
Beyond retests, the strategy also tracks the formation of new highest highs and lowest lows in relation to the trendline. When the price reaches a new highest high or lowest low, it signifies strong momentum in the trend’s direction. The strategy can be configured to open trades at these critical points.
Another key feature of the strategy is its response to trendline breaks. A break occurs when the price moves through the trendline, potentially signaling a reversal or a significant shift in market sentiment. The strategy can be set to open reverse trades upon such breaks, enabling traders to quickly adapt to changing market conditions. Additionally, traders have the option to stop opening new trades after a trendline break, helping to avoid trades during periods of uncertainty or increased volatility.
↑ Up Trend Example:
↓ Down Trend Example:
► Features and Settings:
⚙︎ TrendLine: Define the time and price of the two main points of the trendline, and set the trendline width.
⚙︎ Entry Candle: Specify the minimum and maximum body size and the body-to-candle size ratio for entry candles.
⚙︎ Trading Session: Define specific trading hours during which the strategy operates, restricting trades to preferred market periods.
⚙︎ Trading Days: Specify active trading days to avoid certain days of the week.
⚙︎ Backtesting: backtesting for a selected period to evaluate strategy performance. This feature can be deactivated if not needed.
⚙︎ Trades: Configure trade direction (long, short, or both), position sizing (fixed or percentage-based), maximum number of open trades, and daily trade limits.
⚙︎ Trades Exit: Set profit/loss limits, specify trade duration, or exit based on band reversal signals.
⚙︎ Stop Loss: Choose from various stop-loss methods, including fixed pips, ATR-based, or highest/lowest price points within a specified number of candles. Trades can also be closed after a certain number of adverse candle movements.
⚙︎ Break Even: Adjust stop loss to break even once predefined profit levels are reached, protecting gains.
⚙︎ Trailing Stop: Implement a trailing stop to adjust the stop loss as the trade becomes profitable, securing gains and potentially capturing further upside.
⚙︎ Take Profit: Set up to three take-profit levels using methods such as fixed pips, ATR, or risk-to-reward ratios. Alternatively, specify a set number of candles moving in the trade’s direction.
⚙︎ Alerts: Comprehensive alert system to notify users of significant actions, including trade openings and closings. Supports dynamic placeholders for take-profit levels and stop-loss prices.
⚙︎ Dashboard: Visual display on the chart providing detailed information about ongoing and past trades, aiding users in monitoring strategy performance and making informed decisions.
► Backtesting Details:
Timeframe: 30-minute EURUSD chart
Initial Balance: $10,000
Order Size: 500 units
Commission: 0.05%
Slippage: 5 ticks
This strategy opens trades around a manually drawn trendline, which results in a smaller number of closed trades.
Same high/lowIf you are using support/resistance level-based strategies in your trading then this indicator can help you. I think that the retest level strategy is the best for beginners due to its simplicity of risk/reward calculations and higher abundance on the market. There is a well-known method to recognize a big player (buyer/seller) by candlestick pattern where the last two candles have the same low or same high. Moreover, abnormal candles increase the probability of a retest of a strong level, so my indicator highlights these two situations. In my opinion, a higher timeframe of a candle chart increases the win rate for this indicator (>1h).
So there are several patterns which my indicator can recognize:
1. Same low/high: blue flag up - same low, blue flag down - same high.
2. Mirror levels: high-low - green flag up, low-high - green flag down.
3. abnormal candles: yellow body if >2*ATR (please tune atr in properties, the default value is 5).
4. The red flag indicates the third candle with the same high/low in a row.
Thanks for your attention and have a good trading time!
Expanded Reversal System (4 Pattern Types)Overview
This is the final, refined version of a comprehensive candlestick reversal strategy, built with a core focus on reliability and safety. Its unique execution logic is designed to prevent common backtesting errors and ensure that the integrated risk management works precisely as intended on any timeframe.
The strategy aims to capture high-momentum reversals by identifying an expanded set of classic candlestick patterns and waiting for confirmation before entering a trade.
The "Confirm and Execute" Engine 🛡️
To eliminate bugs seen in simpler backtesting models, this strategy uses a deliberate, three-step execution process:
Signal: It first identifies a high-probability reversal pattern on a "Signal Candle."
Confirmation: It then waits for the next candle to break the high or low of the signal candle. This confirms momentum is moving in the desired direction.
Execution: Finally, it enters a market order on the open of the following candle.
This method ensures a robust and stable entry, allowing the Stop Loss and Take Profit orders to function with 100% reliability.
An Expanded Arsenal of Reversal Signals
This strategy looks for four distinct types of bullish and bearish patterns, giving it more opportunities to find valid trades:
Flexible Pin Bars: Loosened rules for Hammers and Shooting Stars to capture more opportunities.
Classic Engulfing Patterns: Identifies powerful, full-body engulfing candles.
Piercing Patterns & Dark Cloud Covers: Recognizes strong two-candle reversal signals.
Built-in Professional Risk Management 🎯
Automated Position Sizing: Every trade is automatically sized to risk exactly 2% of your current account equity.
Defined Exits: Once a trade is open, it is held until either the pre-calculated Stop Loss or Take Profit is hit. The strategy will not exit early or be influenced by new signals while in a trade.
Asymmetrical Risk/Reward: The strategy targets a 1:6 R:R for long trades and a 1:4 R:R for short trades.
How To Use
Apply the strategy to your chart.
Set your chart's timeframe. This version produced very strong results on the 3-Minute chart.
Review the detailed performance report in the 'Strategy Tester' tab.
Disclaimer: This strategy is provided for informational and educational purposes. All trading involves substantial risk, and past performance is not a guarantee of future results. Please use and adapt this tool responsibly.
Momentum Pull Back Stratergy"Master Pull Back Strategy" is a highly detailed momentum and volume-based trading system designed for Trading View. It visually annotates the chart, detects buy/sell signals, tracks market phases, and evaluates retracements and confirmations. Below is a full breakdown of its logic and components:
🔷 1. Volume Profile Highlights (Arrow Emojis)
Purpose: Show volume strength vs. average using color-coded arrows.
Calculates average volume over a user-defined period (length = 10).
Divides current volume by average volume to get volRatio.
Based on volRatio, plots small arrows (acting like diamonds) in various colors:
Low volume (black, navy, blue...) to high volume (yellow, red, purple).
Visual Purpose: Give a quick sense of how "loud" or "quiet" a candle's volume is.
📈 2. Highs of Day Tracking
Purpose: Track the high price reached during different trading sessions.
Defines pre-market, regular, and post-market sessions.
Tracks the highest price (high) in each session.
Plots colored lines:
Orange: Pre-market high
Red: Regular market high
Blue: Post-market high
🟩 3. Green Candle Pattern Detection
Purpose: Detect bullish patterns formed by consecutive green candles.
Key Conditions:
Count green candles (greenCount) until a red candle appears or 10 candles max.
Require at least 1 silver-or-above volume candle (volRatio >= 1.0).
Must have ≥3% price gain during the green sequence.
Must accumulate >20,000 volume during the green run.
If Valid:
Locks the pattern.
Records important values:
patternStartPrice, patternEndPrice, totalPatternVolume, patternHigh, patternBars
Marks the bar after which red starts (redStartBar)
⬇️ 4. Retracement Monitoring
Purpose: Track retracement from the pattern high after it locks.
Defines retracement percentage:
(greenPatternHigh - low) / (greenPatternHigh - greenPatternLow)
If retracement exceeds 80%, it invalidates the pattern.
Buy signal is disabled if pattern retraces too far.
✅ 5. Buy Signal Logic
Purpose: Fire a buy signal after pattern lock if price breaks above local high.
Conditions:
Pattern is locked (patternLocked).
Price breaks above a short-term high (triggerBreak).
It's not the first red candle.
Price is within 8.5% above EMA9.
Buy signal fires and:
Sets buyActive = true
Tracks highest price after buy
Stores buyPrice = close
❌ 6. Sell Signal Logic
Purpose: Exit signal after retracement from post-buy high.
While buy is active:
If price retraces ≥3% from the post-buy high → sellSignal = true
Resets buyActive, trackedHigh, and buyPrice
Plots a red "SELL" label above the bar.
🎨 7. Buy Signal Visual Color Coding
Purpose: Color buy signal based on how deep the retracement is.
Uses retracement percentage:
≥65% → Red (high risk)
45–65% + MACD bullish → Yellow (moderate)
<45% + MACD bullish → Green (ideal)
Plots BUY label below bar in the respective color.
🔻 8. Retracement Triangle Visuals
Purpose: Shows retracement progression while pattern is locked.
If pattern is locked and not ready for buy:
Plots triangle below bar in the buyColor for visual tracking.
⭐ 9. Star Markers Above Lock Candle
Purpose: Confirmations when pattern locks.
First Star:
Plotted above the first red candle after green pattern lock.
Second Star (⭐⭐):
Additional confirmations:
Volume OK (less than previous)
MACD bullish
Price > VWAP
VolAtLock > 100K
Price up >6% from first green candle
Price below 75% of daily EMA200 or above EMA200
Third Star (⭐⭐⭐):
Even stricter confirmations:
Volume < 60% of previous
High <= previous high
VolAtLock > 500K
Price > $3
Gain >9% from first green
Price < 50% of daily EMA200 or above EMA200
📊 10. Bar Coloring
Purpose: Visually highlight bars based on pattern phase and MACD.
Gray: MACD Bearish
Light Green: Part of active green pattern
Blue: In locked phase but no buy triggered
🔄 11. Reset Logic
Purpose: Clears all tracking variables once a buy signal fires or pattern is invalidated.
Also resets if:
Retracement is too deep
10 candles pass post-lock without a trigger
⛰️ 12. Double Top Detection
Purpose: Basic visual marker when current high == previous high.
Plots a gray triangle if current and previous bar highs match.
📌 Summary: What This Strategy Shows
Buy Opportunities: Based on high-volume green runs and confirmed breakouts.
Sell Triggers: Once a retracement from peak exceeds 3%.
Visuals for Confirmation:
Diamonds for volume
Stars for lock confidence
Colors for retracement strength
Risk Management:
Retracement filtering
Time limits on locked phases
Volume filters
Market Context: Tracks pre/regular/post market highs and daily EMA 200.
3Commas Multicoin Scalper LITE [SwissAlgo]
Introduction
Are you tired of tracking cryptocurrency charts and placing orders manually on your Exchange?
The 3Commas Multicoin Scalper LITE is an automated trading system designed to identify and execute potential trading setups on multiple cryptocurrencies ( simultaneously ) on your preferred Exchange (Binance, Bybit, OKX, Gate.io, Bitget) via 3Commas integration.
It analyzes price action, volume, momentum, volatility, and trend patterns across two categories of USDT Perpetual coins: the 'Top Major Coins' category (11 established cryptocurrencies) and your Custom Category (up to 10 coins of your choice).
The indicator sends real-time trading signals directly to your 3Commas bots for automated execution, identifying both trend-following and contrarian trading opportunities in all market conditions.
Trade automatically all coins of one or more selected categories:
----------------------------------------------
What it Does
The 3Commas Multicoin Scalper LITE is a technical analysis tool that monitors multiple cryptocurrency pairs simultaneously and connects with 3Commas for signal delivery and execution.
Here's how the strategy works:
🔶 Technical Analysis : Analyzes price action, volume, momentum, volatility, and trend patterns across USDT Perpetual Futures contracts simultaneously.
🔶 Pattern Detection : Identifies specific candle patterns and technical confluences that suggest potential trading setups across USDT.P contracts of the selected category.
🔶 Signal Generation : When technical criteria are met at bar close, the indicator creates deal-start signals for the relevant pairs.
🔶 3Commas Integration : Packages these signals and delivers them to 3Commas through TradingView alerts, allowing 3Commas bots to receive specific pair information ('Deal-Start' signals).
🔶 Category Management : Each TradingView alert monitors an entire category, allowing selective activation of different crypto categories.
🔶 Visual Feedback : Provides color-coded candles and backgrounds to visualize technical conditions, with optional pivot points and trend visualization.
Candle types
Signals
----------------------------------------------
Quick Start Guide
1. Setup 3Commas Bots : Configure two DCA bots in 3Commas (All USDT pairs) - one for LONG positions and one for SHORT positions.
2. Define Trading Parameters : Set your budget for each trade and adjust your preferred sensitivity within the indicator settings.
3. Create Category Alerts : Set up one TradingView alert for each crypto category you want to trade.
That's it! Once configured, the system automatically sends signals to your 3Commas bots when predefined trading setups are detected across coins in your selected/activated categories. The indicator scans all coins at bar close (for example, every hour on the 1H timeframe) and triggers trade execution only for those showing technical confluences.
Important : Consider your total capital when enabling categories. More details about the setup process are provided below (see paragraph "Detailed Setup & Configuration").
----------------------------------------------
Built-in Backtesting
The 3Commas Multicoin Scalper LITE includes backtesting visualization for each coin. When viewing any USDT Perpetual pair on your chart, you can visualize how the strategy would have performed historically on that specific asset.
Color-coded candles and signal markers show past trading setups, helping you evaluate which coins responded best to the strategy. This built-in backtesting capability can support your selection of assets/categories to trade before deploying real capital.
As backtesting results are hypothetical and do not guarantee future performance, your research and analysis are essential for selecting the crypto categories/coins to trade.
The default strategy settings are: Start Capital 1,000$, leverage 10X, Commissions 0.1% (average Taker Fee on Exchanges for average users), Order Amount 200$ for Longs/Shorts, Slippage 4
Example of backtesting view
----------------------------------------------
Key Features
🔶 Multi-Exchange Support : Compatible with BINANCE, BYBIT, BITGET, GATEIO, and OKX USDT Perpetual markets (USDT.P)
🔶 Category Options : Analyze cryptocurrencies in the Top Major Coins category or create your custom watchlist
🔶 Custom Category Option : Create your watchlist with up to 10 custom USDT Perpetual pairs
🔶 3Commas Integration : Seamlessly connects with 3Commas bots to automate trade entries and exits
🔶 Dual Strategy Approach : Identifies both "trend following" and "contrarian" potential setups
🔶 Confluence-Based Signals : Uses a combination of multiple technical factors - price spikes, price momentum, volume spikes, volume momentum, trend analysis, and volatility spikes - to generate potential trading setups
🔶 Risk Management : Adjustable sensitivity/risk levels, leverage settings, and budget allocation for each trade
🔶 Visual Indicators : Color-coded candles and trading signals provide visual feedback on market conditions
🔶 Trend Indication : Background colors showing ongoing uptrends/downtrends
🔶 Pivot Points & Daily Open : Optional display of pivot points and daily open price for additional context
🔶 Liquidity Analysis : Optional display of high/low liquidity timeframes throughout the trading week
🔶 Trade Control : Configurable limit for the maximum number of signals sent to 3Commas for execution (per bar close and category)
5 Available Exchanges
Pick coins/tokens and defined your Custom Category
----------------------------------------------
Methodology
The 3Commas Multicoin Scalper LITE utilizes a multi-faceted approach to identify potential trading setups:
1. Price Action Analysis : Detects abnormal price movements by comparing the current candle's range to historical averages and standard deviations, helping identify potential "pump and dump" scenarios or new-trends start
2. Price Momentum : Evaluates the relative strength of bullish vs. bearish price movements over time, indicating the build-up of buying or selling pressure.
3. Volume Analysis: Identifies unusual volume spikes by comparing current volume to historical averages, signaling strong market interest in a particular direction.
4. Volume Momentum : Measures the ratio of bullish to bearish volume, revealing the dominance of buyers or sellers over time.
5. Trend Analysis : Combines EMA slopes, RSI, and Stochastic RSI to determine overall trend direction and strength.
6. Volatility : Monitors the ATR (Average True Range) to detect periods of increased market volatility, which may indicate potential breakouts or reversals
7. Candle Wick Analysis : Evaluates upper and lower wick percentages to detect potential rejection patterns and reversals.
8. Pivot Point Analysis : Uses pivot points (PP, R1-R3, S1-S3) for identifying key support/resistance areas and potential breakout/breakdown levels.
9. Daily Open Reference: Analyzes price action relative to the daily open for potential setups related to price movement vs. the opening price
10. Market Timing/Liquidity : Evaluates high/low liquidity periods, specific days/times of heightened risk, and potential market manipulation timeframes.
11. Boost Factors : Applies additional weight to certain confluence patterns to adjust global scores
These factors are combined into a "Global Score" ranging from -1 to +1 , applied at bar close to the newly formed candles.
Scores above predefined thresholds (configurable via the Sensitivity Settings) indicate strong bullish or bearish conditions and trigger signals based on predefined patterns. The indicator then applies additional filters to generate specific "Trend Following" and "Contrarian" trading signals. The identified signals are packaged and sent to 3Commas for execution.
Pivot Points
Trend Background
----------------------------------------------
Who This Strategy Is For
The 3Commas Multicoin Scalper LITE may benefit:
Crypto Traders seeking to automate their trading across multiple coins simultaneously
3Commas Users looking to enhance their bot performance with technical signals
Busy Traders who want to monitor market opportunities without constant chart-watching
Multi-strategy traders interested in both trend-following and reversal trading approaches
Traders of Various Experience Levels from intermediate traders wanting to save time to advanced traders seeking to optimize their operations
Perpetual Futures Traders on major exchanges (Binance, Bybit, OKX, Gate.io, Bitget)
Swing and Scalp Traders seeking to identify short to medium-term profit opportunities
----------------------------------------------
Visual Indicators
The indicator provides visual feedback through:
1. Candlestick Colors :
* Lime: Strong bullish candle (High positive score)
* Blue: Moderate bullish candle (Medium positive score)
* Red: Strong bearish candle (High negative score)
* Purple: Moderate bearish candle (Medium negative score)
* Pale Green/Red: Mild bullish/bearish candle
2. Signal Markers :
* ↗: Trend following Long signal
* ↘: Trend following Short signal
* ⤴: Contrarian Long signal
* ⤵: Contrarian Short signal
3. Optional Elements :
* Pivot Points: Daily support/resistance levels (R1-R3, S1-S3, PP)
* Daily Open: Reference price level for the current trading day
* Trend Background: Color-coded background suggesting potential ongoing uptrend/downtrend
* Liquidity Highlighting: Background colors indicating typical high/low market liquidity periods
4. TradingView Strategy Plots and Backtesting Data : Standard performance metrics showing entry/exit points, equity curves, and trade statistics, based on the signals generated by the script.
----------------------------------------------
Detailed Setup & Configuration
The indicator features a user-friendly input panel organized in sequential steps to guide you through the complete setup process. Tooltips for each step provide additional information to help you understand the actions required to get the strategy running.
Informative tables provide additional details and instructions for critical setup steps such as 3Commas bot configuration and TradingView alert creation (to activate trading on specific categories).
1. Choose Exchange, Crypto Category & Sensitivity
* Select your USDT Perpetual Exchange (BINANCE, BYBIT, BITGET, GATEIO, or OKX) - i.e. the same Exchange connected in your 3Commas account
* Choose your preferred crypto category, or define your watchlist
* Choose from three sensitivity levels: Default, Aggressive, or Test Mode (test mode is designed to generate more signals, a potentially helpful feature when you are testing the indicator and alerts)
2. Setup 3Commas Bots and integrate them with the algo
* Create both LONG and SHORT DCA Bots in 3Commas
* Configure bots to accept signals for 'All USDT Pairs' with "TradingView Custom Signal" as deal start condition
* Enter your Bot IDs and Email Token in the indicator settings
* Set a maximum budget for LONG and SHORT trades
* Choose whether to allow LONG trades, SHORT trades, or both, according to your preference and market analysis
* Set maximum trades per bar/category (i.e. the max. number of simultaneous signals that the algo may send to your 3Commas bots for execution at every bar close - every hour if you set the 1H timeframe)
* Access the detailed setup guide table for step-by-step 3Commas configuration instructions
3Commas integration
3. Choose Visuals
* Toggle various optional visual elements to add to the chart: category metrics, fired alerts, coin metrics, daily open, pivot points
* Select a color theme: Dark or Light
4. Activate Trading via Alerts
* Create TradingView alerts for each category you want to trade
* Set alert condition to "3Commas Multicoin Scalper" with "Any alert() function call"
* Set the content of the message field to: {{Message}}, deleting the default content shown in this text field, to enable proper 3Commas integration (any other text than {{Message}}, would break the delivery trading signals from Tradingview to 3Commas)
* View the alerts setup instruction table for visual guidance on this critical step
Alerts
Fired Alerts (example at a single bar)
Fired Alerts (frequency)
Important Configuration Notes
Ensure that the TradingView chart's exchange matches your selected exchange in the indicator settings and your 3Commas bot settings.
You must configure the same leverage in both the script and your 3Commas bots
Your 3Commas bots must be configured for All USDT pairs
You must enter the exact Bot IDs and Email Token from 3Commas (these remain confidential - no one, including us, has access to them)
If you activate multiple categories without sufficient capital, 3Commas will display " insufficient funds " errors - align your available capital with the number of categories you activate (each deal will use the budget amount specified in user inputs)
You are free to set your Take Profit % / trailing on 3Commas
We recommend not to use DCA orders (i.e. set the number of DCA orders at zero)
Legend of symbols and plots on the chart
----------------------------------------------
FAQs
General Questions
❓ Q: What features are included in this indicator? A: This indicator provides access to the "Top Major Coins" category and a custom category option where you can define up to 10 pairs of your choice. It includes multi-exchange support, 3Commas integration, a dual strategy approach, visual indicators, trade controls, and comprehensive backtesting capabilities. The indicator is optimized to manage up to 2 trades per hour/category with leverage up to 10x and trade sizes up to 500 USDT - everything needed for traders looking to automate their crypto trading across multiple pairs simultaneously.
❓ Q: What is Global Score? A: The Global Score serves as a foundation for signal generation. When a candle's score exceeds certain thresholds (defined by your Risk Level setting), it becomes a candidate for signal generation. However, not all high-scoring candles generate trading signals - the indicator applies additional pattern recognition and contextual filters. For example, a strongly positive score (lime candle) in an established uptrend may trigger a "Trend Following" signal, while a strongly negative score (red candle) in a downtrend might generate a "Trend following Short" signal. Similarly, contrarian signals are generated when specific reversal patterns occur alongside appropriate Global Score values, often involving wick analysis and pivot point interactions. This multi-layer approach helps filter out false positives and identify higher-probability trading setups.
❓ Q: What's the difference between "Trend following" and "Contrarian" signals in the script? A: "Trend Following" signals follow the identified trends while "Contrarian" signals anticipate potential trend reversals.
❓ Q: Why don't I see any signals on my chart? A: Make sure you're viewing a USDT Perpetual pair from your selected exchange that belongs to the crypto category you've chosen to analyze. For example, if you've selected the "Top Major Coins" category with Binance as your exchange, you need to view a chart of one of those specific pairs (like BINANCE:BTCUSDT.P) to see signals. If you switch exchanges, for example from Binance to Bybit, you need to pull a Bybit pair on the chart to see backtesting data and signals.
❓ Q: Does this indicator guarantee profits? A: No. Trading cryptocurrencies involves significant risk, and past performance is not indicative of future results. This indicator is a tool to help you identify potential trading setups, but it does not and cannot guarantee profits.
❓ Q: Does this indicator repaint or use lookahead bias? A: No. All trading signals generated by this indicator are based only on completed price data and do not repaint. The system is designed to ensure that backtesting results reflect as closely as possible what you should experience in live trading.
While reference levels like pivot points are kept stable throughout the day using lookahead on, the actual buy and sell signals are calculated using only historical data (lookahead off) that would have been available at that moment in time. This ensures reliability and consistency between backtesting and real-time trading performance.
Technical Setup
❓ Q: What exchanges are supported? A: The strategy supports BINANCE, BYBIT, BITGET, GATEIO, and OKX USDT Perpetual markets (i.e. all the Exchanges you can connect to your 3Commas account for USDT Perpetual trading, excluding Coinbase Perpetual that offers USDC pairs, instead of USDT).
❓ Q: What timeframe should I use? A: The indicator is optimized for the 1-hour (1H) timeframe but may run on any timeframe.
❓ Q: How many coins can I trade at once? A: You can trade all coins within the selected category. You can activate categories by setting up alerts.
❓ Q: How many alerts do I need to set up? A: You need to set up one alert for each crypto category you want to trade. We recommend starting with one category, testing the results carefully, monitoring performance daily, and perhaps activating additional categories in a second stage.
❓ Q: Are there any specific risk management features built into the indicator? A: Yes, the indicator includes risk management features: adjustable maximum trades per hour/category, the ability to enable/disable long or short signals depending on market conditions, customizable trade size for both long and short positions, and different sensitivity/risk level settings.
❓ Q: What happens if 3Commas can't execute a signal? A: If 3Commas cannot execute a signal (due to insufficient funds, bot offline, etc.), the trade will be skipped. The indicator will continue sending signals for other valid setups, but it doesn't retry failed signals.
❓ Q: Can I run this indicator on multiple charts at once? A: Yes, but it's not necessary. The indicator analyzes all coins in your selected categories regardless of which chart you apply it to. For optimal resource usage, apply it to a single chart of a USDT Perpetual pair from your selected exchange. To stop trading a category, simply delete the alert created for that category.
❓ Q: How frequently does the indicator scan for new signals? A: The indicator scans all coins in your selected categories at the close of each bar (every hour if you selected the 1H timeframe).
----------------------------------------------
⚠️
Disclaimer
This indicator is for informational and educational purposes only and does not constitute financial advice. Trading cryptocurrencies involves significant risk, including the potential loss of all invested capital, and past performance is not indicative of future results.
Always conduct your own thorough research (DYOR) and understand the risks involved before making any trading decisions. Trading with leverage significantly amplifies both potential profits and losses - exercise extreme caution when using leverage and never risk more than you can afford to lose.
The Bot ID and Email Token information are transmitted directly from TradingView to 3Commas via secure connections. No third party or entity will ever have access to this data (including the Author). Do not share your 3Commas credentials with anyone.
This indicator is not affiliated with, endorsed by, or sponsored by TradingView or 3Commas.






















