Backtest Strategy Optimizer AdapterBacktest Strategy Optimizer Adapter
With this library, you will be able to run one or multiple backtests with different variables (combinations). For example, you can run 100 backtests of Supertrend at once with an increment factor of 0.1. This way, you can easily fetch the most profitable settings and apply them to your strategy.
To get a better understanding of the code, you can check the code below.
Single backtest results
= backtest.results(date_start, date_end, long_entry, long_exit, take_profit_percentage, stop_loss_percentage, atr_length, initial_capital, order_size, commission)
Add backtest results to a table
backtest.table(initial_capital, profit_and_loss, open_balance, winrate, entries, exits, wins, losses, backtest_table_position, backtest_table_margin, backtest_table_transparency, backtest_table_cell_color, backtest_table_title_cell_color, backtest_table_text_color)
Backtest result without chart labels
= backtest.run(date_start, date_end, long_entry, long_exit, take_profit_percentage, stop_loss_percentage, atr_length, initial_capital, order_size, commission)
Backtest result profit
profit = backtest.profit(date_start, date_end, long_entry, long_exit, take_profit_percentage, stop_loss_percentage, atr_length, initial_capital, order_size, commission)
Backtest result winrate
winrate = backtest.winrate(date_start, date_end, long_entry, long_exit, take_profit_percentage, stop_loss_percentage, atr_length, initial_capital, order_size, commission)
Start Date
You can set the start date either by using a timestamp or a number that refers to the number of bars back.
Stop Loss / Take Profit Issue
Unfortunately, I did not manage to achieve 100% accuracy for the take profit and stop loss. The original TradingView backtest can stop at the correct position within a bar using the strategy.exit stop and limit variables. However, it seems unachievable with a crossunder/crossover function in PineScript unless it is calculated on every tick (which would make the backtesting results invalid). So far, I have not found a workaround, and I would be grateful if someone could solve this issue, if it is even possible. If you have any solutions or fixes, please let me know!
Multiple Backtest Results / Optimizer
You can run multiple backtests in a single strategy or indicator, but there are certain requirements for placing the correct code in the right way. To view examples of running multiple backtests, you can refer to the links provided in the updates I posted below. In the samples I have also explained how you can auto-generate code for your backtest strategy.
Cerca negli script per "stop loss"
Pineconnector Strategy Template (Connect Any Indicator)Hello traders,
If you're tired of manual trading and looking for a solid strategy template to pair with your indicators, look no further.
This Pine Script v5 strategy template is engineered for maximum customization and risk management.
Best part?
It’s optimized for Pineconnector, allowing seamless integration with MetaTrader 4 and 5.
This powerful tool gives a lot of power to those who don't know how to code in Pinescript and are looking to automate their indicators' signals on Metatrader 4/5.
IMPORTANT NOTES
Pineconnector is a trading bot software that forwards TradingView alerts to your Metatrader 4/5 for automating trading.
Many traders don't know how to dynamically create Pineconnector-compatible alerts using the data from their TradingView scripts.
Traders using trading bots want their alerts to reflect the stop-loss/take-profit/trailing-stop/stop-loss to break options from your script and then create the orders accordingly.
This script showcases how to create Pineconnector alerts dynamically.
Pineconnector doesn't support alerts with multiple Take Profits.
As a workaround, for 2 TPs, I had to open two trades.
It's not optimal, as we end up paying more spreads for that extra trade - however, depending on your trading strategy, it may not be a big deal.
TRADINGVIEW ALERTS
1) You'll have to create one alert per asset X timeframe = 1 chart.
Example: 1 alert for EUR/USD on the 5 minutes chart, 1 alert for EUR/USD on the 15-minute chart (assuming you want your bot to trade the EUR/USD on the 5 and 15-minute timeframes)
2) Select the Order fills and alert() function calls condition
3) For each alert, the alert message is pre-configured with the text below
{{strategy.order.alert_message}}
Please leave it as it is.
It's a TradingView native variable that will fetch the alert text messages built by the script.
4) Don't forget to set the Pineconnector webhook URL in the Notifications tab of the TradingView alerts UI.
You’ll find the URL on the Pineconnector documentation website.
EA CONFIGURATION
1) The Pyramiding in the EA on Metatrader must be set to 2 if you want to trade with 2 TPs => as it's opening 2 trades.
If you only want 1 TP, set the EA Pyramiding to 1.
Regarding the other EA settings, please refer to the Pineconnector documentation on their website.
2) In the EA, you can set a risk (= position size type) in %/lots/USD, as in the TradingView backtest settings.
KEY FEATURES
I) Modular Indicator Connection
* plug in your existing indicator into the template.
* Only two lines of code are needed for full compatibility.
Step 1: Create your connector
Adapt your indicator with only 2 lines of code and then connect it to this strategy template.
To do so:
1) Find in your indicator where the conditions print the long/buy and short/sell signals.
2) Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator, whether it's a MACD , ZigZag , Pivots , higher-highs, lower-lows, or whatever indicator with clear buy and sell conditions.
//@version=5
indicator("Supertrend", overlay = true, timeframe = "", timeframe_gaps = true)
atrPeriod = input.int(10, "ATR Length", minval = 1)
factor = input.float(3.0, "Factor", minval = 0.01, step = 0.01)
= ta.supertrend(factor, atrPeriod)
supertrend := barstate.isfirst ? na : supertrend
bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, display = display.none)
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style = plot.style_linebr)
downTrend = plot(direction < 0 ? na : supertrend, "Down Trend", color = color.red, style = plot.style_linebr)
fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps = false)
fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps = false)
buy = ta.crossunder(direction, 0)
sell = ta.crossunder(direction, 0)
//////// CONNECTOR SECTION ////////
Signal = buy ? 1 : sell ? -1 : 0
plot(Signal, title = "Signal", display = display.data_window)
//////// CONNECTOR SECTION ////////
Important Notes
🔥 The Strategy Template expects the value to be exactly 1 for the bullish signal and -1 for the bearish signal
Now, you can connect your indicator to the Strategy Template using the method below or that one.
Step 2: Connect the connector
1) Add your updated indicator to a TradingView chart
2) Add the Strategy Template as well to the SAME chart
3) Open the Strategy Template settings, and in the Data Source field, select your 🔌Connector🔌 (which comes from your indicator)
Note it doesn’t have to be named 🔌Connector🔌 - you can name it as you want - however, I recommend an explicit name you can easily remember.
From then, you should start seeing the signals and plenty of other stuff on your chart.
🔥 Note that whenever you update your indicator values, the strategy statistics and visuals on your chart will update in real-time
II) Customizable Risk Management
- Choose between percentage or USD modes for maximum drawdown.
- Set max consecutive losing days and max losing streak length.
- I used the code from my friend @JosKodify for the maximum losing streak. :)
Will halt the EA and backtest orders fill whenever either of the safeguards above are “broken”
III) Intraday Risk Management
- Limit the maximum intraday losses both in percentage or USD.
- Option to set a maximum number of intraday trades.
- If your EA gets halted on an intraday chart, auto-restart it the next day.
IV) Spread and Account Filters
- Trade only if the spread is below a certain pip value.
- Set requirements based on account balance or equity.
V) Order Types and Position Sizing
- Choose between market, limit, or stop orders.
- Set your position size directly in the template.
Please use the position size from the “Inputs” and not the “Properties” tab.
Reason : The template sends the order on the same candle as the entry signals - at those entry signals candles, the position size isn’t computed yet, and the template can’t then send it to Pineconnector.
However, you can use the position size type (USD, contracts, %) from the “Properties” tab for backtesting.
In the EA, you can define the position size type for your orders in USD or lots or %.
VI) Advanced Take-Profit and Stop-Loss Options
- Choose to set your SL/TP in either pips or percentages.
- Option for multiple take-profit levels and trailing stop losses.
- Move your stop loss to break even +/- offset in pips for “risk-free” trades.
VII) Logger
The Pineconnector commands are logged in the TradingView logger.
You'll find more information about it in this TradingView blog post .
WHY YOU MIGHT NEED THIS TEMPLATE
1) Transform your indicator into a Pineconnector trading bot more easily than before
Connect your indicator to the template
Create your alerts
Set your EA settings
2) Save Time
Auto-generated alert messages for Pineconnector.
I tested them all, and I checked with the support team what could/can’t be done
3) Be in Control
Manage your trading risks with advanced features.
4) Customizable
Fits various trading styles and asset classes.
REQUIREMENTS
* Make sure you have your Pineconnector license ID.
* Create your alerts with the Pineconnector webhook URL
* If there is any issue with the template, ask me in the comments section - I’ll answer quickly.
BACKTEST RESULTS FROM THIS POST
1) I connected this strategy template to a dummy Supertrend script.
I could have selected any other indicator or concept for this script post.
I wanted to share an example of how you can quickly upgrade your strategy, making it compatible with Pineconnector.
2) The backtest results aren't relevant for this educational script publication.
I used realistic backtesting data but didn't look too much into optimizing the results, as this isn't the point of why I'm publishing this script.
This strategy is a template to be connected to any indicator - the sky is the limit. :)
3) This template is made to take 1 trade per direction at any given time.
Pyramiding is set to 1 on TradingView.
The strategy default settings are:
* Initial Capital: 100000 USD
* Position Size: 1 contract
* Commission Percent: 0.075%
* Slippage: 1 tick
* No margin/leverage used
WHAT’S COMING NEXT FOR YOU GUYS?
I’ll make the same template for ProfitView, then for AutoView, and then for Alertatron.
All of those are free and open-source.
I have no affiliations with any of those companies - I'm publishing those templates as they will be useful to many of you.
Dave
3kilos BTC 15mThe "3kilos BTC 15m" is a comprehensive trading strategy designed to work on a 15-minute timeframe for Bitcoin (BTC) or other cryptocurrencies. This strategy combines multiple indicators, including Triple Exponential Moving Averages (TEMA), Average True Range (ATR), and Heikin-Ashi candlesticks, to generate buy and sell signals. It also incorporates risk management features like take profit and stop loss.
Indicators
Triple Exponential Moving Averages (TEMA): Three TEMA lines are used with different lengths and sources:
Short TEMA (Red) based on highs
Long TEMA 1 (Blue) based on lows
Long TEMA 2 (Green) based on closing prices
Average True Range (ATR): Custom ATR calculation with EMA smoothing is used for volatility measurement.
Supertrend: Calculated using ATR and a multiplier to determine the trend direction.
Simple Moving Average (SMA): Applied to the short TEMA to smooth out its values.
Heikin-Ashi Close: Used for additional trend confirmation.
Entry & Exit Conditions
Long Entry: Triggered when the short TEMA is above both long TEMA lines, the Supertrend is bullish, the short TEMA is above its SMA, and the Heikin-Ashi close is higher than the previous close.
Short Entry: Triggered when the short TEMA is below both long TEMA lines, the Supertrend is bearish, the short TEMA is below its SMA, and the Heikin-Ashi close is lower than the previous close.
Take Profit and Stop Loss: Both are calculated as a percentage of the entry price, and they are set for both long and short positions.
Risk Management
Take Profit: Set at 1% above the entry price for long positions and 1% below for short positions.
Stop Loss: Set at 3% below the entry price for long positions and 3% above for short positions.
Commission and Pyramiding
Commission: A 0.07% commission is accounted for in the strategy.
Pyramiding: The strategy does not allow pyramiding.
Note
This strategy is designed for educational purposes and should not be considered as financial advice. Always do your own research and consider consulting a financial advisor before engaging in trading.
EMA Envelope - Signal with Stoploss and Takeprofit LevelsDescription:
This Pine Script indicator implements the EMA Envelope strategy, which utilizes Exponential Moving Averages (EMA) to create an envelope around the price chart. The strategy generates buy and sell signals based on the crossing of the price above and below the upper and lower EMA envelopes, respectively. It also incorporates additional features such as stop-loss and take-profit levels for risk management.
Indicator Settings:
EMA Length: Specifies the period for the short-term Exponential Moving Average.
Long Term EMA Length: Defines the period for the long-term Exponential Moving Average used for signal filtering.
Take Profit Ratio: Determines the ratio for calculating the take-profit levels based on the stop-loss.
Filter Signal on Long Term EMA: Enables or disables the filtering of buy/sell signals using the long-term EMA.
Show only recent signal: When enabled, shows only the most recent buy/sell signals.
Buy and Sell Signals:
The indicator generates buy signals when the price crosses above the upper EMA envelope and the previous low was below the upper EMA envelope. Additionally, you can choose to filter buy signals based on whether the closing price is above the long-term EMA.
Conversely, sell signals are generated when the price crosses below the lower EMA envelope, and the previous high was above the lower EMA envelope. Similar to buy signals, sell signals can also be filtered using the long-term EMA.
Note: Signal works well on Higher Timeframes like Daily/8hrs/4hrs/1hr.
Stop-Loss and Take-Profit Levels:
For buy signals, the stop-loss is set at the lower EMA level, while the take-profit level is calculated by adding a specified ratio of the difference between the low and the stop-loss level to the low price.
For sell signals, the stop-loss is set at the upper EMA level, and the take-profit level is calculated by subtracting a specified ratio of the difference between the stop-loss level and the high price from the high price.
Disclaimer:
This indicator is provided for educational and informational purposes only. Trading involves significant risk, and past performance does not guarantee future results. Users are solely responsible for their trading decisions and should conduct their own research and risk management. The author shall not be held liable for any losses or damages arising from the use of this indicator.
Note: Always test the indicator thoroughly on historical data and consider paper trading before applying it to live trading environments.
JS-TechTrading: Supertrend-Strategy_Basic versionAre you looking for a reliable and profitable algorithmic trading strategy for TradingView? If so, you might be interested in our Supertrend basic strategy, which is based on three powerful indicators: Supertrend (ATR), RSI and EMA.
Supertrend is a trend-following indicator that helps you identify the direction and strength of the market. It also gives you clear signals for entry and exit points based on price movements.
RSI is a momentum indicator that measures the speed and change of price movements. It helps you filter out false signals and avoid overbought or oversold conditions.
EMA is a moving average indicator that smooths out price fluctuations and shows you the long-term trend of the market. It helps you confirm the validity of your trades and avoid trading against the trend.
Our Supertrend basic strategy combines these three indicators to give you a simple yet effective way to trade any market. Here's how it works:
- For long trades, you enter when the price is above Supertrend and pulls back below it (the low of the candle crosses Supertrend) and then rebounds above it (the high of the next candle goes above the pullback candle). You exit when the price closes below Supertrend or when you reach your target profit or stop loss.
- For short trades, you enter when the price is below Supertrend and pulls back above it (the high of the candle crosses Supertrend) and then drops below it (the low of the next candle goes below the pullback candle). You exit when the price closes above Supertrend or when you reach your target profit or stop loss.
- You can also use RSI and EMA filters to improve your results. For long trades, you only enter if RSI is above 50 and price is above 200 EMA. For short trades, you only enter if RSI is below 50 and price is below 200 EMA.
- You can set your stop loss and target profit as a percentage of your entry price or based on other criteria. You can also adjust the parameters of each indicator according to your preferences and risk tolerance.
Our Supertrend basic strategy is easy to use and has been tested on various markets and time frames. It can help you capture consistent profits while minimizing your losses.
BBofVWAP with entry at Pivot PointThis strategy uses BB of VWAP and Pivot point to enter and exit the Long position.
settings
BB length 50
BB Source VWAP
Entry
When VWAP crossing up BB midline and price/close is above weekly PivotPoint ( you can also use Daily pivot point )
Exit
When VWAP is crossing down BB lower band
Stop Loss
Stop loss defaulted to 5%
Note : Long will position will be exited on either VWAP crossing down BB lower band or stop loss is hit - whichever comes first . Being said that some time your stop loss exit is less than 5% which saves from more losses.
Entry is based on weekly Pivot point , so any time frame below weekly will work perfect. I have tested t on 30 min , 1 HR , 4 Hr , Daily charts. Even weekly setting shows good results , that will work for long term investing style.
if you change Pivot period to Daily , chose time frames below Daily.
I also noticed this strategy mostly do not enter Long position in a down trend. Even it finds one , it will be exited with minimal loss.
Warning
For the use of educational purposes only
ICT Swiftedge# ICT SwiftEdge: Advanced Market Structure Trading System
**Overview**
ICT SwiftEdge is a powerful trading system built upon the foundation of ICTProTools' ICT Breakers, licensed under the Mozilla Public License 2.0 (mozilla.org). This script has been significantly enhanced by to combine market structure analysis with modern technical indicators and a sleek, AI-inspired statistics dashboard. The goal is to provide traders with a comprehensive tool for identifying high-probability trade setups, managing exits, and tracking performance in a visually intuitive way.
**Credits**
This script is a derivative work based on the original "ICT Breakers" by ICTProTools, used with permission under the Mozilla Public License 2.0. Significant enhancements, including RSI-MA signals, trend filtering, dynamic timeframe adjustments, dual exit strategies, and an AI-style statistics dashboard, were developed by . We express our gratitude to ICTProTools for their foundational work in market structure analysis.
**What It Does**
ICT SwiftEdge integrates multiple trading concepts to help traders identify and manage trades based on market structure and momentum:
- **Market Structure Analysis**: Identifies Break of Structure (BOS) and Market Structure Shift (MSS) patterns, which signal potential trend continuations or reversals. BOS indicates a continuation of the current trend, while MSS highlights a shift in market direction, providing key entry points.
- **RSI-MA Signals**: Generates "BUY" and "SELL" signals when BOS or MSS patterns align with the Relative Strength Index (RSI) smoothed by a Moving Average (RSI-MA). Signals are filtered to occur only when RSI-MA is above 50 (for buys) or below 50 (for sells), ensuring momentum supports the trade direction.
- **Trend Filtering**: Prevents multiple signals in the same trend, ensuring only one buy or sell signal per trend direction, reducing noise and improving trade clarity.
- **Dynamic Timeframe Adjustment**: Automatically adjusts pivot points, RSI, and MA parameters based on the selected chart timeframe (1M to 1D), optimizing performance across different market conditions.
- **Flexible Exit Strategies**: Offers two user-selectable exit methods:
- **Trailing Stop-Loss (TSL)**: Exits trades when price moves against the position by a user-defined distance (in points), locking in profits or limiting losses.
- **RSI-MA Exit**: Exits trades when RSI-MA crosses the 50 level, signaling a potential loss of momentum.
- Users can enable either or both strategies, providing flexibility to adapt to different trading styles.
- **AI-Style Statistics Dashboard**: Displays real-time trade performance metrics in a futuristic, neon-colored interface, including total trades, wins, losses, win/loss ratio, and win percentage. This helps traders evaluate the system's effectiveness without external tools.
**Why This Combination?**
The integration of these components creates a synergistic trading system:
- **BOS/MSS and RSI-MA**: Combining market structure breaks with RSI-MA ensures entries are based on both price action (structure) and momentum (RSI-MA), increasing the likelihood of high-probability trades.
- **Trend Filtering**: By limiting signals to one per trend, the system avoids overtrading and focuses on significant market moves.
- **Dynamic Adjustments**: Timeframe-specific parameters make the system versatile, suitable for scalping (1M, 5M) or swing trading (4H, 1D).
- **Dual Exit Strategies**: TSL protects profits during trending markets, while RSI-MA exits are ideal for range-bound or reversing markets, catering to diverse market conditions.
- **Statistics Dashboard**: Provides immediate feedback on trade performance, enabling data-driven decision-making without manual tracking.
This combination balances technical precision with user-friendly visuals, making it accessible to both novice and experienced traders.
**How to Use**
1. **Add to Chart**: Apply the script to any TradingView chart.
2. **Configure Settings**:
- **Chart Timeframe**: Select your chart's timeframe (1M to 1D) to optimize parameters.
- **Structure Timeframe**: Choose a timeframe for market structure analysis (leave blank for chart timeframe).
- **Exit Strategy**: Enable Trailing Stop-Loss (`useTslExit`), RSI-MA Exit (`useRsiMaExit`), or both. Adjust `tslPoints` for TSL distance.
- **Show Signals/Labels**: Toggle `showSignals` and `showExit` to display "BUY", "SELL", and "EXIT" labels.
- **Dashboard**: Enable `showDashboard` to view trade statistics. Customize colors with `dashboardBgColor` and `dashboardTextColor`.
3. **Trading**:
- Look for "BUY" or "SELL" labels to enter trades when BOS/MSS aligns with RSI-MA.
- Exit trades at "EXIT" labels based on your chosen strategy.
- Monitor the statistics dashboard to track performance (total trades, win/loss ratio, win percentage).
4. **Alerts**: Set up alerts for BOS, MSS, buy, sell, or exit signals using the provided alert conditions.
**License**
This script is licensed under the Mozilla Public License 2.0 (mozilla.org). The source code is available for review and modification under the terms of this license.
**Compliance with TradingView House Rules**
This publication adheres to TradingView's House Rules and Scripts Publication Rules. It provides a clear, self-contained description of the script's functionality, credits the original author (ICTProTools), and explains the rationale for combining indicators. The script contains no promotional content, offensive language, or proprietary restrictions beyond MPL 2.0.
**Note**
Trading involves risk, and past performance is not indicative of future results. Always backtest and validate the system on your preferred markets and timeframes before live trading.
Enjoy trading with ICT SwiftEdge, and let data-driven insights guide your decisions!
SMA Crossover with RSI ConfirmationThis is a sniper entry indicator that provides Buy and Sell signals using other Indicators to give the best possible Entries
Moving Average Crossovers:
The indicator uses two moving averages: a short-term SMA (Simple Moving Average) and a long-term SMA.
When the short-term SMA crosses above the long-term SMA, it generates a buy signal (indicating potential upward momentum).
When the short-term SMA crosses below the long-term SMA, it generates a sell signal (indicating potential downward momentum).
RSI Confirmation:
The indicator incorporates RSI (Relative Strength Index) to confirm the buy and sell signals generated by the moving average crossovers.
RSI is used to gauge the overbought and oversold conditions of the market.
A buy signal is confirmed if RSI is below a specified overbought level, indicating potential buying opportunity.
A sell signal is confirmed if RSI is above a specified oversold level, indicating potential selling opportunity.
Dynamic Take Profit and Stop Loss:
The indicator calculates dynamic take profit and stop loss levels based on the Average True Range (ATR).
ATR is used to gauge market volatility, and the take profit and stop loss levels are adjusted accordingly.
This feature helps traders to manage their risk effectively by setting appropriate profit targets and stop loss levels.
Combining the information provided by these, the indicator will provide an entry point with a provided take profit and stop loss. The indicator can be applied to different asset classes. Risk management must be applied when using this indicator as it is not 100% guaranteed to be profitable.
Fibonacci Extension Strt StrategyCore Logic and Steps:
Weekly Trend Identification:
Find the last significant Higher High (HH) and Lower Low (LL) or vice-versa on the Weekly timeframe.
Determine if it's an uptrend (HH followed by LL) or a downtrend (LL followed by HH).
Plot a Fibonacci Extension (or Retracement in reverse order) from the swing point determined to the other significant swing point.
Weekly Retracement Levels:
Display horizontal lines at the 0.236, 0.382, and 0.5 Fibonacci levels from the weekly extension.
Monitor price action on these levels.
Daily Confirmation:
When price hits the Fib levels, examine the Daily chart.
Look for a rejection wick (indicating the pull back is ending) on the identified weekly retracement levels.
Confirm that the price is indeed starting to continue in the direction of the original weekly trend.
Four-Hour Entry:
On the 4H timeframe, plot a new Fib Extension in the opposite direction of the weekly.
If it's an uptrend, the Fib is plotted from last swing low to its swing high. If the weekly trend was bearish the Fib will be plotted from last swing high to the swing low.
Generate an entry when price breaks the high of that candle.
Trade Management:
Entry is on the breakout of the current candle.
Stop Loss: Place the stop loss below the wick of the breakout candle.
Take Profit 1: Close 50% of the position at the 0.5 Fibonacci level. Move the stop loss to breakeven on this position.
Take Profit 2: Close another 25% of the position at the 0.236 Fib level.
Trailing Take Profit: Keep the last 25% open, using a trailing stop loss. (You'll need to define the logic for the trailing stop, e.g., trailing stop using the last high/low)
How to Use in TradingView:
Open a TradingView Chart.
Click on "Pine Editor" at the bottom.
Copy and paste the corrected Pine Script code.
Click "Add to Chart".
The indicator should now be displayed on your chart.
4Vietnamese 3x SupertrendThis strategy attempts to capture long positions in the Vietnamese stock market using a combination of three Supertrend indicators and additional filters. It utilizes pyramiding to enter up to three long positions with a 33.33% allocation each.
Key Elements:
Supertrend Indicators: Three Supertrend indicators are used with different lengths and multipliers to identify potential trend changes.
Entry Conditions:
The strategy looks for a downtrend on the slowest Supertrend (Supertrend3) followed by uptrends on the medium (Supertrend2) and fast (Supertrend1) Supertrends.
Alternatively, if Supertrend3 is still downtrending, but Supertrend1 is downtrending and a significant previous high (highestGreen) exists, an entry signal is generated.
An optional filter allows using the highest of the last two red candles for highestGreen calculation.
Entry Stop Loss:
An optional stop loss can be set based on the entry price of previous long positions, preventing further losses if the price falls below entry prices.
Exit Conditions:
Three exit options are available:
- All Downtrend Exit: Close all positions if all Supertrends turn uptrend and a bearish candlestick pattern (close price lower than open price) is formed.
- Average Price in Loss Exit: Close all positions if the average entry price of open positions is higher than the current closing price (indicating a loss).
- All Positions in Loss Exit: Close all positions if any of the following conditions are met:
A single open position exists, and its entry price is higher than the current close price.
Two open positions exist, and their entry prices are both higher than the current close price.
Three open positions exist, and their entry prices are all higher than the current close price.
Pyramiding: The strategy allows entering up to three long positions with a fixed allocation of 33.33% each.
Customization Options:
The strategy provides various input parameters to customize its behavior:
Supertrend lengths and multipliers for each indicator.
Option to use the highest of the last two red candles for highestGreen calculation.
Enabling/disabling Entry Stop Loss and different exit conditions.
Further Enhancements:
Explore additional entry and exit filters to refine trade signals.
Consider incorporating risk management techniques like position sizing and trailing stops.
Backtest the strategy with historical data to evaluate its effectiveness and identify potential areas for improvement.
Ask-Weighted Averages This indicator provides two price-based reference lines derived from volume dynamics within each bar. Specifically, it calculates a volume-weighted average price using only the portion of trading volume that occurred on the "ask" side, implying more aggressive buying activity. The logic behind this approach is to highlight potential support and resistance levels where buyers have shown greater conviction.
Key Features:
Ask-Weighted Average Prices:
Instead of using the entire trade volume, the lines focus on "ask volume" (volume associated with trades occurring at or near the ask price). This helps to spotlight areas where buyers have been dominant, potentially revealing more meaningful price levels for future market behavior.
Conditional vs. Continuous Lines:
Conditional Line: This line is only plotted if the dollar volume (a rough measure of trade value) exceeds a specified threshold, ensuring that the highlighted level is backed by substantial trading activity.
Continuous Line: A second line is always displayed, providing a running ask-weighted average price reference for additional context, regardless of dollar volume.
Supports Identifying Key Price Zones:
By focusing on where more motivated buyers have been active, the indicator helps traders identify potential inflection points in price, such as areas where the market might find support on pullbacks or resistance during rallies.
Overall, this indicator serves as a specialized tool for traders interested in volume-driven price analysis. It aims to refine the understanding of where buyers are most engaged and how that might shape future price movements.
Risks Associated with Trading:
No indicator can guarantee profitable trades or accurately predict future price movements. Market conditions are inherently unpredictable, and reliance on any single tool or combination of tools carries the risk of financial loss. Traders should practice sound risk management, including the use of stop losses and position sizing, and should not trade with funds they cannot afford to lose. Ultimately, decisions should be guided by a thorough trading plan and possibly supplemented with other forms of market analysis or professional advice.
Risks and Important Considerations:
• Not a Standalone Tool:
• This indicator should not be used in isolation. It is essential to incorporate additional technical analysis tools, fundamental analysis, and market context when making trading decisions.
• Relying solely on this indicator may lead to incomplete assessments of market conditions.
• Market Volatility and False Signals:
• Financial markets can be highly volatile, and indicators based on historical data may not accurately predict future movements.
• The indicator may produce false signals due to sudden market changes, low liquidity, or atypical trading activity.
• Risk Management:
• Always employ robust risk management strategies, including setting stop-loss orders, diversifying your portfolio, and not over-leveraging positions.
• Understand that no indicator guarantees success, and losses are a natural part of trading.
• Emotional Discipline:
• Avoid making impulsive decisions based on indicator signals alone.
• Emotional trading can lead to significant financial losses; maintain discipline and adhere to a well-thought-out trading plan.
• Continuous Learning and Adaptation:
• Stay informed about market news, economic indicators, and global events that may impact trading conditions.
• Continuously evaluate and adjust your trading strategies as market dynamics evolve.
• Consultation with Professionals:
• Consider seeking advice from financial advisors or professional traders to understand better how this indicator can fit into your overall trading strategy.
• Professional guidance can provide personalized insights based on your financial goals and risk tolerance.
Disclaimer:
Trading financial instruments involves substantial risk and may not be suitable for all investors. Past performance is not indicative of future results. This indicator is provided for informational and educational purposes only and should not be considered investment advice. Always conduct your own research and consult with a licensed financial professional before making any trading decisions.
Note: The effectiveness of any technical indicator can vary based on market conditions and individual trading styles. It's crucial to test indicators thoroughly using historical data and possibly paper trading before applying them in live trading scenarios.
Lot Size & Risk Calculator (All Pairs)this indicator is designed to simplify and optimize risk management. It automatically calculates the ideal lot size based on your account balance, risk percentage, and defined entry and exit levels. Additionally, it includes visual tools to represent stop-loss (SL) and take-profit (TP) levels, helping you trade with precision and consistency.
WHAT IS THIS INDICATOR FOR?
This indicator is essential for traders who want to:
Maintain consistent risk in their trades.
Quickly calculate lot sizes for Forex, XAUUSD, BTCUSD, and US100.
Visualize key levels (Entry, SL, and TP) on the chart.
Monitor potential losses and gains in real time.
COMPATIBLE ASSETS
The Lot Size Calculator works with the following assets:
Forex: Standard currency pairs.
XAUUSD: Gold versus the US dollar.
BTCUSD: Bitcoin versus the US dollar.
US100: Nasdaq 100 index.
Calculations adjust automatically based on the selected asset.
TAKE-PROFIT (TP) LEVELS
The indicator allows you to define up to three take-profit levels:
TP1
TP2
TP3
.
Each level is configurable based on your exit strategy.
DASHBOARD
The dashboard is a visual tool that consolidates key information about your trade:
Account balance: Total amount available in your account.
Lot size: Calculated based on your risk and parameters.
Potential loss (SL): Amount you could lose if the price hits your stop-loss.
Potential gain (TP): Expected profit if the take-profit level is reached.
SETTINGS
The indicator offers multiple configurable options to adapt to your trading style:
Levels
Entry: Initial trade price.
Stop-Loss (SL): Maximum allowed loss level.
Take-Profit (TP): Up to three configurable levels.
Risk Management
Account balance ($): Enter your total available balance.
Risk percentage: Define how much you're willing to risk per trade
.
Visual Options
Visualization style: Choose between simple lines or visual fills.
Colors: Customize the colors of lines and labels.
Dashboard Settings
Statistics: Enable or disable key data display.
Size and position: Adjust the dashboard's size and location on the chart.
HOW TO CHANGE AN ENTRY?
Open the indicator settings in TradingView and entering the new data manually
Removing and re-adding the indicator to the chart
ICT Setup 02 [TradingFinder] Breaker Blocks + Reversal Candles🔵 Introduction
The "Breaker Block" concept, widely utilized in ICT (Inner Circle Trader) technical analysis, is a crucial tool for identifying reversal points and significant market shifts. Originating from the "Order Block" concept, Breaker Blocks help traders pinpoint support and resistance levels. These blocks are essential for understanding market trends and recognizing optimal entry and exit points.
A Breaker Block is essentially a failed Order Block that changes its role when price action breaks through it. When an Order Block fails to hold as a support or resistance level, it reverses its function, becoming a Breaker Block.
There are two primary types : Bullish Breaker Blocks and Bearish Breaker Blocks. These Breaker Blocks align with the prevailing market trend and indicate potential entry points after a liquidity sweep or a shift in market structure.
Understanding and applying the Breaker Block strategy enables traders to capitalize on the behavior of institutional investors, enhancing their trading outcomes.
Bullish Setup :
Bearish Setup :
🔵 How to Use
The ICT Setup 02 indicator designed to automate the identification of Bullish and Bearish Breaker Blocks. This tool enables traders to easily spot these blocks on a chart and utilize them for entering or exiting trades. Below is a breakdown of how to use this indicator in both bullish and bearish setups.
🟣 Bullish Breaker Block Setup
A Bullish Breaker Block setup is identified in an uptrend, where it serves as a potential entry point. This setup occurs when a Bearish Order Block fails and the price moves above the high of that Order Block. In this scenario, the previously bearish Order Block turns into a Bullish Breaker Block, which now acts as a support level for the price.
To trade a Bullish Breaker Block, wait for the price to retest this newly formed support level. Confirmation of the uptrend can be achieved by analyzing lower time frames for further market structure shifts or other bullish indicators.
A successful retest of the Bullish Breaker Block provides a high-probability entry point for a long trade, as it signals institutional support. Traders often place their stop-loss below the low of the Breaker Block zone to minimize risk.
🟣 Bearish Breaker Block Setup
A Bearish Breaker Block setup, conversely, is used in a downtrend to identify potential sell opportunities. This setup forms when a Bullish Order Block fails, and the price moves below the low of that Order Block.
Once this Order Block is broken, it reverses its role and becomes a Bearish Breaker Block, providing resistance to the price as it pushes downward. For a Bearish Breaker Block trade, wait for the price to retest this resistance level.
A confirmation of the downtrend, such as a market structure shift on a lower time frame or additional bearish signals, strengthens the setup. The Bearish Breaker Block retest provides an opportunity to enter a short position, with a stop-loss placed just above the high of the Breaker Block zone.
🔵 Settings
Pivot Period : This setting controls the look-back period used to identify pivot points that contribute to the detection of Order Blocks. A higher period captures longer-term pivots, while a lower period focuses on more recent price action. Adjusting this parameter allows traders to fine-tune the indicator to match their trading time frame.
Breaker Block Validity Period : This setting defines how long a Breaker Block remains valid based on the number of bars elapsed since its formation. Increasing the validity period keeps Breaker Blocks active for a longer duration, which can be useful for higher time frame analysis.
Mitigation Level BB : This option lets traders choose the level of the Order Block at which the price is expected to react. Options like "Proximal," "50% OB," and "Distal" adjust the zone where a reaction may occur, offering flexibility in setting up the entry and stop-loss levels.
Breaker Block Refinement : The refinement option refines the Breaker Block zone to display a more precise range for aggressive or defensive trading approaches. The "Aggressive" mode provides a tighter range for risk-tolerant traders, while the "Defensive" mode expands the zone for those with a more conservative approach.
🔵 Conclusion
The Breaker Block indicator provides traders with a sophisticated tool for identifying key reversal zones in the market. By leveraging Breaker Blocks, traders can gain insights into institutional order flow and predict critical support and resistance levels.
Using Breaker Blocks in conjunction with other ICT concepts, like Fair Value Gaps or liquidity sweeps, enhances the reliability of trading signals. This indicator empowers traders to make informed decisions, aligning their trades with institutional moves in the market.
As with any trading strategy, it is crucial to incorporate proper risk management, using stop-losses and position sizing to minimize potential losses. The Breaker Block strategy, when applied with discipline and thorough analysis, serves as a powerful addition to any trader’s toolkit.
Dynamic RSI Mean Reversion StrategyDynamic RSI Mean Reversion Strategy
Overview:
This strategy uses an RSI with ATR-Adjusted OB/OS levels in order to enhance the quality of it's mean reversion trades. It also incorporates a form of trend filtering in an effort to minimize downside and maximize upside. The backtest has fewer trades, as it uses substantial filtering to enhance trade quality. As you can see, I didn't cherry pick the results, so the results aren't the most beautiful thing you'll see in your life. I did this to ensure nobody gets misled. If you need a higher frequency of trades, consider removing the trend filter or increasing the length of the EMAs used for trend detection.
Features:
Dynamic OB/OS Levels: Uses ATR to adjust overbought and oversold thresholds dynamically, making the RSI more responsive in varying volatility conditions. This approach enhances signal strength by expanding the RSI range in high volatility and tightening it in low volatility.
Mean Reversion Focus: Designed for mean reversion but incorporates a trend-following filter to reduce countertrend trades. When the RSI is high, it often indicates an uptrend, so a trend filter prevents shorting in these cases and the same goes for downtrends and longing.
Trend Filtering: A moving average cross trend filter checks for the trend direction, with the RSI signal line color-coded to reflect trend shifts. Entries occur when the RSI crosses above or below the dynamic thresholds and is not a countertrend trade.
Stop Losses: Stop losses are set based on ATR distance from the entry price, providing volatility-adjusted protection.
Note:
If you're using this strategy on assets with a higher price, remember to increase the initial capital in the strategy settings. Otherwise, the strategy won't generate any (or many) trades and you'll end up with some inaccurate results.
Recommended Use:
Test it on different assets and timeframes. I’ve found the best results with standard RSI inputs, a relatively slow ATR, and a slower MA cross for trend filtering. Thus, the defaults are set that way. If the trend metrics are too slow, you’ll filter out too many good trades while allowing crummy ones; if too fast, most trades may be filtered out. As always, this has a lot of configurability so experiment to find the balance that works for your trading style.
Qty CalculatorThis Pine Script indicator, titled "Qty Calculator," is a customizable tool designed to assist traders in managing their trades by calculating key metrics related to risk management. It takes into account your total capital, entry price, stop-loss level, and desired risk percentage to provide a comprehensive overview of potential trade outcomes.
Key Features:
User Inputs:
Total Capital: The total amount of money available for trading.
Entry Price: The price at which the trader enters the trade.
Stop Loss: The price level at which the trade will automatically close to prevent further losses.
Risk Percentage: The percentage of the total capital that the trader is willing to risk on a single trade.
Customizable Table:
Position: The indicator allows you to choose the position of the table on the chart, with options including top-left, top-center, top-right, bottom-left, bottom-center, and bottom-right.
Size: You can adjust the number of rows and columns in the table to fit your needs.
Risk Management Calculations:
Difference Calculation: The difference between the entry price and the stop-loss level.
Risk Per Trade: Calculated as a percentage of your total capital.
Risk Levels: The indicator evaluates multiple risk levels (0.10%, 0.25%, 0.50%, 1.00%) and calculates the quantity, capital per trade, percentage of total capital, and the risk amount associated with each level.
R-Multiples Calculation:
The indicator calculates potential profit levels at 2x, 3x, 4x, and 5x the risk (R-Multiples), showing the potential gains if the trade moves in your favor by these multiples.
Table Display:
The table includes the following columns:
CapRisk%: Displays the risk percentage.
Qty: The quantity of the asset you should trade.
Cap/Trade: The capital allocated per trade.
%OfCapital: The percentage of total capital used in the trade.
Risk Amount: The monetary risk taken on each trade.
R Gains: Displays potential gains at different R-Multiples.
This indicator is particularly useful for traders who prioritize risk management and want to ensure that their trades are aligned with their capital and risk tolerance. By providing a clear and customizable table of critical metrics, it helps traders make informed decisions and better manage their trading strategies.
Monthly Day Long Strategy with VIX and Risk ManagementThis trading strategy is designed to open long positions on a specific day of the month, with the conditions for entry and exit based on the VIX index and additional risk management techniques. The strategy includes stop-loss and take-profit features to manage risk and lock in profits.
Inputs:
Entry Day of the Month (entry_day): Specifies which day of the month to consider for initiating a trade. The default value is the 27th.
Hold Duration (Days) (hold_duration_days): Defines how many days to hold the position after opening. The default value is 4 days.
VIX Threshold (vix_threshold): Sets the maximum acceptable value for the VIX index to consider an entry. If the VIX is below this threshold, it signals a potential trade. The default value is 20.0.
Stop Loss (%) (stop_loss_percentage): Determines the percentage below the entry price where the stop-loss will be triggered. The default value is 2.0%.
Take Profit (%) (take_profit_percentage): Sets the percentage above the entry price where the take-profit will be triggered. The default value is 5.0%.
Functions:
next_weekday(date): Adjusts the entry date to the next Monday if it falls on a weekend (Saturday or Sunday). This ensures trades do not occur on non-trading days.
Logic:
Entry Conditions:
Date Check: Opens a long position if the current date matches the adjusted entry date (the 27th or the next Monday if the 27th falls on a weekend).
VIX Filter: The VIX index value must be below the specified threshold (e.g., 20.0) to consider an entry.
Exit Conditions:
Time-Based Exit: Closes the position after the hold duration of 4 days.
Stop-Loss: Automatically closes the position if the price drops to a level that is a specified percentage below the entry price (e.g., 2.0%).
Take-Profit: Closes the position if the price rises to a level that is a specified percentage above the entry price (e.g., 5.0%).
Plots:
VIX Plot: Displays the VIX index on the chart for visual reference.
VIX Threshold Line: A horizontal line representing the VIX threshold value.
Summary:
The strategy aims to take advantage of specific entry days while filtering trades based on VIX levels to ensure market conditions are favorable. Risk management is enhanced through stop-loss and take-profit settings, which help in controlling potential losses and securing profits. The strategy ensures trades are only made on trading days and not on weekends, adjusting automatically to the next Monday if needed.
ChatGPT kann Fehler machen. Überprüfe wichtige Informationen.
Supertrend (Buy/Sell) With TP & SLSupertrend (Buy/Sell) with TP & SL: An Enhanced Trading Tool
This Pine Script indicator combines the popular Supertrend indicator with multiple take-profit (TP) and stop-loss (SL) levels, providing traders with a comprehensive visual aid for potential entries, exits, and risk management.
Originality
Buffer Zones for Precision: Instead of relying solely on the Supertrend line, this script incorporates buffer zones around it. This helps filter out false signals, especially in volatile markets, leading to more accurate buy/sell signals.
Flexible Stop-Loss: Offers the choice between a fixed or trailing stop-loss, allowing traders to tailor their risk management approach based on their preferences and market conditions.
Multiple Take-Profit Levels: Provides three potential take-profit levels, giving traders the flexibility to secure profits at different stages of a trend.
Heikin Ashi Candles & VWAP: Incorporates Heikin Ashi candles for smoother trend visualization and adds a VWAP line for potential support/resistance levels.
Clear Table Display: Presents key information like Stop Loss and Take Profit levels in a user-friendly table, making it easier to track trade targets.
How It Works
Supertrend Calculation: The Supertrend is calculated using ATR (Average True Range) to gauge market volatility. The script then creates buffer zones around the Supertrend line for refined signal generation.
Buy/Sell Signals:
Buy: When the close price crosses above the upper buffer zone, indicating a potential uptrend.
Sell: When the close price crosses below the lower buffer zone, suggesting a potential downtrend.
Take Profit & Stop Loss:
Take Profits: Three TP levels are calculated based on ATR and a customizable profit factor.
Stop Loss: The stop-loss can be set as either a fixed value based on ATR or as a trailing stop-loss that dynamically adjusts to lock in profits.
How To Use
Add the Indicator: Search for "Supertrend (Buy/Sell) With TP & SL" in the TradingView indicators list and add it to your chart.
Customize Inputs: Adjust parameters like ATR Period, Factor, Take Profit Factor, Stop Loss Factor, Stop Loss Type, etc., based on your trading style and preferences.
Interpret Signals: Look for buy signals when the price crosses above the upper buffer and sell signals when it crosses below the lower buffer.
Manage Risk: Use the plotted Take Profit and Stop Loss levels to manage your risk and potential rewards.
Concepts
Supertrend: A trend-following indicator that helps identify the direction of the prevailing trend.
ATR (Average True Range): A measure of market volatility.
Buffer Zones: Used to filter out false signals by creating a zone around the Supertrend line.
Trailing Stop Loss: A dynamic stop-loss that moves with the price to protect profits.
Heikin Ashi: A type of candlestick chart designed to filter out market noise and make trends easier to identify.
VWAP (Volume Weighted Average Price): An indicator that shows the average price at which a security has traded throughout the day, based on both volume and price.
Important Note: This script is for educational and informational purposes only. Backtest thoroughly and use with caution in live trading. Always manage your risk appropriately.
Sniper Entry using RSI confirmationThis is a sniper entry indicator that provides Buy and Sell signals using other Indicators to give the best possible Entries (note: Entries will not be 100 percent accurate and analysis should be done to support an entry)
Moving Average Crossovers:
The indicator uses two moving averages: a short-term SMA (Simple Moving Average) and a long-term SMA.
When the short-term SMA crosses above the long-term SMA, it generates a buy signal (indicating potential upward momentum).
When the short-term SMA crosses below the long-term SMA, it generates a sell signal (indicating potential downward momentum).
RSI Confirmation:
The indicator incorporates RSI (Relative Strength Index) to confirm the buy and sell signals generated by the moving average crossovers.
RSI is used to gauge the overbought and oversold conditions of the market.
A buy signal is confirmed if RSI is below a specified overbought level, indicating potential buying opportunity.
A sell signal is confirmed if RSI is above a specified oversold level, indicating potential selling opportunity.
Dynamic Take Profit and Stop Loss:
The indicator calculates dynamic take profit and stop loss levels based on the Average True Range (ATR).
ATR is used to gauge market volatility, and the take profit and stop loss levels are adjusted accordingly.
This feature helps traders to manage their risk effectively by setting appropriate profit targets and stop loss levels.
Combining the information provided by these, the indicator will provide an entry point with a provided take profit and stop loss. The indicator can be applied to different asset classes. Risk management must be applied when using this indicator as it is not 100% guaranteed to be profitable.
Goodluck!
Orion:SagittaSagitta
Sagitta is an indicator the works to assist in the validation of potential long entries and to place stop-loss orders. Sagitta is not a "golden indicator" but more of a confirmation indicator of what prices might be suggesting.
The concept is that while stocks can turn in one bar, it usually takes two bars or more to signal a turn. So, using a measurement of two bars help determine the potential turning of prices.
Behind the scenes, Sagitta is nothing more than a 2 period stochastic which has had its values divided into five specific zones.
Dividing the range of the two bars in five sections, the High is equal to 100 and the Low is equal to 0.
The zones are:
20 = bearish (red) – This is when the close is the lower 20% of the two bars
40 = bearish (orange) – This is when the close is between the lower 20% and 40% of the two bars.
60 = neutral (yellow) – This is when the close is between the middle 40% - 60% of the two bars.
80 = bullish (blue) – This is when the close is between the upper 60% - 80% of the two bars.
100 = bullish (green) – This is when the close is above the upper 80% of the bar.
The general confirmation concept works as such:
When the following bar is of a higher value than the previous bar, there is potential for further upward price movement. Conversely when the following bar is lower than the previous bar, there is potential for further downward movement.
Going from a red bar to orange bar Might be an indication of a positive turn in direction of prices.
Going from a green bar to an orange bar would also be considered a negative directional turn of prices.
When the follow on bar decreases (ie, green to blue, blue to yellow, etc) placing a stop-loss would be prudent.
Maroon lines in the middle of a bar is an indication that prices are currently caught in consolidation.
Silver/Gray bars indicate that a high potential exists for a strong upward turn in prices exists.
Consolidation is calculated by determining if the close of one bar is between the high and low of another bar. This then establishes the range high and low. As long as closes continue with this range, the high and low of the range can expand. When the close is outside of the range, the consolidation is reset.
Signals in areas of consolidation (maroon center bar) should be looked upon as if the prices are going to challenge the high of the consolidation range and not necessarily break through.
The entry technique used is:
The greater of the following two calculations:
High of signal bar * 1.002 or High of signal bar + .03
The stop-loss technique used is:
The lesser of the following two calculations:
Low of signal bar * .998 or Low of signal bar - .03
IF an entry signal is generated and the price doesn’t reach the entry calculation. It is considered a failed entry and is not considered a negative or that you missed out on something. This has saved you from losing money since the prices are not ready to commit to the direction.
When placing a stop-loss, it is never suggested that you lower the value of a stop-loss. Always move your stop-losses higher in order to lock in profit in case of a negative turn.
Investments/swing trading strategy for different assetsStop worrying about catching the lowest price, it's almost impossible!: with this trend-following strategy and protection from bearish phases, you will know how to enter the market properly to obtain benefits in the long term.
Backtesting context: 1899-11-01 to 2023-02-16 of SPX by Tvc. Commissions: 0.05% for each entry, 0.05% for each exit. Risk per trade: 2.5% of the total account
For this strategy, 5 indicators are used:
One Ema of 200 periods
Atr Stop loss indicator from Gatherio
Squeeze momentum indicator from LazyBear
Moving average convergence/divergence or Macd
Relative strength index or Rsi
Trade conditions:
There are three type of entries, one of them depends if we want to trade against a bearish trend or not.
---If we keep Against trend option deactivated, the rules for two type of entries are:---
First type of entry:
With the next rules, we will be able to entry in a pull back situation:
Squeeze momentum is under 0 line (red)
Close is above 200 Ema and close is higher than the past close
Histogram from macd is under 0 line and is higher than the past one
Once these rules are met, we enter into a buy position. Stop loss will be determined by atr stop loss (white point) and break even(blue point) by a risk/reward ratio of 1:1.
For closing this position: Squeeze momentum crosses over 0 and, until squeeze momentum crosses under 0, we close the position. Otherwise, we would have closed the position due to break even or stop loss.
Second type of entry:
With the next rules, we will not lose a possible bullish movement:
Close is above 200 Ema
Squeeze momentum crosses under 0 line
Once these rules are met, we enter into a buy position. Stop loss will be determined by atr stop loss (white point) and break even(blue point) by a risk/reward ratio of 1:1.
Like in the past type of entry, for closing this position: Squeeze momentum crosses over 0 and, until squeeze momentum crosses under 0, we close the position. Otherwise, we would have closed the position due to break even or stop loss.
---If we keep Against trend option activated, the rules are the same as the ones above, but with one more type of entry. This is more useful in weekly timeframes, but could also be used in daily time frame:---
Third type of entry:
Close is under 200 Ema
Squeeze momentum crosses under 0 line
Once these rules are met, we enter into a buy position. Stop loss will be determined by atr stop loss (white point) and break even(blue point) by a risk/reward ratio of 1:1.
Like in the past type of entries, for closing this position: Squeeze momentum crosses over 0 and, until squeeze momentum crosses under 0, we close the position. Otherwise, we would have closed the position due to break even or stop loss.
Risk management
For calculating the amount of the position you will use just a small percent of your initial capital for the strategy and you will use the atr stop loss for this.
Example: You have 1000 usd and you just want to risk 2,5% of your account, there is a buy signal at price of 4,000 usd. The stop loss price from atr stop loss is 3,900. You calculate the distance in percent between 4,000 and 3,900. In this case, that distance would be of 2.50%. Then, you calculate your position by this way: (initial or current capital * risk per trade of your account) / (stop loss distance).
Using these values on the formula: (1000*2,5%)/(2,5%) = 1000usd. It means, you have to use 1000 usd for risking 2.5% of your account.
We will use this risk management for applying compound interest.
In settings, with position amount calculator, you can enter the amount in usd of your account and the amount in percentage for risking per trade of the account. You will see this value in green color in the upper left corner that shows the amount in usd to use for risking the specific percentage of your account.
Script functions
Inside of settings, you will find some utilities for display atr stop loss, break evens, positions, signals, indicators, etc.
You will find the settings for risk management at the end of the script if you want to change something. But rebember, do not change values from indicators, the idea is to not over optimize the strategy.
If you want to change the initial capital for backtest the strategy, go to properties, and also enter the commisions of your exchange and slippage for more realistic results.
If you activate break even using rsi, when rsi crosses under overbought zone break even will be activated. This can work in some assets.
---Important: In risk managment you can find an option called "Use leverage ?", activate this if you want to backtest using leverage, which means that in case of not having enough money for risking the % determined by you of your account using your initial capital, you will use leverage for using the enough amount for risking that % of your acount in a buy position. Otherwise, the amount will be limited by your initial/current capital---
Some things to consider
USE UNDER YOUR OWN RISK. PAST RESULTS DO NOT REPRESENT THE FUTURE.
DEPENDING OF % ACCOUNT RISK PER TRADE, YOU COULD REQUIRE LEVERAGE FOR OPEN SOME POSITIONS, SO PLEASE, BE CAREFULL AND USE CORRECTLY THE RISK MANAGEMENT
Do not forget to change commissions and other parameters related with back testing results!
Some assets and timeframes where the strategy has also worked:
BTCUSD : 4H, 1D, W
SPX (US500) : 4H, 1D, W
GOLD : 1D, W
SILVER : 1D, W
ETHUSD : 4H, 1D
DXY : 1D
AAPL : 4H, 1D, W
AMZN : 4H, 1D, W
META : 4H, 1D, W
(and others stocks)
BANKNIFTY : 4H, 1D, W
DAX : 1D, W
RUT : 1D, W
HSI : 1D, W
NI225 : 1D, W
USDCOP : 1D, W
Harmonic Pattern Detection, Prediction, and Backtesting ToolOverview:
The ultimate harmonic XABCD pattern identification, prediction, and backtesting system.
Harmonic patterns are among the most accurate of trading signals, yet they're widely underutilized because they can be difficult to spot and tedious to validate. If you've ever come across a pattern and struggled with questions like "are these retracement ratios close enough to the harmonic ratios?" or "what are the Potential Reversal levels and are they confluent with point D?", then this tool is your new best friend. Or, if you've never traded harmonic patterns before, maybe it's time to start. Put away your drawing tools and calculators, relax, and let this indicator do the heavy lifting for you.
- Identification -
An exhaustive search across multiple pivot lengths ensures that even the sneakiest harmonic patterns are identified. Each pattern is evaluated and assigned a score, making it easy to differentiate weak patterns from strong ones. Tooltips under the pattern labels show a detailed breakdown of the pattern's score and retracement ratios (see the Scoring section below for details).
- Prediction -
After a pattern is identified, paths to potential targets are drawn, and Potential Reversal Zone (PRZ) levels are plotted based on the retracement ratios of the harmonic pattern. Targets are customizable by pattern type (e.g. you can specify one set of targets for a Gartley and another for a Bat, etc).
- Backtesting -
A table shows the results of all the patterns found in the chart. Change your target, stop-loss, and % error inputs and observe how it affects your success rate.
//------------------------------------------------------
// Scoring
//------------------------------------------------------
A percentage-based score is calculated from four components:
(1) Retracement % Accuracy - this measures how closely the pattern's retracement ratios match the theoretical values (fibs) defined for a given harmonic pattern. You can change the "Allowed fib ratio error %" in Settings to be more or less inclusive.
(2) PRZ Level Confluence - Potential Reversal Zone levels are projected from retracements of the XA and BC legs. The PRZ Level Confluence component measures the closeness of the closest XA and BC retracement levels, relative to the total height of the PRZ.
(3) Point D / PRZ Confluence - this measures the closeness of point D to either of the closest two PRZ levels (identified in the PRZ Level Confluence component above), relative to the total height of the PRZ. In theory, the closer together these levels are, the higher the probability of a reversal.
(4) Leg Length Symmetry - this measures the ΔX symmetry of each leg. You can change the "Allowed leg length asymmetry %" in settings to be more or less inclusive.
So, a score of 100% would mean that (1) all leg retracements match the theoretical fib ratios exactly (to 16 decimal places), (2) the closest XA and BC PRZ levels are exactly the same, (3) point D is exactly at the confluent PRZ level, and (4) all legs are exactly the same number of bars. While this is theoretically possible, you have better odds of getting struck by lightning twice on a sunny day.
Calculation weights of all four components can be changed in Settings.
//------------------------------------------------------
// Targets
//------------------------------------------------------
A hard-coded set of targets are available to choose from, and can be applied to each pattern type individually:
(1) .618 XA = .618 retracement of leg XA, measured from point D
(2) 1.272 XA = 1.272 retracement of leg XA, measured from point D
(3) 1.618 XA = 1.618 retracement of leg XA, measured from point D
(4) .618 CD = .618 retracement of leg CD, measured from point D
(5) 1.272 CD = 1.272 retracement of leg CD, measured from point D
(6) 1.618 CD = 1.618 retracement of leg CD, measured from point D
(7) A = point A
(8) B = point B
(9) C = point C
//------------------------------------------------------
// Stops
//------------------------------------------------------
Stop-loss levels are also user-defined, in one of three ways:
(1) % beyond the furthest PRZ level (below the PRZ level for bullish patterns, and above for bearish)
(2) % beyond point D
(3) % of distance to Target 1, beyond point D. This method allows for a proper Risk:Reward approach by defining your potential losses as a percentage of the potential gains. This is the default.
//------------------------------------------------------
// Results Table / Backtesting Statistics
//------------------------------------------------------
To properly assess the effectiveness of a specific pattern type, a time limit is enforced for a completed pattern to reach the targets or the stop level. When this time limit expires, the pattern has "timed out", and is no longer considered in the Success Rate statistics. During the time limit period, if price reaches Target 1 before reaching the Stop level, the pattern is considered successful. Conversely, if price reaches the Stop level before reaching Target 1, the pattern is considered a failure. The time limit can be changed in Settings, and is defined in terms of the total pattern length (point X to point D). It is set to 1.5 by default.
Increasing the time limit value will give you more realistic Success Rate values, but will less accurately represent the success rate of the harmonic patterns (i.e. the more time that elapses after a pattern completes, the less likely it is that the price action is related to that pattern).
//------------------------------------------------------
// Coming soon...
//------------------------------------------------------
I have a handful of other features in development, including:
(1) Drawing incomplete patterns as they develop. This will allow you more time to plan entries and stops, or potentially trade reversals from point C to point D PRZ levels.
(2) Support for the Shark and Cypher patterns
(3) Alerts
Please report any bugs, runtime errors, other issues or enhancement suggestions.
I also welcome any feedback from experienced harmonic pattern traders, especially regarding your strategy for setting targets and stop-losses.
@reees
Stochastic Moving AverageHi all,
This Strategy script combines the power of EMAs along with the Stochastic Oscillator in a trend following / continuation manner, along with some cool functionalities.
I designed this script especially for trading altcoins, but it works just as good on Bitcoin itself and on some Forex pairs.
______ SIGNALS ______
The script has 4 mandatory conditions to unlock a trading signal. Find these conditions for a long trade below (works the exact other way round for shorts)
- Fast EMA must be higher than Slow EMA
- Stochastic K% line must be in oversold territory
- Stochastic K% line must cross over Stochastic D% line
- Price as to close between slow EMA and fast EMA
Once all the conditions are true, a trade will start at the opening of the next
______ SETTINGS ______
- Trade Setup:
Here you can choose to trade only longs or shorts and change your Risk:Reward.
You can also decide to adjust your volume per position according to your risk tolerance. With “% of Equity” your stop loss will always be equal to a fixed percentage of your initial capital (will “compound” overtime) and with “$ Amount” your stop loss will always be 'x' amount of the base currency (ex: USD, will not compound)
Stop Loss:
The ATR is used to create a stop loss that matches current volatility. The multiplier corresponds to how many times the ATR stop losses and take profits will be away from closing price.
- Stochastic:
Here you can find the usual K% & D% length and overbought (OB) and oversold (OS) levels.
The “Stochastic OB/OS lookback” increase the tolerance towards OB/OS territories. It allows to look 'x' bars back for a value of the Stochastic K line to be overbought or oversold when detecting an entry signal.
The “All must be OB/OS” refers to the previous “Stochastic OB/OS lookback” parameter. If this option is ticked, instead of needing only 1 OB/OS value within the lookback period to get a valid signal, now, all bars looked back must be OB/OS.
The color gradient drawn between the fast and slow EMAs is a representation of the Stochastic K% line position. With default setting colors, when fast EMA > slow EMA, gradient will become solid blue when Stochastic is oversold and when slow EMA > fast EMA, gradient will become solid blue when Stochastic is overbought
- EMAs:
Just pick your favorite ones
- Reference Market:
An additional filter to be certain to stay aligned with the current a market index trend (in our case: Bitcoin). If selected reference market (and timeframe) is trading above selected EMA, this strategy will only take long trades (vice-versa for shorts) Because, let’s face it… even if this filter isn’t bulletproof, you know for sure that when Bitcoin tanks, there won’t be many Alts going north simultaneously. Once again, this is a trend following strategy.
A few tips for increased performance: fast EMA and D% Line can be real fast… 😉
As always, my scripts evolve greatly with your ideas and suggestions, keep them coming! I will gladly incorporate more functionalities as I go.
All my script are tradable when published but remain work in progress, looking for further improvements.
Hope you like it!
Grid Like StrategyIt is possible to use progressive position sizing in order to recover from past losses, a well-known position sizing system being the "martingale", which consists of doubling your position size after a loss, this allows you to recover any previous losses in a losing streak + winning an extra. This system has seen a lot of attention from the trading community (mostly from beginners), and many strategies have been designed around the martingale, one of them being "grid trading strategies".
While such strategies often shows promising results on paper, they are often subjects to many frictions during live trading that makes them totally unusable and dangerous to the trader. The motivations behind posting such a strategy isn't to glorify such systems, but rather to present the problems behind them, many users come to me with their ideas and glorious ways to make money, sometimes they present strategies using the martingale, and it is important to present the flaws of this methodology rather than blindly saying "you shouldn't use it".
Strategy Settings
Point determines the "grid" size and should be adjusted accordingly to the scale of the symbol you are applying the strategy to. Higher value would require larger price movements in order to trigger a trade, as such higher values will generate fewer trades.
The order size determines the number of contracts/shares to purchase.
The martingale multiplier determines the factor by which the position size is multiplied after a loss, using values higher to 2 will "squarify" your balance, while a value of 1 would use a constant position sizing.
Finally, the anti-martingale parameter determines whether the strategy uses a reverse martingale or not, if set to true then the position size is multiplied after any wins.
The Grid
Grid strategies are commons and do not present huge problems until we use certain position sizing methods such as the martingale. A martingale is extremely sensitive to any kind of friction (frictional costs, slippage...etc), the grid strategy aims to provide a stable and simple environment where a martingale might possibly behave well.
The goal of a simple grid strategy is to go long once the price crossover a certain level, a take profit is set at the level above the current one and stop loss is placed at the level below the current one, in a winning scenario the price reach the take profit, the position is closed and a new one is opened with the same setup. In a losing scenario, the price reaches the stop loss level, the position is closed and a short one is opened, the take profit is set at the level below the current one, and a stop loss is set at the level above the current one. Note that all levels are equally spaced.
It follows from this strategy that wins and losses should be constant over time, as such our balance would evolve in a linear fashion. This is a great setup for a martingale, as we are theoretically assured to recover all the looses in a losing streak.
Martingale - Exponential Decays - Risk/Reward
By using a martingale we double our position size (exposure) each time we lose a trade, if we look at our balance when using a martingale we see significant drawdowns, with our balance peaking down significantly. The martingale sequence is subject to exponential growth, as such using a martingale makes our balance exposed to exponential decays, that's really bad, we could basically lose all the initially invested capital in a short amount of time, it follows from this that the theoretical success of a martingale is determined by what is the maximum losing streak you can endure
Now consider how a martingale affects our risk-reward ratio, assuming unity position sizing our martingale sequence can be described by 2^(x-1) , using this formula we would get the amount of shares/contracts we need to purchase at the x trade of a losing streak, we would need to purchase 256 contracts in order to recover from a losing streak of size 9, this is enormous when you take into account that your wins are way smaller, the risk-reward ratio is totally unfair.
Of course, some users might think that a losing streak of size 9 is pretty unlikely, if the probability of winning and losing are both equal to 0.5, then the probability of 9 consecutive losses is equal to 0.5^9 , there are approximately 0.2% of chance of having such large losing streak, note however that under a ranging market such case scenario could happen, but we will see later that the length of a losing streak is not the only problem.
Other Problems
Having a capital large enough to tank 9any number of consecutive losses is not the only thing one should focus on, as we have to take into account market prices and trading dynamics, that's where the ugly part start.
Our first problem is frictional costs, one example being the spread, but this is a common problem for any strategy, however here a martingale is extra sensitive to it, if the strategy does not account for it then we will still double our positions costs but we might not recover all the losses of a losing streak, instead we would be recovering only a proportion of it, under such scenario you would be certain to lose over time.
Another problem are gaps, market price might open under a stop-loss without triggering it, and this is a big no-no.
Equity of the strategy on AMD, in a desired scenario the equity at the second arrow should have been at a higher position than the equity at the first arrow.
In order for the strategy to be more effective, we would need to trade a market that does not close, such as the cryptocurrency market. Finally, we might be affected by slippage, altho only extreme values might drastically affect our balance.
The Anti Martingale
The strategy lets you use an anti-martingale, which double the position size after a win instead of a loss, the goal here is not to recover from a losing strike but instead to profit from a potential winning streak.
Here we are exposing your balance to exponential gross but you might also lose a trade at the end a winning streak, you will generally want to reinitialize your position size after a few wins instead of waiting for the end of a streak.
Alternative
You can use other-kind of progressions for position sizing, such as a linear one, increasing your position size by a constant number each time you lose. More gentle progressions will recover a proportion of your losses in a losing streak.
You can also simulate the effect of a martingale without doubling your position size by doubling your target profit, if for example you have a 10$ profit-target/stop-loss and lose a trade, you can use a 20$ profit target to recover from the lost trade + gain a profit of 10$. While this approach does not introduce exponential decay in your balance, you are betting on the market reaching your take profits, considering the fact that you are doubling their size you are expecting market volatility to increase drastically over time, as such this approach would not be extremely effective for high losing streak.
Conclusion
You will see a lot of auto-trading strategies that are based on a grid approach, they might even use a martingale. While the backtests will look appealing, you should think twice before using such kind of strategy, remember that frictional costs will be a huge challenge for the strategy, and that it assumes that the trader has an important initial capital. We have also seen that the risk/reward ratio is theoretically the worst you can have on a strategy, having a low reward and a high risk. This does not mean that progressive position sizing is bad, but it should not be pushed to the extreme.
It is nice to note that the martingale is originally a betting system designed for casino games, which unlike trading are not subject to frictional costs, but even casino players don't use it, so why would you?
Thx for reading