CCI and MACD Auto Trading Strategy with Risk/RewardOverview:
This strategy combines the Commodity Channel Index (CCI) and the Moving Average Convergence Divergence (MACD) indicators to automate trading decisions. It dynamically sets stop-loss and take-profit levels based on recent lows and highs, ensuring a risk/reward ratio of 1:1.5. This script aims to leverage trend and momentum signals while maintaining effective risk management.
Originality and Usefulness:
This script is not just a simple mashup of CCI and MACD indicators; it incorporates dynamic risk management by setting stop-loss and take-profit levels based on recent price action. This approach helps traders to:
・Identify potential trend reversals using the combination of CCI and MACD signals.
・Manage trades effectively by setting realistic stop-loss and take-profit levels based on recent market data.
・Maintain a balanced risk/reward ratio, which is essential for sustainable trading.
Indicators Used:
・CCI (Commodity Channel Index):
・Measures the deviation of the price from its average over a specified period, typically ranging from -100 to +100.
・Helps identify overbought and oversold conditions.
・MACD (Moving Average Convergence Divergence):
・Utilizes the difference between short-term and long-term moving averages to indicate trend strength and direction.
・Provides momentum signals that can be used for timing entries and exits.
How It Works:
Entry Conditions:
Long Entry:
・The MACD histogram is above zero.
・The CCI crosses above the -100 line.
Short Entry:
・The MACD histogram is below zero.
・The CCI crosses below the +100 line.
Exit Conditions:
Long Positions:
・The stop-loss is set at the recent low.
・The take-profit is set at 1.5 times the distance between the entry price and the stop-loss.
Short Positions:
・The stop-loss is set at the recent high.
・The take-profit is set at 1.5 times the distance between the entry price and the stop-loss.
Risk Management:
・The script dynamically adjusts stop-loss and take-profit levels based on recent market data, ensuring that the risk/reward ratio is maintained at 1:1.5.
・This approach helps in managing the risk effectively while aiming for consistent profits.
Strategy Properties:
・Account Size: Configured for a realistic account size suitable for the average trader.
・Commission and Slippage: Includes settings for realistic commission and slippage to reflect real market conditions.
・Risk per Trade: Designed to risk no more than 5-10% of equity per trade, aligning with sustainable trading practices.
・Backtesting Results: Configured to generate a sufficient sample size (ideally more than 100 trades) for reliable backtesting results.
Revised Backtesting Settings
Ensure that your backtesting settings are realistic:
・Account Size: Set a realistic initial capital suitable for the average trader.
・Commission and Slippage: Include realistic commission fees and slippage.
・Risk Management: Ensure that each trade risks no more than 5-10% of the account equity.
・Sufficient Sample Size: Choose a dataset that will generate more than 100 trades to provide a robust sample size.
Komut dosyalarını "stop loss" için ara
ICT Concept [TradingFinder] Order Block | FVG | Liquidity Sweeps🔵 Introduction
The "ICT" style is one of the subsets of "Price Action" technical analysis. ICT is a method created by "Michael Huddleston", a professional forex trader and experienced mentor. The acronym ICT stands for "Inner Circle Trader".
The main objective of the ICT trading strategy is to combine "Price Action" and the concept of "Smart Money" to identify optimal entry points into trades. However, finding suitable entry points is not the only strength of this approach. With the ICT style, traders can better understand price behavior and adapt their trading approach to market structure accordingly.
Numerous concepts are discussed in this style, but the key practical concepts for trading in financial markets include "Order Block," "Liquidity," and "FVG".
🔵 How to Use
🟣Order Block
Order blocks are a specific type of "Supply and Demand" zones formed when a series of orders are placed in a block. These orders could be created by banks or other major players. Banks typically execute large orders in blocks during their trading sessions. If they were to enter the market directly with a small quantity, significant price movements would occur before the orders are fully executed, resulting in less profit. To avoid this, they divide their orders into smaller, manageable positions. Traders should look for "buy" opportunities in "demand order blocks" areas and "sell" opportunities in "supply order blocks".
🟣Liquidity
These levels are where traders aim to exit their trades. "Market Makers" or smart money usually collects or distributes their trading positions near levels where many retail traders have placed their "Stop Loss" orders. When the liquidity resulting from these losses is collected, the price often reverses direction.
A "Stop Hunt" is a move designed to neutralize liquidity generated by triggered stop losses. Banks often use significant news events to trigger stop hunts and acquire the liquidity released in the market. If, for example, they intend to execute heavy buy orders, they encourage others to sell through stop hunts.
As a result, if there is liquidity in the market before reaching the order block region, the credibility of that order block is higher. Conversely, if liquidity is near the order block, meaning the price reaches the order block before reaching the liquidity area, the credibility of that order block is lower.
🟣FVG (Fair Value Gap)
To identify the "Fair Value Gap" on the chart, one must analyze candle by candle. Focus on candles with large bodies, examining one candle and the one before it. The candles before and after this central candle should have long shadows, and their bodies should not overlap with the body of the central candle. The distance between the shadows of the first and third candles is called the FVG range.
These zone function in two ways :
•Supply and Demand zone: In this case, the price reacts to these zone, and its trend reverses.
•Liquidity zone: In this scenario, the price "fills" the zone and then reaches the order block.
Important Note: In most cases, FVG zone with very small width act as supply and demand zone, while zone with a significant width act as liquidity zone, absorbing the price.
🔵 Setting
🟣Order Block
Refine Order Block : When the option for refining order blocks is Off, the supply and demand zones encompass the entire length of the order block (from Low to High) in their standard state and remain unaltered. On the option for refining order blocks triggers the improvement of supply and demand zones using the error correction algorithm.
Refine Type : The enhancement of order blocks via the error correction algorithm can be executed through two methods: Defensive and Aggressive. In the Aggressive approach, the widest possible range is taken into account for order blocks.
Show High Levels : If major high levels are to be displayed, set the option for showing high level to Yes.
Show Low Levels : If major low levels are to be displayed, set the option for showing low level to Yes.
Show Last Support : If showing the last support is desired, set the option for showing last support to Yes.
Show Last Resistance : If showing the last resistance is desired, set the option for showing last resistance to Yes.
🟣 FVG
FVG Filter : When FVG filtering is activated, the number of FVG areas undergoes filtration based on the specified algorithm.
FVG Filter Types :
1. Very Aggressive : Apart from the initial condition, an additional condition is introduced. For an upward FVG, the maximum price of the last candle should exceed the maximum price of the middle candle. Similarly, for a downward FVG, the minimum price of the last candle should be lower than the minimum price of the middle candle. This mode eliminates a minimal number of FVGs.
2. Aggressive : In addition to the conditions of the Very Aggressive mode, this mode considers the size of the middle candle; it should not be small. Consequently, a larger number of FVGs are eliminated in this mode.
3. Defensive : Alongside the conditions of the Very Aggressive mode, this mode takes into account the size of the middle candle, which should be relatively large with the majority of it comprising the body. Furthermore, to identify upward FVGs, the second and third candles must be positive, whereas for downward FVGs, the second and third candles must be negative. This mode filters out a considerable number of FVGs, retaining only those of suitable quality.
4. Very Defensive : In addition to the conditions of the Defensive mode, the first and third candles should not be very small-bodied doji candles. This mode filters out the majority of FVGs, leaving only the highest quality ones. Show Demand FVG: Enables the display of demand-related boxes, which can be toggled between off and on. Show Supply FVG: Enables the display of supply-related boxes along the path, which can also be toggled between off and on.
🟣 Liquidity
Statics Liquidity Line Sensitivity : A value ranging from 0 to 0.4. Increasing this value reduces the sensitivity of the "Statics Liquidity Line Detection" function and increases the number of identified lines. The default value is 0.3.
Dynamics Liquidity Line Sensitivity : A value ranging from 0.4 to 1.95. Increasing this value enhances the sensitivity of the "Dynamics Liquidity Line Detection" function and decreases the number of identified lines. The default value is 1.
Statics Period Pivot : Default value is set to 8. By adjusting this value, you can specify the period for static liquidity line pivots.
Dynamics Period Pivot : Default value is set to 3. By adjusting this value, you can specify the period for dynamic liquidity line pivots.
You can activate or deactivate liquidity lines as necessary using the buttons labeled "Show Statics High Liquidity Line," "Show Statics Low Liquidity Line," "Show Dynamics High Liquidity Line," and "Show Dynamics Low Liquidity Line".
[Options Strategies] Selling Covered Calls and Puts (TSO) This trading indicator assists with traditional covered options trading strategies like Covered Calls, Covered Puts, and Cash Secured Puts. It also offers advanced features for trading options intelligently by utilizing options specific levels, such as BE (Break Even) and Strike (all visually shown on chart) in combination with S&R (Support and Resistance), Trend Lines, and other technical analysis tools such as MA (Moving Averages) and ATR Average True Range, all integrated within the indicator.
* Covered options approach over trading shares or options separately offers distinct advantages:
- Reduced Risk and Flexibility : Covered options strategy provides a more conservative approach by combining stock ownership with options trading. It reduces risk exposure compared to buying options outright or trading shares alone. Additionally, it offers flexibility in various market conditions.
- Profitability in Sideways Markets: Covered options allow for profitability in scenarios where the stock price is either moving optimally or remaining sideways. In contrast, just holding stocks might not yield significant gains in a sideways market, and buying options can result in losses due to time decay.
- Protection Against Price Movements: In covered options, if the stock price goes against the trade, the loss is mitigated by the premium received from selling the options. This provides a level of protection compared to other trading strategies where losses can accumulate more rapidly.
==============================================================
Strategies / Visual Examples:
---------------------------------------------------------------------------
---------------------------------------------------------------------------
Up to 3 Symbols can be monitored at the same time with alerts for each Symbol and a Stats Table. To see Symbol's visuals (Date Range, Strike, BE, etc.) - the chart has to be loaded with that Symbol. Here is an example of trading multiple stocks at same layout on different charts trading AAPL, BAC and TSLA.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
An example of a Smart Covered Calls trading SPY.
STRATEGY EXPLANATION:
* Trade Open Trigger (Bullish/Sideway)
>>> S&R (Support and Resistance) or Trend Line broken, bounced off or simply near (if price is near/slightly crossing S&R/Trend Line > a bounce often takes place)
>>> Confirmation by additional TA (Technical Analysis) tools.
>>> EXAMPLE: Broken Resistance combined with a Trend Line up-bounce, confirmed by bullish 200EMA.
* TP (Take-Profit)
>>> Contracts Expire at Expiration date: Premium received for selling contracts kept.
>>> Assignment: Premium received for selling contracts kept + stock assigned/sold at a higher price than it was purchased.
* BE/SL (Break Even Stop-Loss) |
>>> BE/SL hit: stock sold at a slight loss with options contracts bought out (BTC - Buy to Close) at a lower price than initially sold (since price went down and these are calls), so technically the loss is reduced by the partial Premium still kept from initially sold contracts at trade open.
>>> Increasing the BE/SL distance: for wider BE/SL > Bid Price needs to be increased:
- Set longer Expiration date.
- Set closer Strike price.
NOTE: With longer Expiration date and closer Strike, chances of assignment increase as well. It's best to find an optimal level, where BE/SL is behind a Support/Resistance level and/or an established trend line and/or Large Length Moving Average, yet not extremely far away.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
An example of a Smart Covered Puts trading SPY.
STRATEGY EXPLANATION:
* Trade Open Trigger (Bearish/Sideway)
>>> S&R (Support and Resistance) or Trend Line broken, bounced off or simply near (if price is near/slightly crossing S&R/Trend Line > a bounce often takes place)
>>> Confirmation by additional TA (Technical Analysis) tools.
>>> EXAMPLE: Broken Resistance combined with a Trend Line down-bounce, confirmed by bearish 200EMA.
* TP (Take-Profit)
>>> Contracts Expire at Expiration date: Premium received for selling contracts kept.
>>> Assignment: Premium received for selling contracts kept + stock assigned/bought-to-cover at a lower price than it was shorted.
* BE/SL (Break Even Stop-Loss) |
>>> BE/SL hit: stock bought-to-cover at a slight loss with options contracts bought out (BTC - Buy to Close) at a lower price than initially sold (since price went up and these are puts), so technically the loss is reduced by the partial Premium still kept from initially sold contracts at trade open.
>>> Increasing the BE/SL distance: for wider BE/SL > Bid Price needs to be increased:
- Set longer Expiration date.
- Set closer Strike price.
NOTE: With longer Expiration date and closer Strike, chances of assignment increase as well. It's best to find an optimal level, where BE/SL is behind a Support/Resistance level and/or an established trend line and/or Large Length Moving Average, yet not extremely far away.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
An example of a Smart Secured Cash Puts trading SPY.
STRATEGY EXPLANATION:
* Trade Open Trigger (Bullish/Sideway)
>>> Bullish steady trend.
>>> Confirmation by additional TA (Technical Analysis) tools.
>>> EXAMPLE: Slowly rising price action above 200EMA.
* TP (Take-Profit)
>>> Early BTC: BTC (Buy to Close) before Expiration date if options premium/contract price already reduced by at least 50-90% (the reduced price is the profit, if premium lost 90% - only 10% will need to be paid to buy options out to close the trade) and if the stock price is nearing Resistance, Trend Line or big length moving average (like 200EMA) as a bounce may happen or even a potential reverse of the trend. If there is no trend reversal or a small correction bounce occurs, with further trend continuation > another Cash Secured Puts trade can be opened with new Expiration date and Strike.
>>> Contracts Expire at Expiration date: Premium received for selling contracts kept, considering the Strike was never hit.
>>> Assignment with stock closing below Strike and above/near BE (Break Even): Premium received for selling contracts kept. NOTE: It is best to get rid of the stock ASAP to then open a new Cash Secured Puts trade with lower Strike and a new Expiration date.
* BE/SL (Break Even Stop-Loss) |
>>> BE/SL hit: contracts bought out (BTC - Buy to Close) at a higher price than initially sold (since price went down and these are puts), the amount/difference in current contract price is the loss (as premium received + contract price increase is the total cost, which will have to be paid to buy the countracts out).
>>> Increasing the BE/SL distance: for wider BE/SL > Bid Price needs to be increased:
- Set longer Expiration date.
- Set closer Strike price.
NOTE: With longer Expiration date and closer Strike, chances of assignment increase as well. It's best to find an optimal level, where BE/SL is behind a Support/Resistance level and/or an established trend line and/or Large Length Moving Average, yet not extremely far away.
---------------------------------------------------------------------------
---------------------------------------------------------------------------
An example of Options Wheel strategy trading TQQQ. See how Strike and BE (Break Even) hits are displayed every time they occur.
STRATEGY EXPLANATION:
* Trade Open Trigger (Bullish/Sideway)
>>> Options Wheel strategy combines Cash Secured Puts with Covered Calls, so a steady bullish trend is preferred with lower volatility.
>>> It's best to start with Cash Secured Puts until assignment hits (stocks purchased), then switch to Covered Calls until assignment hits (stocks sold) and so on.
* TP (Take-Profit)
>>> Contracts Expire at Expiration date: Premium received for selling contracts kept.
>>> Assignment: Premium received for selling contracts kept. Stock is assigned (purchased if Cash Secured Puts were sold | sold if Covered Calls were sold ).
* BE/SL (Break Even Stop-Loss)
>>> Assignment is the stop-loss for this strategy, which ends current trade and starts next one. It is not a direct loss, but could result a long unrealized losses if after stock purchase assignment it goes down for a while or even a complete loss if low-cap company is used and it goes out of business.
>>> BE/SL distance can still be increased/kept optimal: for wider BE/SL > Bid Price needs to be increased:
- Set longer Expiration date.
- Set closer Strike price.
NOTE: With longer Expiration date and closer Strike, chances of assignment increase as well. It's best to find an optimal level, where BE/SL is behind a Support/Resistance level and/or an established Trend Line and/or Large Length Moving Average, yet not extremely far away.
| 3.0_wheel_strategy_tqqq_example.png
===========================================================================
Trading open/close/TP/SL labels, plots and colors explanations:
---------------------------------------------------------------------------
There are 3 approaches: Cashed Secured Puts, Covered Puts, Covered Calls. Here is an example showing all 3 (the Strikes, Bid prices, Expirations were chosen realistically).
>>> There are 3 symbol templates, the color can be changed for each and each symbol template can be unchecked to be fully hidden or all 3 can be used.
>>> Strike: dashed horizontal line plotted at chosen Strike, if Strike is hit within the Date Range - there will be a label shown.
>>> BE (Break Even): dotted horizontal line plotted at calculated BE, if BE is hit within the Date Range - there will be a label shown.
>>> Stock Purchased: solid horizontal line plotted at input price at which the stock was purchased.
>>> Date Range (STO >>> Expiration ): vertical lines with arrows (arrows direction is based on the approach), which connect Strike, BE (Break Even) and Stock Purchased creating an square/rectangle of the whole trade, making it easy to see everything at once.
>>> Stats Table: shows all the necessary data for each symbol.
===========================================================================
GLOBAL SETTINGS ///////////////////////////////////////////////////////////
---------------------------------------------------------------------------
>>> Show: week divider vertical lines: Will show vertical divider lines separating each week.
>>> Show: Mondays and Fridays: Will show M - for Monday, F - for Friday, T - for Tuesday (Tuesday will be shown if there is a Holiday on Monday)
---------------------------------------------------------------------------
OPTIONS SETUP: SYMBOL0X /////////////////////////////////////////////////// | (identical for all 3 symbols)
---------------------------------------------------------------------------
>>> Symbol0X | Show Table: Turns on symbol01, all visuals on chart, calculations, etc. Table can be separately hidden if desired.
>>> Label Size: Size of the labels on chart showing Strike, BE (Break Even), etc.
>>> Label Color: Color for all symbol0X labels.
>>> Text Color: Text color for all symbol0X labels.
>>> Options Trading Style: 1)Covered Calls: Bullish-sideways market approach (need to own 100 shares of stock per each contract sold), Strike price has to be set above the current stock price | 2)Covered Puts: Bearish-sideways market approach (need to own 100 shares of stock per each contract sold), Strike price has to be set below the current stock price | 3)Cash Secured Puts: Bullish-sideways approach (need to have enough cash to acquire shares at Strike price if hit), Strike price has to be set below the current stock price.
>>> # of contracts sold (1 contract > 100shares): # of contracts sold per trade, for Covered Calls and Covered Puts, every contract must be backed up by 100shares of the underlying stock.
>>> Price per 1 contract (Bid): Premium received per each contract sold.
>>> Strike Price.
>>> Stock Purchase Price: Stock purchase price (NOTE: This is only for Covered Call and Covered Puts, for Secured Cash Puts - stock is only purchased if at Expiration it closes beyond Strike price).
>>> STO (Sell to Open) Date: date at which the contracts were sold and Premium received.
>>> Exp (Expiration) Date: date at which contracts expire, if price never breaks the Strike at Expiration - contracts become worthless!
>>> Alert/Label: Futures Expire Soon: With this setting turned on, an Alert will trigger and a Label will be shown at opening of the first candle bar on the Expiration date. It will certainly be before the end of the day, however depending on the chart TimeFrame during alert creation - it may trigger at a different time. For Example: On a Daily chart TimeFrame SPY (S&P500) will trigger such alert at 9:30AM ET. ||| NOTE: Due to difference in timezones - the solid lines representing the STO >>> Exp range may be off by 1 business day from the date input in the indicator Settings > Inputs, so double check and calibrate the date by setting it 1 day behind/ahead from actual dates so that Alert is received on the actual Expiration date.
>>> Strike price Broken - Style: 'Close': Show/Alert Strike price broken only once candle bar is closed | 'Live': Show/Alert Strike price broken immediately once it happens, before candle bar is closed.
>>> Show: Strike price Broken: will show a label near candle bar breaking the Strike price.
>>> Alert: Strike price Broken: will alert at price breaking the Strike price.
>>> BE (Break Even) price Broken - Alert Style: 'Close': Show/Alert BE (Break Even) price broken only once candle bar is closed | 'Live': Show/Alert BE (Break Even) price broken immediately once it happens, before candle bar is closed.
>>> Show: BE (Break Even) price Broken: will show a label near candle bar breaking the BE price.
>>> Alert: BE (Break Even) price Broken: will alert at price breaking the BE price.
---------------------------------------------------------------------------
TA: TREND LINES ///////////////////////////////////////////////////////////
---------------------------------------------------------------------------
>>> Trend Lines - Uptrend/downtrend colors
>>> Show: Trend Lines: Show/Hide trend lines
>>> Show: Trend Line Breaks: Show/Hide labels where trend lines were broken
>>> Alert: Trend Line Breaks: Alert when trend line is broken
>>> Trend Lines - Search - Left Bars / Trend Lines - Search - Right Bars: how many candle bars will be used to calculate Trend Lines, the bigger the number > the more precise and less amount of trend lines will be found
>>> Trend Lines - Extend Setting
---------------------------------------------------------------------------
TA: S&R (SUPPORT AND RESISTANCE) //////////////////////////////////////////
---------------------------------------------------------------------------
>>> S&R (Support and Resistance) - Support/Resistance colors.
>>> Show: S&R (Support and Resistance) Top/Bottom Levels.
>>> Show: S&R (Support and Resistance) Top/Bottom Level Breaks: Show/Hide labels where support/resistance levels were broken
>>> Alert: S&R (Support and Resistance) Top/Bottom Level Breaks: Alert when S&R (Support and Resistance) level is broken
>>> S&R (Support and Resistance) - Search - Left Bars / S&R (Support and Resistance) - Search - Right Bars: how many candle bars will be used to calculate S&R (Support & Resistance) Levels, the bigger the number > the more precise and less amount of support and resistance levels will be found.
>>> S&R Search - Custom Resolution: This is a custom timeframe setting specifically for S&R Search, it disregards current chart timeframe. This is great to use for scalping, for example: with main chart set to 1min and the custom timeframe set to 3min or 5min - there will be stronger support/resistance levels with more detailed price action.
---------------------------------------------------------------------------
TA: ADDITIONAL TOOLS //////////////////////////////////////////////////////
>>> Show - MA (Moving Average).
>>> Show - ATR (Average True Range).
---------------------------------------------------------------------------
---------------------------------------------------------------------------
STATS TABLE ///////////////////////////////////////////////////////////////
Stats Table displays all the necessary date about each options setup.
>>> Table positioning
---------------------------------------------------------------------------
===========================================================================
Adding Alerts in TradngView
---------------------------------------------------------------------------
-Add indicator to chart and make sure to check/uncheck which alerts are required, then simply create it.
-Right-click anywhere on the TradingView chart
-Click on Add alert
-Condition: Select this indicator by it’s name
-Immediately below, change it to "alert() function calls only"
-Expiration: Open-ended (that may require higher tier TradingView account, otherwise the alert will need to be occasionally re-triggered)
-Alert name: Whatever you desire
-Hit “Create”
-Note: If you change ANY Settings within the indicator – you must DELETE the current alert and create a new one per steps above, otherwise it will continue triggering alerts per old Settings!
===========================================================================
If you have any questions or issues with the indicator, please message me directly via TradingView.
---------------------------------------------------------------------------
Good Luck! (NOTE: Trading is very risky, past performance is not necessarily indicative of future results, so please trade responsibly!)
Single Swing Strategy (SSS)Introduction
The Single Swing Strategy (SSS) is a trading strategy designed for assets that trend. It utilises a single technical indicator to identify potential buying opportunities in upward-trending markets. The strategy focuses on moments when the price of an asset breaks out to a new high, suggesting a strong upward momentum.
Components
1. Exponential Moving Averages (EMAs): SSS uses two EMAs to evaluate the overall asset trend. SSS describes an uptrend as identified, when the fast EMA crosses above the slow EMA and vice versa for a downtrend.
2. Breakout: The strategy validates the trend identified by the EMAs through breakouts in the price action of the asset over a specified lookback period. No indicator is required for this step.
3. Average Directional Index (ADX): The ADX is used to measure the strength of a trend. It does not indicate the trend's direction but rather its strength, whether it's an uptrend or downtrend. A high ADX value (typically above 25) suggests a strong trend, either up or down while a low ADX value (typically below 20) indicates a weak or non-trending market. The ADX itself is a moving average of the expanding range between the +DI and -DI.
4. Positive Directional Indicator (DI+): DI+ helps identify the presence and strength of uptrends. It is calculated based on the upward price movement between current and previous highs. A rising DI+ alongside a rising ADX suggests a strengthening uptrend. When DI+ crosses above DI-, it's often interpreted as a bullish signal.
5. Negative Directional Indicator (DI-): DI- is used to detect the presence and strength of downtrends.It is derived from the downward price movement between current and previous lows. An increasing DI- along with a rising ADX indicates a strengthening downtrend while a crossover of DI- above DI+ is typically seen as a bearish signal.
How it works
1. Regime filter with ADX, DI+, and DI-: The first step in taking a trade is to determine the direction of the trend using the +DI. If in an uptrend, the strategy checks if the ADX is above 25 to confirm a strong uptrend. -DI is not used since the strategy is long only. If in an uptrend and the trend is strong, trades can be opened.
2. Trend Identification with EMAs: Initially, the strategy uses two Exponential Moving Averages (fast and slow) to determine the asset trend. A fast EMA crossing above the slow EMA signifies an uptrend, and vice versa for a downtrend. This is the Entry signal to open a long position.
3. Trend Confirmation with Breakout: The strategy confirms the EMA-indicated trend through price breakouts over a specified lookback period. An EMA crossover without a price action breakout does not lead to an entry signal
4. Trade Management: After entering a trade, the strategy uses predefined levels for taking profit and setting stop losses. Trades are closed either when the price reaches the take-profit level or falls to the stop-loss level. Hence, risk management is built in.
Results
The backtest results can be found below. Initial capital of 10000 was used, this is a convenient amount for most retail traders, commission of $3 per order, position size of 3% of initial capital and slippage of 3 ticks. These are all representative of real world retail trading conditions.
Originality
The Single Swing Strategy (SSS)'s originality is in its blending of classical technical analysis; Trend Analysis through EMAs and Price Action through Breakout, into an innovative trading logic.
1. The Essence of Trend and Breakout in SSS
(i) Trend Recognition: At the heart of SSS is the Exponential Moving Averages (EMAs). While the use of EMAs is common, SSS employs them for trend analysis so an entry decision can be made. The strategy's core algorithm assesses the inception of an upward trend by observing a specific crossing pattern of the EMAs, a moment where the asset's momentum shifts, offering a strategic advantage.
(ii) Breakout Significance: The strategy's reliance on price breakouts isn't just about identifying a new high; it's about understanding market psychology. A breakout beyond a previous high signals not only momentum but also a collective market sentiment that favors upward movement. SSS attempts to capture this momentum, translating it into a tangible trading opportunity.
(iii)Strength of trend: The ADX and +DI double checks the trend is in the right direction and checks to see if the trend is strong enough hence, it prevents trading when the trend is not supportive.
2. Simplicity as a Cornerstone
(i) Clarity and Efficiency: In the realm of algorithmic trading, complexity isn't always synonymous with effectiveness. SSS' simplicity ensures its logic is transparent and its execution, efficient. This simplicity is a strategic choice, designed to reduce overfitting to past data and improve adaptability to real-market conditions.
(ii) Ease of Use and Decision Making: The straightforward nature of SSS may empower traders to make informed decisions without being overwhelmed by convoluted indicators. This is particularly useful because of the embedding of risk management using defined exit points after entry through a Take Profit and Stop Loss. This hardcodes a 3:1 risk reward ratio into every trade.
3. Positive Expectancy
(i) Performance Metrics: The SSS strategy shows its edge in its backtesting results. A 62% win rate, a profit factor of 1.7, profit ratio of 1.05 and an average trade gain of 4.7% are not just numbers; they show the mathematical edge over the backtest period, especially considering the high commissions and slippage factored into its design.
Trading
The SSS strategy has been backtested on the 1D timeframe of BTCUSD but users are encouraged to try it on other assets such as SPXL (5min), AAPL (5min) and others but the appropriate timeframe and trading costs may vary.
NOTE
Like any trading strategy, SSS does not guarantee profits. It's a tool to assist in decision-making, not a foolproof solution. Trading involves risks, particularly in volatile markets. Users should trade responsibly, considering their risk tolerance and financial situation. While SSS automates some aspects of trading, it requires continuous monitoring and does not replace the need for sound judgement and decision-making by the trader.
01 Position CalculatorI present to your attention a calculator for calculating the volume per position.
This calculator is tested on cryptocurrency trading and MOEX liquid shares!
This calculator is suitable for beginners to make it easier to study trading and not get confused at the very beginning with volume calculations, I also use it for virtual trading, a position is drawn on the chart in real time, which shows the amount of loss or profit, that is, with the help of it I I practice different strategies without losing real money on experiments.
All calculations are made at your risk.
You need to indicate what your working deposit is, what percentage of it you are willing to risk per day, the number of your losing trades for one trading session, after which you will stop trading for that day, the amount of risk will be divided by the number of unprofitable trades.
The principle of operation is as simple as possible, you need to indicate three lines on the chart 1 - time line: it is needed so that a position on the chart can be drawn from it. 2 – Entry line for entering a position: the price at which you want to buy an asset. 3 – stop loss line “SL”: the price upon reaching which your losing trade will be closed. If the 3-stop loss line is placed below the 2-Entry line, then a long position will be calculated, if the stop loss line is above the Entry line, then a short position will be calculated. take profit "TP" is calculated automatically according to your settings in the menu.
And so on in order through the menu from top to bottom.
1. Rounding the volume to a whole number: if you select “round”, then the volume of the acquired asset (shares, coins, etc.) will be rounded to a whole number, but be careful if your deposit is $100, and the cost of 1 unit of the asset is more than $1000, then the calculator will give error. MOEX shares are traded only in whole lots, so rounding occurs automatically.
2. Automatic calculation of SL in 1 ATR of the selected TF (auto/manual) (ATR...): if you select auto and specify, for example, ATR 1h, then your “SL” will be calculated automatically and set at a distance from Entry of 1 ATR of the hourly time frame (this is the average price change over 1 hour)
3. Cryptocurrency deposit commission, MOEX deposit commission: I made two different deposits on purpose so as not to change the settings each time, depending on the schedule you choose, MOEX or cryptocurrency, the required deposit and commission will be automatically taken into account.
4. Slippage: this is the percentage of slippage on closing a position at a stop loss.
5. Daily drawdown % (...): this is the percentage of your trading deposit that you are willing to risk for one trading session, the amount at risk.
6. Ratio rice /profit 1/ (...): you need to indicate the SL/TP ratio, based on this your income per trade is calculated and the distance to TP is outlined on the graph.
7. Number of losing trades (...): this is the number of your trades per trading session after receiving which you will end trading for that day, the amount of risk will be divided by the number of losing trades.
8. Position: you can enter the start date of the position and Entry and SL prices
9. ATR – specify the number of last candles to calculate the average price movement of the selected time frame
Now, as for the tables located by default on the left and right at the bottom of the screen, I made windows with descriptions; when you hover the cursor over a cell, a description pops up.
RU
Этот калькулятор проверен, на торговле криптовалюты и ликвидных акциях MOEX!
Этот калькулятор подойдет начинающим, чтоб облегчить изучение торговли и не запутаться в самом начале с расчётами объемов, так же я использую его для виртуальной торговли, на графике в реальном времени рисуется позиция, на которой видно суму убытка или прибыли, то есть с помощью него я отрабатываю разные стратегии, не теряя реальные деньги на эксперименты.
Все расчеты делаются от вашего риска.
Вам необходимо указать какой ваш рабочий депозит, каким процентом от него вы готовы рискнуть на день, количество ваших убыточных сделок на одну торговую сессию, после которых вы прекратите торговлю на этот день, сумма риска будет поделена на количество убыточных сделок.
Принцип работы максимально прост, вам нужно указать на графике три линии 1 - линия время: она нужна чтоб от нее рисовался позиция на графике. 2 –линия Entry входа в позицию: цена по которой вы хотите купить актив. 3 – линия stop loss «SL»: цена при достижении которой закроется ваша убыточная сделка. Если линию 3-stop loss разместить под линией 2-Entry то будет рассчитываться длинная позиция, ели лини stop loss будет над линией Entry то будет рассчитываться короткая позиция. take profit «TP» рассчитывается автоматически согласно вашим настройкам в меню.
И так по порядку по меню с верху в низ.
1. Округление объема до целого: если выбрать «round -округлить», то объем приобретаемого актива (акции, монеты и другого) будет округлен до целого числа, но будьте внимательны если ваш депозит 100$, а стоимость 1 единицы актива более 1000$ то калькулятор выдаст ошибку. Акции MOEX торгуются только целыми лотами потому округление происходит автоматически.
2. Авто расчёт SL в 1 ATR выбранного TF (auto/manual) (ATR…): если выбрать auto и указать, к примеру ATR 1h, то ваш «SL», будет рассчитан автоматически и выставлен на расстоянии от Entry в 1 ATR часового time frame (это усредненное изменение цены за 1 час)
3. Депозит крипто валюты комиссия, депозит MOEX комиссия: сделал специально два разных депозита чтоб каждый раз не менять настройки, в зависимости от выбранного вами графика, MOEX или криптовалюта, будет автоматически браться в расчет нужный депозит и комиссия.
4. Проскальзывание: это процент на проскальзывание закрытия позиции по stop loss.
5. Просадка на день % (…): это процент от вашего торгового депозита, которым вы готовы рискнуть на одну торговую сессию, сумма риска надень.
6. Соотношение рис /прибыль 1/ (…): вам нужно указать соотношение SL/TP на основе этого рассчитывается ваш доход на сделку и на графике обрисовывается расстояние до TP.
7. Количество убыточных сделок (…): это количество ваших сделок на торговую сессию после получения, которых вы закончите торговлю на этот день, сумма риска надень будет поделена на количество убыточных сделок.
8. Позиция: можно вписать дату начала позиции и цены Entry и SL
9. ATR – укажите количество последних свечей для расчета среднего движения цены выбранного time frame
Теперь что касается таблиц расположенных по умолчанию с лева и справа в низу экрана, я сделал окна с описаниями, при наведении курсора на ячейку всплывает описание.
PTS Pi-Osc V1
The PTS - Pi-Osc know as Precision Index Oscillator by Roger Medcalf - Precision Trading Systems.
How does the Pi-Osc work?
Pi-Osc is a highly sophisticated consensus type indicator comprising of many different component signals.
A technical traders tool that measures everything from divergences to probabilities all blended into one simple to use product.
The buy and selling opportunities are highlighted by the moves away from + or - 3.14.
Simple to use for all levels of experience from beginner to expert and offers a unique edge in terms of precision.
The components that go into computations are identified below.
Money flow index provides a simple snapshot of how sold out or pumped up a stock or future really is and when measured in three different time frames gives a slick consensus view of money flow.
Relative strength index (RSI) still the No1 most popular indicator in use today as its power to identify overbought and oversold qualities in sideways markets is exceptional.
Its poor performance in trends is greatly reduced when seamlessly integrated with the PI-Osc algorithm.
Demand index being one of the designers favourite indicators for measuring the future direction caused by a large volume trade is incorporated here as well as its exceptional efficiency as a divergence indicator.
James Sibbet's creation provides an additional stellar incisive cutting accuracy to the Pi-Osc. Sibbets creation is one of the only indicators with true predictive qualities as a leading indicator.
Divergences. Pi-Osc measures divergences which occur over many look back periods from two different indicators, realising that divergences are often spurious in their reliability, the indicator only factors 4% of the total indicator
reading from these. Paradoxically the buy and sell zones have to have at least one observation of a divergence to trigger a signal.
Volume is always a factor that precedes a price change, as stock prices cannot move without a real money value being assigned to it either as a recent trade or a bid-offer order being placed.
The designer's understanding of volume patterns is a very useful addition incorporated into the Pi-Osc indicators unique conception.
Momentum frequently decelerates prior to market turning points and PI-osc is monitoring several timeframes of smoothed momentum samples in its calculations.
But unlike a conventional rate of change or momentum indicator the Pi-Osc indicator scores a neutral reading when momentum is rising or falling fast, and a reading is only factored into the output when momentum is reducing, thus
indicating a higher probability of success.
Probability is another feature of this algorithm.
Although rarely used in industry standard oscillators, the designer has added a standard deviation (2.9) factor into this indicator as the more usual 2 standard deviations used in Bollinger bands is just not reliable enough to bet hard earned cash on.
Normally distributed price sets have a 99.9% containment within 3.3 standard deviations, so when this is breached the Pi-Osc adds or deducts a further value to its output number.
Stochastics have similar attributes to RSI oscillators and have contributed a factor into PI-osc due to their smooth and reliable ability to identify buying and selling points in non trending markets.
Price patterns. Generally the industry standard oscillators just use the closing price to calculate their values, and although some indicators such as the stochastic use the high and low in their mathematics, few oscillators are actually programmed to respond to unique candlestick chart set ups.
PI-osc is setting the standard with its intelligent programming to recognise when the current chart pattern is shouting buy signals. Several of the more reliable patterns are factored into the algorithm.
When all the maths is done, Pi-Osc does an exceptional job of determining true buying and selling points.
Basically the trading interpretation is made very simple for you, as the buy and sell zones are so logically determined, not by one factor but from a large consensus "vote" from more than one different computation.
The benefits of this indicator are that it saves valuable time in "confirming technical analysis signals" and all trades know time is precious as large price changes can be missed in seconds while checking other confirming factors.
It takes the hard work out of it, and lets your computer do the brain work.
Ideally this indicator is best as an entry signal, and exits are best done with a trailing stop which has a logical trend following exit, as its quite rare that the Pi-Osc will run right to the other extreme and issue a reverse signal.
Precision Index Oscillator has now got a new rule as a result of the gradual rise in market volatility.
Apart from the other well known main rules to wait for the bounce away from Pi and trade in the direction of the major trend, the new rule is to experiment to find the best historical timeframe.
In the old days it would fire up very nicely on a 10 minute chart of most things, and still does (sometimes) but the futures markets and the very volatile cryptocurrencies now go way out of the old extremities in terms of deviations from the norm.
So it is essential to know what the market volatility is capable of on each instrument.
The point being made here is that using this on very short term time frames is not as safe as used to be.
Institutions enjoy working together to drive the prices into areas where most traders did not expect them to go, taking out all the stops and getting a better price for themselves.
So the first task after ordering this product is to create multiple minute chart settings in your Trading View platform and then click through them and there you will find hopefully find the holy grail, just like finding the best guitar,
amplifier and effects pedal settings for creating your own personalized type of music, finding the best timeframe to use you Pi-Osc is the essential work.
The holy grail usually turns out to be nothing more complex than a stop watch:
If the best setting turns out to be 15 minutes or 30 seconds on a volatile market or a 4 hours minute chart on a very volatile market then so be it.
Who cares? Does it matter?
All that matters is you find the way to get to the best results from this product.
Precision Index Oscillator has eight rules
1. Trade in the direction of the major trend
2. Find the time frame that has worked best in historical testing ( This can be a different setting for each market )
3. ALWAYS use a stop loss
4. Wait for the bounce away from Pi
5. Wait for the bounce away from Pi
6 Wait for the bounce away from Pi
7 Wait for the bounce away from Pi
8. Remember the other seven rules.
Precision Index Oscillator clarification of rules 3 to 7
This indicator can stay locked at the extreme Pi level for many bars, days, hours, minutes, seconds etc.
Taking the signal before the bounce comes is like the well known phrase "catching the falling knife".
Taking the signal before the bounce is a "Pi-Crime" and is a bad idea. Ignoring this point will likely result in losses
As Ed Seykota puts it in his usual amusing style, the problem with catching falling knives is that there are more knives than we have fingers.
He is referring to a market sell off rather than a sell off in one market.
When everything is crashing and we buy all of the crashing things at once, yes you guessed it: A painful day for the fingers!
Suggested settings for various lengths:
There are no settings to change. The beauty of Pi-Osc is there are no settings to be changed.
Your testing of "Pi signal qualifications" is confined only to selecting a time frame which appears to have offered good Pi-trades in the past.
This does not guarantee future signals will be good, and this is why risk control is essential.
Of course it is smart to experiement with different time periods of chart.
Execution of trades:
Exercise caution with this product.
Risk control is essential and risking more than 1% to 1.5% of your capital from entry price to stop would NOT be advised:
As with hunting, firing out lots of small trades in a shot gun approach will lead to better results than gambling all on the first signal you see.
There is much more chance of hitting a bird with a shot gun than a canon and the ammunition is much cheaper.
Always always use a stop loss. Something like 3 to 7 times a fifty period average true range for example.
Whilst it is often possible that a Pi-bounce appears exactly at the precise high or low of the week and could be the only one you see it is risky just to pile into it instantly as some markets produce several failed signals which continue to move in the same direction.
The safest and least risky method is to wait for the trend to change after the Pi-bounce. This is subjective to your own definition of how to measure the trend as "changing" but I would suggest waiting for a 8-20 period Exponential average to turn around before entering a trade.
Once the trade is entered you can implement a trailing stop to allow maximum potential gains and if your style is one of wanting to take quick profits then it is wise to take only some partial profits and give the move a chance to go somewhere and exit the remainder when the trend changes.
If the move was picked up near the absolute top or bottom it could be a large mistake to bail out of all of it early.
Market selection is important:
Avoid markets in endless smooth trends. These are best trading with trend following products ( Pi-Osc is not a trend following product )
Look for a choppy up or down trend or sideways market with some cycle qualities to it.
Best results are on liquid markets, you can observe the past signals and often history repeats with the good previous signals tending to indicate that future signals may also be good. (This is not certain of course)
This is also true of a market showing several historically bad signals which may be leading to more bad signals.
If the past performance of this indicator is poor on the market you are viewing, then move to another market until one is found where the readings show good price action after the signals in historical data.
Time frames:
This product can be applied to any time frame of market but be aware as is stated above, the slower time frames yield more valid signals and shorter time frames lead to more randomness and noise ridden plots of lower significance.
That said, it provides a valid reason to enter a trade and can give good results providing good stops and risk control are used. I have seen plenty of valid signals on 30 second charts right up to weekly charts.
The reliability of short term intra day time frames is usually lower than weekly or daily time frames. As 10 minute time frame is more reliable than a 30 second chart.
Please take this into consideration, try slowing down the impulses to go fast.
I am now accepting payments in USD or CHF for this product
This is not because I expect a US Dollar collapse but as a precaution to spread currency risk over different classes.
As FX rates vary substantially you can find the option that is cheaper than the other and it is fine to do that and choose the cheaper payment option.
Thanks for reading and I hope you do well with Pi-Osc on Trading View, just remember all the eight rules. You do remember them don't you?
Roger Medcalf - Precision Trading Systems
ProfitAlgoOverview
ProfitAlgo is a powerful and intuitive trading tool specifically developed to cater to the requirements of both beginners and experienced traders. It is designed to function in every timeframe and on all cryptocurrencies, stocks, indices, forex, futures, currencies, ETF's, energy and commodities. This innovative tool provides real-time signals, comprehensive trend analysis, and advanced risk management features, making it an indispensable asset for traders of all levels. This cutting-edge tool generates 'BUY' and 'SELL' signals, complemented by an array of robust analytical tools. Empower your trading analysis with this all-in-one solution and add to your arsenal of indicators to make well-informed decisions.
This algorithm incorporates a sophisticated Fourier smoothing technique to effectively filter price data, reduce noise and reveal underlying patterns and trends. By utilizing multiple price series data and incorporating Price Volume Trend, it leverages volume analysis and price movement patterns. Furthermore, the algorithm employs relative and simple moving average calculations to enhance signal clarity and filter out outliers, resulting in a more refined and robust indicator.
Features
Buy/Sell signals: Visually illustrated by 'BUY' and 'SELL' labels, these signals provide indications to traders about optimal times to enter or exit positions in the market based on the particular asset they are trading. Traders may want to enter long positions when buy signals appear, and enter short positions when 'SELL' signals appear.
Stop Loss/Take Profit Levels: Stop loss and take profit levels are predefined price thresholds that allow traders to automatically exit trades to limit losses or secure profits, respectively. Stop loss and take profit levels are visually depicted through three dotted lines on the trading chart, including the entry price, take profit (TP), and stop loss (SL). Additionally, a table displays the corresponding price entries for all three levels, providing a comprehensive overview of the trade. Traders can effectively manage their risk and optimize their trading by implementing predefined threshold settings and establishing take profit levels, thus safeguarding their profits using a strategic approach.
Support and Resistance Levels: Support and resistance levels are key price levels in the market that act as barriers or turning points for the price movement of an asset. Traders utilize these levels to identify potential areas of buying and selling opportunities. These can be depicted as red (resistance) and green (support) horizontal lines. These levels can serve as valuable complements to stop/loss and take profit levels, providing confirmation for profit-taking opportunities and facilitating effective risk management. Moreover, they can synergistically work alongside the price lines to identify potential reversal zones by visualizing market highs/lows in conjunction with areas of supply & demand.
Moving Average Bands: Moving average bands, plotted alongside the price data, dynamically change color based on the prevailing trend, with red indicating a downtrend and green representing an uptrend. This visual tool provides valuable insights to users, allowing them to quickly identify and interpret market trends. Integrating Moving Average bands with our buy/sell signals offers added confidence in identifying market trends, enabling traders to seek validation and enhance their decision-making process.
Trend Table: The trend table provides real-time information on the current trend of an asset, displaying three distinct outputs: "Uptrend," "Downtrend," and "Ranging Trend." This valuable tool enables users to assess the live trend of an asset, which may differ from the buy/sell signals. The primary objective of this feature is to analyze real-time trends in both ranging and trending market conditions. While the current signal may indicate a 'BUY' signal, the table can present an alternative output, providing valuable insights for traders and investors.
Price Lines: Price lines are depicted as two parallel grey lines running alongside the price data, representing the highs and lows of the market. This visual tool is utilized to identify patterns of higher highs and lower lows, enabling traders to gain insights into the overall trend and potential reversals in the market. When used in conjunction with our signals, MA bands and trend table, it may reinforce your interpretation of the underlying trend as well as provide insights into the trend strength.
*Note: These features are customizable via the settings menu in TradingView.
Calculations
How are buy/sell signals calculated?
The buy and sell signals are generated through a comprehensive calculation process that encompasses various types of analysis techniques. With permission from the author, wbburgin's Fourier transform is utilized to filter and extract relevant information from the price data, removing noise from the signals (filter is only applied in this feature). The buy and sell conditions are calculated based on a combination of volume-based analysis, and price movement patterns, employed to assess the direction and strength of market trends. The combination aims to produce a comprehensive view of both volume-based and price-based market dynamics. By integrating these analysis techniques, traders can gain insights into the relationship between volume, price, and market trends. This combined approach, as well as Fourier smoothing, can help identify potential market reversals, confirm trend strength, produce less noisy data and provide additional confirmation signals for trading decisions. By considering the insights provided by this analysis, the algorithm determines the appropriate actions, signaling the opportunities to enter or exit positions in the market. In summary, these calculations aim to identify favorable trading opportunities by considering factors such as trend strength, volume dynamics, and price patterns, ultimately assisting traders in making well-informed decisions in the market.
How are stop/loss and take/profit levels calculated?
The stop loss and take profit levels are calculated using a combination of technical factors, including the Average True Range (ATR) and Exponential Moving Average (EMA). The rationale for this combination is to enable dynamic risk management and align profit targets with the prevailing market conditions; ATR provides a measure of volatility and risk, while EMA helps identify the underlying trend, allowing for effective stop-loss and take-profit placement. These indicators are utilized to gauge market volatility and determine suitable levels for managing risk and securing potential profits. By incorporating ATR and EMA calculations, the algorithm generates dynamic stop loss and take profit levels that adapt to market conditions.
Calculating support and resistance levels
These levels help identify areas where the price tends to find support (support levels) or encounter resistance (resistance levels). This script utilizes pivot point calculations to determine these significant price levels, which can assist traders in trading decisions regarding potential price reversals, trend continuations, and entry/exit points in their strategies.
What are the moving average bands based on?
The moving average bands, based on VWMA (Volume Weighted Moving Average) calculations using OHLC4 price data, are visualized as unique bands on the chart. VWMA bands are chosen to find trends because they effectively combine volume-weighted calculations with moving averages, providing valuable insights into the strength and direction of price movements. These bands dynamically change color to reflect the prevailing trend. In an uptrend, the bands are represented by a green color, while in a downtrend, they appear in red. The VWMA bands utilize a unique counting method to capture trend movements and potential reversals.
How is the Trend Table calculated?
The underlying trends in the trend table are calculated based on counting methods applied to the VWMA bands. It utilizes specific thresholds to determine different trends, such as "Up Trend," "Down Trend," and "Ranging Trend." These thresholds are used to assess the current trend of the asset and provide valuable insights for traders.
Price Lines Calculation
The price lines are calculated based on the price data. They represent the range of prices, with one line plotted above the closing price and another line plotted below it. The space between these lines is filled to visualize the price volatility. Traders can utilize these lines to identify significant price levels and observe the overall price movement.
Disclaimer:
The information provided in my indicators/strategies/systems is not intended as financial advice. I assume no responsibility for any losses or damages, including loss of profits, resulting from the use of or reliance on such information.
All investments carry risks, and past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors bear full responsibility for their investment decisions, which should be based on their own evaluation of financial circumstances, investment objectives, risk tolerance, and liquidity requirements.
Please note that my indicators/strategies/systems are solely for educational purposes! DO NOT request access in the comment's section.
(Simple) Lot Size CalculatorPip Calculator: A Guide for Traders
The Pip Calculator is a powerful tool designed to help traders calculate their lot size based on their account balance, risk percentage, and stop loss in pips. This guide will walk you through using the Pip Calculator script and explain its features.
Features of the Pip Calculator:
User-friendly UI : The Pip Calculator provides a simple and intuitive user interface, making it easy to input your account details and obtain the desired lot size.
Flexible Inputs : The Pip Calculator allows you to enter your account balance, risk percentage, and stop loss in pips. This flexibility enables you to customize the calculation according to your trading strategy.
Dynamic Currency Pair Support : The Pip Calculator supports various currency pairs and their respective pip values. The script automatically detects the currency pair of the chart you're viewing, ensuring accurate calculations.
Real-time Lot Size Display : The Pip Calculator instantly calculates and displays the lot size based on your inputs. The lot size is updated in real-time as you adjust your account balance, risk percentage, or stop loss.
Visual Representation : The Pip Calculator visually presents the calculated lot size on the chart, making it easy to understand and reference during your trading activities.
Using the Pip Calculator:
Install and Apply the Script : To use the Pip Calculator, install it as an extension on your preferred trading platform (such as TradingView). Apply the script to the chart of the desired currency pair.
Enter Account Details : In the script's user interface, enter your account balance, risk percentage, and stop loss in pips. These details are essential for accurate lot size calculation.
Review Currency Pair Support : The Pip Calculator automatically detects the currency pair of the chart. Ensure that the currency pair is supported by checking the "Currency pair not supported" message. Currently, GBPJPY is the supported pair.
Observe Real-time Lot Size : Once you've entered the required information, the script will calculate and display the lot size in real-time. The lot size is adjusted automatically as you modify your inputs.
Visualize the Lot Size : The calculated lot size is displayed on the chart as a label. You can easily view and reference the lot size while analyzing price movements.
Customize the UI : The Pip Calculator allows you to customize the appearance of the lot size label. You can adjust the text color, background color, and choose whether to show or hide the lot size label.
Note: The Pip Calculator script is intended as a tool to assist traders in determining an appropriate lot size based on their account balance, risk percentage, and stop loss. It should be used in conjunction with a comprehensive trading strategy and risk management principles.
Advantages of the Pip Calculator:
Accuracy: The Pip Calculator incorporates accurate pip values for supported currency pairs, ensuring precise lot size calculations.
Simplicity: The user-friendly interface and intuitive design make it easy for traders to calculate their lot size without complex calculations or manual estimations.
Real-time Updates: The Pip Calculator provides instant lot size updates, allowing traders to adapt their position sizing based on changes in account balance, risk percentage, or stop loss.
Visibility: The visual representation of the lot size on the chart helps traders quickly identify their desired position size and monitor it during trading activities.
The Pip Calculator offers a convenient and efficient way to determine lot sizes based on your trading parameters. By using this tool, you can enhance your risk management practices, maintain consistency, and stay aligned with your trading plan.
Disclaimer: The Pip Calculator script is provided for informational purposes only and should not be considered as financial advice. Trading in the financial markets carries inherent risks, and it is essential to perform your own analysis and consult with a qualified financial advisor before making any investment decisions.
Mechanical Trading StrategyThe "Mechanical Trading Strategy" is a simple and systematic approach to trading that aims to capture short-term price movements in the financial markets. This strategy focuses on executing trades based on specific conditions and predetermined profit targets and stop loss levels.
Key Features:
Profit Target: The strategy allows you to set a profit target as a percentage of the entry price. This target represents the desired level of profit for each trade.
Stop Loss: The strategy incorporates a stop loss level as a percentage of the entry price. This level represents the maximum acceptable loss for each trade, helping to manage risk.
Entry Condition: The strategy triggers trades at a specific time. In this case, the condition for entering a trade is based on the hour of the candle being 16 (4:00 PM). This time-based entry condition provides a systematic approach to executing trades.
Position Sizing: The strategy determines the position size based on a fixed percentage of the available equity. This approach ensures consistent risk management and allows for potential portfolio diversification.
Execution:
When the entry condition is met, signified by the hour being 16, the strategy initiates a long position using the strategy.entry function. It sets the exit conditions using the strategy.exit function, with a limit order for the take profit level and a stop order for the stop loss level.
Take Profit and Stop Loss:
The take profit level is calculated by adding a percentage of the entry price to the entry price itself. This represents the profit target for the trade. Conversely, the stop loss level is calculated by subtracting a percentage of the entry price from the entry price. This level represents the maximum acceptable loss for the trade.
By using this mechanical trading strategy, traders can establish a disciplined and systematic approach to their trading decisions. The predefined profit target and stop loss levels provide clear exit rules, helping to manage risk and potentially maximize returns. However, it is important to note that no trading strategy is guaranteed to be profitable, and careful analysis and monitoring of market conditions are always recommended.
[MT] Strategy Backtest Template| Initial Release | | EN |
An update of my old script, this script is designed so that it can be used as a template for all those traders who want to save time when programming their strategy and backtesting it, having functions already programmed that in normal development would take you more time to program, with this template you can simply add your favorite indicator and thus be able to take advantage of all the functions that this template has.
🔴Stop Loss and 🟢Take Profit:
No need to mention that it is a Stop Loss and a Take Profit, within these functions we find the options of: fixed percentage (%), fixed price ($), ATR, especially for Stop Loss we find the Pivot Points, in addition to this, the price range between the entry and the Stop Loss can be converted into a trailing stop loss, instead, especially for the Take Profit we have an option to choose a 1:X ratio that complements very well with the Pivot Points.
📈Heikin Ashi Based Entries:
Heikin Ashi entries are trades that are calculated based on Heikin Ashi candles but their price is executed to Japanese candles, thus avoiding false results that occur in Heikin candlestick charts, this making in certain cases better results in strategies that are executed with this option compared to Japanese candlesticks.
📊Dashboard:
A more visual and organized way to see the results and necessary data produced by our strategy, among them we can see the dates between which our operations are made regardless if you have activated some time filter, usual data such as Profit, Win Rate, Profit factor are also displayed in this panel, additionally data such as the total number of operations, how many were gains and how many losses, the average profit and loss for each operation and finally the maximum profits and losses followed, which are data that will be very useful to us when we elaborate our strategies.
Feel free to use this template to program your own strategies, if you find errors or want to request a new feature let me know in the comments or through my social networks found in my tradingview profile.
| Update 1.1 | | EN |
➕Additions: '
Time sessions filter and days of the week filter added to the time filter section.
Option to add leverage to the strategy.
5 Moving Averages, RSI, Stochastic RSI, ADX, and Parabolic Sar have been added as indicators for the strategy.
You can choose from the 6 available indicators the way to trade, entry alert or entry filter.
Added the option of ATR for Take Profit.
Ticker information and timeframe are now displayed on the dashboard.
Added display customization and color customization of indicator plots.
Added customization of display and color plots of trades displayed on chart.
📝Changes:
Now when activating the time filter it is optional to add a start or end date and time, being able to only add a start date or only an end date.
Operation plots have been changed from plot() to line creation with line.new().
Indicator plots can now be controlled from the "plots" section.
Acceptable and deniable range of profit, winrate and profit factor can now be chosen from the "plots" section to be displayed on the dashboard.
Aesthetic changes in the section separations within the settings section and within the code itself.
The function that made the indicators give inputs based on heikin ashi candles has been changed, see the code for more information.
⚙️Fixes:
Dashboard label now projects correctly on all timeframes including custom timeframes.
Removed unnecessary lines and variables to take up less code space.
All code in general has been optimized to avoid the use of variables, unnecessary lines and avoid unnecessary calculations, freeing up space to declare more variables and be able to use fewer lines of code.
| Lanzamiento Inicial | | ES |
Una actualización de mi antiguo script, este script está diseñado para que pueda ser usado como una plantilla para todos aquellos traders que quieran ahorrar tiempo al programar su estrategia y hacer un backtesting de ella, teniendo funciones ya programadas que en el desarrollo normal te tomaría más tiempo programar, con esta plantilla puedes simplemente agregar tu indicador favorito y así poder aprovechar todas las funciones que tiene esta plantilla.
🔴Stop Loss y 🟢Take Profit:
No hace falta mencionar que es un Stop Loss y un Take Profit, dentro de estas funciones encontramos las opciones de: porcentaje fijo (%), precio fijo ($), ATR, en especial para Stop Loss encontramos los Pivot Points, adicionalmente a esto, el rango de precio entre la entrada y el Stop Loss se puede convertir en un trailing stop loss, en cambio, especialmente para el Take Profit tenemos una opción para elegir un ratio 1:X que se complementa muy bien con los Pivot Points.
📈Entradas Basadas en Heikin Ashi:
Las entradas Heikin Ashi son operaciones que son calculados en base a las velas Heikin Ashi pero su precio esta ejecutado a velas japonesas, evitando así́ los falsos resultados que se producen en graficas de velas Heikin, esto haciendo que en ciertos casos se obtengan mejores resultados en las estrategias que son ejecutadas con esta opción en comparación con las velas japonesas.
📊Panel de Control:
Una manera más visual y organizada de ver los resultados y datos necesarios producidos por nuestra estrategia, entre ellos podemos ver las fechas entre las que se hacen nuestras operaciones independientemente si se tiene activado algún filtro de tiempo, datos usuales como el Profit, Win Rate, Profit factor también son mostrados en este panel, adicionalmente se agregaron datos como el número total de operaciones, cuantos fueron ganancias y cuantos perdidas, el promedio de ganancias y pérdidas por cada operación y por ultimo las máximas ganancias y pérdidas seguidas, que son datos que nos serán muy útiles al elaborar nuestras estrategias.
Siéntete libre de usar esta plantilla para programar tus propias estrategias, si encuentras errores o quieres solicitar una nueva función házmelo saber en los comentarios o a través de mis redes sociales que se encuentran en mi perfil de tradingview.
| Actualización 1.1 | | ES |
➕Añadidos:
Filtro de sesiones de tiempo y filtro de días de la semana agregados al apartado de filtro de tiempo.
Opción para agregar apalancamiento a la estrategia.
5 Moving Averages, RSI, Stochastic RSI, ADX, y Parabolic Sar se han agregado como indicadores para la estrategia.
Puedes escoger entre los 6 indicadores disponibles la forma de operar, alerta de entrada o filtro de entrada.
Añadido la opción de ATR para Take Profit.
La información del ticker y la temporalidad ahora se muestran en el dashboard.
Añadido personalización de visualización y color de los plots de indicadores.
Añadido personalización de visualización y color de los plots de operaciones mostradas en grafica.
📝Cambios:
Ahora al activar el filtro de tiempo es opcional añadir una fecha y hora de inicio o fin, pudiendo únicamente agregar una fecha de inicio o solamente una fecha de fin.
Los plots de operaciones han cambiados de plot() a creación de líneas con line.new().
Los plots de indicadores ahora se pueden controlar desde el apartado "plots".
Ahora se puede elegir el rango aceptable y negable de profit, winrate y profit factor desde el apartado "plots" para mostrarse en el dashboard.
Cambios estéticos en las separaciones de secciones dentro del apartado de configuraciones y dentro del propio código.
Se ha cambiado la función que hacía que los indicadores dieran entradas en base a velas heikin ashi, mire el código para más información.
⚙️Arreglos:
El dashboard label ahora se proyecta correctamente en todas las temporalidades incluyendo las temporalidades personalizadas.
Se han eliminado líneas y variables innecesarias para ocupar menos espacio en el código.
Se ha optimizado todo el código en general para evitar el uso de variables, líneas innecesarias y evitar los cálculos innecesarios, liberando espacio para declarar más variables y poder utilizar menos líneas de código.
Mean reversal QFL v3My aim is to make the bots trade as you would trading QFL manually and “by the book” or at least to my experience and understanding from the material out there of how you should plan a QFL trade.
Im absolutely not a pro trader, I have made my share of costly mistakes trying to be clever or Beeing impatient resulting in painful losses. QFL is we’re I’ve had consistently good results tough.
Is this where I have to say I’m not a financial advisor and all that? Well I’m not. As always Do your own research and backtest, backtest, backtest.
First: I believe no bot strategy are set and forget, while they can run unattended 80-90% of the time you're always going to find yourself in a situation where you will have to manually handle a bad deal. It would also make sense to be somewhat involved in the really good trades making the most out of them. That’s why understanding the strategy the bot Is using is really important, hence why I prefer QFL. It's an easy concept to understand, and proved to be a safe way of making steady profit in pretty much all market conditions if done right.
Some changes in how aggressive you are might be needed if you are the impatient kind of trader who needs to see a lot of deals happening. But it is an added risk. In those cases Luc would advise to start “nibbling” but that would be hard to implement in a bot but I will see if that’s something I can implement.
Same goes for going the more conservative route when market conditions calls for it.
QFL stands for Quickfingersluc, and sometimes it is referred to as the Base Strategy or Mean Reversals. Its main idea is about identifying the moment of panic selling and buying below the base level and utilizing Safety orders.
Base level or Support Level refers to the lowest price level that was reached before the moment the price started increasing again. At that level, you can notice that buyers of some cryptocurrencies make a strong reaction.
As a bit of a learning material i want to make a few points on important factors in trading using the QFL strategy:
• Identify strong bases
• Read the history of the chart
• No emotions
Trading QFL using a bot has it’s limitations:
· Some of the bases are questionable but im constantly trying to improve this
· The strategy don’t take into consideration chart history(success rate)*
· You need to follow a predefined (by you) buying ladder, hence not considering a particular coin's average price movement, which may vary quite a lot. This why I for now has limited the strategy to SIMPLE bots. So that unique alerts can be created for each pair.
· A set Take profit %, possibly making you miss out on higher profits(This is easy to change during a trade though), and no chance of selling in layers(This is coming soon).
1. Some of the bases are questionable
The strategy will start trades of bases that you wouldn’t consider being a strong base(or a base at all) when looking at the chart.
For those not as familiar with QFL. What is a base, and what qualifies as a strong base?
• A base is also called the Support Level, which is the lowest price level that was reached before the price started turning and increasing again.
• A strong base is recognized by a steep fall in price after breaking the base(Panic), followed by a big reaction pump.
• The reaction pump is the most important factor to say that it is a strong base.
• And also the last base, the one you are trading of is the one that counts
Tip: Look for V shapes on the chart, easy to spot when zoomed out.
2. The integrated signals don’t take into consideration chart history(success rate)*
How can you assess the success rate by looking at the chart?
After finding the bases based on the criterias from the 1st point. Looking at the, how many times did it respect the base after breaking it? 7/10, 8/10, 9/10 times? Great! Chances of the next trade also respecting the base is big, and I would consider raising the TP on that deal. Any lower than that I would keep a really close eye on the deal, or even consider closing the deal. And again remember the last base is the one that counts. If all the others are nice strong bases but that last one you are about to take a trade off is no good the base is invalidated so be cautious.
3. You need to follow a predefined (by you) buying ladder
Crypto is volatile, and there is a huge variation in price movements on all the coins.
Trading manually, looking at the chart gives you a good idea on how much a coin on avg. drops below base, and how big the following reaction is. This gives you an indication on how deep you need to set your layers, and where you can take profit.
Using the strategy you have the backtester to see how much max deviation has been in the past so that you can figure out what the optimal max deviation is.
4. A set Take profit %, possibly making you miss out on higher profits(This is easy to change during a trade though), and no chance of selling in layers.
Not going to say to much about this other than what I often do is:
When a bot has started a trade I usually take a look at the chart. If I like what I see, nice chart history, success rate and trading of a strong previous base etc, with the current base break resulting in a panic drop I will consider increasing the TP so that it will make more profit. This can be a bit risky but also very rewarding. Imagine filling all safeties and then selling just below base! Massive profits!! (Gotta be honest though, almost never stretch it that far with a bot though, but it is a possibility) .
If you have studied the chart and concluded that this particular trade has a 90% chance of success, there isn’t really any reason not to place TP just below base. This is where I would like to have the option of layering my sell orders as well so its something im working on implementing.
Trailing is an option in 3commas, but it’s slow to place orders making you miss a selling opportunity when the coin makes a sudden spike up.
ABOUT THIS STRATEGY
In this strategy we can also reverse the strategy and go short. But i must warn you that that is alot riskier.
QFL is meant to be used on higher TF's like 1hr, 2hr and 4hr. But this strategy also work well on lower Timeframes.
The script also simulates DCA strategy with parameters used in 3commas DCA bots for futures trading.
Experiment with parameters to find your trading setup.
Beware how large your total leveraged position is and how far can market go before you get liquidated!
Do that with the help of futures liquidation calculators you can find online!
Included:
An internal average price and profit calculating, instead of TV`s native one, which is subject to severe slippage.
A graphic interface, so levels are clearly visible and back-test analyzing made easier.
Long & Short direction of the strategy.
Table display a summary of past trades
Vertical colored lines appear when the new maximum deviation from the original price has
been reached
All the trading happens with total account capital, and all order sizes inputs are expressed in percent.
How to use:
- Add the script to the current chart
- Open the strategy settings
-Tweak the settings to to your liking.
-Make a SIMPLE bot in 3commas and use the same settings as you did in tradingview if you only want the strategy to send signals to open a deal and let 3commas handle the rest.
If you check safety orders, Take profit deal stop and Stop loss. The strategy will send all the orders to 3 commas. If that’s what you want set TP in 3commas to 50% set number of safety orders to 0 and keep stop loss unchecked.
- Insert bot details using the deal start condition message found in your 3commas bot.
- When happy, right click on the "..." next to the strategy name, then "Add alert'".
- Under "Condition", on the second line, chose "Any alert () function call". Add the webhook from 3commas( 3commas.io ), give it a name, use {{strategy.order.alert_message}} as a placeholder message and "create".
In the future this signal might make it to the 3commas marketplace. You can then subscribe to that signal where I have cherrypicked coins based on thorough backtesting and optimization.
How to obtain access to the script: send me a private message in Tradingview
Ultimate Strategy Shell [ArtK]This strategy shell script accepts entry/exit signals from an external study indicator.
It is built to cover most common trade execution strategies such as, multiple take profit levels, break even, trailing stop loss, position reverse, laddering and more.
It also aims to provide extended trade statistics such as the actual (win/loss) figures for trades instead of figures for orders as TradingView provides in the Strategy Test Overview.
Features
- 3 Take Profit levels.
- 3 Take Profit target type options (Percentage, Risk Reward Ratio or (IN DEVELOP) Strategy).
- 2 Stop Loss type options (Percentage, Strategy).
- Break Even stoop loss (will move the Stop Loss to the entry price after the 1st or 2nd Take Profit).
- Trailing Stop Loss (will move the Stop Loss after the last Take Profit at specified deviation on every candle).
- Trades Summary Label
Shows the number of wins and losses in a row.
Shows the actual (win/loss) figures for trades instead of figures for orders as TradingView provides in the Strategy Test Overview.
Shows the period from the first trade until the last trade.
Shows how many times each Take Profit level was reached (IN DEVELOP).
(IN DEVELOP) Shows the maximum Stop Loss when using the Stop Loss – Strategy option (helpful when estimating Stop Losses when leveraging).
Plots marks at the bottom of the chart to indicate winning or losing trades (helps to quickly find losing trades for example).
- Entry Filters
-- Date Time, allows placing trades only during the specified period.
-- ADX, filters trades below specified ADX value.
-- Max Stop Loss, can be enabled when the Stop Loss type is set to "Strategy". Used to prevent taking trades which exceed liquidation price.
-- Direction, will filter trades in a certain direction.
Instruction
- The strategy script relies on an external indicator therefore it is required to add the signal indicator first.
- To adapt the signal indicator to be compatible it must have only one plot.
-- The default value of the plot should be 1 when there is no buy/sell signal.
-- When the signal indicator signals BUY the line should plot the value
-- When the signal indicator signals SELL the line should plot the value
-- (I am aiming to support EXIT signals as well as the Stop Loss and Take Profit percentages in the near future)
- The first time you load the script it will show an error "Study Error: Signal source set to default ". This means the signal indicator was not selected.
The signal indicator should be selected in the strategy configuration panel option "Signal Source"
Trading PanelWhen trading, position sizing and risk calculation is the key to become successful.
We need to keep the losses small and adjust the position size according to what
risk we are prepared to take for the planned Entry.
Based on the Account Size and the max percentage we want to risk for any trade,
we calculate, for a number of fixed max Loss percentages:
- The Position size, both in percent and in the selected currency.
- Number of shares to buy.
- Where to put the Stop Loss.
We also calculate the numbers based on the ATR times a multiple.
The values are presented in a table format and will hopefully aid in selecting
a suitable Stop Loss (based on the chart situation) and hence the proper Position Size.
We also allow for expressing the Account size in currencies other than USD.
Example:
Account Size in USD and trading US stocks: select USD
Account Size in SEK but trading US stocks: select USDSEK
Bollinger Bands Strategy with StopLossThis is the default Bollinger Bands Strategy with a small change to support Stop Loss.
The default built-int BBS does not support Stop Loss and using it may cause large losses, specially in margin trading.
Added inputs:
Source
Stop Loss Percentage
Multi-Market Swing Trader Webhook Ready [HullBuster]
Introduction
This is an all symbol swing trading strategy intended for webhook integration to live accounts. This script employs an adjustable bandwidth ping pong algorithm which can be run in long only, short only or bidirectional modes. Additionally, this script provides advanced features such as pyramiding and DCA. It has been in development for nearly three years and exposes over 90 inputs to accommodate varying risk reward ratios. Equipped with a proper configuration it is suitable for professional traders seeking quality trades from a cloud based platform. This is my most advanced Pine Script to date which combines my RangeV3 and TrendV2 scripts. Using this combination it tries to bridge the gap between range bound and trending markets. I have put a lot of time into creating a system that could transition by itself so as to require less human intervention and thus be able to withstand long periods in full automation mode.
As a Pine strategy, hypothetical performance can be easily back-tested. Allowing you to Iron out the configuration of your target instrument. Now with recent advancements from the Pine development team this same script can be connected to a webhook through the alert mechanism. The requirement of a separate study script has been completely removed. This really makes things a lot easier to get your trading system up and running. I would like to also mention that TradingView has made significant advancements to the back-end over the last year. Notably, compile times are much faster now permitting more complex algorithms to be implemented. Thank you TradingView!
I used QuantConnect as my role model and strived to produce a base script which could compete with higher end cloud based platforms while being attractive to similarly experienced traders. The versatility of the Pine Language combined with the greater selection of end point execution systems provides a powerful alternative to other cloud based platforms. At the very least, with the features available today, a modular trading system for everyday use is a reality. I hope you'll agree.
This is a swing trading strategy so the behavior of this script is to buy on weakness and sell on strength. In trading parlance this is referred to as Support and Resistance Trading. Support being the point at which prices stop falling and start rising. Resistance being the point at which prices stop rising and fall. The chart real estate between these two points being defined as the range. This script seeks to implement strategies to profit from placing trades within this region. Short positions at resistance and long positions at support. Just to be clear, the range as well as trends are merely illusions as the chart only receives prices. However, this script attempts to calculate pivot points from the price stream. Rising pivots are shorts and falling pivots are longs. I refer to pivots as a vertex in this script which adds structural components to the chart formation (point, sides and a base). When trading in “Ping Pong” mode long and short positions are interleaved continuously as long as there exists a detectable vertex.
This is a non-hedging script so those of us subject to NFA FIFO Rule 2-43(b) should be generally safe to webhook into signals emitted from this script. However, as covered later in this document, there are some technical limitations to this statement. I have tested this script on various instruments for over two years and have configurations for forex, crypto and stocks. This script along with my TrendV2 script are my daily trading vehicles as a webhook into my forex and crypto accounts. This script employs various high risk features that could wipe out your account if not used judiciously. You should absolutely not use this script if you are a beginner or looking for a get-rich-quick strategy. Also please see my CFTC RULE 4.41 disclosure statement at the end of the document. Really!
Does this script repaint? The short answer is yes, it does, despite my best efforts to the contrary. EMAs are central to my strategy and TradingView calculates from the beginning of the series so there is just no getting around this. However, Pine is improving everyday and I am hopeful that this issue will be address from an architectural level at some point in the future. I have programmed my webhook to compensate for this occurrence so, in the mean time, this my recommended way to handle it (at the endpoint and before the broker).
Design
This strategy uses a ping pong algorithm of my own design. Basically, trades bounce off each other along the price stream. Trades are produced as a series of reversals. The point at which a trade reverses is a pivot calculation. A measurement is made between the recent valley to peak which results in a standard deviation value. This value is an input to implied probability calculation.Yes, the same implied probability used in sports betting. Odds are then calculated to determine the likelihood of price action continuing or retracing to the pivot. Based on where the account is at alert time, the action could be an entry, take profit or pyramid signal. In this design, trades must occur in alternating sequence. A long followed by a short then another long followed by a short and so on. In range bound price action trades appear along the outer bands of the channel in the aforementioned sequence. Shorts on the top and longs at the bottom. Generally speaking, the widths of the trading bands can be adjusted using the vertex dynamics in Section 2. There are a dozen inputs in this section used to describe the trading range. It is not a simple adjustment. If pyramids are enabled the strategy overrides the ping pong reversal pattern and begins an accumulation sequence. In this case you will see a series of same direction trades.
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a C++ program on proprietary trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs play a key role in identifying the pivot points. I really like the Hull Moving Average. I use it in all my systems, including 3 other platforms. It’s is an excellent leading indicator and a relatively light calculation.
The trend detection algorithms rely on several factors:
1. Smoothed EMAs in a Willams Alligator pattern.
2. Number of pivots encountered in a particular direction.
3. Which side debt is being incurred.
4. Settings in Section 4 and 5 (long and short)
The strategy uses these factors to determine the probability of prices continuing in the most recent direction. My TrendV2 script uses a higher time frame to determine trend direction. I can’t use that method in this script without exceeding various TradingView limitations on code size. However, the higher time frame is the best way to know which trend is worth pursuing or better to bet against.
The entire script is around 2400 lines of Pine code which pushes the limits of what can be created on this platform given the TradingView maximums for: local scopes, run-time duration and compile time. The module has been through numerous refactoring passes and makes extensive use of ternary statements. As such, It takes a full minute to compile after adding it to a chart. Please wait for the hovering dots to disappear before attempting to bring up the input dialog box. Scrolling the chart quickly may bring up an hour glass.
Regardless of the market conditions: range or trend. The behavior of the script is governed entirely by the 91 inputs. Depending on the settings, bar interval and symbol, you can configure a system to trade in small ranges producing a thousand or more trades. If you prefer wider ranges with fewer trades then the vertex detection settings in Section 2 should employ stiffer values. To make the script more of a trend follower, adjustments are available in Section 4 and 5 (long and short respectively). Overall this script is a range trader and the setups want to get in that way. It cannot be made into a full blown trend trading system. My TrendV2 is equipped for that purpose. Conversely, this script cannot be effectively deployed as a scalper either. The vertex calculation require too much data for high frequency trading. That doesn’t work well for retail customers anyway. The script is designed to function in bar intervals between 5 minutes and 4 hours. However, larger intervals require more backtest data in order to create reliable configurations. TradingView paid plans (Pro) only provide 10K bars which may not be sufficient. Please keep that in mind.
The transition from swing trader to trend follower typically happens after a stop is hit. That means that your account experiences a loss first and usually with a pyramid stack so the loss could be significant. Even then the script continues to alternate trades long and short. The difference is that the strategy tries to be more long on rising prices and more short on falling prices as opposed to simply counter trend trading. Otherwise, a continuous period of rising prices results in a distinctly short pyramid stack. This is much different than my TrendV2 script which stays long on peaks and short on valleys. Basically, the plan is to be profitable in range bound markets and just lose less when a trend comes along. How well this actually plays out will depend largely on the choices made in the sectioned input parameters.
Sections
The input dialog for this script contains 91 inputs separated into six sections.
Section 1: Global settings for the strategy including calculation model, trading direction, exit levels, pyramid and DCA settings. This is where you specify your minimum profit and stop levels. You should setup your Properties tab inputs before working on any of the sections. It’s really important to get the Base Currency right before doing any work on the strategy inputs. It is important to understand that the “Minimum Profit” and “Limit Offset” are conditional exits. To exit at a profit, the specified value must be exceeded during positive price pressure. On the other hand, the “Stop Offset” is a hard limit.
Section 2: Vertex dynamics. The script is equipped with four types of pivot point indicators. Histogram, candle, fractal and transform. Despite how the chart visuals may seem. The chart only receives prices. It’s up to the strategy to interpret patterns from the number stream. The quality of the feed and the symbol’s bar characteristics vary greatly from instrument to instrument. Each indicator uses a fundamentally different pattern recognition algorithm. Use trial and error to determine the best fit for your configuration. After selecting an indicator type, there are eight analog fields that must be configured for that particular indicator. This is the hardest part of the configuration process. The values applied to these fields determine how the range will be measured. They have a big effect on the number of trades your system will generate. To see the vertices click on the “Show Markers” check box in this section. Red markers are long positions and blue markers are short. This will give you an idea of where trades will be placed in natural order.
Section 3: Event thresholds. Price spikes are used to enter and exit trades. The magnitude which define these spikes are configured here. The rise and fall events are primarily for pyramid placement. The rise and fall limits determine the exit threshold for the conditional “Limit Offset” field found in Section 1. These fields should be adjusted one at a time. Use a zero value to disengage every one but the one you are working on. Use the fill colors found in Section 6 to get a visual on the values applied to these fields. To make it harder for pyramids to enter stiffen the Event values. This is more of a hack as the formal pyramid parameters are in Section 1.
Section 4 and 5: Long and short settings. These are mirror opposite settings with all opposing fields having the same meaning. Its really easy to introduce data mining bias into your configuration through these fields. You must combat against this tendency by trying to keep your settings as uniform as possible. Wildly different parameters for long and short means you have probably fitted the chart. There are nine analog and thirteen Boolean fields per trade direction. This section is all about how the trades themselves will be placed along the range defined in Section 2. Generally speaking, more restrictive settings will result in less trades but higher quality. Remember that this strategy will enter long on falling prices and short on rising prices. So getting in the trade too early leads to a draw-down. However, this could be what you want if pyramiding is enabled. I, personally, have found that the best configurations come from slightly skewing one side. I just accept that the other side will be sub-par.
Section 6: Chart rendering. This section contains one analog and four Boolean fields. More or less a diagnostic tool. Of particular interest is the “Symbol Debt Sequence” field. This field contains a whole number which paints regions that have sustained a run of bad trades equal or greater than specified value. It is useful when DCA is enabled. In this script Dollar Cost Averaging on new positions continues only until the symbol debt is recouped. To get a better understanding on how this works put a number in this field and activate DCA. You should notice how the trade size increases in the colored regions. The “Summary Report” checkbox displays a blue information box at the live end of the chart. It exposes several metrics which you may find useful if manually trading this strategy from audible alerts or text messages.
Pyramids
This script features a downward pyramiding strategy which increases your position size on losing trades. On purely margin trades, this feature can be used to, hypothetically, increase the profit factor of positions (not individual trades). On long only markets, such as crypto, you can use this feature to accumulate coins at depressed prices. The way it works is the stop offset, applied in the Section 1 inputs, determines the maximum risk you intend to bear. Additional trades will be placed at pivot points calculated all the way down to the stop price. The size of each add on trade is increased by a multiple of its interval. The maximum number of intervals is limited by the “Pyramiding” field in the properties tab. The rate at which pyramid positions are created can be adjusted in Section 1. To see the pyramids click on the “Mark Pyramid Levels” check box in the same section. Blue triangles are painted below trades other than the primary.
Unlike traditional Martingale strategies, the result of your trade is not dependent on the profit or loss from the last trade. The position must recover the R1 point in order to close. Alternatively, you can set a “Pyramid Bale Out Offset” in Section 1 which will terminate the trade early. However, the bale out must coincide with a pivot point and result in a profitable exit in order to actually close the trade. Should the market price exceed the stop offset set in Section 1, the full value of the position, multiplied by the accepted leverage, will be realized as a loss to the trading account. A series of such losses will certainly wipe out your account.
Pyramiding is an advanced feature intended for professional traders with well funded accounts and an appropriate mindset. The availability of this feature is not intended to endorse or promote my use of it. Use at your own risk (peril).
DCA
In addition to pyramiding this script employs DCA which enables users to experiment with loss recovery techniques. This is another advanced feature which can increase the order size on new trades in response to stopped out or winning streak trades. The script keeps track of debt incurred from losing trades. When the debt is recovered the order size returns to the base amount specified in the properties tab. The inputs for this feature are found in section 3 and include a limiter to prevent your account from depleting capital during runaway markets. The main difference between DCA and pyramids is that this implementation of DCA applies to new trades while pyramids affect open positions. DCA is a popular feature in crypto trading but can leave you with large “bags” if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much experience.
To be sure pyramiding and dollar cost averaging is as close to gambling as you can get in respectable trading exchanges. However, if you are looking to compete in a spot trading contest or just want to add excitement to your trading life style those features could find a place in your strategies. Although your backtest may show spectacular gains don’t expect your live trading account to do the same. Every backtest has some measure of data mining bias. Please remember that.
Webhook Integration
The TradingView alerts dialog provides a way to connect your script to an external system which could actually execute your trade. This is a fantastic feature that enables you to separate the data feed and technical analysis from the execution and reporting systems. Using this feature it is possible to create a fully automated trading system entirely on the cloud. Of course, there is some work to get it all going in a reliable fashion. To that end this script has several things going for it. First off, it is a strategy type script. That means that the strategy place holders such as {{strategy.position_size}} can be embedded in the alert message text. There are more than 10 variables which can write internal script values into the message for delivery to the specified endpoint. Additionally, my scripts output the current win streak and debt loss counts in the {{strategy.order.alert_message}} field. Depending on the condition, this script will output other useful values in the JSON “comment” field of the alert message. Here is an excerpt of the fields I use in my webhook signal:
"broker_id": "kraken",
"account_id": "XXX XXXX XXXX XXXX",
"symbol_id": "XMRUSD",
"action": "{{strategy.order.action}}",
"strategy": "{{strategy.order.id}}",
"lots": "{{strategy.order.contracts}}",
"price": "{{strategy.order.price}}",
"comment": "{{strategy.order.alert_message}}",
"timestamp": "{{time}}"
Though TradingView does a great job in dispatching your alert this feature does come with a few idiosyncrasies. Namely, a single transaction call in your script may cause multiple transmissions to the endpoint. If you are using placeholders each message describes part of the transaction sequence. A good example is closing a pyramid stack. Although the script makes a single strategy.close() call, the endpoint actually receives a close message for each pyramid trade. The broker, on the other hand, only requires a single close. The incongruity of this situation is exacerbated by the possibility of messages being received out of sequence. Depending on the type of order designated in the message, a close or a reversal. This could have a disastrous effect on your live account. This broker simulator has no idea what is actually going on at your real account. Its just doing the job of running the simulation and sending out the computed results. If your TradingView simulation falls out of alignment with the actual trading account lots of really bad things could happen. Like your script thinks your are currently long but the account is actually short. Reversals from this point forward will always be wrong with no one the wiser. Human intervention will be required to restore congruence. But how does anyone find out this is occurring? In closed systems engineering this is known as entropy. In practice your webhook logic should be robust enough to detect these conditions. Be generous with the placeholder usage and give the webhook code plenty of information to compare states. Both issuer and receiver. Don’t blindly commit incoming signals without verifying system integrity.
Operation
This is a swing trading strategy so the fundamental behavior of this script is to buy on weakness and sell on strength. As such trade orders are placed in a counter direction to price pressure. What you will see on the chart is a short position on peaks and a long position on valleys. This is slightly misleading since a range as well as a trend are best recognized, in hindsight, after the patterns occur on the chart. In the middle of a trade, one never knows how deep valleys will drop or how high peaks will rise. For certain, long trades will continue to trigger as the market prices fall and short trades on rising prices. This means that the maximum efficiency of this strategy is achieved in choppy markets where the price doesn’t extend very far from its adjacent pivot point. Conversely, this strategy will be the least efficient when market conditions exhibit long continuous single direction price pressure. Especially, when measured in weeks. Translation, the trend is not your friend with this strategy. Internally, the script attempts to recognize prolonged price pressure and changes tactics accordingly. However, at best, the goal is to weather the trend until the range bound market returns. At worst, trend detection fails and pyramid trades continue to be placed until the limit specified in the Properties tab is reached. In all likelihood this could trigger a margin call and if it hits the stop it could wipe out your account.
This script has been in beta test four times since inception. During all that time no one has been successful in creating a configuration from scratch. Most people give up after an hour or so. To be perfectly honest, the configuration process is a bear. I know that but there is no way, currently, to create libraries in Pine. There is also no way specify input parameters other than the flattened out 2-D inputs dialog. And the publish rules clearly state that script variations addressing markets or symbols (suites) are not permitted. I suppose the problem is systemic to be-all-end-all solutions like my script is trying to be. I needed a cloud strategy for all the symbols that I trade and since Pine does not support library modules, include files or inter process communication this script and its unruly inputs are my weapon of choice in the war against the market forces. It takes me about six hours to configure a new symbol. Also not all the symbols I configure are equally successful. I should mention that I have a facsimile of this strategy written in another platform which allows me to run a backtest on 10 years of historical data. The results provide me a sanity check on the inputs I select on this platform.
My personal configurations use a 10 minute bar interval on forex instruments and 15 minutes on crypto. I try to align my TradingView scripts to employ standard intervals available from the broker so that I can backtest longer durations than those available on TradingView. For example, Bitcoin at 15 minute bars is downloadable from several sources. I really like the 10 minute bar. It provides lots of detectable patterns and is easy to store many years in an SQL database.
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configurations that I use for my own trading that I can share with you if you like. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
Step 1. Setup the Base currency and order size in the properties tab.
Step 2. Select the calculation presets in the Instrument Type field.
Step 3. Select “No Trade” in the Trading Mode field
Step 4. Select the Histogram indicator from Section 2. You will be experimenting with different ones so it doesn’t matter which one you try first.
Step 5. Turn on Show Markers in Section 2.
Step 6. Go to the chart and checkout where the markers show up. Blue is up and red is down. Long trades show up along the red markers and short trades on the blue.
Step 7. Make adjustments to “Base To Vertex” and “Vertex To Base” net change and ROC in Section 2. Use these fields to move the markers to where you want trades to be.
Step 8. Try a different indicator from Section 2 and repeat Step 7 until you find the best match for this instrument on this interval. This step is complete when the Vertex settings and indicator combination produce the most favorable results.
Step 9. Go to Section 4 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 5 and enable “Apply Blue Base To Base Margin”.
Step 11. Go to Section 2 and adjust “Minimum Base To Base Blue” and “Minimum Base To Base Red”. Observe the chart and note where the markers move relative to each other. Markers further apart will produce less trades but will reduce cutoffs in “Ping Pong” mode.
Step 12. Turn off Show Markers in Section 2.
Step 13. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Percentage is not currently supported. Note that the profit is taken as a conditional exit on a market order not a fixed limit. The actual profit taken will almost always be greater than the amount specified. The stop loss, on the other hand, is indeed a hard number which is executed by the TradingView broker simulator when the threshold is breached.
Step 14. Return to step 3 and select a Trading Mode (Long, Short, BiDir, Ping Pong). If you are planning to trade bidirectionally its best to configure long first then short. Combine them with “BiDir” or “Ping Pong” after setting up both sides of the trade individually. The difference between “BiDir” and “Ping Pong” is that “Ping Pong” uses position reversal and can cut off opposing trades less than the specified minimum profit. As a result “Ping Pong” mode produces the greatest number of trades.
Step 15. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 16. Make adjustments to the Vertex fields in Section 2 until the TradingView performance report is showing a profit. This includes the “Minimum Base To Base” fields. If a profit cannot be achieved move on to Step 17.
Step 17. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 4 and 5.
Step 18. Enable the “Mandatory Snap” checkbox in Section 4 and 5 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 19. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 4 and 5. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 20. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 4 and 5. This is an absolute value specified in the symbol’s quote currency (right side scale of the chart). This value is similar to the minimum profit and stop loss fields in Section 1.
Step 21. The “Buy Composite Strength” input works in tandem with “Long Decay Minimum Span” in Section 4. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Long Decay Minimum Span”.
Step 22. The “Sell Composite Weakness” input works in tandem with “Short Decay Minimum Span” in Section 5. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Short Decay Minimum Span”.
Step 23. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 4 and 5. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 24. At this point your strategy should be more or less working. Experiment with the remaining check boxes in Section 4 and 5. Keep the ones which seem to improve the performance.
Step 25. Examine the chart and see that trades are being placed in accordance with your desired trading goals. This is an important step. If your desired model requires multiple trades per day then you should be seeing hundreds of trades on the chart. Alternatively, you may be looking to trade fewer steep peaks and deep valleys in which case you should see trades at major turning points. Don’t simply settle for what the backtest serves you. Work your configuration until the system aligns with your desired model. Try changing indicators and even intervals if you cannot reach your simulation goals. Generally speaking, the histogram and Candle indicators produce the most trades. The Fractal indicator captures the tallest peaks and valleys. The Transform indicator is the most reliable but doesn’t well work on all instruments.
Example Settings
To reproduce the performance shown on the chart please use the following configuration:
1. Select XBTUSD Kraken as the chart symbol.
2. On the properties tab set the Order Size to: 0.01 Bitcoin
3. On the properties tab set the Pyramiding to: 10
4. In Section 1: Select “Forex” for the Instrument Type
5. In Section 1: Select “Ping Pong” for the Trading Mode
6. In Section 1: Input 1200 for the Minimum Profit
7. In Section 1: Input 15000 for the Stop Offset
8. In Section 1: Input 1200 for the Pyramid Minimum Span
9. In Section 1: Check mark the Ultra Wide Pyramids
10. In Section 2: Check mark the Use Transform Indicator
So to be clear, I used a base position size of one - one hundredth of a Bitcoin and allow the script to add up to 10 downward pyramids. The example back-test did hit eight downward pyramids. That means the account would have to be able to withstand a base position size (0.01) times 28. The resulting position size is 0.28 of a Bitcoin. If the price of Bitcoin is 35K then the draw down amount (not including broker fees) would be $9800 dollars. Since I have a premium subscription my backtest chart includes 20K historical bars. That's roughly six months of data. As of today, pro accounts only get 10K bars so the performance cannot be exactly matched with such a difference in historical data. Please keep that in mind.
There are, of course, various ways to reduce the risk incurred from accumulating pyramids. You can increase the “Pyramid Minimum Span” input found in Section 2 which increases the space between each pyramid trade. Also you can set a “Pyramid Bale Out Offset” in the same input section. This lets you out of the trade faster on position recovery. For example: Set a value of 8000 into this input and the number of trades increase to 178 from 157. Since the positions didn’t go full term, more trades were created at less profit each. The total brute force approach would be to simply limit the number of pyramids in the Properties tab.
It should be noted that since this is crypto, accumulating on the long side may be what you want. If you are not trading on margin and thus outright buying coins on the Kraken exchange you likely are interested in increasing your Bitcoin position at depressed prices. This is a popular feature on some of the other crypto trading packages like CryptoHopper and Profit Trailer. Click on Enable TV Long Only Rule in Section 1. This switches the signal emitter to long only. However, you may still see short trades on the chart. They are treated as a close instead of a reversal.
Feel free to PM me with any questions related to this script. Thank you and happy trading!
CFTC RULE 4.41
These results are based on simulated or hypothetical performance results that have certain inherent limitations. Unlike the results shown in an actual performance record, these results do not represent actual trading. Also, because these trades have not actually been executed, these results may have under-or over-compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated or hypothetical trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to these being shown.
supertrend with 2tp by AkHi traders
This strategy is based on two take profit targets and scaling out strategy. The entry rule is very simple. Whenever supertrend show long trade is taken and vice versa...and you have to use minimum 2 contract size
Take Profit and Stop Loss
The first take profit is set at 3 points above the long entry and the second take profit is set at 6 points above the long entry. Meanwhile, the stop loss is set at 3 points below the long entry....u can change points for profit and loss
Money Management
When the first take profit is achieved, half of the position is closed. The rest of the position is open to achieve either second take profit or stop loss.
There are three outcomes when using this strategy. Let's say you enter the trade with 200 lot size and you are risking 2% of your equity.
1. The first outcome is when the price hits stop loss, you lose the entire 2%.
2. The second outcome is when the price hits the first take profit and you close half of your position. Meaning that you have gained 1%. Then you let the trade running and eventually it hits stop loss. The total loss is 0% because the remaining lot size which is 200/2=100 times by 20pips is 1%. You have gained the earlier 1% and then loss 1%. At this point, you are at break even.
3. The third outcome is similar to the second out but instead of hiring stop loss, the trade is running to your favor and hits the second take profit.
Therefore, you gained 1% from the first take profit and you gained another 2% for the second take profit. Your total gained is 3%
Default Strategy Inputs (Forex / Crypto)The code in this post contains a set of default strategy inputs I use in new projects / backtests in Tradingview.
Full code commentary is available on the Backtest-Rookies website. To comply with house rules, I cannot post the direct link here.
Features
Trade Direction: So that you can limit the strategy for long only, short only or trade in both directions. It is important to note that when you select “Long Only”, you will still see Short signals on the chart. However, they are only used to close a position rather than reverse it. This is the default behaviour for strategies. The same applies to “Short Only”.
Date Ranges: So that you can isolate backtesting to specific periods of interest such as bull or bear markets.
Sessions: So you can easily get an idea of the expected results during your own session. You may also notice that performance of the strategy varies depending on which session it is deployed in.
Some example stop losses: It is not an exhaustive list but it should be enough to provide some inspiration for different types of stops that you can experiment with.
Happy Scripting. I hope the community finds it useful.
MTS📊 MTS (Murrey Math System) Trading Strategy for TradingView 📊
Introduction:
This script implements the Murrey Math System (MTS), a market analysis tool based on a set of pivot points and price ranges, designed to help traders identify key levels of support and resistance.
MTS calculates key price levels based on historical price swings and helps identify price targets, stop-loss levels, and potential breakout zones.
The strategy also includes an adaptive bias panel, showing buy or sell suggestions based on current price action relative to Murrey Math levels.
Key Components:
1. Pivot Calculation and Conditions:
Pivot Lookback & Spikeyness Index:
The pivots: lookback/forward input defines how far back (and forward) the script looks to identify potential pivot points (high and low). A smaller value focuses on more recent swings, while larger values consider a broader range.
The Spikeyness Index (atrMult) allows you to adjust sensitivity to market spikes, utilizing the Average True Range (ATR) to detect sharp price movements that could indicate potential turning points.
Pivot Conditions:
isPivHigh and isPivLow detect local high and low pivot points, respectively.
Spiky Conditions: The spikyH and spikyL conditions filter out pivots that do not meet the spikiness criteria, which is based on ATR and moving averages.
2. Swing High and Swing Low Identification:
The script identifies and stores previous swing highs (HR_prev) and lows (LR_prev), updating them based on the current market structure.
3. Proprietary Calculation:
The propCalc input enables a proprietary calculation method for determining higher or lower levels beyond the typical Murrey Math levels, offering a more adaptive approach to price targets and support/resistance levels.
4. Murrey Math Lines (MML):
MML Calculation:
The code calculates a set of Murrey Math Lines (EightEight, FourEight, ZeroEight), which are key price levels based on the range of the price over a given time period. These levels represent major support and resistance zones, with the EightEight line indicating extremely overbought conditions and ZeroEight signaling deeply oversold conditions.
Level and Extension Lines:
The script also plots additional levels and extensions based on the range between HR and LR, representing key support/resistance levels. These levels are dynamically drawn on the chart, offering clear insights into where price might reverse or break out.
Strategy Logic:
- Breakout and Breakdown:
The Bias Box panel dynamically displays a trade bias, either suggesting to "Buy on Dip" or "Sell on Rise," depending on whether the current price is above or below the midpoint of the Murrey Math range (BEP). This bias is calculated using the market's relationship to the Murrey Math Levels.
- Buy on Dip: When the price is below the midpoint (BEP), suggesting the market is in a buying zone.
- Sell on Rise: When the price is above the midpoint, suggesting the market is in a selling zone.
- Stop-Loss and Target Hints:
The stop-loss (SL) and target levels are dynamically set based on the position relative to HR and LR:
For Buy on Dip: SL is set at LR Low, Target is set at HR High.
For sell on Rise: SL is set at HR Low, Target is set at LR High.
2. Historical and Current Levels:
The script compares the most recent Murrey Math levels with historical levels. This helps identify any shifts or changes in the market structure, enhancing the trader's ability to adapt to new trends.
- Current Levels:
The current levels are drawn from the most recent HR and LR values, with corresponding extensions showing possible breakout or breakdown zones.
- Historical Levels:
Historical levels are drawn in a "ghost" style, helping traders visualize past market conditions and potential support/resistance zones that could still influence price movement.
- Trade Examples:
Example 1: Buy on Dip
a. Scenario:
Price is below the midpoint (BEP), and the bias suggests a buy on dip.
The trader looks for a rebound from the LR Low level, with a target at the HR High.
b. Entry:
Buy when the price reaches the LR Low level.
c. Exit:
Take profit when the price hits the HR High.
d. Stop-Loss:
Place stop-loss at the LR Low.
Example 2: Sell on Rise
a. Scenario:
Price is above the midpoint (BEP), and the bias suggests a sell on rise.
The trader looks for a pullback to the HR Low, with a target at the LR High.
b. Entry:
Sell when the price reaches the HR High level.
c. Exit:
Take profit when the price hits the LR Low.
d. Stop-Loss:
Place stop-loss at the HR Low.
Key Features:
Bias Panel: A table in the top-right corner showing the current market bias (Buy on Dip, Sell on Rise, or Neutral).
Displays real-time trade direction and risk information, such as stop-loss and target hints.
Dynamic Level Adjustment: As the price moves, the script dynamically updates the key levels (HR, LR, and Murrey Math lines), keeping traders aware of the most recent market structure.
Visualization Tools:
The chart is populated with a series of lines and labels that indicate the critical price levels for trading.
Support/Resistance Lines: Each key level is marked with different colors for quick recognition.
Extensions: Additional lines are plotted based on price projections, indicating where the market could potentially move.
Note:
Please note that this is an educational purpose idea, any action/trade taken will be user's own responsibility.
Enjoy!
Regards.
Reversal Trading Bot Strategy[BullByte]Overview :
The indicator Reversal Trading Bot Strategy is crafted to capture potential market reversal points by combining momentum, volatility, and trend alignment filters. It uses a blend of technical indicators to identify both bullish and bearish reversal setups, ensuring that multiple market conditions are met before entering a trade.
Core Components :
Technical Indicators Used :
RSI (Relative Strength Index) :
Purpose : Detects divergence conditions by comparing recent lows/highs in price with the RSI.
Parameter : Length of 8.
Bollinger Bands (BB) :
Purpose : Measures volatility and identifies price levels that are statistically extreme.
Parameter : Length of 20 and a 2-standard deviation multiplier.
ADX (Average Directional Index) & DMI (Directional Movement Index) :
Purpose : Quantifies the strength of the trend. The ADX threshold is set at 20, and additional filters check for the alignment of the directional indicators (DI+ and DI–).
ATR (Average True Range) :
Purpose : Provides a volatility measure used to set stop levels and determine risk through trailing stops.
Volume SMA (Simple Moving Average of Volume ):
Purpose : Helps confirm strength by comparing the current volume against a 20-period average, with an optional filter to ensure volume is at least twice the SMA.
User-Defined Toggle Filters :
Volume Filter : Confirms that the volume is above average (or twice the SMA) before taking trades.
ADX Trend Alignment Filter : Checks that the ADX’s directional indicators support the trade direction.
BB Close Confirmation : Optionally refines the entry by requiring price to be beyond the upper or lower Bollinger Band rather than just above or below.
RSI Divergence Exit : Allows the script to close positions if RSI divergence is detected.
BB Mean Reversion Exit : Closes positions if the price reverts to the Bollinger Bands’ middle line.
Risk/Reward Filter : Ensures that the potential reward is at least twice the risk by comparing the distance to the Bollinger Band with the ATR.
Candle Movement Filter : Optional filter to require a minimum percentage move in the candle to confirm momentum.
ADX Trend Exit : Closes positions if the ADX falls below the threshold and the directional indicators reverse.
Entry Conditions :
Bullish Entry :
RSI Divergence : Checks if the current close is lower than a previous low while the RSI is above the previous low, suggesting bullish divergence.
Bollinger Confirmation : Requires that the price is above the lower (or upper if confirmation is toggled) Bollinger Band.
Volume & Trend Filters : Combines volume condition, ADX strength, and an optional candle momentum condition.
Risk/Reward Check : Validates that the trade meets a favorable risk-to-reward ratio.
Bearish Entry :
Uses a mirror logic of the bullish entry by checking for bearish divergence, ensuring the price is below the appropriate Bollinger level, and confirming volume, trend strength, candle pattern, and risk/reward criteria.
Trade Execution and Exit Strateg y:
Trade Execution :
Upon meeting the entry conditions, the strategy initiates a long or short position.
Stop Loss & Trailing Stops :
A stop-loss is dynamically set using the ATR value, and trailing stops are implemented as a percentage of the close price.
Exit Conditions :
Additional exit filters can trigger early closures based on RSI divergence, mean reversion (via the middle Bollinger Band), or a weakening trend as signaled by ADX falling below its threshold.
This multi-layered exit strategy is designed to lock in gains or minimize losses if the market begins to reverse unexpectedly.
How the Strategy Works in Different Market Conditions :
Trending Markets :
The ADX filter ensures that trades are only taken when the trend is strong. When the market is trending, the directional movement indicators help confirm the momentum, making the reversal signal more reliable.
Ranging Markets :
In choppy markets, the Bollinger Bands expand and contract, while the RSI divergence can highlight potential turning points. The optional filters can be adjusted to avoid false signals in low-volume or low-volatility conditions.
Volatility Management :
With ATR-based stop-losses and a risk/reward filter, the strategy adapts to current market volatility, ensuring that risk is managed consistently.
Recommendation on using this Strategy with a Trading Bot :
This strategy is well-suited for high-frequency trading (HFT) due to its ability to quickly identify reversal setups and execute trades dynamically with automated stop-loss and trailing exits. By integrating this script with a TradingView webhook-based bot or an API-driven execution system, traders can automate trade entries and exits in real-time, reducing manual execution delays and capitalizing on fast market movements.
Disclaimer :
This script is provided for educational and informational purposes only. It is not intended as investment advice. Trading involves significant risk, and you should always conduct your own research and analysis before making any trading decisions. The author is not responsible for any losses incurred while using this script.
TradZoo - EMA Crossover IndicatorDescription:
This EMA Crossover Trading Strategy is designed to provide precise Buy and Sell signals with confirmation, defined targets, and stop-loss levels, ensuring strong risk management. Additionally, a 30-candle gap rule is implemented to avoid frequent signals and enhance trade accuracy.
📌 Strategy Logic
✅ Exponential Moving Averages (EMAs):
Uses EMA 50 & EMA 200 for trend direction.
Buy signals occur when price action confirms EMA crossovers.
✅ Entry Confirmation:
Buy Signal: Occurs when either the current or previous candle touches the 200 EMA, and the next candle closes above the previous candle’s close.
Sell Signal: Occurs when either the current or previous candle touches the 200 EMA, and the next candle closes below the previous candle’s close.
✅ 30-Candle Gap Rule:
Prevents frequent entries by ensuring at least 30 candles pass before the next trade.
Improves signal quality and prevents excessive trading.
🎯 Target & Stop-Loss Calculation
✅ Buy Position:
Target: 2X the difference between the last candle’s close and the lowest low of the last 2 candles.
Stop Loss: The lowest low of the last 2 candles.
✅ Sell Position:
Target: 2X the difference between the last candle’s close and the highest high of the last 2 candles.
Stop Loss: The highest high of the last 2 candles.
📊 Visual Features
✅ Buy & Sell Signals:
Green Upward Arrow → Buy Signal
Red Downward Arrow → Sell Signal
✅ Target Levels:
Green Dotted Line: Buy Target
Red Dotted Line: Sell Target
✅ Stop Loss Levels:
Dark Red Solid Line: Stop Loss for Buy/Sell
💡 How to Use
🔹 Ideal for trend-following traders using EMAs.
🔹 Works best in volatile & trending markets (avoid sideways ranges).
🔹 Can be combined with RSI, MACD, or price action levels for added confluence.
🔹 Recommended timeframes: 1M, 5M, 15m, 1H, 4H, Daily (for best results).
🚀 Try this strategy and enhance your trading decisions with structured risk management!
Sniper Trade Pro (ES 15-Min) - Topstep Optimized🔹 Overview
Sniper Trade Pro is an advanced algorithmic trading strategy designed specifically for E-mini S&P 500 (ES) Futures on the 15-minute timeframe. This strategy is optimized for Topstep 50K evaluations, incorporating strict risk management to comply with their max $1,000 daily loss limit while maintaining a high probability of success.
It uses a multi-confirmation approach, integrating:
✅ Money Flow Divergence (MFD) → To track liquidity imbalances and institutional accumulation/distribution.
✅ Trend Confirmation (EMA + VWAP) → To identify strong trend direction and avoid choppy markets.
✅ ADX Strength Filter → To ensure entries only occur in trending conditions, avoiding weak setups.
✅ Break-Even & Dynamic Stop-Losses → To reduce drawdowns and protect profits dynamically.
This script automatically generates Buy and Sell signals and provides built-in risk management for automated trading execution through TradingView Webhooks.
🔹 How Does This Strategy Work?
📌 1. Trend Confirmation (EMA + VWAP)
The strategy uses:
✔ 9-EMA & 21-EMA: Fast-moving averages to detect short-term momentum.
✔ VWAP (Volume-Weighted Average Price): Ensures trades align with institutional volume flow.
How it works:
Bullish Condition: 9-EMA above 21-EMA AND price above VWAP → Confirms buy trend.
Bearish Condition: 9-EMA below 21-EMA AND price below VWAP → Confirms sell trend.
📌 2. Liquidity & Money Flow Divergence (MFD)
This indicator measures liquidity shifts by tracking momentum changes in price and volume.
✔ MFD Calculation:
Uses Exponential Moving Average (EMA) of Momentum (MOM) to detect changes in buying/selling pressure.
If MFD is above its moving average, it signals liquidity inflows → bullish strength.
If MFD is below its moving average, it signals liquidity outflows → bearish weakness.
Why is this important?
Detects when Smart Money is accumulating or distributing before major moves.
Filters out false breakouts by confirming momentum strength before entry.
📌 3. Trade Entry Triggers (Candlestick Patterns & ADX Filter)
To avoid random entries, the strategy waits for specific candlestick confirmations with ADX trend strength:
✔ Bullish Entry (Buy Signal) → Requires:
Bullish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD above its moving average (Liquidity inflows)
9-EMA > 21-EMA & price above VWAP (Trend confirmation)
✔ Bearish Entry (Sell Signal) → Requires:
Bearish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD below its moving average (Liquidity outflows)
9-EMA < 21-EMA & price below VWAP (Trend confirmation)
📌 4. Risk Management & Profit Protection
This strategy is built with strict risk management to maintain low drawdowns and maximize profits:
✔ Dynamic Position Sizing → Automatically adjusts trade size to risk a fixed $400 per trade.
✔ Adaptive Stop-Losses → Uses ATR-based stop-loss (0.8x ATR) to adapt to market volatility.
✔ Take-Profit Targets → Fixed at 2x ATR for a Risk:Reward ratio of 2:1.
✔ Break-Even Protection → Moves stop-loss to entry once price moves 1x ATR in profit, locking in gains.
✔ Max Daily Loss Limit (-$1,000) → Stops trading if total losses exceed $1,000, complying with Topstep rules.
FVG Breakout Lite by tradingbauhausExplanation of "FVG Breakout Lite by tradingbauhaus"
This script is a trading strategy built for TradingView that helps you spot and trade "Fair Value Gaps" (FVGs)—price areas where the market moved quickly, leaving a gap that might act as support or resistance later. It’s designed to catch breakout opportunities when the price moves strongly in one direction, with extra filters to make trades more reliable. Here’s how it works and how you can use it:
What It Does
1. Finds Fair Value Gaps (FVGs):
A "Bullish FVG" happens when the price jumps up quickly, leaving a gap below where it didn’t trade much (e.g., today’s low is higher than the high from two bars ago).
A "Bearish FVG" is the opposite: the price drops fast, leaving a gap above (e.g., today’s high is lower than the low from two bars ago).
The script draws colored boxes on your chart to show these gaps: green for bullish, red for bearish.
2. Spots Breakouts:
It looks for "strong" FVGs by comparing them to a trend (based on the highest highs and lowest lows over a set period).
If a bullish gap forms above the recent highs, or a bearish gap below the recent lows, it’s marked as a breakout opportunity.
3. Adds a Volume Check:
Trades only happen if the market’s volume is higher than usual (e.g., 1.2x the average volume over the last 20 bars). This helps ensure the breakout has real momentum behind it.
4. Trades Automatically:
Long Trades (Buy): If a bullish breakout FVG forms and volume is high, it buys at the current price.
Short Trades (Sell): If a bearish breakout FVG forms with high volume, it sells short.
Each trade comes with a stop loss (to limit losses) and a take profit (to lock in gains), both adjustable by you.
5. Shows Mitigation Lines (Optional):
If you turn on "Display Mitigation Zones," it draws lines at the edge of each breakout FVG. These lines show where the price might return to "fill" the gap later, helping you see key levels.
6. Includes Webull Costs:
The script factors in real trading fees from Webull, like tiny SEC and FINRA fees for selling, and a daily margin cost if you’re borrowing money to trade. These don’t show up on the chart but affect the strategy’s performance in backtesting.
How to Use It
1. Add to Your Chart:
Copy the script into TradingView’s Pine Editor, click "Add to Chart," and it’ll start drawing FVGs and running the strategy.
2. Customize Settings:
Trend Period (Default: 25): How many bars it looks back to define the trend. Longer periods mean fewer but stronger signals.
Volume Lookback (Default: 20) & Volume Threshold (Default: 1.2): Adjust how it measures "high volume." Increase the threshold for stricter trades.
Stop Loss % (Default: 1.5%) & Take Profit % (Default: 3%): Set how much you’re willing to lose or aim to gain per trade.
Margin Rate % (Default: 8.74%): Webull’s rate for borrowing money—lower it if your account qualifies for a better rate.
Display Mitigation Zones (Default: On): Toggle this to see or hide the gap lines.
Colors: Change the green (bullish) and red (bearish) shades to suit your chart.
3. Backtest It:
Go to the "Strategy Tester" tab in TradingView to see how it performs on past data. It’ll show trades, profits, losses, and Webull fees included.
4. Watch It Work:
Green boxes mean bullish FVGs; red boxes mean bearish FVGs. If volume spikes and the price breaks out, you’ll see trades happen automatically.
What to Expect
Visuals: You’ll see colored boxes for FVGs and optional lines showing where they start. These help you spot key price zones even if you’re not trading.
Trades: It’s selective—only trades when FVGs align with a breakout and volume confirms it. Expect fewer trades but with higher potential.
Risk: The stop loss keeps losses in check, while the take profit aims for a 2:1 reward-to-risk ratio by default (3% gain vs. 1.5% loss).
Costs: Webull’s fees are small but baked into the results, so you’re seeing a realistic picture of profits.
Tips for Users
Test it on a small timeframe (like 5-minute charts) for day trading or a larger one (like daily) for swing trading.
Play with the volume threshold—if you get too few trades, lower it (e.g., 1.1); if too many, raise it (e.g., 1.5).
Watch how price reacts to the mitigation lines—they’re often support or resistance zones traders target.
This strategy is lightweight, focused, and built for traders who like breakouts with a bit of confirmation. It’s not foolproof (no strategy is!), but it gives you a clear way to trade FVGs with some smart filters.
IronBot v4IronBot v4 – Trading Strategy Overview
1. Quick Context
IronBot v4 is a trading strategy designed for users who want a simple yet effective approach to reading the markets. It uses a combination of Fibonacci retracement levels, custom logic triggers, and innovative modules (EMA validation, Iron Impulse Shield and Iron Auto Volume Detector) to identify potential entry and exit points, strengthening the strategy’s detection of sudden market volatility or shifts in trading volume.
2. Theoretical Details
Fibonacci Analysis
The script identifies recent market highs and lows, then calculates key Fibonacci levels (high- and low-based). These levels can help confirm potential reversals or trends.
EMA Option
When enabled, the exponential moving average (EMA) offers additional validation for trade entries. If the current price remains above a certain EMA threshold, long positions may be favored; conversely, if it stays below the EMA, short positions may be initiated.
IIS (Iron Impulse Shield)
IIS helps to filter out risky trades by measuring recent price shocks or surges. If an extreme movement is detected, the strategy may temporarily disable longs or shorts to avoid false signals.
IAVD (Iron Auto Volume Detector)
This functionality automatically detects the average market volume over a defined period (regardless of the market, since it relies on real data). When entering a position, it ensures that overall volume is high enough to confirm a genuinely active, robust market. By providing an additional filter, it can strengthen the decision-making process whenever the market’s participation level is in question.
Panel
IronBot v4 displays a real-time backtest panel that summarizes the selected configuration (including the current pair, analysis window, enabled filters), as well as showing net profit, applicable exchange fees, country taxes, and the final net balance. This gives traders an immediate overview of strategy performance and risk metrics.
What Pinescript Adds Visually
The script plots:
Fibonacci levels (highlighting potential reversal zones)
Trend lines indicating bullish (green) or bearish (red) lean
Optional EMA line
Optional Fibonacci forecast lines for anticipating future moves
Automatic labeling of entry, take-profit, and stop-loss levels, indicating the profit percentage of each trade.
3. Explanation of Inputs
The strategy exposes multiple inputs that can be toggled or configured by the user:
Analysis Window : Dictates how many bars to consider for high/low calculations and the fib retracement thresholds.
TRADES
Display TP/SL: For displaying Take profits and Stop loss.
Display Forecast: When enabled, this feature calculates and projects possible future Fibonacci retracements using historical data, helping traders anticipate potential upcoming trade setups.
Leverage: Only used for the Panel and not for trades. Lets you amplify your position size; higher leverage increases potential gains but also heightens risk. TradingView strategy is using properties for doing this.
Exchange Maker Fees & Exchange Taker Fees: Only used for the Panel and not for trades. Define the percentage cost applied by your exchange for maker and taker trades, respectively. These fees are accounted for in final profit calculations of the Panel.
Country Tax: Only used for the Panel and not for trades. Specifies a tax percentage to be deducted from net profits.
STOP LOSS and TAKE PROFITS
Stop-Loss & Take-Profit Parameters: Controls the percentage distances at which the strategy will exit positions. Additionally, you can configure up to four distinct take-profit levels (TP1 through TP4). Each level should be higher target than the previous one, and you can assign a specific percentage of the total position to close at each TP, ensuring the sum equals 100%. A break-even feature is also available when multiple TPs are used.
EMA
EMA (Exponential Moving Average) Option: When enabled, the strategy opens long trades only if the current price is above the specified EMA length, and opens short trades only if it is below that threshold.
PANELS
Show Panel: For displaying the backtest integrated panel.
IRON IMPULSE SHIELD (IIS)
IIS (Iron Impulse Shield) Option: When enabled, IIS continuously monitors recent price volatility depending on the analysis window set. If the market experiences an extreme surge or drop beyond a specified threshold, IIS temporarily blocks new long or short positions.
IRON AUTO VOLUME DETECTOR (IAVD)
IAVD (Iron Auto Volume Detector) Option: When enabled, it continuously measures the average market volume over a special period, irrespective of the specific trading pair. This ensures that IronBot v4 focuses on markets with robust participation, reducing the likelihood of entering trades during low-liquidity conditions.
By changing these values, IronBot v4 reacts differently to market structure and risk management requirements. Stop-loss and take-profit levels will adjust accordingly, while advanced filters (like EMA or IIS) influence when trades can open.
4. TradingView Strategy Properties
IronBot v4 uses the built-in TradingView “strategy” functionality. In particular:
Order Placement: The code calls strategy.entry() and strategy.close() for direct orders, ensuring signals are sent immediately (no limit orders are used). This helps connect with exchange signal bots for automated execution.
Initial Capital: The code uses initial capital defined in properties for calculating Net balance in the integrated panel.
On bar close: This strategy fill orders on bar close.
Pyramiding: This strategy can take only 1 successive trade in the same direction
Be careful to configure your leverage input depending on your strategy properties.
5. Visualization
5. Purpose & Disclaimer
This script is for educational purposes only and does not constitute financial advice. Past performance does not guarantee future results. Always confirm your own risk tolerance and consult a financial professional before placing live trades. Trading leveraged products can involve substantial risk of loss.