Liquidity Trading Algorithm (LTA)
The Liquidity Trading Algorithm is an algorithm designed to provide trade signals based on
liquidity conditions in the market. The underlying algorithm is based on the Liquidity
Dependent Price Movement (LDPM) metric and the Liquidity Dependent Price Stability (LDPS)
algorithm.
Together, LDPM and LDPS demonstrate statistically significant forecasting capabilities for price-
action on equities, cryptocurrencies, and futures. LTA takes these liquidity measurements and
translates them into actionable insights by way of entering or exiting a position based
on the future outlooks, as measured by the current liquidity status.
The benefit of LTA is that it can incorporate these powerful liquidity measurements into
actionable insights with several features designed to help you tailor LTA's behavior and
measurements to your desired vantage point. These customizable features come by the way of determining LTA's assessment style, and additional monitoring systems for avoiding bear and bull traps, along with various other quality of life features, discussed in more detail below.
First, a few quick facts:
- LTA is compatible on a wide array of instruments, including Equities, Futures, Cryptocurrencies, and Forex.
- LTA is compatible on most intervals in so long as the data can be calculated appropriately,
(be sure to do a backtest on timescales less than 1-minue to ensure the data can be computed).
- LTA only measures liquidity at the end of the interval of the chart chosen, and does not respond to conditions during the candle interval, unless specified (such as with `Stops`).
- LTA is interval-dependent, this means it will measure and behave differently on different
intervals as the underlying algorithms are dependent on the interval chosen.
- LTA can utilize fractional share sizing for cryptocurrencies.
- LTA can be restricted to either bullish or bearish indications.
- Additional Monitoring Systems are available for additional risk mitigation.
In short, LTA is a widely applicable, unique algorithm designed to translate liquidity measurements into liquidity insights.
Before getting more into the details, here is a quick list of the main features and settings
available for customization:
- Backtesting Start Date: Manual selection of the start date for the algorithm during backtesting.
- Assessment Style: adjust how LDPM and LDPS measure and respond to changes in liquidity.
- Impose Wait: force LTA to wait before entering or exiting a position to ensure conditions have remained conducive.
- Trade Direction Allowance: Restrict LTA to only long or only short, if desired.
- Position Sizing Method: determine how LTA calculates position sizing.
- Fractional Share Sizing: allow LTA to calculate fractional share sizes for cryptocurrencies
- Max Size Limit: Impose a maximum size on LTA's positions.
- Initial Capital: Indicate how much capital LTA should stat with.
- Portfolio Allotment: Indicate to LTA how much (in percentages) of the available balance should be considered when calculating position size.
- Enact Additional Monitoring Systems: Indicate if LTA should impose additional safety criteria when monitoring liquidity.
- Configure Take Profit, Stop-Loss, Trailing Stop Loss
- Display Information tables on the current position, overall strategy performance, along
with a text output showing LTA's processes.
- Real-time text output and updates on LTA's inner workings.
Let's get into some more of the details.
LTA's Assessment Style
LTA's assessment style determines how LTA collects and responds to changing data. In traditional terms, this is akin to (but not quite exactly the same as) the sensitivity versus specificity spectrum, whereby on one end (the sensitive end), an algorithm responds to changes in data in a reactive manner (which tends to lower its specificity, or how often it is correct in its indications), and on the other end, the opposite one, the algorithm foresakes quick changes for longevity of outlook.
While this is in part true, it is not a full view of the underlying mechanisms that changing the assessment style augments. A better analogy would be that the sensitive end of the spectrum (`Aggressive`) is in a state such that the algorithm wants to changing its outlooks, and as such, with changes in data, the algorithm has to be convinced as to why that is not a good idea to change outlooks, whereas the the more specific states (`Conservative`, `Diamond`) must be convinced that their view is no longer valid and that it needs to be changed.
This means the `Aggressive` and the `Diamond` settings fundamentally differ not just in their
data collection, but also in the data processing such that the `Aggressive` decision tree has to
be convinced that the data is the same (as its defualt is that it has changed),
and the `Diamond` decision tree has to be convinced that the data is not the same, and as such, the outlook need changed.
From there, the algorithm cooks through the data and determines to what the outlook should be changed to, given the current state of liquidity.
`Balanced` lies in the middle of this balance, attempting to balance being open to new ideas while not removing the wisdom of the past, as it were.
On a scale of most `sensitive` to most `specific`, it is as follows: `Aggressive`, `Balanced`,
`Conservative`, `Diamond`.
Functionally, these different modes can help in different liquidity environments, as certain
environments are more conducive to an eager approach (such as found near `Aggressive`) or are more conducive to a more conservative approach, where sudden changes in liquidity are known to be short-lived and unremarkable (such as many previously identified bull or bear traps).
For instance, on low interval views, it can often-times be beneficial to keep the algorithm towards the `Sensitive` end, since on the lower-timeframes, the crosswinds can change quite dramatically; whereas on the longer intervals, it may be useful to maintain a more `Specific` algorithm (such as found near `Diamond` mode) setting since longer intervals typically lend themselves to longer time-horizons, which themselves typically lend themselves to "weathering the storm", as it were.
LTA's Assessment Style is also supported by the Additional Monitoring Systems which works
to add sensitivity without sacrificing specificity by enacting a separate monitoring system, as described below.
Additional Monitoring Systems
The Additional Monitoring System (AMS) attempts to add more context to any changes in liquidity conditions as measured, such that LTA as a whole will have an expanded view into any rapidly changing liquidity conditions before these changes manifest in the traditional data streams. The ideal is that this allows for early exits or early entrances to positions "a head of time".
The traditional use of this system is to indicate when liquidity is suggestive of the end of a particular run (be it a bear run or a bull run), so an early exit can be initiated (and thus,
downside averted) even before the data officially showcase such changes. In such cases (when AMS becomes activated), the algorithm will signal to exit any open positions, and will restrict the opening of any new positions.
When a position is exited because of AMS, it is denoted as an `Early Exit` and if a position is prevented from being entered, the text output will display `AM prevented entry...` to indicate that conditions are not meeting AMS' additional standards.
The algorithm will wait to make any actions while `AMS` is `active` and will only enter into a new position once `AMS` has been `deactivated` and overall liquidity conditions are appropriate.
Functionally, the benefits of AMS translate to:
- Toggeling AMS on will typically see a net reduction in overall profitability, but
- AMS will typically (almost always) reduce max drawdown,
an increases in max runup, and increase return-over-maxdrawdown, and
- AMS can provide benefit for equities that experience a lot of "traps" by navigating early
entrance and early exits.
So in short, AMS is way of adding an additional level of liquidity monitoring that attempts to
exit positions if conditions look to be deteriorating, and to enter conditions if they look to be
improving. The cost of this additional monitoring, however, is a greater number of trades indicated, and a lower overall profitability.
Impose Wait
Note: `Impose Wait` will not force Take Profit, Stop Loss, or Trailing Stop Loss to
wait.
LTA can be indicated to `wait` before entering or exiting a position if desired. This means that if conditions change, whereas without a `wait` imposed, the algorithm would immediately indicate this change via a signal to alter the strategy's position, with a `wait` imposed, the algorithm will `wait` the indicated number of bars, and then re-check conditions before proceeding.
If, while waiting, conditions change to a state that is no longer compatible with the "order-in-
waiting", then the order-in-waiting is removed, and the counts reset (i.e.: conditions must remain favorable to the intended positional change throughout the wait period).
Since LTA works at the end-of-intervals, there is an inherently "built-in" wait of 1 bar when
switching directly from long to short (i.e.: if a full switch is indicated, then it is indicated as
conditions change -> exit new position -> wait until -> check conditions ->
enter new position as indicated). Thus, to impose a wait of `1 bar` would be to effectively have a total of two candles' ends prior to the entrance of the new position).
There are two main styles of `Impose Wait` that you can utilize:
- `Wait` : this mode will cause LTA to `wait` when both entering and exiting a position (in so long as it is not an exit signaled via a Take Profit, Stop Loss or Trailing Stop Loss).
- `Exit-Wait` : This mode will >not< cause LTA to `wait` if conditions require the closing of a position, but will force LTA to wait before entering into a position.
Position:
In addition to the availability to restrict LTA to either a long-only or short-only strategy, LTA
also comprises additional flexibility when deciding on how it should navigate the markets with
regards to sizing. Notably, this flexibility benefits several aspects of LTA's existence, namely the ability to determine the `Sizing Method`, or if `Fractional Share Sizing` should be employed, and more, as discussed below.
Position Sizing Method
There are two main ways LTA can determine the size of a position. Either via the `Fixed-Share` choice, or the `Fixed-Percentage` choice.
- `Fixed-Share` will use the amount indicated in the `Max Sizing Limit` field as the position size, always.
Note: With `Fixed-Share` sizing, LTA will >not< check if the balance is sufficient
prior to signaling an entrance.
- `Fixed-Percentage` will use the percentage amount indicated in the `Portfolio Allotment` field as the percentage of available funds to use when calculating the position size. Additionally, with the `Fixed-Percentage` choice, you can set the `Max Sizing Limit` if desired, which will ensure that no position will be entered greater than the amount indicated in the field.
Fractional Share Sizing
If the underlying instrument supports it (typically only cryptocurrencies), share sizing can be
fractionalized. If this is done, the resulting positin size is rounded to `4 digits`. This means any
position with a size less than `0.00005` will be rounded to `0.0000`
Note: Ensure that the underlying instrument supports fractional share sizing prior
to initiating.
Max Sizing Limit
As discussed above, the `Max Sizing Limit` will determine:
- The position size for every position, if `Sizing Method : Fixed-Share` is utilized, or
- The maximum allowed size, regardless of available capital, if `Sizing Method : Fixed-Percentage` is utilized.
Note: There is an internal maximum of 100,000 units.
Initial Capital
Note: There are 2 `Initial Capital` settings; one in LTA's settings and one in the
`Properties` tab. Ensure these two are the same when doing backtesting.
The initial capital field will be used to determine the starting balanace of the strategy, and
is used to calculate the internal data reporting (the data tables).
Portfolio Allotment
You can specify how much of the total available balance should be used when calculating the share size. The default is 100%.
Stops
Note: Stops over-ride `AMS` and `Impose Wait`, and are not restricted to only the
end-of-candle and will occur instantaneously upon their activation. Neither `AMS` nor `Impose Wait` can over-ride a signal from a `Take-Profit`, `Stop-Loss`, or a `Trailing-Stop Loss`.
LTA enhouses three stops that can be configured, a `Take-Profit`, a `Stop-Loss` and a `Trailing-Stop Loss`. The configurations can be set in the settings in percent terms. These exit signals will always over-ride AMS or any other restrictions on position exit.
Their configuration is rather standard; set the percentages you want the signal to be sent at and so it will be done.
Some quick notes on the `Trailing-Stop Loss`:
- The activation percentage must be reached (in profits) prior to the `Traililng-Stop Loss`
from activating the downside protection. For example, if the `Activation Percentage` is 10%, then unless the position reaches (at any point) a 10% profit, then it will not signal any exits on the downside, should it occur.
- The downside price-point is continuously updated and is calculated from the maximum profit reached in the given position and the loss percentage placed in the appropriate field.
Data Tables and Data Output
LTA provides real-time data output through a variety of mechanisms:
- `Position Table`
The `Position Table` displays information about the current position, including:
> Position Duration : how long the position has been open for.
> Indicates if the side is Long or Short, depending on if it is long or short.
> Entry Price: the price the position was entered at.
> Current Price (% Dif): the current price of the underlying and the %-difference between the entry price and the current price.
> Max Profit ($/%): the maximum profit reached in $ and % terms.
> Current PnL ($/%) : the current PnL for the open position.
- `Performance Table`
The `Performance Table` displays information regarding the overall performance of the algorithm since its `Start Date`. These data include:
> Initial Equity ($): The initial equity the algorithm started with.
> Current Equity ($): The current total equity of the account (including open positions)
> Net Profits ($|%) : The overall net profit in $ and % terms.
> Long / Short Trade Counts: The respective trade counts for the positions entered.
> Total Closed Trades: The running sum of the number of trades closed.
> Profitability: The calculation of the number of profitable trades over the total number of
trades.
> Avg. Profit / Trade: The calculation of the average profit per trade in both $ and % terms.
> Avg. Loss / Trade: The calculation of the average loss per trade in both $ and % terms.
> Max Run-Up: The maximum run-up the algorithm has seen in both $ and % terms.
> Max Drawdown: The maximum draw-down the algorithm has seen in both $ and % terms.
> Return-Over-Max-Drawdown: the ratio of the maximum drawdown against the current net profits.
- `Text Output`
LTA will output, if desired, signals to the text output field every time it analysis or performs and action. These messages can include information such as:
"
08:00:00 >> AM Protocol activated ... exiting position ...
08:00:00 >> Exit Order Created for qty: 2, profit: 380 (4.34%)
...
09:30:00 >> Checking conditions ...
09:30:00 >> AM protocol prevented entry ... waiting ...
"
This way, you can keep an eye out on what is happening "under the hood", as it were.
LTA will produce a message at the end of its assessment at the end of each candle interval, as well as when a position is exited due to a `Stop` or due to `AMS` being activated.
Additionally, the `Text Output` includes a initial message, but for space-constraints, this
can be toggled off with the `Blank Text Output` option within LTA's configurations.
For additional information, please refer to the Author's Instructions below.
Pesquisar nos scripts por "profit"
Uhl MA System - Strategy AnalysisThe Uhl MA crossover system was specifically designed to provide an adaptive MA crossover system that didn't committed the same errors of more classical MA systems. This crossover system is based on a fast and a slow moving average, with the slow moving average being the corrected moving average (CMA) originally proposed by Andreas Uhl, and the fast moving average being the corrected trend step (CTS) which is also based on the corrected moving average design.
For more information see :
In this post, the performances of this system are analyzed on various markets.
Setup And Rules
The analysis is solely based on the indicator signals, therefore no spread is applied. Constant position sizing is used. The strategy will be backtested on the 15 minute time-frame. The mult setting is discarded, the default setting used for length is 100.
Here are the rules of our strategy :
long: CTS crossover CMA
short: CTS crossunder CMA
Results And Data
EURUSD:
Net Profit: $ 0.08
Total number of trades: 99
Profitability: 35.35 %
Profit Factor: 1.834
Max Drawdown: $ 0.01
EURUSD behaved pretty well, and was most of time showing long term trends without exhibiting particularly tricky structures, the moving averages still did cross during ranging phases, since march 9 we can see a downtrend with more pronounced cyclical variations (retracements) that could potentially lead to loosing trades.
BTCUSD:
Net Profit: $ 4371.57
Total number of trades: 94
Profitability: 32.98 %
Profit Factor: 1.749
Max Drawdown: $ 1409.96
The strategy didn't started well, producing its largest drawdown after only a few trades, the strategy still managed to recover. BTCUSD exhibited a strong downtrend, the strategy profited from that to recover, signals still occurred on ranging phases, and where mostly caused by a short term volatile move, unfortunately the CMA can converge toward ranging/flat price zones where false signals might occur at higher frequency.
AMD:
Net Profit: $ 16.09
Total number of trades: 95
Profitability: 29.47 %
Profit Factor: 1.288
Max Drawdown: $ 20.11
On AMD the strategy started relatively well with a raising balance, then the balance quickly fallen, this downtrend in the balance lasted quite some time (almost 48 trades), the strategy finally recovered in Nov 2019 and the balance made a new highest high at the end of February. AMD had numerous trends during the backtesting period, yet results are poor.
AAPL:
Net Profit: $ -28.17
Total number of trades: 89
Profitability: 28.09 %
Profit Factor: 0.894
Max Drawdown: $ 63.21
AAPL show the poorest results so far, with a stationary balance around the initial capital (in short the evolution of the balance is not showing any particular trend and oscillate around the initial capital value).
AAPL had some significant retracements in its up-trend, which triggered some trades (of course), and the ranging period from Jan 24 to Feb 13 heavily damaged the strategy performance, generating 6 significant loosing trades. AAPL show the worst results so far, mostly due by ranging phases.
Conclusions
The Uhl MA crossover system strategy has been tested and based on the results don't show particularly interesting performances, and might even be outperformed by simpler MA systems that prove to be more robust against ranging markets. The total number of executed trades are on average 94, and the profitability is on average 31%. The strategy might prove more interesting if we can correct the behavior of the CMA, who sometimes converged toward ranging/flat markets.
Destroyer LifeDestroyer Life Strategy - High-Frequency Long & Short Trading
Overview:
The Destroyer Life strategy is an advanced cryptocurrency trading algorithm designed for high-frequency execution on the 15-second timeframe. It combines CRT (Candle Range Trend) and Turtle Soup trading logic with multi-timeframe analysis to optimize entries and exits for both long and short trades. This strategy is specifically optimized for high-volatility crypto pairs, such as SOL/USD on MEXC, ensuring precise execution with minimal drawdown.
Key Features:
15-Second Timeframe Execution: Optimized for ultra-short-term trading.
Long & Short Strategy: Simultaneously identifies profitable buy and sell opportunities.
CRT & Turtle Soup Logic: Leverages price action patterns for enhanced trade accuracy.
Higher Timeframe Analysis (HTF): Incorporates liquidity zones, fair value gaps (FVG), and breaker blocks for context-aware trading.
Dynamic Position Sizing: Uses an adjustable leverage multiplier for risk-controlled trade sizing.
Commission Optimization: Ensures profitability even with trading fees.
Strict Risk Management: Implements exit conditions based on liquidity structure and trend reversals.
Strategy Performance (Backtested on SOL/USD - MEXC):
Overall Profitability: ~80% win rate in backtesting.
Net Profit: $3,151.12 (6.30% ROI).
Gross Profit: $3,795.68 (7.59%).
Gross Loss: $644.56 (1.29%).
Long Trades Profit: $1,459.05 (2.92%).
Short Trades Profit: $1,692.07 (3.38%).
Commission Paid: $924.82.
Minimum Trade Holding Period: 1-minute cooldown between trades.
Trading Logic:
Entry Conditions:
Long Trades: Triggered when the price enters a liquidity void and aligns with higher timeframe bullish bias.
Short Trades: Triggered when price approaches a resistance level with bearish higher timeframe confluence.
CRT & Turtle Soup Patterns: Identifies reversals by analyzing breakout and fake-out structures.
Exit Conditions:
Long Positions Close: Upon price exceeding a 3.88% profit threshold or reversing below an HTF structure.
Short Positions Close: Upon reaching a similar 3.88% threshold or showing strong bullish signals.
Dynamic Position Sizing:
Uses a leverage-based calculation that adapts trade size based on volatility.
Liquidity Awareness:
Tracks Mitigation Blocks (MB), Fair Value Gaps (FVG), Buy/Sell-Side Liquidity (BSL/SSL) to determine optimal execution.
Best Use Cases:
Scalpers & High-Frequency Traders: Those looking for rapid trade execution with short holding periods.
Crypto Traders Focused on Low Timeframes: Optimized for 15-second price action.
Traders Utilizing Liquidity Concepts: Built to exploit liquidity traps and inefficiencies.
Risks & Considerations:
High-Frequency Execution Requires Low Latency: Ensure your broker or exchange supports fast order execution.
Backtested Results May Vary: Real-time performance depends on market conditions.
Commission & Fees Impact Profits: Consider exchanges with low fees to maximize strategy efficiency.
Final Thoughts:
The Destroyer Life Strategy is designed for serious traders looking to take advantage of high-volatility markets with a structured, liquidity-based approach. By combining price action, liquidity concepts, and adaptive risk management, it provides a solid framework for executing high-probability trades on crypto markets.
🚀 Ready to take your trading to the next level? Try Destroyer Life today and dominate the markets!
[Joy] Jasmine Strategy for Bitcoin and CryptoIt is my strategy I use for spot and future trading, mostly for BTCUSD
Notable parameters used:
INDEX:BTCUSD
Data: 2017 - today
Long trade margin/leverage: 8x (50/8 = 6.25)
Short trade margin/leverage: 1x (50/50 = 1)
Commission: 0.075%
Initial Capital: $15, 000
Results:
Net profit: 832.74 %
Buy & Hold: 602.56 %. It beats the buy and hold.
Percent profitability: 88 % . It means 8 out of 10 trades resulted in profits.
Margin Calls: 0 (i.e. Never had a margin call according to backtest from 2017 till today)
Total closes trades: 25
Profit factor: 8.238
Avg Winning Trade: 43.08 %
Largest Winning Trade: 334.85 %
Avg # Bars in Winning Trades: 44 (i.e. 88 days)
Sharpe Ratio: 0.61. A Sharpe ratio under 1.0 is considered sub-optimal. Because of the big swings, I cannot make the Sharpe ratio any better at this time.
Sortino Ratio: 5.153. I think a Sortino ratio of 3.0 or higher is considered excellent. Do your research.
I am using 7.1% stop loss on long trades. However, you can turn off the stop loss and note the profitability remains the same.
Do remember there may be other costs, such as funding costs.
Description:
The strategy hunts for a few market features, namely breakouts, abnormal wicks relative to the body, abnormal volume relative to the candle characteristics, and possible confirmation of all these. It also hunts for more aspects. It gives a relative score of each of the characteristics. Finally, it tries to draw a guesstimate. In the end, it is only a guesstimate. Users see the final outcome (buy/sell etc). The whole logic happens at the background.
The strategy is not to be used for scalping, day trading or swing trading. In other words, it is not suitable for trading in a lower timeframe. It is to be used for Positional Trading For example, if one is trying this for BTCUSD, one may only try this for BTCUSD in a 2day timeframe and not in lower timeframes (such as 4 hours or 1 hour etc.) I am primarily interested in BTC for my research. However, it may be tested on other cryptos as well with varying degrees of results.
Please remember that past performance does not be indicative of future results. Different types of investments involve varying degrees of risk. There can be no assurance that the information referred to directly or indirectly in this strategy will be profitable, equal to any corresponding historical performance level(s), or suitable for you in any form or shape. Market condition changes very fast. Moreover, it would be best if you did not assume that any discussion or information contained here serves as the receipt of, or as a substitute for, personalized investment advice. I am not a financial advisor. I have no qualifications to be a financial advisor. It is only for educational and research purposes. Readers are encouraged to consult with a professional advisor of his/her choosing. Neither I nor my indicators or strategies take any responsibility for any misuse of the information for any actual trading. Even though this strategy did 88% profitability from 2017-2021, it may do poorly and may even be NOT profitable in the future.
Dskyz (DAFE) Adaptive Regime - Quant Machine ProDskyz (DAFE) Adaptive Regime - Quant Machine Pro:
Buckle up for the Dskyz (DAFE) Adaptive Regime - Quant Machine Pro, is a strategy that’s your ultimate edge for conquering futures markets like ES, MES, NQ, and MNQ. This isn’t just another script—it’s a quant-grade powerhouse, crafted with precision to adapt to market regimes, deliver multi-factor signals, and protect your capital with futures-tuned risk management. With its shimmering DAFE visuals, dual dashboards, and glowing watermark, it turns your charts into a cyberpunk command center, making trading as thrilling as it is profitable.
Unlike generic scripts clogging up the space, the Adaptive Regime is a DAFE original, built from the ground up to tackle the chaos of futures trading. It identifies market regimes (Trending, Range, Volatile, Quiet) using ADX, Bollinger Bands, and HTF indicators, then fires trades based on a weighted scoring system that blends candlestick patterns, RSI, MACD, and more. Add in dynamic stops, trailing exits, and a 5% drawdown circuit breaker, and you’ve got a system that’s as safe as it is aggressive. Whether you’re a newbie or a prop desk pro, this strat’s your ticket to outsmarting the markets. Let’s break down every detail and see why it’s a must-have.
Why Traders Need This Strategy
Futures markets are a gauntlet—fast moves, volatility spikes (like the April 28, 2025 NQ 1k-point drop), and institutional traps that punish the unprepared. Meanwhile, platforms are flooded with low-effort scripts that recycle old ideas with zero innovation. The Adaptive Regime stands tall, offering:
Adaptive Intelligence: Detects market regimes (Trending, Range, Volatile, Quiet) to optimize signals, unlike one-size-fits-all scripts.
Multi-Factor Precision: Combines candlestick patterns, MA trends, RSI, MACD, volume, and HTF confirmation for high-probability trades.
Futures-Optimized Risk: Calculates position sizes based on $ risk (default: $300), with ATR or fixed stops/TPs tailored for ES/MES.
Bulletproof Safety: 5% daily drawdown circuit breaker and trailing stops keep your account intact, even in chaos.
DAFE Visual Mastery: Pulsing Bollinger Band fills, dynamic SL/TP lines, and dual dashboards (metrics + position) make signals crystal-clear and charts a work of art.
Original Craftsmanship: A DAFE creation, built with community passion, not a rehashed clone of generic code.
Traders need this because it’s a complete, adaptive system that blends quant smarts, user-friendly design, and DAFE flair. It’s your edge to trade with confidence, cut through market noise, and leave the copycats in the dust.
Strategy Components
1. Market Regime Detection
The strategy’s brain is its ability to classify market conditions into five regimes, ensuring signals match the environment.
How It Works:
Trending (Regime 1): ADX > 20, fast/slow EMA spread > 0.3x ATR, HTF RSI > 50 or MACD bullish (htf_trend_bull/bear).
Range (Regime 2): ADX < 25, price range < 3% of close, no HTF trend.
Volatile (Regime 3): BB width > 1.5x avg, ATR > 1.2x avg, HTF RSI overbought/oversold.
Quiet (Regime 4): BB width < 0.8x avg, ATR < 0.9x avg.
Other (Regime 5): Default for unclear conditions.
Indicators: ADX (14), BB width (20), ATR (14, 50-bar SMA), HTF RSI (14, daily default), HTF MACD (12,26,9).
Why It’s Brilliant:
Regime detection adapts signals to market context, boosting win rates in trending or volatile conditions.
HTF RSI/MACD add a big-picture filter, rare in basic scripts.
Visualized via gradient background (green for Trending, orange for Range, red for Volatile, gray for Quiet, navy for Other).
2. Multi-Factor Signal Scoring
Entries are driven by a weighted scoring system that combines candlestick patterns, trend, momentum, and volume for robust signals.
Candlestick Patterns:
Bullish: Engulfing (0.5), hammer (0.4 in Range, 0.2 else), morning star (0.2), piercing (0.2), double bottom (0.3 in Volatile, 0.15 else). Must be near support (low ≤ 1.01x 20-bar low) with volume spike (>1.5x 20-bar avg).
Bearish: Engulfing (0.5), shooting star (0.4 in Range, 0.2 else), evening star (0.2), dark cloud (0.2), double top (0.3 in Volatile, 0.15 else). Must be near resistance (high ≥ 0.99x 20-bar high) with volume spike.
Logic: Patterns are weighted higher in specific regimes (e.g., hammer in Range, double bottom in Volatile).
Additional Factors:
Trend: Fast EMA (20) > slow EMA (50) + 0.5x ATR (trend_bull, +0.2); opposite for trend_bear.
RSI: RSI (14) < 30 (rsi_bull, +0.15); > 70 (rsi_bear, +0.15).
MACD: MACD line > signal (12,26,9, macd_bull, +0.15); opposite for macd_bear.
Volume: ATR > 1.2x 50-bar avg (vol_expansion, +0.1).
HTF Confirmation: HTF RSI < 70 and MACD bullish (htf_bull_confirm, +0.2); RSI > 30 and MACD bearish (htf_bear_confirm, +0.2).
Scoring:
bull_score = sum of bullish factors; bear_score = sum of bearish. Entry requires score ≥ 1.0.
Example: Bullish engulfing (0.5) + trend_bull (0.2) + rsi_bull (0.15) + htf_bull_confirm (0.2) = 1.05, triggers long.
Why It’s Brilliant:
Multi-factor scoring ensures signals are confirmed by multiple market dynamics, reducing false positives.
Regime-specific weights make patterns more relevant (e.g., hammers shine in Range markets).
HTF confirmation aligns with the big picture, a quant edge over simplistic scripts.
3. Futures-Tuned Risk Management
The risk system is built for futures, calculating position sizes based on $ risk and offering flexible stops/TPs.
Position Sizing:
Logic: Risk per trade (default: $300) ÷ (stop distance in points * point value) = contracts, capped at max_contracts (default: 5). Point value = tick value (e.g., $12.5 for ES) * ticks per point (4) * contract multiplier (1 for ES, 0.1 for MES).
Example: $300 risk, 8-point stop, ES ($50/point) → 0.75 contracts, rounded to 1.
Impact: Precise sizing prevents over-leverage, critical for micro contracts like MES.
Stops and Take-Profits:
Fixed: Default stop = 8 points, TP = 16 points (2:1 reward/risk).
ATR-Based: Stop = 1.5x ATR (default), TP = 3x ATR, enabled via use_atr_for_stops.
Logic: Stops set at swing low/high ± stop distance; TPs at 2x stop distance from entry.
Impact: ATR stops adapt to volatility, while fixed stops suit stable markets.
Trailing Stops:
Logic: Activates at 50% of TP distance. Trails at close ± 1.5x ATR (atr_multiplier). Longs: max(trail_stop_long, close - ATR * 1.5); shorts: min(trail_stop_short, close + ATR * 1.5).
Impact: Locks in profits during trends, a game-changer in volatile sessions.
Circuit Breaker:
Logic: Pauses trading if daily drawdown > 5% (daily_drawdown = (max_equity - equity) / max_equity).
Impact: Protects capital during black swan events (e.g., April 27, 2025 ES slippage).
Why It’s Brilliant:
Futures-specific inputs (tick value, multiplier) make it plug-and-play for ES/MES.
Trailing stops and circuit breaker add pro-level safety, rare in off-the-shelf scripts.
Flexible stops (ATR or fixed) suit different trading styles.
4. Trade Entry and Exit Logic
Entries and exits are precise, driven by bull_score/bear_score and protected by drawdown checks.
Entry Conditions:
Long: bull_score ≥ 1.0, no position (position_size <= 0), drawdown < 5% (not pause_trading). Calculates contracts, sets stop at swing low - stop points, TP at 2x stop distance.
Short: bear_score ≥ 1.0, position_size >= 0, drawdown < 5%. Stop at swing high + stop points, TP at 2x stop distance.
Logic: Tracks entry_regime for PNL arrays. Closes opposite positions before entering.
Exit Conditions:
Stop-Loss/Take-Profit: Hits stop or TP (strategy.exit).
Trailing Stop: Activates at 50% TP, trails by ATR * 1.5.
Emergency Exit: Closes if price breaches stop (close < long_stop_price or close > short_stop_price).
Reset: Clears stop/TP prices when flat (position_size = 0).
Why It’s Brilliant:
Score-based entries ensure multi-factor confirmation, filtering out weak signals.
Trailing stops maximize profits in trends, unlike static exits in basic scripts.
Emergency exits add an extra safety layer, critical for futures volatility.
5. DAFE Visuals
The visuals are pure DAFE magic, blending function with cyberpunk flair to make signals intuitive and charts stunning.
Shimmering Bollinger Band Fill:
Display: BB basis (20, white), upper/lower (green/red, 45% transparent). Fill pulses (30–50 alpha) by regime, with glow (60–95 alpha) near bands (close ≥ 0.995x upper or ≤ 1.005x lower).
Purpose: Highlights volatility and key levels with a futuristic glow.
Visuals make complex regimes and signals instantly clear, even for newbies.
Pulsing effects and regime-specific colors add a DAFE signature, setting it apart from generic scripts.
BB glow emphasizes tradeable levels, enhancing decision-making.
Chart Background (Regime Heatmap):
Green — Trending Market: Strong, sustained price movement in one direction. The market is in a trend phase—momentum follows through.
Orange — Range-Bound: Market is consolidating or moving sideways, with no clear up/down trend. Great for mean reversion setups.
Red — Volatile Regime: High volatility, heightened risk, and larger/faster price swings—trade with caution.
Gray — Quiet/Low Volatility: Market is calm and inactive, with small moves—often poor conditions for most strategies.
Navy — Other/Neutral: Regime is uncertain or mixed; signals may be less reliable.
Bollinger Bands Glow (Dynamic Fill):
Neon Red Glow — Warning!: Price is near or breaking above the upper band; momentum is overstretched, watch for overbought conditions or reversals.
Bright Green Glow — Opportunity!: Price is near or breaking below the lower band; market could be oversold, prime for bounce or reversal.
Trend Green Fill — Trending Regime: Fills between bands with green when the market is trending, showing clear momentum.
Gold/Yellow Fill — Range Regime: Fills with gold/aqua in range conditions, showing the market is sideways/oscillating.
Magenta/Red Fill — Volatility Spike: Fills with vivid magenta/red during highly volatile regimes.
Blue Fill — Neutral/Quiet: A soft blue glow for other or uncertain market states.
Moving Averages:
Display: Blue fast EMA (20), red slow EMA (50), 2px.
Purpose: Shows trend direction, with trend_dir requiring ATR-scaled spread.
Dynamic SL/TP Lines:
Display: Pulsing colors (red SL, green TP for Trending; yellow/orange for Range, etc.), 3px, with pulse_alpha for shimmer.
Purpose: Tracks stops/TPs in real-time, color-coded by regime.
6. Dual Dashboards
Two dashboards deliver real-time insights, making the strat a quant command center.
Bottom-Left Metrics Dashboard (2x13):
Metrics: Mode (Active/Paused), trend (Bullish/Bearish/Neutral), ATR, ATR avg, volume spike (YES/NO), RSI (value + Oversold/Overbought/Neutral), HTF RSI, HTF trend, last signal (Buy/Sell/None), regime, bull score.
Display: Black (29% transparent), purple title, color-coded (green for bullish, red for bearish).
Purpose: Consolidates market context and signal strength.
Top-Right Position Dashboard (2x7):
Metrics: Regime, position side (Long/Short/None), position PNL ($), SL, TP, daily PNL ($).
Display: Black (29% transparent), purple title, color-coded (lime for Long, red for Short).
Purpose: Tracks live trades and profitability.
Why It’s Brilliant:
Dual dashboards cover market context and trade status, a rare feature.
Color-coding and concise metrics guide beginners (e.g., green “Buy” = go).
Real-time PNL and SL/TP visibility empower disciplined trading.
7. Performance Tracking
Logic: Arrays (regime_pnl_long/short, regime_win/loss_long/short) track PNL and win/loss by regime (1–5). Updated on trade close (barstate.isconfirmed).
Purpose: Prepares for future adaptive thresholds (e.g., adjust bull_score min based on regime performance).
Why It’s Brilliant: Lays the groundwork for self-optimizing logic, a quant edge over static scripts.
Key Features
Regime-Adaptive: Optimizes signals for Trending, Range, Volatile, Quiet markets.
Futures-Optimized: Precise sizing for ES/MES with tick-based risk inputs.
Multi-Factor Signals: Candlestick patterns, RSI, MACD, and HTF confirmation for robust entries.
Dynamic Exits: ATR/fixed stops, 2:1 TPs, and trailing stops maximize profits.
Safe and Smart: 5% drawdown breaker and emergency exits protect capital.
DAFE Visuals: Shimmering BB fill, pulsing SL/TP, and dual dashboards.
Backtest-Ready: Fixed qty and tick calc for accurate historical testing.
How to Use
Add to Chart: Load on a 5min ES/MES chart in TradingView.
Configure Inputs: Set instrument (ES/MES), tick value ($12.5/$1.25), multiplier (1/0.1), risk ($300 default). Enable ATR stops for volatility.
Monitor Dashboards: Bottom-left for regime/signals, top-right for position/PNL.
Backtest: Run in strategy tester to compare regimes.
Live Trade: Connect to Tradovate or similar. Watch for slippage (e.g., April 27, 2025 ES issues).
Replay Test: Try April 28, 2025 NQ drop to see regime shifts and stops.
Disclaimer
Trading futures involves significant risk of loss and is not suitable for all investors. Past performance does not guarantee future results. Backtest results may differ from live trading due to slippage, fees, or market conditions. Use this strategy at your own risk, and consult a financial advisor before trading. Dskyz (DAFE) Trading Systems is not responsible for any losses incurred.
Backtesting:
Frame: 2023-09-20 - 2025-04-29
Slippage: 3
Fee Typical Range (per side, per contract)
CME Exchange $1.14 – $1.20
Clearing $0.10 – $0.30
NFA Regulatory $0.02
Firm/Broker Commis. $0.25 – $0.80 (retail prop)
TOTAL $1.60 – $2.30 per side
Round Turn: (enter+exit) = $3.20 – $4.60 per contract
Final Notes
The Dskyz (DAFE) Adaptive Regime - Quant Machine Pro is more than a strategy—it’s a revolution. Crafted with DAFE’s signature precision, it rises above generic scripts with adaptive regimes, quant-grade signals, and visuals that make trading a thrill. Whether you’re scalping MES or swinging ES, this system empowers you to navigate markets with confidence and style. Join the DAFE crew, light up your charts, and let’s dominate the futures game!
(This publishing will most likely be taken down do to some miscellaneous rule about properly displaying charting symbols, or whatever. Once I've identified what part of the publishing they want to pick on, I'll adjust and repost.)
Use it with discipline. Use it with clarity. Trade smarter.
**I will continue to release incredible strategies and indicators until I turn this into a brand or until someone offers me a contract.
Created by Dskyz, powered by DAFE Trading Systems. Trade smart, trade bold.
Machine Learning: Donchian DCA Grid Strategy [YinYangAlgorithms]This strategy uses a Machine Learning approach on the Donchian Channels with a DCA and Grid purchase/sell Strategy. Not only that, but it uses a custom Bollinger calculation to determine its Basis which is used as a mild sell location. This strategy is a pure DCA strategy in the sense that no shorts are used and theoretically it can be used in webhooks on most exchanges as it’s only using Spot Orders. The idea behind this strategy is we utilize both the Highest Highs and Lowest Lows within a Machine Learning standpoint to create Buy and Sell zones. We then fraction these zones off into pieces to create Grids. This allows us to ‘micro’ purchase as it enters these zones and likewise ‘micro’ sell as it goes up into the upper (sell) zones.
You have the option to set how many grids are used, by default we use 100 with max 1000. These grids can be ‘stacked’ together if a single bar is to go through multiple at the same time. For instance, if a bar goes through 30 grids in one bar, it will have a buy/sell power of 30x. Stacking Grid Buy and (sometimes) Sells is a very crucial part of this strategy that allows it to purchase multitudes during crashes and capitalize on sales during massive pumps.
With the grids, you’ll notice there is a middle line within the upper and lower part that makes the grid. As a Purchase Type within our Settings this is identified as ‘Middle of Zone Purchase Amount In USDT’. The middle of the grid may act as the strongest grid location (aside from maybe the bottom). Therefore there is a specific purchase amount for this Grid location.
This DCA Strategy also features two other purchase methods. Most importantly is its ‘Purchase More’ type. Essentially it will attempt to purchase when the Highest High or Lowest Low moves outside of the Outer band. For instance, the Lowest Low becomes Lower or the Higher High becomes Higher. When this happens may be a good time to buy as it is featuring a new High or Low over an extended period.
The last but not least Purchase type within this Strategy is what we call a ‘Strong Buy’. The reason for this is its verified by the following:
The outer bounds have been pushed (what causes a ‘Purchase More’)
The Price has crossed over the EMA 21
It has been verified through MACD, RSI or MACD Historical (Delta) using Regular and Hidden Divergence (Note, only 1 of these verifications is required and it can be any).
By default we don’t have Purchase Amount for ‘Strong Buy’ set, but that doesn’t mean it can’t be viable, it simply means we have only seen a few pairs where it actually proved more profitable allocating money there rather than just increasing the purchase amount for ‘Purchase More’ or ‘Grids’.
Now that you understand where we BUY, we should discuss when we SELL.
This Strategy features 3 crucial sell locations, and we will discuss each individually as they are very important.
1. ‘Sell Some At’: Here there are 4 different options, by default its set to ‘Both’ but you can change it around if you want. Your options are:
‘Both’ - You will sell some at both locations. The amount sold is the % used at ‘Sell Some %’.
‘Basis Line’ - You will sell some when the price crosses over the Basis Line. The amount sold is the % used at ‘Sell Some %’.
‘Percent’ - You will sell some when the Close is >= X% between the Lower Inner and Upper Inner Zone.
‘None’ - This simply means don’t ever Sell Some.
2. Sell Grids. Sell Grids are exactly like purchase grids and feature the same amount of grids. You also have the ability to ‘Stack Grid Sells’, which basically means if a bar moves multiple grids, it will stack the amount % wise you will sell, rather than just selling the default amount. Sell Grids use a DCA logic but for selling, which we deem may help adjust risk/reward ratio for selling, especially if there is slow but consistent bullish movement. It causes these grids to constantly push up and therefore when the close is greater than them, accrue more profit.
3. Take Profit. Take profit occurs when the close first goes above the Take Profit location (Teal Line) and then Closes below it. When Take Profit occurs, ALL POSITIONS WILL BE SOLD. What may happen is the price enters the Sell Grid, doesn’t go all the way to the top ‘Exiting it’ and then crashes back down and closes below the Take Profit. Take Profit is a strong location which generally represents a strong profit location, and that a strong momentum has changed which may cause the price to revert back to the buy grid zone.
Keep in mind, if you have (by default) ‘Only Sell If Profit’ toggled, all sell locations will only create sell orders when it is profitable to do so. Just cause it may be a good time to sell, doesn’t mean based on your DCA it is. In our opinion, only selling when it is profitable to do so is a key part of the DCA purchase strategy.
You likewise have the ability to ‘Only Buy If Lower than DCA’, which is likewise by default. These two help keep the Yin and Yang by balancing each other out where you’re only purchasing and selling when it makes logical sense too, even if that involves ignoring a signal and waiting for a better opportunity.
Tutorial:
Like most of our Strategies, we try to capitalize on lower Time Frames, generally the 15 minutes so we may find optimal entry and exit locations while still maintaining a strong correlation to trend patterns.
First off, let’s discuss examples of how this Strategy works prior to applying Machine Learning (enabled by default).
In this example above we have disabled the showing of ‘Potential Buy and Sell Signals’ so as to declutter the example. In here you can see where actual trades had gone through for both buying and selling and get an idea of how the strategy works. We also have disabled Machine Learning for this example so you can see the hard lines created by the Donchian Channel. You can also see how the Basis line ‘white line’ may act as a good location to ‘Sell Some’ and that it moves quite irregularly compared to the Donchian Channel. This is due to the fact that it is based on two custom Bollinger Bands to create the basis line.
Here we zoomed out even further and moved back a bit to where there were dense clusters of buy and sell orders. Sometimes when the price is rather volatile you’ll see it ‘Ping Pong’ back and forth between the buy and sell zones quite quickly. This may be very good for your trades and profit as a whole, especially if ‘Only Buy If Lower Than DCA’ and ‘Only Sell If Profit’ are both enabled; as these toggles will ensure you are:
Always lowering your Average when buying
Always making profit when selling
By default 8% commission is added to the Strategy as well, to simulate the cost effects of if these trades were taking place on an actual exchange.
In this example we also turned on the visuals for our ‘Purchase More’ (orange line) and ‘Take Profit’ (teal line) locations. These are crucial locations. The Purchase More makes purchases when the bottom of the grid has been moved (may dictate strong price movement has occurred and may be potential for correction). Our Take Profit may help secure profit when a momentum change is happening and all of the Sell Grids weren’t able to be used.
In the example above we’ve enabled Buy and Sell Signals so that you can see where the Take Profit and Purchase More signals have occurred. The white circle demonstrates that not all of the Position Size was sold within the Sell Grids, and therefore it was ALL CLOSED when the price closed below the Take Profit Line (Teal).
Then, when the bottom of the Donchian Channel was pushed further down due to the close (within the yellow circle), a Purchase More Signal was triggered.
When the close keeps pushing the bottom of the Buy Grid lower, it can cause multiple Purchase More Signals to occur. This is normal and also a crucial part of this strategy to help lower your DCA. Please note, the Purchase More won’t trigger a Buy if the Close is greater than the DCA and you have ‘Only Purchase If Lower Than DCA’ activated.
By turning on Machine Learning (default settings) the Buy and Sell Grid Zones are smoothed out more. It may cause it to look quite a bit different. Machine Learning although it looks much worse, may help increase the profit this Strategy can produce. Previous results DO NOT mean future results, but in this example, prior to turning on Machine Learning it had produced 37% Profit in ~5 months and with Machine Learning activated it is now up to 57% Profit in ~5 months.
Machine Learning causes the Strategy to focus less on Grids and more on Purchase More when it comes to getting its entries. However, if you likewise attempt to focus on Purchase More within non Machine Learning, the locations are different and therefore the results may not be as profitable.
PLEASE NOTE:
By default this strategy uses 1,000,000 as its initial capital. The amount it purchases in its Settings is relevant to this Initial capital. Considering this is a DCA Strategy, we only want to ‘Micro’ Buy and ‘Micro’ Sell whenever conditions are met.
Therefore, if you increase the Initial Capital, you’ll likewise want to increase the Purchase Amounts within the Settings and Vice Versa. For instance, if you wish to set the Initial Capital to 10,000, you should likewise can the amounts in the Settings to 1% of what they are to account for this.
We may change the Purchase Amounts to be based on %’s in a later update if it is requested.
We will conclude this Tutorial here, hopefully you can see how a DCA Grid Purchase Model applied to Machine Learning Donchian Channels may be useful for making strategic purchases in low and high zones.
Settings:
Display Data:
Show Potential Buy Locations: These locations are where 'Potentially' orders can be placed. Placement of orders is dependant on if you have 'Only Buy If Lower Than DCA' toggled and the Price is lower than DCA. It also is effected by if you actually have any money left to purchase with; you can't buy if you have no money left!
Show Potential Sell Locations: These locations are where 'Potentially' orders will be sold. If 'Only Sell If Profit' is toggled, the sell will only happen if you'll make profit from it!
Show Grid Locations: Displaying won't affect your trades but it can be useful to see where trades will be placed, as well as which have gone through and which are left to be purchased. Max 100 Grids, but visuals will only be shown if its 20 or less.
Purchase Settings:
Only Buy if its lower than DCA: Generally speaking, we want to lower our Average, and therefore it makes sense to only buy when the close is lower than our current DCA and a Purchase Condition is met.
Compound Purchases: Compounding Purchases means reinvesting profit back into your trades right away. It drastically increases profits, but it also increases risk too. It will adjust your Purchase Amounts for the Purchase Type you have set at the same % rate of strategy initial_capital to the amounts you have set.
Adjust Purchase Amount Ratio to Maintain Risk level: By adjusting purchase levels we generally help maintain a safe risk level. Basically we generally want to reserve X amount of % for each purchase type being used and relocate money when there is too much in one type. This helps balance out purchase amounts and ensure the types selected have a correct ratio to ensure they can place the right amount of orders.
Stack Grid Buys: Stacking Buy Grids is when the Close crosses multiple Buy Grids within the same bar. Should we still only purchase the value of 1 Buy Grid OR stack the grid buys based on how many buy grids it went through.
Purchase Type: Where do you want to make Purchases? We recommend lowering your risk by combining All purchase types, but you may also customize your trading strategy however you wish.
Strong Buy Purchase Amount In USDT: How much do you want to purchase when the 'Strong Buy' signal appears? This signal only occurs after it has at least entered the Buy Zone and there have been other verifications saying it's now a good time to buy. Our Strong Buy Signal is a very strong indicator that a large price movement towards the Sell Zone will likely occur. It almost always results in it leaving the Buy Zone and usually will go to at least the White Basis line where you can 'Sell Some'.
Buy More Purchase Amount In USDT: How much should you purchase when the 'Purchase More' signal appears? This 'Purchase More' signal occurs when the lowest level of the Buy Zone moves lower. This is a great time to buy as you're buying the dip and generally there is a correction that will allow you to 'Sell Some' for some profit.
Amount of Grid Buy and Sells: How many Grid Purchases do you want to make? We recommend having it at the max of 10, as it will essentially get you a better Average Purchase Price, but you may adjust it to whatever you wish. This amount also only matters if your Purchase Type above incorporates Grid Purchases. Max 100 Grids, but visuals will only be shown if it's 20 or less.
Each Grid Purchase Amount In USDT: How much should you purchase after closing under a grid location? Keep in mind, if you have 10 grids and it goes through each, it will be this amount * 10. Grid purchasing is a great way to get a good entry, lower risk and also lower your average.
Middle Of Zone Purchase Amount In USDT: The Middle Of Zone is the strongest grid location within the Buy Zone. This is why we have a unique Purchase Amount for this Grid specifically. Please note you need to have 'Middle of Zone is a Grid' enabled for this Purchase Amount to be used.
Sell:
Only Sell if its Profit: There is a chance that during a dump, all your grid buys when through, and a few Purchase More Signals have appeared. You likely got a good entry. A Strong Buy may also appear before it starts to pump to the Sell Zone. The issue that may occur is your Average Purchase Price is greater than the 'Sell Some' price and/or the Grids in the Sell Zone and/or the Strong Sell Signal. When this happens, you can either take a loss and sell it, or you can hold on to it and wait for more purchase signals to therefore lower your average more so you can take profit at the next sell location. Please backtest this yourself within our YinYang Purchase Strategy on the pair and timeframe you are wanting to trade on. Please also note, that previous results will not always reflect future results. Please assess the risk yourself. Don't trade what you can't afford to lose. Sometimes it is better to strategically take a loss and continue on making profit than to stay in a bad trade for a long period of time.
Stack Grid Sells: Stacking Sell Grids is when the Close crosses multiple Sell Grids within the same bar. Should we still only sell the value of 1 Sell Grid OR stack the grid sells based on how many sell grids it went through.
Stop Loss Type: This is when the Close has pushed the Bottom of the Buy Grid More. Do we Stop Loss or Purchase More?? By default we recommend you stay true to the DCA part of this strategy by Purchasing More, but this is up to you.
Sell Some At: Where if selected should we 'Sell Some', this may be an important way to sell a little bit at a good time before the price may correct. Also, we don't want to sell too much incase it doesn't correct though, so its a 'Sell Some' location. Basis Line refers to our Moving Basis Line created from 2 Bollinger Bands and Percent refers to a Percent difference between the Lower Inner and Upper Inner bands.
Sell Some At Percent Amount: This refers to how much % between the Lower Inner and Upper Inner bands we should well at if we chose to 'Sell Some'.
Sell Some Min %: This refers to the Minimum amount between the Lower Inner band and Close that qualifies a 'Sell Some'. This acts as a failsafe so we don't 'Sell Some' for too little.
Sell % At Strong Sell Signal: How much do we sell at the 'Strong Sell' Signal? It may act as a strong location to sell, but likewise Grid Sells could be better.
Grid and Donchian Settings:
Donchian Channel Length: How far back are we looking back to determine our Donchian Channel.
Extra Outer Buy Width %: How much extra should we push the Outer Buy (Low) Width by?
Extra Inner Buy Width %: How much extra should we push the Inner Buy (Low) Width by?
Extra Inner Sell Width %: How much extra should we push the Inner Sell (High) Width by?
Extra Outer Sell Width %: How much extra should we push the Outer Sell (High) Width by?
Machine Learning:
Rationalized Source Type: Donchians usually use High/Low. What Source is our Rationalized Source using?
Machine Learning Type: Are we using a Simple ML Average, KNN Mean Average, KNN Exponential Average or None?
Machine Learning Length: How far back is our Machine Learning going to keep data for.
k-Nearest Neighbour (KNN) Length: How many k-Nearest Neighbours will we account for?
Fast ML Data Length: What is our Fast ML Length?? This is used with our Slow Length to create our KNN Distance.
Slow ML Data Length: What is our Slow ML Length?? This is used with our Fast Length to create our KNN Distance.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
Gap Filling Strategy Gaps are market prices structures that appear frequently in the stock market, and can be detected when the opening price is different from the previous closing price, this is why gaps are also called "opening price jumps". While gaps can occur frequently, some of them are more significant than others, and can be observed when looking at a long term chart.
The following strategy is based on the exploitation of significant gaps occurring during a new session, and posses various options that can return a wide variety of results.
Type Of Gaps And Occurence
I'am not a professional when it comes to gaps, but as you know the stock market close for the day, however it is still possible to place orders, your broker will hold them until the market open back. Once the market reopen the broker execute the pending orders, and when many orders where pending the market register really high volume and the price might differ from the precedent close.
Gaps are generally broken down into four types:
Common : Gaps occurring within a certain price range, mostly occurs during ranging markets.
Break Away : Gaps breaking a support and resistance, making a new higher high/lower low.
Runaway : Gaps occurring within a trend, followed by a continuation of the trend.
Exhaustion : Gaps occurring at the end of a trend, followed by a reversal.
As said before, some gaps are more significant than others, the significance of a gap can be determined by comparing the opening price with the previous high/low price and by looking at volume. Significant up gaps will have an opening price greater than the previous high, while significant down gap will have an opening price lower than the previous low with both high volume accompanying them.
After a gap, when the price go back to the point previous to the gap we say that it has been "filled", this characteristic is what will be exploited in this strategy.
Strategy Rules & Logic
In this strategy, the significance of a gap is determined by the position of the opening price relative to the previous high/low and make sure the bar following the gap don't fill it.
When the setting invert is set to false the strategy interpret the detected gaps as being exhaustion gaps, therefore when an up gap occur a short position is opened, when a down gap occur a long position is opened. When invert is set to true gaps are considered to be runaway or break away gaps, therefore the contrary positions are opened. Positions are exited when the gap has been filled, which in the chart is show'n when the price cross the red level who act as either a take profit (invert = false) or as a stop loss (invert = true).
There are various closing conditions available that the user can select from the "close when" setting.
New Session : This option close all previous positions when the market is in a new session.
New Gap : This option close all previous position when a new gap has been detected.
Reverse Position : This option close all previous position when a contrary position to the current one is opened. This option would reduce the number of trades.
Testing On Some Stocks
The analysis will be tested in different tech stocks with a main TF of 15 minutes with no spread and commissions applied. Default settings will be used. We'll be making our first analysis using AMD, who has recently formed a full reverse HS pattern, where the neckline has been crossed by the price. (by the way i have a bad feeling about it, hey ! feeling filling ! Lame jokes!)
Profit: $ -12.22
Trades: 272
Profitability: 65.07 %
We can see negative results, with an heavily decreasing balance. Using invert would return positive results.
We will now test the strategy on NVDA, the company is one of the biggest when it comes to the Gpu market.
Profit: $ -215.54
Trades: 297
Profitability: 60.27 %
Not better, using invert would of course create better results. Like AMD the balance is heavily decreasing.
Finally we will test the strategy on Seagate technology, a company mostly known for their mechanical hard drives.
Profit: $ -4.32
Trades: 261
Profitability: 65.9 %
Here the balance does not appear so heavily decreasing and even managed to reach back the initial balance before going down again.
Summary
A strategy based on gap filling has been briefly introduced and tested with 3 tech stocks. The results show that using invert option might be better. The advantage of this strategy against ones using technical indicators is that this one does not heavily depend on user settings, which make it way more efficient, this a big advantage of patterns based strategies.
Thx to LucF for helping with the "process_orders_on_close" element, since i had to use closing price i had to remove it tho, was afraid results would differ even more from a more realistic backtest. And thx for those who continuously support me, more cool stuff is coming up.
Thx for reading and i hope you'll have learned something new today !
Strategy Builder Pro [ChartPrime]ChartPrime Strategy Creator Overview
The ChartPrime Strategy Builder offers traders an innovative, structured approach to building and testing strategies. The Strategy Creator allows users to combine, test, and automate complex strategies with many parameters.
Key Features of the ChartPrime Strategy Builder
1. Customizable Buy and Sell Conditions
The Strategy Creator provides flexibility in establishing entry and exit rules, with separate sections for long and short strategies. Traders can combine multiple conditions in each section to fine-tune when positions are opened or closed. For instance, they might choose to only buy when the indicator signals a buy and the Dynamic Reactor (a low lag filter) indicator shows a bullish trend. Users are able to pick, mix and match the following list of features:
Signal Mode: Select the type of assistive signals you are requiring. Provided are both trend following signals with self optimization using backtest results as well as reversal signals, aiming to provide real time tops and bottoms in markets. Both these signal modes can be fine tuned using the tuning input to refine signals to a trader's liking. ChartPrime Trend Signals leverage audio engineering inspired techniques and low-pass filters in order to achieve and attempt to produce lower lag response times and therefore are designed to have a uniqueness when compared to more classical trend following approaches.
The Dynamic Reactor: provides a simple band passing through the chart. This can provide assistance in support and resistance locations as well as identifying the trend direction expressed via green and red colors. Taking a moving average and applying unique adaptivity calculations gives this plot a unique and fast behavior.
Candlestick structures: analyze candlestick formation putting a spin on classical candlestick patterns and provide the most relevant formations on the chart. These are not classical and are filtered by further analyzing market activity. A trader's classic with a spin.
The Prime Trend Assistant: provides a trend following dynamic support and resistance level. This makes it perfect to use in confluence or as a filter for other supporting indicators. This is an adaptive trend following system designed to handle volatility leveraging filter kernels as opposed to low pass filters.
Money Flow: with further filters applied for early response to money flow changes in the market. This can be a great filter in trends.
Oscillator reversals: are built in leveraging an oscillator focusing on market momentum allowing users to enter based on market shifts and trends along with reversals.
Volume-Inspired Signals: determine overbought and oversold conditions, adding another layer of analysis to the oscillator. These appear as orange labels, providing a simple reading into a possible reversal.
The Volume Matrix: is a volume oscillator that shows whether money is flowing into or out of the market. Green suggests an uptrend with buyers in control, while red indicates a majority of sellers. By incorporating smoothed volume analysis, it distinguishes between bullish and bearish volumes, offering an early indication of potential trend reversals.
The True 7: is a middle-ranking system that evaluates the strength of a move and the overall trend, offering a numeric or visual representation of trend strength. It can also indicate when a trend is starting to reverse, providing leading signals for potential market shifts. Rather than using an oscillator, this offers the unique edge of falling into set categories, making understanding it simple. This can be a great confluence point when designing a strategy.
Take profits: These offer real-time suggestions from our algorithm on when it might be a good time to take profit. Using these as part of a strategy allows for great entries at bottoms and tops of trends.
Using features such as the Dynamic reactor have dual purposes. Traders can use this as both a filter and an entry condition. This allows for true interoperability when using the Strategy Builder. The above conditions are duplicated for short entries too allowing for symmetrical trading systems. By disabling all of the entry conditions on either long or short areas of the settings will create a strategy that only takes a single type of position. For example; a trader that just wants to take longs can disable all short options.
2. Layered Entries
Layered entries, a feature to enhance the uniqueness in the tool. It allows traders to average into positions as the market moves, rather than committing all capital at once. This feature is particularly useful for volatile markets where prices may fluctuate substantially. The Strategy Builder lets users adjust the number of layered entries, which can help in managing risk and optimizing entry points as well as the aggressiveness of the safety orders. With each safety order placed the system will automatically and dynamically scale into positions reducing the average entry price and hence dynamically adjust the potential take profits. Due to the potential complexities of exiting during multiple orders, a smart system is employed to automatically take profits on the layered system aiming to take profits at peaks of trends.
Users are able to override this smart TP system at the bottom of the settings instead targeting percentage profits for both short and long positions.
Entries lowering average buy price
The ability to adjust how quickly the system layers into positions can also be adjusted via the layered entries drop down between fast and slow mode where the slow mode will be more cautious when producing new orders.
3. Flexible Take Profit (TP) and Stop Loss (SL) Options
Traders can set their TP and SL levels according to various parameters, including ATR (Average True Range), risk-reward ratio, trailing stops, or specific price changes. If layered entries are active, an automatic TP method is applied by default, though traders can manually specify TP values if they prefer. This setup allows for precise control over trade exits, tailored to the strategy’s risk profile.
Provided options
The ability to use external take profits and stop losses is also provided. By loading an indicator of your choice the plots will be added to the chart. By navigating to the external sources area of the settings, users can select this plot and use it as part of a wider trading system.
Example: Let’s say a user has entries based on the inbuilt trend signals and wishes to exit whenever the RSI crosses above 70, they can add RSI to the chart, select crossing up and enter the value of 70.
4. Integrated Reinvestment for Compounding Gains
The reinvestment option allows traders to reinvest a portion of their gains into future trades, increasing trade size over time and benefiting from compounding. For example, a user might set 30% of each trade's profit to reinvest, with the remaining 70% allocated for risk management or additional safety orders. This approach can enhance long-term growth while balancing risk.
Generally in trading it can be a good approach to take profits so we suggest a healthy balance. This setting is generally best used for slow steady strategies with the long term aim of accumulating as much of the asset as possible.
5. Leverage and Position Sizing
Users can configure leverage and position sizing to simulate varying risk levels and capital allocations. A dashboard on the interface displays margin requirements based on the selected leverage, allowing traders to estimate trade sizes relative to their available capital. Whenever using leverage especially with layered entries it’s important to keep a close eye on the position sizes to avoid potential liquidations.
6. Pre-Configured Strategies for Immediate Testing
For users seeking a starting point, ChartPrime includes a range of preset strategies. These were developed and backtested by ChartPrime’s team. This allows traders to start with a stable base and adapt it to their own preferences. It is vital to understand that historical performance doesn't guarantee future success, and traders should be mindful of overfitting. These pre-built configurations offer a structured way and base to design strategies off of. These are also subject to changing results as new price action arrives and they become outdated. They serve the purpose of simply being example use cases.
7. In-Depth Specific Backtesting Ranges
The Strategy Builder includes backtesting capabilities, providing a clear view of how different setups would have performed over specified time periods. Traders can select date ranges to target specific market conditions, then review results on TradingView to see how their strategies perform across different market trends.
Example Use Case: Developing a Strategy
Consider a trader who is focused on long positions only and prefers a lower-risk strategy (note these tools can be used for all assets; we are using an undisclosed asset as an example). Using the Strategy Builder, they could:
- Disable short conditions.
- Set long entry rules to trigger when both the ChartPrime oscillator and Quantum Reactor indicators show bullish signals.
- Enable layered entries to improve average entry prices by adding to positions during market dips.
- Run a backtest over a two-year period to see historical performance trends, making adjustments as needed.
The backtest will show where entries and exits would have occurred and how layered entries may have impacted profitability.
8. Iterative design
Strategy builders and creating a strategy is often an iterative process. By experimenting and using logic; a trader can arrive at a more sustainable system. Analyzing the shortcomings of your strategy and iteratively designing and filtering them out is the goal. For example; let’s say a strategy has high drawdown, a user would want to tighten stop losses for example to reduce this and find a balance point between optimizing winning trades and reducing the drawdown. When designing a strategy there are generally tradeoffs and optimizing taking into consideration a wide range of factors is key. This also applies to filtering techniques, entries and exits and every variable in the strategy.
Let’s say a strategy was taking too many long positions in a downtrend and after you’ve analyzed the data, you come to the conclusion this needs to be solved. Filtering these using built in trend following tools can be a great approach and refining with logic is a great approach.
The Strategy Builder also takes into consideration those who seek to automate especially via reinvesting and leverage features.
Considerations
The ChartPrime Strategy Builder aims to help traders build clear, rule-based strategies without excessive complexity. As with all backtesting tools, it's crucial to understand that historical performance doesn't guarantee future success, and traders should be mindful of overfitting. This tool offers a structured way to test strategies against various market conditions, helping traders refine their approaches with data-driven insights. Traders should also ensure they enter the correct fees when designing strategies and ensure usage on standard candle types.
Titan Investments|Quantitative THEMIS|Pro|BINANCE:BTCUSDTP:4hInvestment Strategy (Quantitative Trading)
| 🛑 | Watch "LIVE" and 'COPY' this strategy in real time:
🔗 Link: www.tradingview.com
Hello, welcome, feel free 🌹💐
Since the stone age to the most technological age, one thing has not changed, that which continues impress human beings the most, is the other human being!
Deep down, it's all very simple or very complicated, depends on how you look at it.
I believe that everyone was born to do something very well in life.
But few are those who have, let's use the word 'luck' .
Few are those who have the 'luck' to discover this thing.
That is why few are happy and successful in their jobs and professions.
Thank God I had this 'luck' , and discovered what I was born to do well.
And I was born to program. 👨💻
📋 Summary : Project Titan
0️⃣ : 🦄 Project Titan
1️⃣ : ⚖️ Quantitative THEMIS
2️⃣ : 🏛️ Titan Community
3️⃣ : 👨💻 Who am I ❔
4️⃣ : ❓ What is Statistical/Probabilistic Trading ❓
5️⃣ : ❓ How Statistical/Probabilistic Trading works ❓
6️⃣ : ❓ Why use a Statistical/Probabilistic system ❓
7️⃣ : ❓ Why the human brain is not prepared to do Trading ❓
8️⃣ : ❓ What is Backtest ❓
9️⃣ : ❓ How to build a Consistent system ❓
🔟 : ❓ What is a Quantitative Trading system ❓
1️⃣1️⃣ : ❓ How to build a Quantitative Trading system ❓
1️⃣2️⃣ : ❓ How to Exploit Market Anomalies ❓
1️⃣3️⃣ : ❓ What Defines a Robust, Profitable and Consistent System ❓
1️⃣4️⃣ : 🔧 Fixed Technical
1️⃣5️⃣ : ❌ Fixed Outputs : 🎯 TP(%) & 🛑SL(%)
1️⃣6️⃣ : ⚠️ Risk Profile
1️⃣7️⃣ : ⭕ Moving Exits : (Indicators)
1️⃣8️⃣ : 💸 Initial Capital
1️⃣9️⃣ : ⚙️ Entry Options
2️⃣0️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Third-Party Services'
2️⃣1️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Exchanges
2️⃣2️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Messaging Services'
2️⃣3️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : '🧲🤖Copy-Trading'
2️⃣4️⃣ : ❔ Why be a Titan Pro 👽❔
2️⃣5️⃣ : ❔ Why be a Titan Aff 🛸❔
2️⃣6️⃣ : 📋 Summary : ⚖️ Strategy: Titan Investments|Quantitative THEMIS|Pro|BINANCE:BTCUSDTP:4h
2️⃣7️⃣ : 📊 PERFORMANCE : 🆑 Conservative
2️⃣8️⃣ : 📊 PERFORMANCE : Ⓜ️ Moderate
2️⃣9️⃣ : 📊 PERFORMANCE : 🅰 Aggressive
3️⃣0️⃣ : 🛠️ Roadmap
3️⃣1️⃣ : 🧻 Notes ❕
3️⃣2️⃣ : 🚨 Disclaimer ❕❗
3️⃣3️⃣ : ♻️ ® No Repaint
3️⃣4️⃣ : 🔒 Copyright ©️
3️⃣5️⃣ : 👏 Acknowledgments
3️⃣6️⃣ : 👮 House Rules : 📺 TradingView
3️⃣7️⃣ : 🏛️ Become a Titan Pro member 👽
3️⃣8️⃣ : 🏛️ Be a member Titan Aff 🛸
0️⃣ : 🦄 Project Titan
This is the first real, 100% automated Quantitative Strategy made available to the public and the pinescript community for TradingView.
You will be able to automate all signals of this strategy for your broker , centralized or decentralized and also for messaging services : Discord, Telegram or Twitter .
This is the first strategy of a larger project, in 2023, I will provide a total of 6 100% automated 'Quantitative' strategies to the pinescript community for TradingView.
The future strategies to be shared here will also be unique , never before seen, real 'Quantitative' bots with real, validated results in real operation.
Just like the 'Quantitative THEMIS' strategy, it will be something out of the loop throughout the pinescript/tradingview community, truly unique tools for building mutual wealth consistently and continuously for our community.
1️⃣ : ⚖️ Quantitative THEMIS : Titan Investments|Quantitative THEMIS|Pro|BINANCE:BTCUSDTP:4h
This is a truly unique and out of the curve strategy for BTC /USD .
A truly real strategy, with real, validated results and in real operation.
A unique tool for building mutual wealth, consistently and continuously for the members of the Titan community.
Initially we will operate on a monthly, quarterly, annual or biennial subscription service.
Our goal here is to build a great community, in exchange for an extremely fair value for the use of our truly unique tools, which bring and will bring real results to our community members.
With this business model it will be possible to provide all Titan users and community members with the purest and highest degree of sophistication in the market with pinescript for tradingview, providing unique and truly profitable strategies.
My goal here is to offer the best to our members!
The best 'pinescript' tradingview service in the world!
We are the only Start-Up in the world that will decentralize real and full access to truly real 'quantitative' tools that bring and will bring real results for mutual and ongoing wealth building for our community.
2️⃣ : 🏛️ Titan Community : 👽 Pro 🔁 Aff 🛸
Become a Titan Pro 👽
To get access to the strategy: "Quantitative THEMIS" , and future Titan strategies in a 100% automated way, along with all tutorials for automation.
Pro Plans: 30 Days, 90 Days, 12 Months, 24 Months.
👽 Pro 🅼 Monthly
👽 Pro 🆀 Quarterly
👽 Pro🅰 Annual
👽 Pro👾Two Years
You will have access to a truly unique system that is out of the curve .
A 100% real, 100% automated, tested, validated, profitable, and in real operation strategy.
Become a Titan Affiliate 🛸
By becoming a Titan Affiliate 🛸, you will automatically receive 50% of the value of each new subscription you refer .
You will receive 50% for any of the above plans that you refer .
This way we will encourage our community to grow in a fair and healthy way, because we know what we have in our hands and what we deliver real value to our users.
We are at the highest level of sophistication in the market, the consistency here and the results here speak for themselves.
So growing our community means growing mutual wealth and raising collective conscience.
Wealth must be created not divided.
And here we are creating mutual wealth on all ends and in all ways.
A non-zero sum system, where everybody wins.
3️⃣ : 👨💻 Who am I ❔
My name is FilipeSoh I am 26 years old, Technical Analyst, Trader, Computer Engineer, pinescript Specialist, with extensive experience in several languages and technologies.
For the last 4 years I have been focusing on developing, editing and creating pinescript indicators and strategies for Tradingview for people and myself.
Full-time passionate workaholic pinescript developer with over 10,000 hours of pinescript development.
• Pinescript expert ▬Tradingview.
• Specialist in Automated Trading
• Specialist in Quantitative Trading.
• Statistical/Probabilistic Trading Specialist - Mark Douglas Scholl.
• Inventor of the 'Classic Forecast' Indicators.
• Inventor of the 'Backtest Table'.
4️⃣ : ❓ What is Statistical/Probabilistic Trading ❓
Statistical/probabilistic trading is the only way to get a positive mathematical expectation regarding the market and consequently that is the only way to make money consistently from it.
I will present below some more details about the Quantitative THEMIS strategy, it is a real strategy, tested, validated and in real operation, 'Skin in the Game' , a consistent way to make money with statistical/probabilistic trading in a 100% automated.
I am a Technical Analyst , I used to be a Discretionary Trader , today I am 100% a Statistical Trader .
I've gotten rich and made a lot of money, and I've also lost a lot with 'leverage'.
That was a few years ago.
The book that changed everything for me was "Trading in The Zone" by Mark Douglas.
That's when I understood that the market is just a game of statistics and probability, like a casino!
It was then that I understood that the human brain is not prepared for trading, because it involves triggers and mental emotions.
And emotions in trading and in making trading decisions do not go well together, not in the long run, because you always have the burden of being wrong with the outcome of that particular position.
But remembering that the market is just a statistical game!
5️⃣ : ❓ How Statistical/Probabilistic Trading works ❓
Let's use a 'coin' as an example:
If we toss a 'coin' up 10 times.
Do you agree that it is impossible for us to know exactly the result of the 'plays' before they actually happen?
As in the example above, would you agree, that we cannot "guess" the outcome of a position before it actually happens?
As much as we cannot "guess" whether the coin will drop heads or tails on each flip.
We can analyze the "backtest" of the 10 moves made with that coin:
If we analyze the 10 moves and count the number of times the coin fell heads or tails in a specific sequence, we then have a percentage of times the coin fell heads or tails, so we have a 'backtest' of those moves.
Then on the next flip we can now assume a point or a favorable position for one side, the side with the highest probability .
In a nutshell, this is more or less how probabilistic statistical trading works.
As Statistical Traders we can never say whether such a Trader/Position we take will be a winner or a loser.
But still we can have a positive and consistent result in a "sequence" of trades, because before we even open a position, backtests have already been performed so we identify an anomaly and build a system that will have a positive statistical advantage in our favor over the market.
The advantage will not be in one trade itself, but in the "sequence" of trades as a whole!
Because our system will work like a casino, having a positive mathematical expectation relative to the players/market.
Design, develop, test models and systems that can take advantage of market anomalies, until they change.
Be the casino! - Mark Douglas
6️⃣ : ❓ Why use a Statistical/Probabilistic system ❓
In recent years I have focused and specialized in developing 100% automated trading systems, essentially for the cryptocurrency market.
I have developed many extremely robust and efficient systems, with positive mathematical expectation towards the market.
These are not complex systems per se , because here we want to avoid 'over-optimization' as much as possible.
As Da Vinci said: "Simplicity is the highest degree of sophistication".
I say this because I have tested, tried and developed hundreds of systems/strategies.
I believe I have programmed more than 10,000 unique indicators/strategies, because this is my passion and purpose in life.
I am passionate about what I do, completely!
I love statistical trading because it is the only way to get consistency in the long run!
This is why I have studied, applied, developed, and specialized in 100% automated cryptocurrency trading systems.
The reason why our systems are extremely "simple" is because, as I mentioned before, in statistical trading we want to exploit the market anomaly to the maximum, that is, this anomaly will change from time to time, usually we can exploit a trading system efficiently for about 6 to 12 months, or for a few years, that is; for fixed 'scalpers' systems.
Because at some point these anomalies will be identified , and from the moment they are identified they will be exploited and will stop being anomalies .
With the system presented here; you can even copy the indicators and input values shared here;
However; what I have to offer you is: it is me , our team , and our community !
That is, we will constantly monitor this system, for life , because our goal here is to create a unique , perpetual , profitable , and consistent system for our community.
Myself , our team and our community will keep this script periodically updated , to ensure the positive mathematical expectation of it.
So we don't mind sharing the current parameters and values , because the real value is also in the future updates that this system will receive from me and our team , guided by our culture and our community of real users !
As we are hosted on 'tradingview', all future updates for this strategy, will be implemented and updated automatically on your tradingview account.
What we want here is: to make sure you get gains from our system, because if you get gains , our ecosystem will grow as a whole in a healthy and scalable way, so we will be generating continuous mutual wealth and raising the collective consciousness .
People Need People: 3️⃣🅿
7️⃣ : ❓ Why the human brain is not prepared to do Trading ❓
Today my greatest skill is to develop statistically profitable and 100% automated strategies for 'pinescript' tradingview.
Note that I said: 'profitable' because in fact statistical trading is the only way to make money in a 'consistent' way from the market.
And consequently have a positive wealth curve every cycle, because we will be based on mathematics, not on feelings and news.
Because the human brain is not prepared to do trading.
Because trading is connected to the decision making of the cerebral cortex.
And the decision making is automatically linked to emotions, and emotions don't match with trading decision making, because in those moments, we can feel the best and also the worst sensations and emotions, and this certainly affects us and makes us commit grotesque mistakes!
That's why the human brain is not prepared to do trading.
If you want to participate in a fully automated, profitable and consistent trading system; be a Titan Pro 👽
I believe we are walking an extremely enriching path here, not only in terms of financial returns for our community, but also in terms of knowledge about probabilistic and automated statistical trading.
You will have access to an extremely robust system, which was built upon very strong concepts and foundations, and upon the world's main asset in a few years: Bitcoin .
We are the tip of the best that exists in the cryptocurrency market when it comes to probabilistic and automated statistical trading.
Result is result! Me being dressed or naked.
This is just the beginning!
But there is a way to consistently make money from the market.
Being the Casino! - Mark Douglas
8️⃣ : ❓ What is Backtest ❓
Imagine the market as a purely random system, but even in 'randomness' there are patterns.
So now imagine the market and statistical trading as follows:
Repeating the above 'coin' example, let's think of it as follows:
If we toss a coin up 10 times again.
It is impossible to know which flips will have heads or tails, correct?
But if we analyze these 10 tosses, then we will have a mathematical statistic of the past result, for example, 70 % of the tosses fell 'heads'.
That is:
7 moves fell on "heads" .
3 moves fell on "tails" .
So based on these conditions and on the generic backtest presented here, we could adopt " heads " as our system of moves, to have a statistical and probabilistic advantage in relation to the next move to be performed.
That is, if you define a system, based on backtests , that has a robust positive mathematical expectation in relation to the market you will have a profitable system.
For every move you make you will have a positive statistical advantage in your favor over the market before you even make the move.
Like a casino in relation to all its players!
The casino does not have an advantage over one specific player, but over all players, because it has a positive mathematical expectation about all the moves that night.
The casino will always have a positive statistical advantage over its players.
Note that there will always be real players who will make real, million-dollar bankrolls that night, but this condition is already built into the casino's 'strategy', which has a pre-determined positive statistical advantage of that night as a whole.
Statistical trading is the same thing, as long as you don't understand this you will keep losing money and consistently.
9️⃣ : ❓ How to build a Consistent system ❓
See most traders around the world perform trades believing that that specific position taken will make them filthy rich, because they simply believe faithfully that the position taken will be an undoubted winner, based on a trader's methodology: 'trading a trade' without analyzing the whole context, just using 'empirical' aspects in their system.
But if you think of trading, as a sequence of moves.
You see, 'a sequence' !
When we think statistically, it doesn't matter your result for this , or for the next specific trade , but the final sequence of trades as a whole.
As the market has a random system of results distribution , if your system has a positive statistical advantage in relation to the market, at the end of that sequence you'll have the biggest probability of having a winning bank.
That's how you do real trading!
And with consistency!
Trading is a long term game, but when you change the key you realize that it is a simple game to make money in a consistent way from the market, all you need is patience.
Even more when we are based on Bitcoin, which has its 'Halving' effect where, in theory, we will never lose money in 3 to 4 years intervals, due to its scarcity and the fact that Bitcoin is the 'discovery of digital scarcity' which makes it the digital gold, we believe in this thesis and we follow Satoshi's legacy.
So align Bitcoin with a probabilistic statistical trading system with a positive mathematical expectation of the market and 100% automated with the long term, and all you need is patience, and you will become rich.
In fact Bitcoin by itself is already a path, buy, wait for each halving and your wealth will be maintained.
No inflation, unlike fiat currencies.
This is a complete and extremely robust strategy, with the most current possible and 'not possible' techniques involved and applied here.
Today I am at another level in developing 100% automated 'quantitative' strategies.
I was born for this!
🔟 : ❓ What is a Quantitative Trading system ❓
In addition to having access to a revolutionary strategy you will have access to disruptive 100% multifunctional tables with the ability to perform 'backtests' for better tracking and monitoring of your system on a customized basis.
I would like to emphasize one thing, and that is that you keep this in mind.
Today my greatest skill in 'pinescript' is to build indicators, but mainly strategies, based on statistical and probabilistic trading, with a postive mathematical expectation in relation to the market, in a 100% automated way.
This with the goal of building a consistent and continuous positive equity curve through mathematics using data, converting it into statistical / probabilistic parameters and applying them to a Quantitative model.
Before becoming a Quantitative Trader , I was a Technical Analyst and a Discretionary Trader .
First as a position trader and then as a day trader.
Before becoming a Trader, I trained myself as a Technical Analyst , to masterly understand the shape and workings of the market in theory.
But everything changed when I met 'Mark Douglas' , when I got to know his works, that's when my head exploded 🤯, and I started to understand the market for good!
The market is nothing more than a 'random' system of distributing results.
See that I said: 'random' .
Do yourself a mental exercise.
Is there really such a thing as random ?
I believe not, as far as we know maybe the 'singularity'.
So thinking this way, to translate, the market is nothing more than a game of probability, statistics and pure mathematics.
Like a casino!
What happens is that most traders, whenever they take a position, take it with all the empirical certainty that such position will win or lose, and do not take into consideration the total sequence of results to understand their place in the market.
Understanding your place in the market gives you the ability to create and design systems that can exploit the present market anomaly, and thus make money statistically, consistently, and 100% automated.
Thinking of it this way, it is easy to make money from the market.
There are many ways to make money from the market, but the only consistent way I know of is through 'probabilistic and automated statistical trading'.
1️⃣1️⃣ : ❓ How to build a Quantitative Trading system ❓
There are some fundamental points that must be addressed here in order to understand what makes up a system based on statistics and probability applied to a quantitative model.
When we talk about 'discretionary' trading, it is a trading system based on human decisions after the defined 'empirical' conditions are met.
It is quite another thing to build a fully automated system without any human interference/interaction .
That said:
Building a statistically profitable system is perfectly possible, but this is a high level task , but with possible high rewards and consistent gains.
Here you will find a real "Skin In The Game" strategy.
With all due respect, but the vast majority of traders who post strategies on TradingView do not understand what they are doing.
Most of them do not understand the minimum complexity involved in the main variable for the construction of a real strategy, the mother variable: "strategy".
I say this by my own experience, because I have analyzed practically all the existing publications of TradingView + 200,000 indicators and strategies.
I breathe pinescript, I eat pinescript, I sleep pinescript, I bathe pinescript, I live TradingView.
But the main advantage for the TradingView users, is that all entry and exit orders made by this strategy can be checked and analyzed thoroughly, to validate and prove the veracity of this strategy, because this is a 100% real strategy.
Here there is a huge world of possibilities, but only one way to build a 'pinescript strategy' that will work correctly aligned to the real world with real results .
There are some fundamental points to take into consideration when building a profitable trading system:
The most important of these for me is: 'DrawDown' .
Followed by: 'Hit Rate' .
And only after that we use the parameter: 'Profit'.
See, this is because here, we are dealing with the 'imponderable' , and anything can happen in this scenario.
But there is one thing that makes us sleep peacefully at night, and that is: controlling losses .
That is, in other words: controlling the DrawDown .
The amateur is concerned with 'winning', the professional is concerned with conserving capital.
If we have the losses under control, then we can move on to the other two parameters: hit rate and profit.
See, the second most important factor in building a system is the hit rate.
I say this from my own experience.
I have worked with many systems with a 'low hit rate', but extremely profitable.
For example: systems with hit rates of 40 to 50%.
But as much as statistically and mathematically the profit is rewarding, operating systems with a low hit rate is always very stressful psychologically.
That's why there are two big reasons why when I build an automated trading system, I focus on the high hit rate of the system, they are
1 - To reduce psychological damage as much as possible .
2 - And more important , when we create a system with a 'high hit rate' , there is a huge intrinsic advantage here, that most statistic traders don't take in consideration.
That is: knowing more quickly when the system stops being functional.
The main advantage of a system with a high hit rate is: to identify when the system stops being functional and stop exploiting the market's anomaly.
Look: When we are talking about trading and random distribution of results on the market, do you agree that when we create a trading system, we are focused on exploring some anomaly of that market?
When that anomaly is verified by the market, it will stop being functional with time.
That's why trading systems, 'scalpers', especially for cryptocurrencies, need constant monitoring, quarterly, semi-annually or annually.
Because market movements change from time to time.
Because we go through different cycles from time to time, such as congestion cycles, accumulation , distribution , volatility , uptrends and downtrends .
1️⃣2️⃣ : ❓ How to Exploit Market Anomalies ❓
You see there is a very important point that must be stressed here.
As we are always trying to exploit an 'anomaly' in the market.
So the 'number' of indicators/tools that will integrate the system is of paramount importance.
But most traders do not take this into consideration.
To build a professional, robust, consistent, and profitable system, you don't need to use hundreds of indicators to build your setup.
This will actually make it harder to read when the setup stops working and needs some adjustment.
So focusing on a high hit rate is very important here, this is a fundamental principle that is widely ignored , and with a high hit rate, we can know much more accurately when the system is no longer functional much faster.
As Darwin said: "It is not the strongest or the most intelligent that wins the game of life, it is the most adapted.
So simple systems, as contradictory as it may seem, are more efficient, because they help to identify inflection points in the market much more quickly.
1️⃣3️⃣ : ❓ What Defines a Robust, Profitable and Consistent System ❓
See I have built, hundreds of thousands of indicators and 'pinescript' strategies, hundreds of thousands.
This is an extremely professional, robust and profitable system.
Based on the currency pairs: BTC /USDT
There are many ways and avenues to build a profitable trading setup/system.
And actually this is not a difficult task, taking in consideration, as the main factor here, that our trading and investment plan is for the long term, so consequently we will face scenarios with less noise.
He who is in a hurry eats raw.
As mentioned before.
Defining trends in pinescript is technically a simple task, the hardest task is to determine congestion zones with low volume and volatility, it's in these moments that many false signals are generated, and consequently is where most setups face their maximum DrawDown.
That's why this strategy was strictly and thoroughly planned, built on a very solid foundation, to avoid as much noise as possible, for a positive and consistent equity curve in each market cycle, 'Consistency' is our 'Mantra' around here.
1️⃣4️⃣ : 🔧 Fixed Technical
• Strategy: Titan Investments|Quantitative THEMIS|Pro|BINANCE:BTCUSDTP:4h
• Pair: BTC/USDTP
• Time Frame: 4 hours
• Broker: Binance (Recommended)
For a more conservative scenario, we have built the Quantitative THEMIS for the 4h time frame, with the main focus on consistency.
So we can avoid noise as much as possible!
1️⃣5️⃣ : ❌ Fixed Outputs : 🎯 TP(%) & 🛑SL(%)
In order to build a 'perpetual' system specific to BTC/USDT, it took a lot of testing, and more testing, and a lot of investment and research.
There is one initial and fundamental point that we can address to justify the incredible consistency presented here.
That fundamental point is our exit via Take Profit or Stop Loss percentage (%).
🎯 Take Profit (%)
🛑 Stop Loss (%)
See, today I have been testing some more advanced backtesting models for some cryptocurrency systems.
In which I perform 'backtest of backtest', i.e. we use a set of strategies each focused on a principle, operating individually, but they are part of something unique, i.e. we do 'backtests' of 'backtests' together.
What I mean is that we do a lot of backtesting around here.
I can assure you, that always the best output for a trading system is to set fixed output values!
In other words:
🎯 Take Profit (%)
🛑 Stop Loss (%)
This happens because statistically setting fixed exit structures in the vast majority of times, presents a superior result on the capital/equity curve, throughout history and for the vast majority of setups compared to other exit methods.
This is due to a mathematical principle of simplicity, 'avoiding more noise'.
Thus whenever the Quantitative THEMIS strategy takes a position it has a target and a defined maximum stop percentage.
1️⃣6️⃣ : ⚠️ Risk Profile
The strategy, currently has 3 risk profiles ⚠️ patterns for 'fixed percentage exits': Take Profit (%) and Stop Loss (%) .
They are: ⚠️ Rich's Profiles
✔️🆑 Conservative: 🎯 TP=2.7 % 🛑 SL=2.7 %
❌Ⓜ️ Moderate: 🎯 TP=2.8 % 🛑 SL=2.7 %
❌🅰 Aggressive: 🎯 TP=1.6 % 🛑 SL=6.9 %
You will be able to select and switch between the above options and profiles through the 'input' menu of the strategy by navigating to the "⚠️ Risk Profile" menu.
You can then select, test and apply the Risk Profile above that best suits your risk management, expectations and reality , as well as customize all the 'fixed exit' values through the TP and SL menus below.
1️⃣7️⃣ : ⭕ Moving Exits : (Indicators)
The strategy currently also has 'Moving Exits' based on indicator signals.
These are Moving Exits (Indicators)
📈 LONG : (EXIT)
🧃 (MAO) Short : true
📉 SHORT : (EXIT)
🧃 (MAO) Long: false
You can select and toggle between the above options through the 'input' menu of the strategy by navigating to the "LONG : Exit" and "SHORT : Exit" menu.
1️⃣8️⃣ : 💸 Initial Capital
By default the "Initial Capital" set for entries and backtests of this strategy is: 10000 $
You can set another value for the 'Starting Capital' through the tradingview menu under "properties" , and edit the value of the "Initial Capital" field.
This way you can set and test other 'Entry Values' for your trades, tests and backtests.
1️⃣9️⃣ : ⚙️ Entry Options
By default the 'order size' set for this strategy is 100 % of the 'initial capital' on each new trade.
You can set and test other entry options like : contracts , cash , % of equity
You should make these changes directly in the input menu of the strategy by navigating to the menu "⚙️ Properties : TradingView" below.
⚙️ Properties : (TradingView)
📊 Strategy Type: strategy.position_size != 1
📝💲 % Order Type: % of equity
📝💲 % Order Size: 100
Leverage: 1
So you can define and test other 'Entry Options' for your trades, tests and backtests.
2️⃣0️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Third-Party Services'
It is possible to automate the signals of this strategy for any centralized or decentralized broker, as well as for messaging services: Discord, Telegram and Twitter.
All in an extremely simple and uncomplicated way through the tutorials available in PDF /VIDEO for our Titan Pro 👽 subscriber community.
With our tutorials in PDF and Video it will be possible to automate the signals of this strategy for the chosen service in an extremely simple way with less than 10 steps only.
Tradingview naturally doesn't count with native integration between brokers and tradingview.
But it is possible to use 'third party services' to do the integration and automation between Tradingview and your centralized or decentralized broker.
Here are the standard, available and recommended 'third party services' to automate the signals from the 'Quantitative THEMIS' strategy on the tradingview for your broker:
1) Wundertrading (Recommended):
2) 3commas:
3) Zignaly:
4) Aleeert.com (Recommended):
5) Alertatron:
Note! 'Third party services' cannot perform 'withdrawals' via their key 'API', they can only open positions, so your funds will always be 'safe' in your brokerage firm, being traded via the 'API', when they receive an entry and exit signal from this strategy.
2️⃣1️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Exchanges
You can automate this strategy for any of the brokers below, through your broker's 'API' by connecting it to the 'third party automation services' for tradingview available and mentioned in the menu above:
1) Binance (Recommended)
2) Bitmex
3) Bybit
4) KuCoin
5) Deribit
6) OKX
7) Coinbase
8) Huobi
9) Bitfinex
10) Bitget
11) Bittrex
12) Bitstamp
13) Gate. io
14) Kraken
15) Gemini
16) Ascendex
17) VCCE
2️⃣2️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Messaging Services'
You can also automate and monitor the signals of this strategy much more efficiently by sending them to the following popular messaging services:
1) Discord
2) Telegram
3) Twitter
2️⃣3️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : '🧲🤖Copy-Trading'
It will also be possible to copy/replicate the entries and exits of this strategy to your broker in an extremely simple and agile way, through the available copy-trader services.
This way it will be possible to replicate the signals of this strategy at each entry and exit to your broker through the API connecting it to the integrated copy-trader services available through the tradingview automation services below:
1) Wundetrading:
2) Zignaly:
2️⃣4️⃣ : ❔ Why be a Titan Pro 👽❔
I believe that today I am at another level in 'pinescript' development.
I consider myself today a true unicorn as a pinescript developer, someone unique and very rare.
If you choose another tool or another pinescript service, this tool will be just another one, with no real results.
But if you join our Titan community, you will have access to a unique tool! And you will get real results!
I already earn money consistently with statistical and automated trading and as an expert pinescript developer.
I am here to evolve my skills as much as possible, and one day become a pinescript 'Wizard'.
So excellence, quality and professionalism will always be my north here.
You will never find a developer like me, and who will take so seriously such a revolutionary project as this one. A Maverick! ▬ The man never stops!
Here you will find the highest degree of sophistication and development in the market for 'pinescript'.
You will get the best of me and the best of pinescript possible.
Let me show you how a professional in my field does it.
Become a Titan Pro Member 👽 and get Full Access to this strategy and all the Automation Tutorials.
Be the Titan in your life!
2️⃣5️⃣ : ❔ Why be a Titan Aff 🛸❔
Get financial return for your referrals, Decentralize the World, and raise the collective consciousness.
2️⃣6️⃣ : 📋 Summary : ⚖️ Strategy: Titan Investments|Quantitative THEMIS|Pro|BINANCE:BTCUSDTP:4h
® Titan Investimentos | Quantitative THEMIS ⚖️ | Pro 👽 2.6 | Dev: © FilipeSoh 🧙 | 🤖 100% Automated : Discord, Telegram, Twitter, Wundertrading, 3commas, Zignaly, Aleeert, Alertatron, Uniswap-v3 | BINANCE:BTCUSDTPERP 4h
🛒 Subscribe this strategy ❗️ Be a Titan Member 🏛️
🛒 Titan Pro 👽 🏛️ Titan Pro 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
🛒 Titan Affiliate 🛸 🏛️ Titan Affiliate 🛸 (Subscription Sale) 🔥 Receive 50% commission
📋 Summary : QT THEMIS ⚖️
🕵️♂️ Check This Strategy..................................................................0
🦄 ® Titan Investimentos...............................................................1
👨💻 © Developer..........................................................................2
📚 Signal Automation Tutorials : (PDF/VIDEO).......................................3
👨🔧 Revision...............................................................................4
📊 Table : (BACKTEST)..................................................................5
📊 Table : (INFORMATIONS).............................................................6
⚙️ Properties : (TRADINGVIEW)........................................................7
📆 Backtest : (TRADINGVIEW)..........................................................8
⚠️ Risk Profile...........................................................................9
🟢 On 🔴 Off : (LONG/SHORT).......................................................10
📈 LONG : (ENTRY)....................................................................11
📉 SHORT : (ENTRY)...................................................................12
📈 LONG : (EXIT).......................................................................13
📉 SHORT : (EXIT)......................................................................14
🧩 (EI) External Indicator.............................................................15
📡 (QT) Quantitative...................................................................16
🎠 (FF) Forecast......................................................................17
🅱 (BB) Bollinger Bands................................................................18
🧃 (MAP) Moving Average Primary......................................................19
🧃 (MAP) Labels.........................................................................20
🍔 (MAQ) Moving Average Quaternary.................................................21
🍟 (MACD) Moving Average Convergence Divergence...............................22
📣 (VWAP) Volume Weighted Average Price........................................23
🪀 (HL) HILO..........................................................................24
🅾 (OBV) On Balance Volume.........................................................25
🥊 (SAR) Stop and Reverse...........................................................26
🛡️ (DSR) Dynamic Support and Resistance..........................................27
🔊 (VD) Volume Directional..........................................................28
🧰 (RSI) Relative Momentum Index.................................................29
🎯 (TP) Take Profit %..................................................................30
🛑 (SL) Stop Loss %....................................................................31
🤖 Automation Selected...............................................................32
📱💻 Discord............................................................................33
📱💻 Telegram..........................................................................34
📱💻 Twitter...........................................................................35
🤖 Wundertrading......................................................................36
🤖 3commas............................................................................37
🤖 Zignaly...............................................................................38
🤖 Aleeert...............................................................................39
🤖 Alertatron...........................................................................40
🤖 Uniswap-v3..........................................................................41
🧲🤖 Copy-Trading....................................................................42
♻️ ® No Repaint........................................................................43
🔒 Copyright ©️..........................................................................44
🏛️ Be a Titan Member..................................................................45
Nº Active Users..........................................................................46
⏱ Time Left............................................................................47
| 0 | 🕵️♂️ Check This Strategy
🕵️♂️ Version Demo: 🐄 Version with ❌non-integrated automation 🤖 and 📚 Tutorials for automation ❌not available
🕵️♂️ Version Pro: 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
| 1 | 🦄 ® Titan Investimentos
Decentralizing the World 🗺
Raising the Collective Conscience 🗺
🦄Site:
🦄TradingView: www.tradingview.com
🦄Discord:
🦄Telegram:
🦄Youtube:
🦄Twitter:
🦄Instagram:
🦄TikTok:
🦄Linkedin:
🦄E-mail:
| 2 | 👨💻 © Developer
🧠 Developer: @FilipeSoh🧙
📺 TradingView: www.tradingview.com
☑️ Linkedin:
✅ Fiverr:
✅ Upwork:
🎥 YouTube:
🐤 Twitter:
🤳 Instagram:
| 3 | 📚 Signal Automation Tutorials : (PDF/VIDEO)
📚 Discord: 🔗 Link: 🔒Titan Pro👽
📚 Telegram: 🔗 Link: 🔒Titan Pro👽
📚 Twitter: 🔗 Link: 🔒Titan Pro👽
📚 Wundertrading: 🔗 Link: 🔒Titan Pro👽
📚 3comnas: 🔗 Link: 🔒Titan Pro👽
📚 Zignaly: 🔗 Link: 🔒Titan Pro👽
📚 Aleeert: 🔗 Link: 🔒Titan Pro👽
📚 Alertatron: 🔗 Link: 🔒Titan Pro👽
📚 Uniswap-v3: 🔗 Link: 🔒Titan Pro👽
📚 Copy-Trading: 🔗 Link: 🔒Titan Pro👽
| 4 | 👨🔧 Revision
👨🔧 Start Of Operations: 01 Jan 2019 21:00 -0300 💡 Start Of Operations (Skin in the game) : Revision 1.0
👨🔧 Previous Review: 01 Jan 2022 21:00 -0300 💡 Previous Review : Revision 2.0
👨🔧 Current Revision: 01 Jan 2023 21:00 -0300 💡 Current Revision : Revision 2.6
👨🔧 Next Revision: 28 May 2023 21:00 -0300 💡 Next Revision : Revision 2.7
| 5 | 📊 Table : (BACKTEST)
📊 Table: true
🖌️ Style: label.style_label_left
📐 Size: size_small
📏 Line: defval
🎨 Color: #131722
| 6 | 📊 Table : (INFORMATIONS)
📊 Table: false
🖌️ Style: label.style_label_right
📐 Size: size_small
📏 Line: defval
🎨 Color: #131722
| 7 | ⚙️ Properties : (TradingView)
📊 Strategy Type: strategy.position_size != 1
📝💲 % Order Type: % of equity
📝💲 % Order Size: 100 %
🚀 Leverage: 1
| 8 | 📆 Backtest : (TradingView)
🗓️ Mon: true
🗓️ Tue: true
🗓️ Wed: true
🗓️ Thu: true
🗓️ Fri: true
🗓️ Sat: true
🗓️ Sun: true
📆 Range: custom
📆 Start: UTC 31 Oct 2008 00:00
📆 End: UTC 31 Oct 2030 23:45
📆 Session: 0000-0000
📆 UTC: UTC
| 9 | ⚠️ Risk Profile
✔️🆑 Conservative: 🎯 TP=2.7 % 🛑 SL=2.7 %
❌Ⓜ️ Moderate: 🎯 TP=2.8 % 🛑 SL=2.7 %
❌🅰 Aggressive: 🎯 TP=1.6 % 🛑 SL=6.9 %
| 10 | 🟢 On 🔴 Off : (LONG/SHORT)
🟢📈 LONG: true
🟢📉 SHORT: true
| 11 | 📈 LONG : (ENTRY)
📡 (QT) Long: true
🧃 (MAP) Long: false
🅱 (BB) Long: false
🍟 (MACD) Long: false
🅾 (OBV) Long: false
| 12 | 📉 SHORT : (ENTRY)
📡 (QT) Short: true
🧃 (MAP) Short: false
🅱 (BB) Short: false
🍟 (MACD) Short: false
🅾 (OBV) Short: false
| 13 | 📈 LONG : (EXIT)
🧃 (MAP) Short: true
| 14 | 📉 SHORT : (EXIT)
🧃 (MAP) Long: false
| 15 | 🧩 (EI) External Indicator
🧩 (EI) Connect your external indicator/filter: false
🧩 (EI) Connect your indicator here (Study mode only): close
🧩 (EI) Connect your indicator here (Study mode only): close
| 16 | 📡 (QT) Quantitative
📡 (QT) Quantitative: true
📡 (QT) Market: BINANCE:BTCUSDTPERP
📡 (QT) Dice: openai
| 17 | 🎠 (FF) Forecast
🎠 (FF) Include current unclosed current candle: true
🎠 (FF) Forecast Type: flat
🎠 (FF) Nº of candles to use in linear regression: 3
| 18 | 🅱 (BB) Bollinger Bands
🅱 (BB) Bollinger Bands: true
🅱 (BB) Type: EMA
🅱 (BB) Period: 20
🅱 (BB) Source: close
🅱 (BB) Multiplier: 2
🅱 (BB) Linewidth: 0
🅱 (BB) Color: #131722
| 19 | 🧃 (MAP) Moving Average Primary
🧃 (MAP) Moving Average Primary: true
🧃 (MAP) BarColor: false
🧃 (MAP) Background: false
🧃 (MAP) Type: SMA
🧃 (MAP) Source: open
🧃 (MAP) Period: 100
🧃 (MAP) Multiplier: 2.0
🧃 (MAP) Linewidth: 2
🧃 (MAP) Color P: #42bda8
🧃 (MAP) Color N: #801922
| 20 | 🧃 (MAP) Labels
🧃 (MAP) Labels: true
🧃 (MAP) Style BUY ZONE: shape.labelup
🧃 (MAP) Color BUY ZONE: #42bda8
🧃 (MAP) Style SELL ZONE: shape.labeldown
🧃 (MAP) Color SELL ZONE: #801922
| 21 | 🍔 (MAQ) Moving Average Quaternary
🍔 (MAQ) Moving Average Quaternary: true
🍔 (MAQ) BarColor: false
🍔 (MAQ) Background: false
🍔 (MAQ) Type: SMA
🍔 (MAQ) Source: close
🍔 (MAQ) Primary: 14
🍔 (MAQ) Secondary: 22
🍔 (MAQ) Tertiary: 44
🍔 (MAQ) Quaternary: 16
🍔 (MAQ) Linewidth: 0
🍔 (MAQ) Color P: #42bda8
🍔 (MAQ) Color N: #801922
| 22 | 🍟 (MACD) Moving Average Convergence Divergence
🍟 (MACD) Macd Type: EMA
🍟 (MACD) Signal Type: EMA
🍟 (MACD) Source: close
🍟 (MACD) Fast: 12
🍟 (MACD) Slow: 26
🍟 (MACD) Smoothing: 9
| 23 | 📣 (VWAP) Volume Weighted Average Price
📣 (VWAP) Source: close
📣 (VWAP) Period: 340
📣 (VWAP) Momentum A: 84
📣 (VWAP) Momentum B: 150
📣 (VWAP) Average Volume: 1
📣 (VWAP) Multiplier: 1
📣 (VWAP) Diviser: 2
| 24 | 🪀 (HL) HILO
🪀 (HL) Type: SMA
🪀 (HL) Function: Maverick🧙
🪀 (HL) Source H: high
🪀 (HL) Source L: low
🪀 (HL) Period: 20
🪀 (HL) Momentum: 26
🪀 (HL) Diviser: 2
🪀 (HL) Multiplier: 1
| 25 | 🅾 (OBV) On Balance Volume
🅾 (OBV) Type: EMA
🅾 (OBV) Source: close
🅾 (OBV) Period: 16
🅾 (OBV) Diviser: 2
🅾 (OBV) Multiplier: 1
| 26 | 🥊 (SAR) Stop and Reverse
🥊 (SAR) Source: close
🥊 (SAR) High: 1.8
🥊 (SAR) Mid: 1.6
🥊 (SAR) Low: 1.6
🥊 (SAR) Diviser: 2
🥊 (SAR) Multiplier: 1
| 27 | 🛡️ (DSR) Dynamic Support and Resistance
🛡️ (DSR) Source D: close
🛡️ (DSR) Source R: high
🛡️ (DSR) Source S: low
🛡️ (DSR) Momentum R: 0
🛡️ (DSR) Momentum S: 2
🛡️ (DSR) Diviser: 2
🛡️ (DSR) Multiplier: 1
| 28 | 🔊 (VD) Volume Directional
🔊 (VD) Type: SMA
🔊 (VD) Period: 68
🔊 (VD) Momentum: 3.8
🔊 (VD) Diviser: 2
🔊 (VD) Multiplier: 1
| 29 | 🧰 (RSI) Relative Momentum Index
🧰 (RSI) Type UP: EMA
🧰 (RSI) Type DOWN: EMA
🧰 (RSI) Source: close
🧰 (RSI) Period: 29
🧰 (RSI) Smoothing: 22
🧰 (RSI) Momentum R: 64
🧰 (RSI) Momentum S: 142
🧰 (RSI) Diviser: 2
🧰 (RSI) Multiplier: 1
| 30 | 🎯 (TP) Take Profit %
🎯 (TP) Take Profit: false
🎯 (TP) %: 2.2
🎯 (TP) Color: #42bda8
🎯 (TP) Linewidth: 1
| 31 | 🛑 (SL) Stop Loss %
🛑 (SL) Stop Loss: false
🛑 (SL) %: 2.7
🛑 (SL) Color: #801922
🛑 (SL) Linewidth: 1
| 32 | 🤖 Automation : Discord | Telegram | Twitter | Wundertrading | 3commas | Zignaly | Aleeert | Alertatron | Uniswap-v3
🤖 Automation Selected : Discord
| 33 | 🤖 Discord
🔗 Link Discord: discord.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Discord ▬ Enter Long: 🔒Titan Pro👽
📱💻 Discord ▬ Exit Long: 🔒Titan Pro👽
📱💻 Discord ▬ Enter Short: 🔒Titan Pro👽
📱💻 Discord ▬ Exit Short: 🔒Titan Pro👽
| 34 | 🤖 Telegram
🔗 Link Telegram: telegram.org
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Telegram ▬ Enter Long: 🔒Titan Pro👽
📱💻 Telegram ▬ Exit Long: 🔒Titan Pro👽
📱💻 Telegram ▬ Enter Short: 🔒Titan Pro👽
📱💻 Telegram ▬ Exit Short: 🔒Titan Pro👽
| 35 | 🤖 Twitter
🔗 Link Twitter: twitter.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Twitter ▬ Enter Long: 🔒Titan Pro👽
📱💻 Twitter ▬ Exit Long: 🔒Titan Pro👽
📱💻 Twitter ▬ Enter Short: 🔒Titan Pro👽
📱💻 Twitter ▬ Exit Short: 🔒Titan Pro👽
| 36 | 🤖 Wundertrading : Binance | Bitmex | Bybit | KuCoin | Deribit | OKX | Coinbase | Huobi | Bitfinex | Bitget
🔗 Link Wundertrading: wundertrading.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Enter Long: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Exit Long: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Enter Short: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Exit Short: 🔒Titan Pro👽
| 37 | 🤖 3commas : Binance | Bybit | OKX | Bitfinex | Coinbase | Deribit | Bitmex | Bittrex | Bitstamp | Gate.io | Kraken | Gemini | Huobi | KuCoin
🔗 Link 3commas: 3commas.io
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 3commas ▬ Enter Long: 🔒Titan Pro👽
📱💻 3commas ▬ Exit Long: 🔒Titan Pro👽
📱💻 3commas ▬ Enter Short: 🔒Titan Pro👽
📱💻 3commas ▬ Exit Short: 🔒Titan Pro👽
| 38 | 🤖 Zignaly : Binance | Ascendex | Bitmex | Kucoin | VCCE
🔗 Link Zignaly: zignaly.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
🤖 Type Automation: Profit Sharing
🤖 Type Provider: Webook
🔑 Key: 🔒Titan Pro👽
🤖 pair: BTCUSDTP
🤖 exchange: binance
🤖 exchangeAccountType: futures
🤖 orderType: market
🚀 leverage: 1x
% positionSizePercentage: 100 %
💸 positionSizeQuote: 10000 $
🆔 signalId: @Signal1234
| 39 | 🤖 Aleeert : Binance
🔗 Link Aleeert: aleeert.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Aleeert ▬ Enter Long: 🔒Titan Pro👽
📱💻 Aleeert ▬ Exit Long: 🔒Titan Pro👽
📱💻 Aleeert ▬ Enter Short: 🔒Titan Pro👽
📱💻 Aleeert ▬ Exit Short: 🔒Titan Pro👽
| 40 | 🤖 Alertatron : Binance | Bybit | Deribit | Bitmex
🔗 Link Alertatron: alertatron.com
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Alertatron ▬ Enter Long: 🔒Titan Pro👽
📱💻 Alertatron ▬ Exit Long: 🔒Titan Pro👽
📱💻 Alertatron ▬ Enter Short: 🔒Titan Pro👽
📱💻 Alertatron ▬ Exit Short: 🔒Titan Pro👽
| 41 | 🤖 Uniswap-v3
🔗 Link Alertatron: uniswap.org
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Enter Long: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Exit Long: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Enter Short: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Exit Short: 🔒Titan Pro👽
| 42 | 🧲🤖 Copy-Trading : Zignaly | Wundertrading
🔗 Link 📚 Copy-Trading: 🔒Titan Pro👽
🧲🤖 Copy-Trading ▬ Zignaly: 🔒Titan Pro👽
🧲🤖 Copy-Trading ▬ Wundertrading: 🔒Titan Pro👽
| 43 | ♻️ ® Don't Repaint!
♻️ This Strategy does not Repaint!: ® Signs Do not repaint❕
♻️ This is a Real Strategy!: Quality : ® Titan Investimentos
📋️️ Get more information about Repainting here:
| 44 | 🔒 Copyright ©️
🔒 Copyright ©️: Copyright © 2023-2024 All rights reserved, ® Titan Investimentos
🔒 Copyright ©️: ® Titan Investimentos
🔒 Copyright ©️: Unique and Exclusive Strategy. All rights reserved
| 45 | 🏛️ Be a Titan Members
🏛️ Titan Pro 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
🏛️ Titan Affiliate 🛸 (Subscription Sale) 🔥 Receive 50% commission
| 46 | ⏱ Time Left
Time Left Titan Demo 🐄: ⏱♾ | ⏱ : ♾ Titan Demo 🐄 Version with ❌non-integrated automation 🤖 and 📚 Tutorials for automation ❌not available
Time Left Titan Pro 👽: 🔒Titan Pro👽 | ⏱ : Pro Plans: 30 Days, 90 Days, 12 Months, 24 Months. (👽 Pro 🅼 Monthly, 👽 Pro 🆀 Quarterly, 👽 Pro🅰 Annual, 👽 Pro👾Two Years)
| 47 | Nº Active Users
Nº Active Subscribers Titan Pro 👽: 5️⃣6️⃣ | 1✔️ 5✔️ 10✔️ 100❌ 1K❌ 10K❌ 50K❌ 100K❌ 1M❌ 10M❌ 100M❌ : ⏱ Active Users is updated every 24 hours (Check on indicator)
Nº Active Affiliates Titan Aff 🛸: 6️⃣ | 1✔️ 5✔️ 10❌ 100❌ 1K❌ 10K❌ 50K❌ 100K❌ 1M❌ 10M❌ 100M❌ : ⏱ Active Users is updated every 24 hours (Check on indicator)
2️⃣7️⃣ : 📊 PERFORMANCE : 🆑 Conservative
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: 🆑 Conservative: 🎯 TP=2.7 % | 🛑 SL=2.7 %
• 📆All years: 🆑 Conservative: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 1669.89 %
💲 + 166989.43 USD
Total Close Trades:
⚪️ 369
Percent Profitable:
🟡 64.77 %
Profit Factor:
🟢 2.314
DrawDrown Maximum:
🔴 -24.82 %
💲 -10221.43 USD
Avg Trade:
💲 + 452.55 USD
✔️ Trades Winning: 239
❌ Trades Losing: 130
✔️ Average Gross Win: + 12.31 %
❌ Average Gross Loss: - 9.78 %
✔️ Maximum Consecutive Wins: 9
❌ Maximum Consecutive Losses: 6
% Average Gain Annual: 499.33 %
% Average Gain Monthly: 41.61 %
% Average Gain Weekly: 9.6 %
% Average Gain Day: 1.37 %
💲 Average Gain Annual: 49933 $
💲 Average Gain Monthly: 4161 $
💲 Average Gain Weekly: 960 $
💲 Average Gain Day: 137 $
• 📆 Year: 2020: 🆑 Conservative: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: 🆑 Conservative: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: 🆑 Conservative: 🚀 Leverage 1️⃣x
2️⃣8️⃣ : 📊 PERFORMANCE : Ⓜ️ Moderate
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: Ⓜ️ Moderate: 🎯 TP=2.8 % | 🛑 SL=2.7 %
• 📆 All years: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 1472.04 %
💲 + 147199.89 USD
Total Close Trades:
⚪️ 362
Percent Profitable:
🟡 63.26 %
Profit Factor:
🟢 2.192
DrawDrown Maximum:
🔴 -22.69 %
💲 -9269.33 USD
Avg Trade:
💲 + 406.63 USD
✔️ Trades Winning: 229
❌ Trades Losing : 133
✔️ Average Gross Win: + 11.82 %
❌ Average Gross Loss: - 9.29 %
✔️ Maximum Consecutive Wins: 9
❌ Maximum Consecutive Losses: 8
% Average Gain Annual: 440.15 %
% Average Gain Monthly: 36.68 %
% Average Gain Weekly: 8.46 %
% Average Gain Day: 1.21 %
💲 Average Gain Annual: 44015 $
💲 Average Gain Monthly: 3668 $
💲 Average Gain Weekly: 846 $
💲 Average Gain Day: 121 $
• 📆 Year: 2020: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
2️⃣9️⃣ : 📊 PERFORMANCE : 🅰 Aggressive
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: 🅰 Aggressive: 🎯 TP=1.6 % | 🛑 SL=6.9 %
• 📆 All years: 🅰 Aggressive: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 989.38 %
💲 + 98938.38 USD
Total Close Trades:
⚪️ 380
Percent Profitable:
🟢 84.47 %
Profit Factor:
🟢 2.156
DrawDrown Maximum:
🔴 -17.88 %
💲 -9182.84 USD
Avg Trade:
💲 + 260.36 USD
✔️ Trades Winning: 321
❌ Trades Losing: 59
✔️ Average Gross Win: + 5.75 %
❌ Average Gross Loss: - 14.51 %
✔️ Maximum Consecutive Wins: 21
❌ Maximum Consecutive Losses: 6
% Average Gain Annual: 295.84 %
% Average Gain Monthly: 24.65 %
% Average Gain Weekly: 5.69 %
% Average Gain Day: 0.81 %
💲 Average Gain Annual: 29584 $
💲 Average Gain Monthly: 2465 $
💲 Average Gain Weekly: 569 $
💲 Average Gain Day: 81 $
• 📆 Year: 2020: 🅰 Aggressive: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: 🅰 Aggressive: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: 🅰 Aggressive: 🚀 Leverage 1️⃣x
3️⃣0️⃣ : 🛠️ Roadmap
🛠️• 14/ 01 /2023 : Titan THEMIS Launch
🛠️• Updates January/2023 :
• 📚 Tutorials for Automation 🤖 already Available : ✔️
• ✔️ Discord
• ✔️ Wundertrading
• ✔️ Zignaly
• 📚 Tutorials for Automation 🤖 In Preparation : ⭕
• ⭕ Telegram
• ⭕ Twitter
• ⭕ 3comnas
• ⭕ Aleeert
• ⭕ Alertatron
• ⭕ Uniswap-v3
• ⭕ Copy-Trading
🛠️• Updates February/2023 :
• 📰 Launch of advertising material for Titan Affiliates 🛸
• 🛍️🎥🖼️📊 (Sales Page/VSL/Videos/Creative/Infographics)
🛠️• 28/05/2023 : Titan THEMIS update ▬ Version 2.7
🛠️• 28/05/2023 : BOT BOB release ▬ Version 1.0
• (Native Titan THEMIS Automation - Through BOT BOB, a bot for automation of signals, indicators and strategies of TradingView, of own code ▬ in validation.
• BOT BOB
Automation/Connection :
• API - For Centralized Brokers.
• Smart Contracts - Wallet Web - For Decentralized Brokers.
• This way users can automate any indicator or strategy of TradingView and Titan in a decentralized, secure and simplified way.
• Without having the need to use 'third party services' for automating TradingView indicators and strategies like the ones available above.
🛠️• 28/05/2023 : Release ▬ Titan Culture Guide 📝
3️⃣1️⃣ : 🧻 Notes ❕
🧻 • Note ❕ The "Demo 🐄" version, ❌does not have 'integrated automation', to automate the signals of this strategy and enjoy a fully automated system, you need to have access to the Pro version with '100% integrated automation' and all the tutorials for automation available. Become a Titan Pro 👽
🧻 • Note ❕ You will also need to be a "Pro User or higher on Tradingview", to be able to use the webhook feature available only for 'paid' profiles on the platform.
With the webhook feature it is possible to send the signals of this strategy to almost anywhere, in our case to centralized or decentralized brokerages, also to popular messaging services such as: Discord, Telegram or Twiter.
3️⃣2️⃣ : 🚨 Disclaimer ❕❗
🚨 • Disclaimer ❕❕ Past positive result and performance of a system does not guarantee its positive result and performance for the future!
🚨 • Disclaimer ❗❗❗ When using this strategy: Titan Investments is totally Exempt from any claim of liability for losses. The responsibility on the management of your funds is solely yours. This is a very high risk/volatility market! Understand your place in the market.
3️⃣3️⃣ : ♻️ ® No Repaint
This Strategy does not Repaint! This is a real strategy!
3️⃣4️⃣ : 🔒 Copyright ©️
Copyright © 2022-2023 All rights reserved, ® Titan Investimentos
3️⃣5️⃣ : 👏 Acknowledgments
I want to start this message in thanks to TradingView and all the Pinescript community for all the 'magic' created here, a unique ecosystem! rich and healthy, a fertile soil, a 'new world' of possibilities, for a complete deepening and improvement of our best personal skills.
I leave here my immense thanks to the whole community: Tradingview, Pinecoders, Wizards and Moderators.
I was not born Rich .
Thanks to TradingView and pinescript and all its transformation.
I could develop myself and the best of me and the best of my skills.
And consequently build wealth and patrimony.
Gratitude.
One more story for the infinite book !
If you were born poor you were born to be rich !
Raising🔼 the level and raising🔼 the ruler! 📏
My work is my 'debauchery'! Do better! 💐🌹
Soul of a first-timer! Creativity Exudes! 🦄
This is the manifestation of God's magic in me. This is the best of me. 🧙
You will copy me, I know. So you owe me. 💋
My mission here is to raise the consciousness and self-esteem of all Titans and Titanids! Welcome! 🧘 🏛️
The only way to accomplish great work is to do what you love ! Before I learned to program I was wasting my life!
Death is the best creation of life .
Now you are the new , but in the not so distant future you will gradually become the old . Here I stay forever!
Playing the game like an Athlete! 🖼️ Enjoy and Enjoy 🍷 🗿
In honor of: BOB ☆
1 name, 3 letters, 3 possibilities, and if read backwards it's the same thing, a palindrome. ☘
Gratitude to the oracles that have enabled me the 'luck' to get this far: Dal&Ni&Fer
3️⃣6️⃣ : 👮 House Rules : 📺 TradingView
House Rules : This publication and strategy follows all TradingView house guidelines and rules:
📺 TradingView House Rules: www.tradingview.com
📺 Script publication rules: www.tradingview.com
📺 Vendor requirements: www.tradingview.com
📺 Links/References rules: www.tradingview.com
3️⃣7️⃣ : 🏛️ Become a Titan Pro member 👽
🟩 Titan Pro 👽 🟩
3️⃣8️⃣ : 🏛️ Be a member Titan Aff 🛸
🟥 Titan Affiliate 🛸 🟥
Titan Investments|Quantitative THEMIS|Demo|BINANCE:BTCUSDTP:4hInvestment Strategy (Quantitative Trading)
| 🛑 | Watch "LIVE" and 'COPY' this strategy in real time:
🔗 Link: www.tradingview.com
Hello, welcome, feel free 🌹💐
Since the stone age to the most technological age, one thing has not changed, that which continues impress human beings the most, is the other human being!
Deep down, it's all very simple or very complicated, depends on how you look at it.
I believe that everyone was born to do something very well in life.
But few are those who have, let's use the word 'luck' .
Few are those who have the 'luck' to discover this thing.
That is why few are happy and successful in their jobs and professions.
Thank God I had this 'luck' , and discovered what I was born to do well.
And I was born to program. 👨💻
📋 Summary : Project Titan
0️⃣ : 🦄 Project Titan
1️⃣ : ⚖️ Quantitative THEMIS
2️⃣ : 🏛️ Titan Community
3️⃣ : 👨💻 Who am I ❔
4️⃣ : ❓ What is Statistical/Probabilistic Trading ❓
5️⃣ : ❓ How Statistical/Probabilistic Trading works ❓
6️⃣ : ❓ Why use a Statistical/Probabilistic system ❓
7️⃣ : ❓ Why the human brain is not prepared to do Trading ❓
8️⃣ : ❓ What is Backtest ❓
9️⃣ : ❓ How to build a Consistent system ❓
🔟 : ❓ What is a Quantitative Trading system ❓
1️⃣1️⃣ : ❓ How to build a Quantitative Trading system ❓
1️⃣2️⃣ : ❓ How to Exploit Market Anomalies ❓
1️⃣3️⃣ : ❓ What Defines a Robust, Profitable and Consistent System ❓
1️⃣4️⃣ : 🔧 Fixed Technical
1️⃣5️⃣ : ❌ Fixed Outputs : 🎯 TP(%) & 🛑SL(%)
1️⃣6️⃣ : ⚠️ Risk Profile
1️⃣7️⃣ : ⭕ Moving Exits : (Indicators)
1️⃣8️⃣ : 💸 Initial Capital
1️⃣9️⃣ : ⚙️ Entry Options
2️⃣0️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Third-Party Services'
2️⃣1️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Exchanges
2️⃣2️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Messaging Services'
2️⃣3️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : '🧲🤖Copy-Trading'
2️⃣4️⃣ : ❔ Why be a Titan Pro 👽❔
2️⃣5️⃣ : ❔ Why be a Titan Aff 🛸❔
2️⃣6️⃣ : 📋 Summary : ⚖️ Strategy: Titan Investments|Quantitative THEMIS|Demo|BINANCE:BTCUSDTP:4h
2️⃣7️⃣ : 📊 PERFORMANCE : 🆑 Conservative
2️⃣8️⃣ : 📊 PERFORMANCE : Ⓜ️ Moderate
2️⃣9️⃣ : 📊 PERFORMANCE : 🅰 Aggressive
3️⃣0️⃣ : 🛠️ Roadmap
3️⃣1️⃣ : 🧻 Notes ❕
3️⃣2️⃣ : 🚨 Disclaimer ❕❗
3️⃣3️⃣ : ♻️ ® No Repaint
3️⃣4️⃣ : 🔒 Copyright ©️
3️⃣5️⃣ : 👏 Acknowledgments
3️⃣6️⃣ : 👮 House Rules : 📺 TradingView
3️⃣7️⃣ : 🏛️ Become a Titan Pro member 👽
3️⃣8️⃣ : 🏛️ Be a member Titan Aff 🛸
0️⃣ : 🦄 Project Titan
This is the first real, 100% automated Quantitative Strategy made available to the public and the pinescript community for TradingView.
You will be able to automate all signals of this strategy for your broker , centralized or decentralized and also for messaging services : Discord, Telegram or Twitter .
This is the first strategy of a larger project, in 2023, I will provide a total of 6 100% automated 'Quantitative' strategies to the pinescript community for TradingView.
The future strategies to be shared here will also be unique , never before seen, real 'Quantitative' bots with real, validated results in real operation.
Just like the 'Quantitative THEMIS' strategy, it will be something out of the loop throughout the pinescript/tradingview community, truly unique tools for building mutual wealth consistently and continuously for our community.
1️⃣ : ⚖️ Quantitative THEMIS : Titan Investments|Quantitative THEMIS|Demo|BINANCE:BTCUSDTP:4h
This is a truly unique and out of the curve strategy for BTC /USD .
A truly real strategy, with real, validated results and in real operation.
A unique tool for building mutual wealth, consistently and continuously for the members of the Titan community.
Initially we will operate on a monthly, quarterly, annual or biennial subscription service.
Our goal here is to build a great community, in exchange for an extremely fair value for the use of our truly unique tools, which bring and will bring real results to our community members.
With this business model it will be possible to provide all Titan users and community members with the purest and highest degree of sophistication in the market with pinescript for tradingview, providing unique and truly profitable strategies.
My goal here is to offer the best to our members!
The best 'pinescript' tradingview service in the world!
We are the only Start-Up in the world that will decentralize real and full access to truly real 'quantitative' tools that bring and will bring real results for mutual and ongoing wealth building for our community.
2️⃣ : 🏛️ Titan Community : 👽 Pro 🔁 Aff 🛸
Become a Titan Pro 👽
To get access to the strategy: "Quantitative THEMIS" , and future Titan strategies in a 100% automated way, along with all tutorials for automation.
Pro Plans: 30 Days, 90 Days, 12 Months, 24 Months.
👽 Pro 🅼 Monthly
👽 Pro 🆀 Quarterly
👽 Pro🅰 Annual
👽 Pro👾Two Years
You will have access to a truly unique system that is out of the curve .
A 100% real, 100% automated, tested, validated, profitable, and in real operation strategy.
Become a Titan Affiliate 🛸
By becoming a Titan Affiliate 🛸, you will automatically receive 50% of the value of each new subscription you refer .
You will receive 50% for any of the above plans that you refer .
This way we will encourage our community to grow in a fair and healthy way, because we know what we have in our hands and what we deliver real value to our users.
We are at the highest level of sophistication in the market, the consistency here and the results here speak for themselves.
So growing our community means growing mutual wealth and raising collective conscience.
Wealth must be created not divided.
And here we are creating mutual wealth on all ends and in all ways.
A non-zero sum system, where everybody wins.
3️⃣ : 👨💻 Who am I ❔
My name is FilipeSoh I am 26 years old, Technical Analyst, Trader, Computer Engineer, pinescript Specialist, with extensive experience in several languages and technologies.
For the last 4 years I have been focusing on developing, editing and creating pinescript indicators and strategies for Tradingview for people and myself.
Full-time passionate workaholic pinescript developer with over 10,000 hours of pinescript development.
• Pinescript expert ▬Tradingview.
• Specialist in Automated Trading
• Specialist in Quantitative Trading.
• Statistical/Probabilistic Trading Specialist - Mark Douglas Scholl.
• Inventor of the 'Classic Forecast' Indicators.
• Inventor of the 'Backtest Table'.
4️⃣ : ❓ What is Statistical/Probabilistic Trading ❓
Statistical/probabilistic trading is the only way to get a positive mathematical expectation regarding the market and consequently that is the only way to make money consistently from it.
I will present below some more details about the Quantitative THEMIS strategy, it is a real strategy, tested, validated and in real operation, 'Skin in the Game' , a consistent way to make money with statistical/probabilistic trading in a 100% automated.
I am a Technical Analyst , I used to be a Discretionary Trader , today I am 100% a Statistical Trader .
I've gotten rich and made a lot of money, and I've also lost a lot with 'leverage'.
That was a few years ago.
The book that changed everything for me was "Trading in The Zone" by Mark Douglas.
That's when I understood that the market is just a game of statistics and probability, like a casino!
It was then that I understood that the human brain is not prepared for trading, because it involves triggers and mental emotions.
And emotions in trading and in making trading decisions do not go well together, not in the long run, because you always have the burden of being wrong with the outcome of that particular position.
But remembering that the market is just a statistical game!
5️⃣ : ❓ How Statistical/Probabilistic Trading works ❓
Let's use a 'coin' as an example:
If we toss a 'coin' up 10 times.
Do you agree that it is impossible for us to know exactly the result of the 'plays' before they actually happen?
As in the example above, would you agree, that we cannot "guess" the outcome of a position before it actually happens?
As much as we cannot "guess" whether the coin will drop heads or tails on each flip.
We can analyze the "backtest" of the 10 moves made with that coin:
If we analyze the 10 moves and count the number of times the coin fell heads or tails in a specific sequence, we then have a percentage of times the coin fell heads or tails, so we have a 'backtest' of those moves.
Then on the next flip we can now assume a point or a favorable position for one side, the side with the highest probability .
In a nutshell, this is more or less how probabilistic statistical trading works.
As Statistical Traders we can never say whether such a Trader/Position we take will be a winner or a loser.
But still we can have a positive and consistent result in a "sequence" of trades, because before we even open a position, backtests have already been performed so we identify an anomaly and build a system that will have a positive statistical advantage in our favor over the market.
The advantage will not be in one trade itself, but in the "sequence" of trades as a whole!
Because our system will work like a casino, having a positive mathematical expectation relative to the players/market.
Design, develop, test models and systems that can take advantage of market anomalies, until they change.
Be the casino! - Mark Douglas
6️⃣ : ❓ Why use a Statistical/Probabilistic system ❓
In recent years I have focused and specialized in developing 100% automated trading systems, essentially for the cryptocurrency market.
I have developed many extremely robust and efficient systems, with positive mathematical expectation towards the market.
These are not complex systems per se , because here we want to avoid 'over-optimization' as much as possible.
As Da Vinci said: "Simplicity is the highest degree of sophistication".
I say this because I have tested, tried and developed hundreds of systems/strategies.
I believe I have programmed more than 10,000 unique indicators/strategies, because this is my passion and purpose in life.
I am passionate about what I do, completely!
I love statistical trading because it is the only way to get consistency in the long run!
This is why I have studied, applied, developed, and specialized in 100% automated cryptocurrency trading systems.
The reason why our systems are extremely "simple" is because, as I mentioned before, in statistical trading we want to exploit the market anomaly to the maximum, that is, this anomaly will change from time to time, usually we can exploit a trading system efficiently for about 6 to 12 months, or for a few years, that is; for fixed 'scalpers' systems.
Because at some point these anomalies will be identified , and from the moment they are identified they will be exploited and will stop being anomalies .
With the system presented here; you can even copy the indicators and input values shared here;
However; what I have to offer you is: it is me , our team , and our community !
That is, we will constantly monitor this system, for life , because our goal here is to create a unique , perpetual , profitable , and consistent system for our community.
Myself , our team and our community will keep this script periodically updated , to ensure the positive mathematical expectation of it.
So we don't mind sharing the current parameters and values , because the real value is also in the future updates that this system will receive from me and our team , guided by our culture and our community of real users !
As we are hosted on 'tradingview', all future updates for this strategy, will be implemented and updated automatically on your tradingview account.
What we want here is: to make sure you get gains from our system, because if you get gains , our ecosystem will grow as a whole in a healthy and scalable way, so we will be generating continuous mutual wealth and raising the collective consciousness .
People Need People: 3️⃣🅿
7️⃣ : ❓ Why the human brain is not prepared to do Trading ❓
Today my greatest skill is to develop statistically profitable and 100% automated strategies for 'pinescript' tradingview.
Note that I said: 'profitable' because in fact statistical trading is the only way to make money in a 'consistent' way from the market.
And consequently have a positive wealth curve every cycle, because we will be based on mathematics, not on feelings and news.
Because the human brain is not prepared to do trading.
Because trading is connected to the decision making of the cerebral cortex.
And the decision making is automatically linked to emotions, and emotions don't match with trading decision making, because in those moments, we can feel the best and also the worst sensations and emotions, and this certainly affects us and makes us commit grotesque mistakes!
That's why the human brain is not prepared to do trading.
If you want to participate in a fully automated, profitable and consistent trading system; be a Titan Pro 👽
I believe we are walking an extremely enriching path here, not only in terms of financial returns for our community, but also in terms of knowledge about probabilistic and automated statistical trading.
You will have access to an extremely robust system, which was built upon very strong concepts and foundations, and upon the world's main asset in a few years: Bitcoin .
We are the tip of the best that exists in the cryptocurrency market when it comes to probabilistic and automated statistical trading.
Result is result! Me being dressed or naked.
This is just the beginning!
But there is a way to consistently make money from the market.
Being the Casino! - Mark Douglas
8️⃣ : ❓ What is Backtest ❓
Imagine the market as a purely random system, but even in 'randomness' there are patterns.
So now imagine the market and statistical trading as follows:
Repeating the above 'coin' example, let's think of it as follows:
If we toss a coin up 10 times again.
It is impossible to know which flips will have heads or tails, correct?
But if we analyze these 10 tosses, then we will have a mathematical statistic of the past result, for example, 70 % of the tosses fell 'heads'.
That is:
7 moves fell on "heads" .
3 moves fell on "tails" .
So based on these conditions and on the generic backtest presented here, we could adopt " heads " as our system of moves, to have a statistical and probabilistic advantage in relation to the next move to be performed.
That is, if you define a system, based on backtests , that has a robust positive mathematical expectation in relation to the market you will have a profitable system.
For every move you make you will have a positive statistical advantage in your favor over the market before you even make the move.
Like a casino in relation to all its players!
The casino does not have an advantage over one specific player, but over all players, because it has a positive mathematical expectation about all the moves that night.
The casino will always have a positive statistical advantage over its players.
Note that there will always be real players who will make real, million-dollar bankrolls that night, but this condition is already built into the casino's 'strategy', which has a pre-determined positive statistical advantage of that night as a whole.
Statistical trading is the same thing, as long as you don't understand this you will keep losing money and consistently.
9️⃣ : ❓ How to build a Consistent system ❓
See most traders around the world perform trades believing that that specific position taken will make them filthy rich, because they simply believe faithfully that the position taken will be an undoubted winner, based on a trader's methodology: 'trading a trade' without analyzing the whole context, just using 'empirical' aspects in their system.
But if you think of trading, as a sequence of moves.
You see, 'a sequence' !
When we think statistically, it doesn't matter your result for this , or for the next specific trade , but the final sequence of trades as a whole.
As the market has a random system of results distribution , if your system has a positive statistical advantage in relation to the market, at the end of that sequence you'll have the biggest probability of having a winning bank.
That's how you do real trading!
And with consistency!
Trading is a long term game, but when you change the key you realize that it is a simple game to make money in a consistent way from the market, all you need is patience.
Even more when we are based on Bitcoin, which has its 'Halving' effect where, in theory, we will never lose money in 3 to 4 years intervals, due to its scarcity and the fact that Bitcoin is the 'discovery of digital scarcity' which makes it the digital gold, we believe in this thesis and we follow Satoshi's legacy.
So align Bitcoin with a probabilistic statistical trading system with a positive mathematical expectation of the market and 100% automated with the long term, and all you need is patience, and you will become rich.
In fact Bitcoin by itself is already a path, buy, wait for each halving and your wealth will be maintained.
No inflation, unlike fiat currencies.
This is a complete and extremely robust strategy, with the most current possible and 'not possible' techniques involved and applied here.
Today I am at another level in developing 100% automated 'quantitative' strategies.
I was born for this!
🔟 : ❓ What is a Quantitative Trading system ❓
In addition to having access to a revolutionary strategy you will have access to disruptive 100% multifunctional tables with the ability to perform 'backtests' for better tracking and monitoring of your system on a customized basis.
I would like to emphasize one thing, and that is that you keep this in mind.
Today my greatest skill in 'pinescript' is to build indicators, but mainly strategies, based on statistical and probabilistic trading, with a postive mathematical expectation in relation to the market, in a 100% automated way.
This with the goal of building a consistent and continuous positive equity curve through mathematics using data, converting it into statistical / probabilistic parameters and applying them to a Quantitative model.
Before becoming a Quantitative Trader , I was a Technical Analyst and a Discretionary Trader .
First as a position trader and then as a day trader.
Before becoming a Trader, I trained myself as a Technical Analyst , to masterly understand the shape and workings of the market in theory.
But everything changed when I met 'Mark Douglas' , when I got to know his works, that's when my head exploded 🤯, and I started to understand the market for good!
The market is nothing more than a 'random' system of distributing results.
See that I said: 'random' .
Do yourself a mental exercise.
Is there really such a thing as random ?
I believe not, as far as we know maybe the 'singularity'.
So thinking this way, to translate, the market is nothing more than a game of probability, statistics and pure mathematics.
Like a casino!
What happens is that most traders, whenever they take a position, take it with all the empirical certainty that such position will win or lose, and do not take into consideration the total sequence of results to understand their place in the market.
Understanding your place in the market gives you the ability to create and design systems that can exploit the present market anomaly, and thus make money statistically, consistently, and 100% automated.
Thinking of it this way, it is easy to make money from the market.
There are many ways to make money from the market, but the only consistent way I know of is through 'probabilistic and automated statistical trading'.
1️⃣1️⃣ : ❓ How to build a Quantitative Trading system ❓
There are some fundamental points that must be addressed here in order to understand what makes up a system based on statistics and probability applied to a quantitative model.
When we talk about 'discretionary' trading, it is a trading system based on human decisions after the defined 'empirical' conditions are met.
It is quite another thing to build a fully automated system without any human interference/interaction .
That said:
Building a statistically profitable system is perfectly possible, but this is a high level task , but with possible high rewards and consistent gains.
Here you will find a real "Skin In The Game" strategy.
With all due respect, but the vast majority of traders who post strategies on TradingView do not understand what they are doing.
Most of them do not understand the minimum complexity involved in the main variable for the construction of a real strategy, the mother variable: "strategy".
I say this by my own experience, because I have analyzed practically all the existing publications of TradingView + 200,000 indicators and strategies.
I breathe pinescript, I eat pinescript, I sleep pinescript, I bathe pinescript, I live TradingView.
But the main advantage for the TradingView users, is that all entry and exit orders made by this strategy can be checked and analyzed thoroughly, to validate and prove the veracity of this strategy, because this is a 100% real strategy.
Here there is a huge world of possibilities, but only one way to build a 'pinescript strategy' that will work correctly aligned to the real world with real results .
There are some fundamental points to take into consideration when building a profitable trading system:
The most important of these for me is: 'DrawDown' .
Followed by: 'Hit Rate' .
And only after that we use the parameter: 'Profit'.
See, this is because here, we are dealing with the 'imponderable' , and anything can happen in this scenario.
But there is one thing that makes us sleep peacefully at night, and that is: controlling losses .
That is, in other words: controlling the DrawDown .
The amateur is concerned with 'winning', the professional is concerned with conserving capital.
If we have the losses under control, then we can move on to the other two parameters: hit rate and profit.
See, the second most important factor in building a system is the hit rate.
I say this from my own experience.
I have worked with many systems with a 'low hit rate', but extremely profitable.
For example: systems with hit rates of 40 to 50%.
But as much as statistically and mathematically the profit is rewarding, operating systems with a low hit rate is always very stressful psychologically.
That's why there are two big reasons why when I build an automated trading system, I focus on the high hit rate of the system, they are
1 - To reduce psychological damage as much as possible .
2 - And more important , when we create a system with a 'high hit rate' , there is a huge intrinsic advantage here, that most statistic traders don't take in consideration.
That is: knowing more quickly when the system stops being functional.
The main advantage of a system with a high hit rate is: to identify when the system stops being functional and stop exploiting the market's anomaly.
Look: When we are talking about trading and random distribution of results on the market, do you agree that when we create a trading system, we are focused on exploring some anomaly of that market?
When that anomaly is verified by the market, it will stop being functional with time.
That's why trading systems, 'scalpers', especially for cryptocurrencies, need constant monitoring, quarterly, semi-annually or annually.
Because market movements change from time to time.
Because we go through different cycles from time to time, such as congestion cycles, accumulation , distribution , volatility , uptrends and downtrends .
1️⃣2️⃣ : ❓ How to Exploit Market Anomalies ❓
You see there is a very important point that must be stressed here.
As we are always trying to exploit an 'anomaly' in the market.
So the 'number' of indicators/tools that will integrate the system is of paramount importance.
But most traders do not take this into consideration.
To build a professional, robust, consistent, and profitable system, you don't need to use hundreds of indicators to build your setup.
This will actually make it harder to read when the setup stops working and needs some adjustment.
So focusing on a high hit rate is very important here, this is a fundamental principle that is widely ignored , and with a high hit rate, we can know much more accurately when the system is no longer functional much faster.
As Darwin said: "It is not the strongest or the most intelligent that wins the game of life, it is the most adapted.
So simple systems, as contradictory as it may seem, are more efficient, because they help to identify inflection points in the market much more quickly.
1️⃣3️⃣ : ❓ What Defines a Robust, Profitable and Consistent System ❓
See I have built, hundreds of thousands of indicators and 'pinescript' strategies, hundreds of thousands.
This is an extremely professional, robust and profitable system.
Based on the currency pairs: BTC /USDT
There are many ways and avenues to build a profitable trading setup/system.
And actually this is not a difficult task, taking in consideration, as the main factor here, that our trading and investment plan is for the long term, so consequently we will face scenarios with less noise.
He who is in a hurry eats raw.
As mentioned before.
Defining trends in pinescript is technically a simple task, the hardest task is to determine congestion zones with low volume and volatility, it's in these moments that many false signals are generated, and consequently is where most setups face their maximum DrawDown.
That's why this strategy was strictly and thoroughly planned, built on a very solid foundation, to avoid as much noise as possible, for a positive and consistent equity curve in each market cycle, 'Consistency' is our 'Mantra' around here.
1️⃣4️⃣ : 🔧 Fixed Technical
• Strategy: Titan Investments|Quantitative THEMIS|Demo|BINANCE:BTCUSDTP:4h
• Pair: BTC/USDTP
• Time Frame: 4 hours
• Broker: Binance (Recommended)
For a more conservative scenario, we have built the Quantitative THEMIS for the 4h time frame, with the main focus on consistency.
So we can avoid noise as much as possible!
1️⃣5️⃣ : ❌ Fixed Outputs : 🎯 TP(%) & 🛑SL(%)
In order to build a 'perpetual' system specific to BTC/USDT, it took a lot of testing, and more testing, and a lot of investment and research.
There is one initial and fundamental point that we can address to justify the incredible consistency presented here.
That fundamental point is our exit via Take Profit or Stop Loss percentage (%).
🎯 Take Profit (%)
🛑 Stop Loss (%)
See, today I have been testing some more advanced backtesting models for some cryptocurrency systems.
In which I perform 'backtest of backtest', i.e. we use a set of strategies each focused on a principle, operating individually, but they are part of something unique, i.e. we do 'backtests' of 'backtests' together.
What I mean is that we do a lot of backtesting around here.
I can assure you, that always the best output for a trading system is to set fixed output values!
In other words:
🎯 Take Profit (%)
🛑 Stop Loss (%)
This happens because statistically setting fixed exit structures in the vast majority of times, presents a superior result on the capital/equity curve, throughout history and for the vast majority of setups compared to other exit methods.
This is due to a mathematical principle of simplicity, 'avoiding more noise'.
Thus whenever the Quantitative THEMIS strategy takes a position it has a target and a defined maximum stop percentage.
1️⃣6️⃣ : ⚠️ Risk Profile
The strategy, currently has 3 risk profiles ⚠️ patterns for 'fixed percentage exits': Take Profit (%) and Stop Loss (%) .
They are: ⚠️ Rich's Profiles
✔️🆑 Conservative: 🎯 TP=2.7 % 🛑 SL=2.7 %
❌Ⓜ️ Moderate: 🎯 TP=2.8 % 🛑 SL=2.7 %
❌🅰 Aggressive: 🎯 TP=1.6 % 🛑 SL=6.9 %
You will be able to select and switch between the above options and profiles through the 'input' menu of the strategy by navigating to the "⚠️ Risk Profile" menu.
You can then select, test and apply the Risk Profile above that best suits your risk management, expectations and reality , as well as customize all the 'fixed exit' values through the TP and SL menus below.
1️⃣7️⃣ : ⭕ Moving Exits : (Indicators)
The strategy currently also has 'Moving Exits' based on indicator signals.
These are Moving Exits (Indicators)
📈 LONG : (EXIT)
🧃 (MAO) Short : true
📉 SHORT : (EXIT)
🧃 (MAO) Long: false
You can select and toggle between the above options through the 'input' menu of the strategy by navigating to the "LONG : Exit" and "SHORT : Exit" menu.
1️⃣8️⃣ : 💸 Initial Capital
By default the "Initial Capital" set for entries and backtests of this strategy is: 10000 $
You can set another value for the 'Starting Capital' through the tradingview menu under "properties" , and edit the value of the "Initial Capital" field.
This way you can set and test other 'Entry Values' for your trades, tests and backtests.
1️⃣9️⃣ : ⚙️ Entry Options
By default the 'order size' set for this strategy is 100 % of the 'initial capital' on each new trade.
You can set and test other entry options like : contracts , cash , % of equity
You should make these changes directly in the input menu of the strategy by navigating to the menu "⚙️ Properties : TradingView" below.
⚙️ Properties : (TradingView)
📊 Strategy Type: strategy.position_size != 1
📝💲 % Order Type: % of equity
📝💲 % Order Size: 100
Leverage: 1
So you can define and test other 'Entry Options' for your trades, tests and backtests.
2️⃣0️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Third-Party Services'
It is possible to automate the signals of this strategy for any centralized or decentralized broker, as well as for messaging services: Discord, Telegram and Twitter.
All in an extremely simple and uncomplicated way through the tutorials available in PDF /VIDEO for our Titan Pro 👽 subscriber community.
With our tutorials in PDF and Video it will be possible to automate the signals of this strategy for the chosen service in an extremely simple way with less than 10 steps only.
Tradingview naturally doesn't count with native integration between brokers and tradingview.
But it is possible to use 'third party services' to do the integration and automation between Tradingview and your centralized or decentralized broker.
Here are the standard, available and recommended 'third party services' to automate the signals from the 'Quantitative THEMIS' strategy on the tradingview for your broker:
1) Wundertrading (Recommended):
2) 3commas:
3) Zignaly:
4) Aleeert.com (Recommended):
5) Alertatron:
Note! 'Third party services' cannot perform 'withdrawals' via their key 'API', they can only open positions, so your funds will always be 'safe' in your brokerage firm, being traded via the 'API', when they receive an entry and exit signal from this strategy.
2️⃣1️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Exchanges
You can automate this strategy for any of the brokers below, through your broker's 'API' by connecting it to the 'third party automation services' for tradingview available and mentioned in the menu above:
1) Binance (Recommended)
2) Bitmex
3) Bybit
4) KuCoin
5) Deribit
6) OKX
7) Coinbase
8) Huobi
9) Bitfinex
10) Bitget
11) Bittrex
12) Bitstamp
13) Gate. io
14) Kraken
15) Gemini
16) Ascendex
17) VCCE
2️⃣2️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : 'Messaging Services'
You can also automate and monitor the signals of this strategy much more efficiently by sending them to the following popular messaging services:
1) Discord
2) Telegram
3) Twitter
2️⃣3️⃣ : ❓ How to Automate this Strategy ❓ : 🤖 Automation : '🧲🤖Copy-Trading'
It will also be possible to copy/replicate the entries and exits of this strategy to your broker in an extremely simple and agile way, through the available copy-trader services.
This way it will be possible to replicate the signals of this strategy at each entry and exit to your broker through the API connecting it to the integrated copy-trader services available through the tradingview automation services below:
1) Wundetrading:
2) Zignaly:
2️⃣4️⃣ : ❔ Why be a Titan Pro 👽❔
I believe that today I am at another level in 'pinescript' development.
I consider myself today a true unicorn as a pinescript developer, someone unique and very rare.
If you choose another tool or another pinescript service, this tool will be just another one, with no real results.
But if you join our Titan community, you will have access to a unique tool! And you will get real results!
I already earn money consistently with statistical and automated trading and as an expert pinescript developer.
I am here to evolve my skills as much as possible, and one day become a pinescript 'Wizard'.
So excellence, quality and professionalism will always be my north here.
You will never find a developer like me, and who will take so seriously such a revolutionary project as this one. A Maverick! ▬ The man never stops!
Here you will find the highest degree of sophistication and development in the market for 'pinescript'.
You will get the best of me and the best of pinescript possible.
Let me show you how a professional in my field does it.
Become a Titan Pro Member 👽 and get Full Access to this strategy and all the Automation Tutorials.
Be the Titan in your life!
2️⃣5️⃣ : ❔ Why be a Titan Aff 🛸❔
Get financial return for your referrals, Decentralize the World, and raise the collective consciousness.
2️⃣6️⃣ : 📋 Summary : ⚖️ Strategy: Titan Investments|Quantitative THEMIS|Demo|BINANCE:BTCUSDTP:4h
® Titan Investimentos | Quantitative THEMIS ⚖️ | Demo 🐄 2.6 | Dev: © FilipeSoh 🧙 | 🤖 100% Automated : Discord, Telegram, Twitter, Wundertrading, 3commas, Zignaly, Aleeert, Alertatron, Uniswap-v3 | BINANCE:BTCUSDTPERP 4h
🛒 Subscribe this strategy ❗️ Be a Titan Member 🏛️
🛒 Titan Pro 👽 🔗 🏛️ Titan Pro 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
🛒 Titan Affiliate 🛸 🔗 🏛️ Titan Affiliate 🛸 (Subscription Sale) 🔥 Receive 50% commission
📋 Summary : QT THEMIS ⚖️
🕵️♂️ Check This Strategy..................................................................0
🦄 ® Titan Investimentos...............................................................1
👨💻 © Developer..........................................................................2
📚 Signal Automation Tutorials : (PDF/VIDEO).......................................3
👨🔧 Revision...............................................................................4
📊 Table : (BACKTEST)..................................................................5
📊 Table : (INFORMATIONS).............................................................6
⚙️ Properties : (TRADINGVIEW)........................................................7
📆 Backtest : (TRADINGVIEW)..........................................................8
⚠️ Risk Profile...........................................................................9
🟢 On 🔴 Off : (LONG/SHORT).......................................................10
📈 LONG : (ENTRY)....................................................................11
📉 SHORT : (ENTRY)...................................................................12
📈 LONG : (EXIT).......................................................................13
📉 SHORT : (EXIT)......................................................................14
🧩 (EI) External Indicator.............................................................15
📡 (QT) Quantitative...................................................................16
🎠 (FF) Forecast......................................................................17
🅱 (BB) Bollinger Bands................................................................18
🧃 (MAP) Moving Average Primary......................................................19
🧃 (MAP) Labels.........................................................................20
🍔 (MAQ) Moving Average Quaternary.................................................21
🍟 (MACD) Moving Average Convergence Divergence...............................22
📣 (VWAP) Volume Weighted Average Price........................................23
🪀 (HL) HILO..........................................................................24
🅾 (OBV) On Balance Volume.........................................................25
🥊 (SAR) Stop and Reverse...........................................................26
🛡️ (DSR) Dynamic Support and Resistance..........................................27
🔊 (VD) Volume Directional..........................................................28
🧰 (RSI) Relative Momentum Index.................................................29
🎯 (TP) Take Profit %..................................................................30
🛑 (SL) Stop Loss %....................................................................31
🤖 Automation Selected...............................................................32
📱💻 Discord............................................................................33
📱💻 Telegram..........................................................................34
📱💻 Twitter...........................................................................35
🤖 Wundertrading......................................................................36
🤖 3commas............................................................................37
🤖 Zignaly...............................................................................38
🤖 Aleeert...............................................................................39
🤖 Alertatron...........................................................................40
🤖 Uniswap-v3..........................................................................41
🧲🤖 Copy-Trading....................................................................42
♻️ ® No Repaint........................................................................43
🔒 Copyright ©️..........................................................................44
🏛️ Be a Titan Member..................................................................45
Nº Active Users..........................................................................46
⏱ Time Left............................................................................47
| 0 | 🕵️♂️ Check This Strategy
🕵️♂️ Version Demo: 🐄 Version with ❌non-integrated automation 🤖 and 📚 Tutorials for automation ❌not available
🕵️♂️ Version Pro: 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
| 1 | 🦄 ® Titan Investimentos
Decentralizing the World 🗺
Raising the Collective Conscience 🗺
🦄Site:
🦄TradingView: www.tradingview.com
🦄Discord:
🦄Telegram:
🦄Youtube:
🦄Twitter:
🦄Instagram:
🦄TikTok:
🦄Linkedin:
🦄E-mail:
| 2 | 👨💻 © Developer
🧠 Developer: @FilipeSoh🧙
📺 TradingView: www.tradingview.com
☑️ Linkedin:
✅ Fiverr:
✅ Upwork:
🎥 YouTube:
🐤 Twitter:
🤳 Instagram:
| 3 | 📚 Signal Automation Tutorials : (PDF/VIDEO)
📚 Discord: 🔗 Link: 🔒Titan Pro👽
📚 Telegram: 🔗 Link: 🔒Titan Pro👽
📚 Twitter: 🔗 Link: 🔒Titan Pro👽
📚 Wundertrading: 🔗 Link: 🔒Titan Pro👽
📚 3comnas: 🔗 Link: 🔒Titan Pro👽
📚 Zignaly: 🔗 Link: 🔒Titan Pro👽
📚 Aleeert: 🔗 Link: 🔒Titan Pro👽
📚 Alertatron: 🔗 Link: 🔒Titan Pro👽
📚 Uniswap-v3: 🔗 Link: 🔒Titan Pro👽
📚 Copy-Trading: 🔗 Link: 🔒Titan Pro👽
| 4 | 👨🔧 Revision
👨🔧 Start Of Operations: 01 Jan 2019 21:00 -0300 💡 Start Of Operations (Skin in the game) : Revision 1.0
👨🔧 Previous Review: 01 Jan 2022 21:00 -0300 💡 Previous Review : Revision 2.0
👨🔧 Current Revision: 01 Jan 2023 21:00 -0300 💡 Current Revision : Revision 2.6
👨🔧 Next Revision: 28 May 2023 21:00 -0300 💡 Next Revision : Revision 2.7
| 5 | 📊 Table : (BACKTEST)
📊 Table: true
🖌️ Style: label.style_label_left
📐 Size: size_small
📏 Line: defval
🎨 Color: #131722
| 6 | 📊 Table : (INFORMATIONS)
📊 Table: false
🖌️ Style: label.style_label_right
📐 Size: size_small
📏 Line: defval
🎨 Color: #131722
| 7 | ⚙️ Properties : (TradingView)
📊 Strategy Type: strategy.position_size != 1
📝💲 % Order Type: % of equity
📝💲 % Order Size: 100 %
🚀 Leverage: 1
| 8 | 📆 Backtest : (TradingView)
🗓️ Mon: true
🗓️ Tue: true
🗓️ Wed: true
🗓️ Thu: true
🗓️ Fri: true
🗓️ Sat: true
🗓️ Sun: true
📆 Range: custom
📆 Start: UTC 31 Oct 2008 00:00
📆 End: UTC 31 Oct 2030 23:45
📆 Session: 0000-0000
📆 UTC: UTC
| 9 | ⚠️ Risk Profile
✔️🆑 Conservative: 🎯 TP=2.7 % 🛑 SL=2.7 %
❌Ⓜ️ Moderate: 🎯 TP=2.8 % 🛑 SL=2.7 %
❌🅰 Aggressive: 🎯 TP=1.6 % 🛑 SL=6.9 %
| 10 | 🟢 On 🔴 Off : (LONG/SHORT)
🟢📈 LONG: true
🟢📉 SHORT: true
| 11 | 📈 LONG : (ENTRY)
📡 (QT) Long: true
🧃 (MAP) Long: false
🅱 (BB) Long: false
🍟 (MACD) Long: false
🅾 (OBV) Long: false
| 12 | 📉 SHORT : (ENTRY)
📡 (QT) Short: true
🧃 (MAP) Short: false
🅱 (BB) Short: false
🍟 (MACD) Short: false
🅾 (OBV) Short: false
| 13 | 📈 LONG : (EXIT)
🧃 (MAP) Short: true
| 14 | 📉 SHORT : (EXIT)
🧃 (MAP) Long: false
| 15 | 🧩 (EI) External Indicator
🧩 (EI) Connect your external indicator/filter: false
🧩 (EI) Connect your indicator here (Study mode only): close
🧩 (EI) Connect your indicator here (Study mode only): close
| 16 | 📡 (QT) Quantitative
📡 (QT) Quantitative: true
📡 (QT) Market: BINANCE:BTCUSDTPERP
📡 (QT) Dice: openai
| 17 | 🎠 (FF) Forecast
🎠 (FF) Include current unclosed current candle: true
🎠 (FF) Forecast Type: flat
🎠 (FF) Nº of candles to use in linear regression: 3
| 18 | 🅱 (BB) Bollinger Bands
🅱 (BB) Bollinger Bands: true
🅱 (BB) Type: EMA
🅱 (BB) Period: 20
🅱 (BB) Source: close
🅱 (BB) Multiplier: 2
🅱 (BB) Linewidth: 0
🅱 (BB) Color: #131722
| 19 | 🧃 (MAP) Moving Average Primary
🧃 (MAP) Moving Average Primary: true
🧃 (MAP) BarColor: false
🧃 (MAP) Background: false
🧃 (MAP) Type: SMA
🧃 (MAP) Source: open
🧃 (MAP) Period: 100
🧃 (MAP) Multiplier: 2.0
🧃 (MAP) Linewidth: 2
🧃 (MAP) Color P: #42bda8
🧃 (MAP) Color N: #801922
| 20 | 🧃 (MAP) Labels
🧃 (MAP) Labels: true
🧃 (MAP) Style BUY ZONE: shape.labelup
🧃 (MAP) Color BUY ZONE: #42bda8
🧃 (MAP) Style SELL ZONE: shape.labeldown
🧃 (MAP) Color SELL ZONE: #801922
| 21 | 🍔 (MAQ) Moving Average Quaternary
🍔 (MAQ) Moving Average Quaternary: true
🍔 (MAQ) BarColor: false
🍔 (MAQ) Background: false
🍔 (MAQ) Type: SMA
🍔 (MAQ) Source: close
🍔 (MAQ) Primary: 14
🍔 (MAQ) Secondary: 22
🍔 (MAQ) Tertiary: 44
🍔 (MAQ) Quaternary: 16
🍔 (MAQ) Linewidth: 0
🍔 (MAQ) Color P: #42bda8
🍔 (MAQ) Color N: #801922
| 22 | 🍟 (MACD) Moving Average Convergence Divergence
🍟 (MACD) Macd Type: EMA
🍟 (MACD) Signal Type: EMA
🍟 (MACD) Source: close
🍟 (MACD) Fast: 12
🍟 (MACD) Slow: 26
🍟 (MACD) Smoothing: 9
| 23 | 📣 (VWAP) Volume Weighted Average Price
📣 (VWAP) Source: close
📣 (VWAP) Period: 340
📣 (VWAP) Momentum A: 84
📣 (VWAP) Momentum B: 150
📣 (VWAP) Average Volume: 1
📣 (VWAP) Multiplier: 1
📣 (VWAP) Diviser: 2
| 24 | 🪀 (HL) HILO
🪀 (HL) Type: SMA
🪀 (HL) Function: Maverick🧙
🪀 (HL) Source H: high
🪀 (HL) Source L: low
🪀 (HL) Period: 20
🪀 (HL) Momentum: 26
🪀 (HL) Diviser: 2
🪀 (HL) Multiplier: 1
| 25 | 🅾 (OBV) On Balance Volume
🅾 (OBV) Type: EMA
🅾 (OBV) Source: close
🅾 (OBV) Period: 16
🅾 (OBV) Diviser: 2
🅾 (OBV) Multiplier: 1
| 26 | 🥊 (SAR) Stop and Reverse
🥊 (SAR) Source: close
🥊 (SAR) High: 1.8
🥊 (SAR) Mid: 1.6
🥊 (SAR) Low: 1.6
🥊 (SAR) Diviser: 2
🥊 (SAR) Multiplier: 1
| 27 | 🛡️ (DSR) Dynamic Support and Resistance
🛡️ (DSR) Source D: close
🛡️ (DSR) Source R: high
🛡️ (DSR) Source S: low
🛡️ (DSR) Momentum R: 0
🛡️ (DSR) Momentum S: 2
🛡️ (DSR) Diviser: 2
🛡️ (DSR) Multiplier: 1
| 28 | 🔊 (VD) Volume Directional
🔊 (VD) Type: SMA
🔊 (VD) Period: 68
🔊 (VD) Momentum: 3.8
🔊 (VD) Diviser: 2
🔊 (VD) Multiplier: 1
| 29 | 🧰 (RSI) Relative Momentum Index
🧰 (RSI) Type UP: EMA
🧰 (RSI) Type DOWN: EMA
🧰 (RSI) Source: close
🧰 (RSI) Period: 29
🧰 (RSI) Smoothing: 22
🧰 (RSI) Momentum R: 64
🧰 (RSI) Momentum S: 142
🧰 (RSI) Diviser: 2
🧰 (RSI) Multiplier: 1
| 30 | 🎯 (TP) Take Profit %
🎯 (TP) Take Profit: false
🎯 (TP) %: 2.2
🎯 (TP) Color: #42bda8
🎯 (TP) Linewidth: 1
| 31 | 🛑 (SL) Stop Loss %
🛑 (SL) Stop Loss: false
🛑 (SL) %: 2.7
🛑 (SL) Color: #801922
🛑 (SL) Linewidth: 1
| 32 | 🤖 Automation : Discord | Telegram | Twitter | Wundertrading | 3commas | Zignaly | Aleeert | Alertatron | Uniswap-v3
🤖 Automation Selected : Discord
| 33 | 🤖 Discord
🔗 Link Discord:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Discord ▬ Enter Long: 🔒Titan Pro👽
📱💻 Discord ▬ Exit Long: 🔒Titan Pro👽
📱💻 Discord ▬ Enter Short: 🔒Titan Pro👽
📱💻 Discord ▬ Exit Short: 🔒Titan Pro👽
| 34 | 🤖 Telegram
🔗 Link Telegram:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Telegram ▬ Enter Long: 🔒Titan Pro👽
📱💻 Telegram ▬ Exit Long: 🔒Titan Pro👽
📱💻 Telegram ▬ Enter Short: 🔒Titan Pro👽
📱💻 Telegram ▬ Exit Short: 🔒Titan Pro👽
| 35 | 🤖 Twitter
🔗 Link Twitter:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Twitter ▬ Enter Long: 🔒Titan Pro👽
📱💻 Twitter ▬ Exit Long: 🔒Titan Pro👽
📱💻 Twitter ▬ Enter Short: 🔒Titan Pro👽
📱💻 Twitter ▬ Exit Short: 🔒Titan Pro👽
| 36 | 🤖 Wundertrading : Binance | Bitmex | Bybit | KuCoin | Deribit | OKX | Coinbase | Huobi | Bitfinex | Bitget
🔗 Link Wundertrading:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Enter Long: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Exit Long: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Enter Short: 🔒Titan Pro👽
📱💻 Wundertrading ▬ Exit Short: 🔒Titan Pro👽
| 37 | 🤖 3commas : Binance | Bybit | OKX | Bitfinex | Coinbase | Deribit | Bitmex | Bittrex | Bitstamp | Gate.io | Kraken | Gemini | Huobi | KuCoin
🔗 Link 3commas:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 3commas ▬ Enter Long: 🔒Titan Pro👽
📱💻 3commas ▬ Exit Long: 🔒Titan Pro👽
📱💻 3commas ▬ Enter Short: 🔒Titan Pro👽
📱💻 3commas ▬ Exit Short: 🔒Titan Pro👽
| 38 | 🤖 Zignaly : Binance | Ascendex | Bitmex | Kucoin | VCCE
🔗 Link Zignaly:
🔗 Link 📚 Automation: 🔒Titan Pro👽
🤖 Type Automation: Profit Sharing
🤖 Type Provider: Webook
🔑 Key: 🔒Titan Pro👽
🤖 pair: BTCUSDTP
🤖 exchange: binance
🤖 exchangeAccountType: futures
🤖 orderType: market
🚀 leverage: 1x
% positionSizePercentage: 100 %
💸 positionSizeQuote: 10000 $
🆔 signalId: @Signal1234
| 39 | 🤖 Aleeert : Binance
🔗 Link Aleeert:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Aleeert ▬ Enter Long: 🔒Titan Pro👽
📱💻 Aleeert ▬ Exit Long: 🔒Titan Pro👽
📱💻 Aleeert ▬ Enter Short: 🔒Titan Pro👽
📱💻 Aleeert ▬ Exit Short: 🔒Titan Pro👽
| 40 | 🤖 Alertatron : Binance | Bybit | Deribit | Bitmex
🔗 Link Alertatron:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Alertatron ▬ Enter Long: 🔒Titan Pro👽
📱💻 Alertatron ▬ Exit Long: 🔒Titan Pro👽
📱💻 Alertatron ▬ Enter Short: 🔒Titan Pro👽
📱💻 Alertatron ▬ Exit Short: 🔒Titan Pro👽
| 41 | 🤖 Uniswap-v3
🔗 Link Alertatron:
🔗 Link 📚 Automation: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Enter Long: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Exit Long: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Enter Short: 🔒Titan Pro👽
📱💻 Uniswap-v3 ▬ Exit Short: 🔒Titan Pro👽
| 42 | 🧲🤖 Copy-Trading : Zignaly | Wundertrading
🔗 Link 📚 Copy-Trading: 🔒Titan Pro👽
🧲🤖 Copy-Trading ▬ Zignaly: 🔒Titan Pro👽
🧲🤖 Copy-Trading ▬ Wundertrading: 🔒Titan Pro👽
| 43 | ♻️ ® Don't Repaint!
♻️ This Strategy does not Repaint!: ® Signs Do not repaint❕
♻️ This is a Real Strategy!: Quality : ® Titan Investimentos
📋️️ Get more information about Repainting here:
| 44 | 🔒 Copyright ©️
🔒 Copyright ©️: Copyright © 2023-2024 All rights reserved, ® Titan Investimentos
🔒 Copyright ©️: ® Titan Investimentos
🔒 Copyright ©️: Unique and Exclusive Strategy. All rights reserved
| 45 | 🏛️ Be a Titan Members
🏛️ Titan Pro 👽 Version with ✔️100% Integrated Automation 🤖 and 📚 Automation Tutorials ✔️100% available at: (PDF/VIDEO)
🏛️ Titan Affiliate 🛸 (Subscription Sale) 🔥 Receive 50% commission
| 46 | ⏱ Time Left
Time Left Titan Demo 🐄: ⏱♾ | ⏱ : ♾ Titan Demo 🐄 Version with ❌non-integrated automation 🤖 and 📚 Tutorials for automation ❌not available
Time Left Titan Pro 👽: 🔒Titan Pro👽 | ⏱ : Pro Plans: 30 Days, 90 Days, 12 Months, 24 Months. (👽 Pro 🅼 Monthly, 👽 Pro 🆀 Quarterly, 👽 Pro🅰 Annual, 👽 Pro👾Two Years)
| 47 | Nº Active Users
Nº Active Subscribers Titan Pro 👽: 5️⃣6️⃣ | 1✔️ 5✔️ 10✔️ 100❌ 1K❌ 10K❌ 50K❌ 100K❌ 1M❌ 10M❌ 100M❌ : ⏱ Active Users is updated every 24 hours (Check on indicator)
Nº Active Affiliates Titan Aff 🛸: 6️⃣ | 1✔️ 5✔️ 10❌ 100❌ 1K❌ 10K❌ 50K❌ 100K❌ 1M❌ 10M❌ 100M❌ : ⏱ Active Users is updated every 24 hours (Check on indicator)
2️⃣7️⃣ : 📊 PERFORMANCE : 🆑 Conservative
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: 🆑 Conservative: 🎯 TP=2.7 % | 🛑 SL=2.7 %
• 📆All years: 🆑 Conservative: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 1669.89 %
💲 + 166989.43 USD
Total Close Trades:
⚪️ 369
Percent Profitable:
🟡 64.77 %
Profit Factor:
🟢 2.314
DrawDrown Maximum:
🔴 -24.82 %
💲 -10221.43 USD
Avg Trade:
💲 + 452.55 USD
✔️ Trades Winning: 239
❌ Trades Losing: 130
✔️ Average Gross Win: + 12.31 %
❌ Average Gross Loss: - 9.78 %
✔️ Maximum Consecutive Wins: 9
❌ Maximum Consecutive Losses: 6
% Average Gain Annual: 499.33 %
% Average Gain Monthly: 41.61 %
% Average Gain Weekly: 9.6 %
% Average Gain Day: 1.37 %
💲 Average Gain Annual: 49933 $
💲 Average Gain Monthly: 4161 $
💲 Average Gain Weekly: 960 $
💲 Average Gain Day: 137 $
• 📆 Year: 2020: 🆑 Conservative: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: 🆑 Conservative: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: 🆑 Conservative: 🚀 Leverage 1️⃣x
2️⃣8️⃣ : 📊 PERFORMANCE : Ⓜ️ Moderate
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: Ⓜ️ Moderate: 🎯 TP=2.8 % | 🛑 SL=2.7 %
• 📆 All years: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 1472.04 %
💲 + 147199.89 USD
Total Close Trades:
⚪️ 362
Percent Profitable:
🟡 63.26 %
Profit Factor:
🟢 2.192
DrawDrown Maximum:
🔴 -22.69 %
💲 -9269.33 USD
Avg Trade:
💲 + 406.63 USD
✔️ Trades Winning: 229
❌ Trades Losing : 133
✔️ Average Gross Win: + 11.82 %
❌ Average Gross Loss: - 9.29 %
✔️ Maximum Consecutive Wins: 9
❌ Maximum Consecutive Losses: 8
% Average Gain Annual: 440.15 %
% Average Gain Monthly: 36.68 %
% Average Gain Weekly: 8.46 %
% Average Gain Day: 1.21 %
💲 Average Gain Annual: 44015 $
💲 Average Gain Monthly: 3668 $
💲 Average Gain Weekly: 846 $
💲 Average Gain Day: 121 $
• 📆 Year: 2020: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: Ⓜ️ Moderate: 🚀 Leverage 1️⃣x
2️⃣9️⃣ : 📊 PERFORMANCE : 🅰 Aggressive
📊 Exchange: Binance
📊 Pair: BINANCE: BTCUSDTPERP
📊 TimeFrame: 4h
📊 Initial Capital: 10000 $
📊 Order Type: % equity
📊 Size Per Order: 100 %
📊 Commission: 0.03 %
📊 Pyramid: 1
• ⚠️ Risk Profile: 🅰 Aggressive: 🎯 TP=1.6 % | 🛑 SL=6.9 %
• 📆 All years: 🅰 Aggressive: 🚀 Leverage 1️⃣x
📆 Start: September 23, 2019
📆 End: January 11, 2023
📅 Days: 1221
📅 Bars: 7325
Net Profit:
🟢 + 989.38 %
💲 + 98938.38 USD
Total Close Trades:
⚪️ 380
Percent Profitable:
🟢 84.47 %
Profit Factor:
🟢 2.156
DrawDrown Maximum:
🔴 -17.88 %
💲 -9182.84 USD
Avg Trade:
💲 + 260.36 USD
✔️ Trades Winning: 321
❌ Trades Losing: 59
✔️ Average Gross Win: + 5.75 %
❌ Average Gross Loss: - 14.51 %
✔️ Maximum Consecutive Wins: 21
❌ Maximum Consecutive Losses: 6
% Average Gain Annual: 295.84 %
% Average Gain Monthly: 24.65 %
% Average Gain Weekly: 5.69 %
% Average Gain Day: 0.81 %
💲 Average Gain Annual: 29584 $
💲 Average Gain Monthly: 2465 $
💲 Average Gain Weekly: 569 $
💲 Average Gain Day: 81 $
• 📆 Year: 2020: 🅰 Aggressive: 🚀 Leverage 1️⃣x
• 📆 Year: 2021: 🅰 Aggressive: 🚀 Leverage 1️⃣x
• 📆 Year: 2022: 🅰 Aggressive: 🚀 Leverage 1️⃣x
3️⃣0️⃣ : 🛠️ Roadmap
🛠️• 14/ 01 /2023 : Titan THEMIS Launch
🛠️• Updates January/2023 :
• 📚 Tutorials for Automation 🤖 already Available : ✔️
• ✔️ Discord
• ✔️ Wundertrading
• ✔️ Zignaly
• 📚 Tutorials for Automation 🤖 In Preparation : ⭕
• ⭕ Telegram
• ⭕ Twitter
• ⭕ 3comnas
• ⭕ Aleeert
• ⭕ Alertatron
• ⭕ Uniswap-v3
• ⭕ Copy-Trading
🛠️• Updates February/2023 :
• 📰 Launch of advertising material for Titan Affiliates 🛸
• 🛍️🎥🖼️📊 (Sales Page/VSL/Videos/Creative/Infographics)
🛠️• 28/05/2023 : Titan THEMIS update ▬ Version 2.7
🛠️• 28/05/2023 : BOT BOB release ▬ Version 1.0
• (Native Titan THEMIS Automation - Through BOT BOB, a bot for automation of signals, indicators and strategies of TradingView, of own code ▬ in validation.
• BOT BOB
Automation/Connection :
• API - For Centralized Brokers.
• Smart Contracts - Wallet Web - For Decentralized Brokers.
• This way users can automate any indicator or strategy of TradingView and Titan in a decentralized, secure and simplified way.
• Without having the need to use 'third party services' for automating TradingView indicators and strategies like the ones available above.
🛠️• 28/05/2023 : Release ▬ Titan Culture Guide 📝
3️⃣1️⃣ : 🧻 Notes ❕
🧻 • Note ❕ The "Demo 🐄" version, ❌does not have 'integrated automation', to automate the signals of this strategy and enjoy a fully automated system, you need to have access to the Pro version with '100% integrated automation' and all the tutorials for automation available. Become a Titan Pro 👽
🧻 • Note ❕ You will also need to be a "Pro User or higher on Tradingview", to be able to use the webhook feature available only for 'paid' profiles on the platform.
With the webhook feature it is possible to send the signals of this strategy to almost anywhere, in our case to centralized or decentralized brokerages, also to popular messaging services such as: Discord, Telegram or Twiter.
3️⃣2️⃣ : 🚨 Disclaimer ❕❗
🚨 • Disclaimer ❕❕ Past positive result and performance of a system does not guarantee its positive result and performance for the future!
🚨 • Disclaimer ❗❗❗ When using this strategy: Titan Investments is totally Exempt from any claim of liability for losses. The responsibility on the management of your funds is solely yours. This is a very high risk/volatility market! Understand your place in the market.
3️⃣3️⃣ : ♻️ ® No Repaint
This Strategy does not Repaint! This is a real strategy!
3️⃣4️⃣ : 🔒 Copyright ©️
Copyright © 2022-2023 All rights reserved, ® Titan Investimentos
3️⃣5️⃣ : 👏 Acknowledgments
I want to start this message in thanks to TradingView and all the Pinescript community for all the 'magic' created here, a unique ecosystem! rich and healthy, a fertile soil, a 'new world' of possibilities, for a complete deepening and improvement of our best personal skills.
I leave here my immense thanks to the whole community: Tradingview, Pinecoders, Wizards and Moderators.
I was not born Rich .
Thanks to TradingView and pinescript and all its transformation.
I could develop myself and the best of me and the best of my skills.
And consequently build wealth and patrimony.
Gratitude.
One more story for the infinite book !
If you were born poor you were born to be rich !
Raising🔼 the level and raising🔼 the ruler! 📏
My work is my 'debauchery'! Do better! 💐🌹
Soul of a first-timer! Creativity Exudes! 🦄
This is the manifestation of God's magic in me. This is the best of me. 🧙
You will copy me, I know. So you owe me. 💋
My mission here is to raise the consciousness and self-esteem of all Titans and Titanids! Welcome! 🧘 🏛️
The only way to accomplish great work is to do what you love ! Before I learned to program I was wasting my life!
Death is the best creation of life .
Now you are the new , but in the not so distant future you will gradually become the old . Here I stay forever!
Playing the game like an Athlete! 🖼️ Enjoy and Enjoy 🍷 🗿
In honor of: BOB ☆
1 name, 3 letters, 3 possibilities, and if read backwards it's the same thing, a palindrome. ☘
Gratitude to the oracles that have enabled me the 'luck' to get this far: Dal&Ni&Fer
3️⃣6️⃣ : 👮 House Rules : 📺 TradingView
House Rules : This publication and strategy follows all TradingView house guidelines and rules:
📺 TradingView House Rules: www.tradingview.com
📺 Script publication rules: www.tradingview.com
📺 Vendor requirements: www.tradingview.com
📺 Links/References rules: www.tradingview.com
3️⃣7️⃣ : 🏛️ Become a Titan Pro member 👽
🟩 Titan Pro 👽 🟩
3️⃣8️⃣ : 🏛️ Be a member Titan Aff 🛸
🟥 Titan Affiliate 🛸 🟥
Kioseff Trading - AI-Optimized Supertrend
AI-Optimized Supertrend
Introducing AI-Optimized Supertrend: a streamlined solution for traders of any skill level seeking to rapidly test and optimize Supertrend. Capable of analyzing thousands of strategies, this tool cuts through the complexity to identify the most profitable, reliable, or efficient approaches.
Paired with TradingView's native backtesting capabilities, the AI-Optimized Supertrend learns from historical performance data. Set up is easy for all skill levels, and it makes fine-tuning trading alerts and Supertrend straightforward.
Features
Rapid Supertrend Strategy Testing : Quickly evaluate thousands of Supertrend strategies to find the most effective ones.
AI-Assisted Optimization : Leverage AI recommendations to fine-tune strategies for superior results.
Multi-Objective Optimization : Prioritize Supertrend based on your preference for the highest win rate, maximum profit, or efficiency.
Comprehensive Analytics : The strategy script provides an array of statistics such as profit factor, PnL, win rate, trade counts, max drawdown, and an equity curve to gauge performance accurately.
Alerts Setup : Conveniently set up alerts to be notified about critical trade signals or changes in performance metrics.
Versatile Stop Strategies : Experiment with profit targets, trailing stops, and fixed stop losses.
Binary Supertrend Exploration : Test binary Supertrend strategies.
Limit Orders : Analyze the impact of limit orders on your trading strategy.
Integration with External Indicators : Enhance strategy refinement by incorporating custom or publicly available indicators from TradingView into the optimization process.
Key Settings
The image above shows explanations for a list of key settings for the optimizer.
Set the Factor Range Limits : The AI suggests optimal upper and lower limits for the Factor range, defining the sensitivity of the Supertrend to price fluctuations. A wider range tests a greater variety, while a narrower range focuses on fine-tuning.
Adjust the ATR Range : Use the AI's recommendations to establish the upper and lower bounds for the Average True Range (ATR), which influences the Supertrend's volatility threshold.
ATR Flip : This option lets you interchange the order of ATR and Factor values to quicky test different sequences, giving you the flexibility to explore various combinations and their impact on the Supertrend indicator's performance.
Strategies Evaluated : Adjust this setting to determine how many Supertrend strategies you want to assess and compare.
Enable AI Mode : Turn this feature on to allow the AI to determine and employ the optimal Supertrend strategy with the desired performance metric, such as the highest win rate or maximum profitability.
Target Metric : Adjust this to direct the AI towards optimizing for maximum profit, top win rates, or the most efficient profits.
AI Mode Aggressiveness : Set how assertively the AI pursues the chosen performance goal, such as highest profit or win rate.
Strategy Direction : Choose to focus the AI's testing and optimization on either long or short Supertrend strategies.
Stop Loss Type : Specify the stop loss approach for optimization—fixed value, a trailing stop, or Supertrend direction changes.
Limit Order : Decide if you want to execute trades using limit orders for setting your profit targets, stop losses, or apply them to both.
Profit Target : Define your desired profit level when using either a fixed stop loss or a trailing stop.
Stop Loss : Define your desired stop loss when using either a fixed stop loss or a trailing stop.
How to: Find the best Supertrend for trading
It's important to remember that merely having the AI-Optimized Supertrend on your chart doesn't automatically provide you with the best strategy. You need to follow the AI's guidance through an iterative process to discover the optimal Supertrend settings and strategy.
Optimizing Supertrend involves adjusting two key parameters: the Factor and the Average True Range (ATR). These parameters significantly influence the Supertrend indicator's sensitivity and responsiveness to price movements.
Factor : This parameter multiplies the ATR to determine the distance of the Supertrend line from the price. Higher values will create a wider band, potentially leading to fewer trade signals, while lower values create a narrower band, which may result in more signals but also more noise.
ATR (Average True Range) : ATR measures market volatility. By using the ATR, the Supertrend adapts to changing market volatility; a higher ATR value means a more volatile market, so the Supertrend adjusts accordingly.
During the optimization process, these parameters are systematically varied to determine the combination that yields the best performance based on predefined criteria such as profitability, win rate, or risk management efficiency. The optimization aims to find the optimal Factor and ATR settings.
1.Starting Your Strategy Setup
Begin by deciding your goals for each trade: your profit target and stop loss, or if all trades exit when Supertrend changes direction. You'll also choose how to manage your stops – whether they stay put (fixed) or move with the price (trailing), and whether you want to exit trades at a specific price (limit orders). Keep the initial settings for Supertrend Factor Range and Supertrend ATR Range at their default to give the tool a broad testing field. The AI's guidance will refine these settings to pinpoint the most effective ones through a process of comprehensive testing.
Demonstration Start: We'll begin with the settings outlined in the key settings section, using Supertrend's direction change to the downside as our exit signal for all trades.
2. Continue applying the AI’s suggestions
Keep updating your optimization settings based on the AI's recommendations. Proceed with this iterative optimization until the "Best Found" message is displayed, signaling that the most effective strategy has been identified.
While following the AI's suggestions, we've been prompted with a new suggestion: increase the
number of strategies evaluated. Keep following the AI's new suggestions to evaluate more strategies. Do this until the "Best Found" message shows up.
Success! We continued to follow the AI’s suggestions until “Best Found” was indicated!
AI Mode
AI Mode incorporates Heuristic-Based Adaptive Learning to fine-tune trading strategies in a continuous manner. This feature consists of two main components:
Heuristic-Based Decision Making: The algorithm evaluates multiple Supertrend-based trading strategies using metrics such as Profit and Loss (PNL), Win Rate, and Most Efficient Profit. These metrics act as heuristics to assist the algorithm in identifying suitable strategies for trade execution.
Online Learning: The algorithm updates the performance evaluations of each strategy based on incoming market data. This enables the system to adapt to current market conditions.
Incorporating both heuristic-based decision-making and online learning, this feature aims to provide a framework for trading strategy optimization.
AI Mode Settings
AI Mode Aggressiveness:
Description: The "AI Mode Aggressiveness" setting allows you to fine-tune the AI's trading behavior. This setting ranges from “Low” to “High”, with “High” indicating a more assertive trading approach.
Functionality: This feature filters trading strategies based on a proprietary evaluation method. A higher setting narrows down the strategies that the AI will consider, leaning towards more aggressive trading. Conversely, a lower setting allows for a more conservative approach by broadening the pool of potential strategies.
Optimization
Trading system optimization is immensely advantageous when executed with prudence.
Technical-oriented, mechanical trading systems work when a valid correlation is methodical to the extent that an objective, precisely-defined ruleset can consistently exploit it. If no such correlation exists, or a technical-oriented system is erroneously designed to exploit an illusory correlation (absent predictive utility), the trading system will fail.
Evaluate results practically and test parameters rigorously after discovery. Simply mining the best-performing parameters and immediately trading them is unlikely a winning strategy. Put as much effort into testing strong-performing parameters and building an accompanying system as you would any other trading strategy. Automated optimization involves curve fitting - it's the responsibility of the trader to validate a replicable sequence or correlation and the trading system that exploits it.
Script pago
72s Strat: Backtesting Adaptive HMA+ pt.1This is a follow up to my previous publication of Adaptive HMA+ few months ago, as a mean to provide some kind of initial backtesting tools. Which can be use to explore many possible strategies, optimise its settings to better conform user's pair/tf, and hopefully able to help tweaking your general strategy.
If you haven't read the study or use the indicator, kindly go here first to get the overall idea.
The first strategy introduce in this backtest is one most basic already described in the study; buy/sell is when movement is there and everything is on the right side; When RSI has turned to other side, we can use it as exit point (if in profit of course, else just let it hit our TP/SL, why would we exit before profit). Also, base on RSI when we make entry, we can further differentiate type of signals. --Please check all comments in code directly where the signals , entries , and exits section are.
Second additional strategy to check; is when we also use second faster Adaptive HMA+ for exit. So this is like a double orders on a signal but with different exit-rule (/more on this on snapshots below). Alternatively, you can also work the code so to only use this type of exit.
There's also an additional feature which you can enable its visuals, the Distance Zone , is to help measuring price distance to our xHMA+. It's just a simple atr based envelope really, I already put the sample code in study's comment section, but better gonna update it there directly for non-coder too, after this.
In this sample I use Lot for order quantity size just because that's what I use on my broker. Also what few friends use while we forward-testing it since the study is published, so we also checked/compared each profit/loss report by real number. To use default or other unit of measurement, change the entry code accordingly.
If you change your order size, you should also change the commission in Properties Tab. My broker commission is 5 USD per order/lot, so in there with example order size 0.1 lot I put commission 0.5$ per order (I'll put 2.5$ for 0.5 lot, 10$ for 2 lot, and so on). Crypto usually has higher charge. --It is important that you should fill it base on your broker.
SETTINGS
I'm trying to keep it short. Please explore it further again. (Beginner should also first get acquaintance with terms use here.)
ORDERS:
Base Minimum Profit Before Exit:
The number is multiplier of ongoing ATR. Means that when basic exit condition is met, algo will check whether you're already in minimum profit or not, if not, let it still run to TP or SL, or until it meets subsequent exit condition, then it will check again.
Default Target Profit:
Multiplier of ATR at signal. If reached before any eligible exit condition is met, exit TP.
Base StopLoss Point:
You can change directly in code to use other like ATR Trailing SL, fix percent SL, or whatever. In the sample, 4 options provided.
Maximum StopLoss:
This is like a safety-net, that if at some point your chosen SL point from input above happens to be exceeding this maximum input that you can tolerate, then this max point is the one will be use as SL.
Activate 2nd order...:
The additional doubling of certain buy/sell with different exits as described above. If enable, you should also set pyramiding to at least: 2. If not, it does nothing.
ADAPTIVE HMA+ PERIOD
Many users already have their own settings for these. So in here I only sample the default as first presented in the study. Make it to your adaptive.
MARKET MOVEMENT
(1) Now you can check in realtime how much slope degree is best to define your specific pair/tf is out of congestion (yellow) area. And (2) also able to check directly what ATR lengths are more suitable defining your pair's volatility.
DISTANCE ZONE
Distance Multiplier. Each pair/tf has its own best distance zone (in xHMA+ perspective). The zone also determine whether a signal should appear or not. (Or what type of signal, if you wanna go more detail in constructing your strategy)
USAGE
(Provided you already have your own comfortable settings for minimum-maximum period of Adaptive HMA+. Best if you already have backtested it manually too and/or apply as an add-on to your working strategy)
1. In our experiences, first most important to define is both elements in the Market Movement Settings . These also tend to be persistent for whole season since it's kinda describing that pair/tf overall behaviour. Don't worry if you still get a low Profit Factor here, but by tweaking you should start to see positive changes in one of Max Drawdown and Net Profit, or Percent Profitable.
2. Afterwards, find your pair/tf Distance Zone . When optimising this, what we seek is just a "not to bad" equity curves to start forming. At least Max Drawdown should lessen more. Doesn't have to be great already, but should be better, no red in Net Profit.
3. Then go manage the "Trailing Minimum Profit", TP, SL, and max SL.
4. Repeat 1,2,3. 👻
5. Manage order size, commission, and/or enable double-order (need pyramiding) if you like. Check if your equity can handle max drawdown before margin call.
6. After getting an acceptable backtest result, go to List of Trades tab and find the biggest loss or when many sequencing loss in a row happened. Click on it to go to exact point on chart, observe why the signal failed and get at least general idea how it can be prevented . The rest is yours, you should know your pair/tf more than other.
You can also re-explore your minimum-maximum period for both Major and minor xHMA+.
Keep in mind that all numbers in Setting are conceptually in a form of range . You don't want to get superb equity curves but actually a "fragile" , means one can easily turn it to disaster just by changing only a fraction in one/two of the setting.
---
If you just wanna test the strength of the indicator alone, you can disable "Use StopLoss" temporarily while optimising settings.
Using no SL might be tempting in overall result data in some cases, but NOTE: It is not recommended to not using SL, don't forget that we deliberately enter when it's in high volatility. If want to add flexibility or trading for long-term, just maximise your SL. ie.: chose SL Point>ATR only and set it maximum. (Check your max drawdown after this).
I think this is quite important specially for beginners, so here's an example; Hypothetically in below scenario, because of some settings, the buy order after the loss sell signal didn't appear. Let's say if our initial capital only 1000$ using leverage and order size 0,5 lot (risky position sizing already), moreover if this happens at the beginning of your trading season, that's half of account gone already in one trade . Your max SL should've made you exit after that pumping bar.
The Trailing Minimum Profit is actually look like this. Search in the code if you want to plot it. I just don't like too many lines on chart.
To maximise profit we can try enabling double-order. The only added rule coded is: RSI should rising when buy and falling when sell. 2nd signal will appears above or below default buy/sell signal. (Of course it's also prone to double-loss, re-check your max drawdown after. Profit factor play its part in here for a long run). Snapshot in comparison:
Two default sell signals on left closed at RSI exit, the additional sell signal closed later on when price crossover minor xHMA+. On buy side, price haven't met our minimum profit when first crossunder minor xHMA+. If later on we hit SL on this "+buy" signal, at least we already profited from default buy signal. You can also consider/treat this as multiple TP points.
For longer-term trading, what you need to maximise is the Minimum Profit , so it won't exit whenever an exit condition happened, it can happen several times before reaching minimum profit. Hopefully this snapshot can explain:
Notice in comparison default sell and buy signal now close in average after 3 days. What's best is when we also have confirmation from higher TF. It's like targeting higher TF by entering from smaller TF.
As also mention in the study, we can still experiment via original HMA by putting same value for minimum-maximum period setting. This is experimental EU 1H with Major xHMA+: 144-144, Flat market 13, Distance multiplier 3.6, with 2nd order activated.
Kiwi was a bit surprising for me. It's flat market is effectively below 6, with quite far distance zone of 3.5. Probably because I'm using big numbers in adaptive period.
---
The result you see in strategy tester report below for EURUSD 15m is using just default settings you see in code, as follow:
0,1 lot for each order (which is the smallest allowed by my broker).
No pyramiding. Commission: 0.5 usd per order. Slippage: 3
Opening position is only using basic strategy #1 (RSI exit). Additional exit not activated.
Minimum Profit: 1. TP: 3.
SL use: Half-distance zone. Max SL: 4.5.
Major xHMA+: 172-233. minor xHMA+: 89-121
Distance Zone Multiplier: 2.7
RSI: Standard 14.
(From our forward-testing, the difference we get from net profit is because of the spread, our entry isn't exactly at the close/open price. Not so much though, but not the same. If somebody can direct me to any example where we can code our entry via current bid/ask price, that would be awesome!)
It's already a long post (sorry), think I'm gonna pause here. Check out the code :)
---
DISCLAIMER: Past performance is no guarantee of future results , and so on.. you know the drill ;)
Please read whole description first before using, don't take 1-2 paragraph and claim it's the whole logic, you are responsible of your own actions and understanding.
Full Range Trading Strategy with DCA - Crypto, Forex, Stocks
Introduction
This is a Pine 4 range trading strategy. It has a twin study with several alerts. The design intent is to produce a commercial grade signal generator that can be adapted to any symbol and interval. Ideally, the script is reliable enough to be the basis of an automated trading system web-hooked to a server with API access to crypto, forex and stock brokerages. The strategy can be run in three different modes: long, short and bidirectional.
As a range trading strategy, the behavior of the 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. 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. When trading in “Ping Pong” mode long and short positions are intermingled continuously as long as there exists a detectable vertex. Unfortunately, this can work against your backtest profitability on long duration trends where prices continue in a single direction without pullback. I have designed various features in the script to compensate for this event. A well configured script should perform in a range bound market and minimize losses in a trend. I also have a trend following version of this script for those not interested in trading the range. Please be aware these are two types of traders. You should know who you are.
This script employs a DCA feature which enables users to experiment with loss recovery techniques. This is an 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 TV properties tab. The inputs for this feature include a limiter to prevent your account from depleting capital during runaway markets. This implementation of DCA does not use pyramid levels. Only the order size on subsequent new trades are affected. Pyramids on the other hand increase the size of open positions. If you are interested in seeing pyramids in action please see the trend version of this script which features both DCA and pyramids. While DCA is a popular feature in crypto trading, it can make you a “bag” holder if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much trading experience to manage this feature safely.
Consecutive loss limit can be set to report a breach of the threshold value. Every stop hit beyond this limit will be reported on a version 4 label above the bar where the stop is hit. Use the location of the labels along with the summary report tally to improve the adaptability of system. Don’t simply fit the chart. A good trading system should adapt to ever changing market conditions. On the study version the consecutive loss limit can be used to halt live trading on the broker side (managed manually).
Design
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a much larger program on another 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 form the basis of the entry and exit points. The vertices are calculated using one of five featured indicators. Each indicator is actually a composite of calculations which produce a distinct mean. This mathematical distinction enables the script to be useful on various instruments which belong to entirely different markets. In other words, at least one of these indicators should be able generate pivots on an arbitrarily selected instrument. Try each one to find the best fit.
The entire script is around 1800 lines of Pine code which is the maximum incidental size given the TradingView limits: local scopes, run-time duration and compile time. I’ve been working on this script for nearly two years and have tested it on various instruments stocks, forex and crypto. It performs well on higher liquidity markets that have at least a year of historical data. Although the script can be implemented on any interval, it has been optimized for small time frames down to 5 minutes. The 10 minute BTC/USD produces around 500 trades in 2 ½ months. The 1 hour BTC/USD produces around 1300 trades in 1 ½ years. Originally, this script contained both range trading and trend following logic but had to be broken into separate scripts due to the aforementioned limitations.
Inputs to the script use cone centric measurements in effort to avoid exposing adjustments to the various internal indicators. The goal was to keep the inputs relevant to the actual trade entry and exit locations as opposed to a series of MA input values and the like. As a result the strategy exposes over 50 inputs grouped into long or short sections. Inputs are available for the usual minimum profit and stop-loss as well as safeguards, trade frequency, DCA, modes, presets, reports and lots of calibrations. The inputs are numerous, I’m aware. Unfortunately, at this time, TradingView does not offer any other method to get data in the script. The usual initialization files such as cnf, cfg, ini, json and xml files are currently unsupported.
Example configurations for various instruments along with a detailed PDF user manual is available.
Indicator Repainting And Anomalies
Indicator repainting is an industry wide problem which mainly occurs when you mix backtest data with real-time data. It doesn't matter which platform you use some form of this condition will manifest itself on your chart over time. The critical aspect being whether live trades on your broker’s account continue to match your TradingView study.
Tackling this repainting issue has been a major project goal of this script. Based on my experience with Pine, most of the problems stem from TradingView’s implementation of multiple interval access. Whereas most platform provide a separate bar series for each interval requested, the Pine language interleaves higher time frames with the primary chart interval. The problem is exacerbated by allowing a look-ahead parameter to the Security function. The goal of my repaint prevention is simply to ensure that my signal trading bias remains consistent between the strategy, study and broker. That being said this is what I’ve done address this issue in this script:
1. This script uses only 1 time frame. The chart interval.
2. Every entry and exit condition is evaluated on closed bars only.
3. No security functions are called to avoid a look-ahead possibility.
4. Every contributing factor specified in the TradingView wiki regarding this issue has been addressed.
5. I’ve run a 10 minute chart live for a week and compared it to the same chart periodically reloaded. The two charts were highly correlated with no instances of completely opposite real-time signals.
The study does indeed bring up the TV warning dialog. The only reason for this is because the script uses an EMA indicator which according to TradingView is due to “peculiarities of the algorithm”.
One issue that comes up when comparing the strategy with the study is that the strategy trades show on the chart one bar later than the study. This problem is due to the fact that “strategy.entry()” and “strategy_exit()” do not execute on the same bar called. The study, on the other hand, has no such limitation since there are no position routines.
Please be aware that the data source matters. Cryptocurrency has no central tick repository so each exchange supplies TradingView its feed. Even though it is the same symbol the quality of the data and subsequently the bars that are supplied to the chart varies with the exchange. This script will absolutely produce different results on different data feeds of the same symbol. Be sure to backtest this script on the same data you intend to receive alerts for. Any example settings I share with you will always have the exchange name used to generate the test results.
Usage
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 configs that I use for my own trading that I can share with you along with a PDF which describes each input in detail. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
The input dialog box contains over 50 inputs separated into five sections. Each section is identified as such with a makeshift separator input. There are three main areas that must to be configured: long side, short side and settings that apply to both. The rest of the inputs apply to DCA, reporting and calibrations. The following steps address these three main areas only. You will need to get your backtest in the black before moving on to the more advanced features.
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 3. 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 3 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 4 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. Return to Section 3 and 4 and turn off “Base To Base Margin” which was enabled in steps 9 and 10.
Step 13. Turn off Show Markers in Section 2.
Step 14. 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. This is a fixed value minimum profit and stop loss. Also 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. On the study version, the stop is executed at the close of the bar.
Step 15. 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 16. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 17. 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 18.
Step 18. Improve the backtest profitability by adjusting the “Long Entry Net Change” and “Long Entry ROC” in Section 3.
Step 19. Improve the backtest profitability by adjusting the “Short Entry Net Change” and “Short Entry ROC” in Section 4.
Step 20. Improve the backtest profitability by adjusting the “Sparse Long Delta” in Section 3.
Step 21. Improve the backtest profitability by adjusting the “Chase Long Delta” in Section 3.
Step 22. Improve the backtest profitability by adjusting the “Long Adherence Delta” in Section 3. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 23. Try each checkbox in Section 3 and see if it improves the backtest profitability. The “Caution Lackluster Longs” checkbox only works when “Long Caution Mode” is enabled.
Step 24. Improve the backtest profitability by adjusting the “Sparse Short Delta” in Section 4.
Step 25. Improve the backtest profitability by adjusting the “Chase Short Delta” in Section 4.
Step 26. Improve the backtest profitability by adjusting the “Short Adherence Delta” in Section 4. This field requires the “Adhere to Falling Trend” checkbox to be enabled.
Step 27. Try each checkbox in Section 4 and see if it improves the backtest profitability. The “Caution Lackluster Shorts” checkbox only works when “Short Caution Mode” is enabled.
Step 28. Enable the reporting conditions in Section 5. Look for long runs of consecutive losses or high debt sequences. These are indications that your trading system cannot withstand sudden changes in market sentiment.
Step 29. 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 Macro indicator captures the tallest peaks and valleys.
Step 30. Apply the backtest settings to the study version and perform forward testing.
This script is open for beta testing. After successful beta test it will become a commercial application available by subscription only. I’ve invested quite a lot of time and effort into making this the best possible signal generator for all of the instruments I intend to trade. I certainly welcome any suggestions for improvements. Thank you all in advance.
Quantum Reversal Engine [ApexLegion]Quantum Reversal Engine
STRATEGY OVERVIEW
This strategy is constructed using 5 custom analytical filters that analyze different market dimensions - trend structure, momentum expansion, volume confirmation, price action patterns, and reversal detection - with results processed through a multi-component scoring calculation that determines signal generation and position management decisions.
Why These Custom Filters Were Independently Developed:
This strategy employs five custom-developed analytical filters:
1. Apex Momentum Core (AMC) - Custom oscillator with volatility-scaled deviation calculation
Standard oscillators lag momentum shifts by 2-3 bars. Custom calculation designed for momentum analysis
2. Apex Wick Trap (AWT) - Wick dominance analysis for trap detection
Existing wick analysis tools don't quantify trap conditions. Uses specific ratios for wick dominance detection
3. Apex Volume Pulse (AVP) - Volume surge validation with participation confirmation
Volume indicators typically use simple averages. Uses surge multipliers with participation validation
4. Apex TrendGuard (ATG) - Angle-based trend detection with volatility band integration
EMA slope calculations often produce false signals. Uses angle analysis with volatility bands for confirmation
5. Quantum Composite Filter (QCF) - Multi-component scoring and signal generation system
Composite scoring designed to filter noise by requiring multiple confirmations before signal activation.
Each filter represents mathematical calculations designed to address specific analytical requirements.
Framework Operation: The strategy functions as a scoring framework where each filter contributes weighted points based on market conditions. Entry signals are generated when minimum threshold scores are met. Exit management operates through a three-tier system with continued signal strength evaluation determining position holds versus closures at each TP level.
Integration Challenge: The core difficulty was creating a scoring system where five independent filters could work together without generating conflicting signals. This required backtesting to determine effective weight distributions.
Custom Filter Development:
Each of the five filters represents analytical approaches developed through testing and validation:
Integration Validation: Each filter underwent individual testing before integration. The composite scoring system required validation to verify that filters complement rather than conflict with each other, resulting in a cohesive analytical framework that was tested during the development period.
These filters represent custom-developed components created specifically for this strategy, with each component addressing different analytical requirements through testing and parameter adjustment.
Programming Features:
Multi-timeframe data handling with backup systems
Performance optimization techniques
Error handling for live trading scenarios
Parameter adaptation based on market conditions
Strategy Features:
Uses multi-filter confirmation approach
Adapts position holding based on continued signal strength
Includes analysis tools for trade review and optimization
Ongoing Development: The strategy was developed through testing and validation processes during the creation period.
COMPONENT EXPLANATION
EMA System
Uses 8 exponential moving averages (7, 14, 21, 30, 50, 90, 120, 200 periods) for trend identification. Primary signals come from 8/21 EMA crossovers, while longer EMAs provide structural context. EMA 1-4 determine short-term structure, EMA 5-8 provide long-term trend confirmation.
Apex Momentum Core (AMC)
Built custom oscillator mathematics after testing dozens of momentum calculation methods. Final algorithm uses price deviation from EMA baseline with volatility scaling to reduce lag while maintaining accuracy across different market conditions.
Custom momentum oscillator using price deviation from EMA baseline:
apxCI = 100 * (source - emaBase) / (sensitivity * sqrt(deviation + 1))
fastLine = EMA(apxCI, smoothing)
signalLine = SMA(fastLine, 4)
Signals generate when fastLine crosses signalLine at +50/-50 thresholds.
This identifies momentum expansion before traditional oscillators.
Apex Volume Pulse (AVP)
Created volume surge analysis that goes beyond simple averages. Extensive testing determined 1.3x multiplier with participation validation provides reliable confirmation while filtering false volume spikes.
Compares current volume to 21-period moving average.
Requires 1.3x average volume for signal confirmation. This filters out low-volume moves during quiet periods and confirms breakouts with actual participation.
Apex Wick Trap (AWT)
Developed proprietary wick trap detection through analysis of failed breakout patterns. Tested various ratio combinations before settling on 60% wick dominance + 20% body limit as effective trap identification parameters.
Analyzes candle structure to identify failed breakouts:
candleRange = math.max(high - low, 0.00001)
candleBody = math.abs(close - open)
bodyRatio = candleBody / candleRange
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
upperWickRatio = upperWick / candleRange
lowerWickRatio = lowerWick / candleRange
trapWickLong = showAWT and lowerWickRatio > minWickDom and bodyRatio < bodyToRangeLimit and close > open
trapWickShort = showAWT and upperWickRatio > minWickDom and bodyRatio < bodyToRangeLimit and close < open This catches reversals after fake breakouts.
Apex TrendGuard (ATG)
Built angle-based trend detection after standard EMA crossovers proved insufficient. Combined slope analysis with volatility bands through iterative testing to eliminate false trend signals.
EMA slope analysis with volatility bands:
Fast EMA (21) vs Slow EMA (55) for trend direction
Angle calculation: atan(fast - slow) * 180 / π
ATR bands (1.75x multiplier) for breakout confirmation
Minimum 25° angle for strong trend classification
Core Algorithm Framework
1. Composite Signal Generation
calculateCompositeSignals() =>
// Component Conditions
structSignalLong = trapWickLong
structSignalShort = trapWickShort
momentumLong = amcBuySignal
momentumShort = amcSellSignal
volumeSpike = volume > volAvg_AVP * volMult_AVP
priceStrength_Long = close > open and close > close
priceStrength_Short = close < open and close < close
rsiMfiComboValue = (ta.rsi(close, 14) + ta.mfi(close, 14)) / 2
reversalTrigger_Long = ta.crossover(rsiMfiComboValue, 50)
reversalTrigger_Short = ta.crossunder(rsiMfiComboValue, 50)
isEMACrossUp = ta.crossover(emaFast_ATG, emaSlow_ATG)
isEMACrossDown = ta.crossunder(emaFast_ATG, emaSlow_ATG)
// Enhanced Composite Score Calculation
scoreBuy = 0.0
scoreBuy += structSignalLong ? scoreStruct : 0.0
scoreBuy += momentumLong ? scoreMomentum : 0.0
scoreBuy += flashSignal ? weightFlash : 0.0
scoreBuy += blinkSignal ? weightBlink : 0.0
scoreBuy += volumeSpike_AVP ? scoreVolume : 0.0
scoreBuy += priceStrength_Long ? scorePriceAction : 0.0
scoreBuy += reversalTrigger_Long ? scoreReversal : 0.0
scoreBuy += emaAlignment_Bull ? weightTrendAlign : 0.0
scoreBuy += strongUpTrend ? weightTrendAlign : 0.0
scoreBuy += highRisk_Long ? -1.2 : 0.0
scoreBuy += signalGreenDot ? 1.0 : 0.0
scoreBuy += isAMCUp ? 0.8 : 0.0
scoreBuy += isVssBuy ? 1.5 : 0.0
scoreBuy += isEMACrossUp ? 1.0 : 0.0
scoreBuy += signalRedX ? -1.0 : 0.0
scoreSell = 0.0
scoreSell += structSignalShort ? scoreStruct : 0.0
scoreSell += momentumShort ? scoreMomentum : 0.0
scoreSell += flashSignal ? weightFlash : 0.0
scoreSell += blinkSignal ? weightBlink : 0.0
scoreSell += volumeSpike_AVP ? scoreVolume : 0.0
scoreSell += priceStrength_Short ? scorePriceAction : 0.0
scoreSell += reversalTrigger_Short ? scoreReversal : 0.0
scoreSell += emaAlignment_Bear ? weightTrendAlign : 0.0
scoreSell += strongDownTrend ? weightTrendAlign : 0.0
scoreSell += highRisk_Short ? -1.2 : 0.0
scoreSell += signalRedX ? 1.0 : 0.0
scoreSell += isAMCDown ? 0.8 : 0.0
scoreSell += isVssSell ? 1.5 : 0.0
scoreSell += isEMACrossDown ? 1.0 : 0.0
scoreSell += signalGreenDot ? -1.0 : 0.0
compositeBuySignal = enableComposite and scoreBuy >= thresholdCompositeBuy
compositeSellSignal = enableComposite and scoreSell >= thresholdCompositeSell
if compositeBuySignal and compositeSellSignal
compositeBuySignal := false
compositeSellSignal := false
= calculateCompositeSignals()
// Final Entry Signals
entryCompositeBuySignal = compositeBuySignal and ta.rising(emaFast_ATG, 2)
entryCompositeSellSignal = compositeSellSignal and ta.falling(emaFast_ATG, 2)
Calculates weighted scores from independent modules and activates signals only when threshold requirements are met.
2. Smart Exit Hold Evaluation System
evaluateSmartHold() =>
compositeBuyRecentCount = 0
compositeSellRecentCount = 0
for i = 0 to signalLookbackBars - 1
compositeBuyRecentCount += compositeBuySignal ? 1 : 0
compositeSellRecentCount += compositeSellSignal ? 1 : 0
avgVolume = ta.sma(volume, 20)
volumeSpike = volume > avgVolume * volMultiplier
// MTF Bull/Bear conditions
mtf_bull = mtf_emaFast_final > mtf_emaSlow_final
mtf_bear = mtf_emaFast_final < mtf_emaSlow_final
emaBackupDivergence = math.abs(mtf_emaFast_backup - mtf_emaSlow_backup) / mtf_emaSlow_backup
emaBackupStrong = emaBackupDivergence > 0.008
mtfConflict_Long = inLong and mtf_bear and emaBackupStrong
mtfConflict_Short = inShort and mtf_bull and emaBackupStrong
// Layer 1: ATR-Based Dynamic Threshold (Market Volatility Intelligence)
atr_raw = ta.atr(atrLen)
atrValue = na(atr_raw) ? close * 0.02 : atr_raw
atrRatio = atrValue / close
dynamicThreshold = atrRatio > 0.02 ? 1.0 : (atrRatio > 0.01 ? 1.5 : 2.8)
// Layer 2: ROI-Conditional Time Intelligence (Selective Pressure)
timeMultiplier_Long = realROI >= 0 ? 1.0 : // Profitable positions: No time pressure
holdTimer_Long <= signalLookbackBars ? 1.0 : // Loss positions 1-8 bars: Base
holdTimer_Long <= signalLookbackBars * 2 ? 1.1 : // Loss positions 9-16 bars: +10% stricter
1.3 // Loss positions 17+ bars: +30% stricter
timeMultiplier_Short = realROI >= 0 ? 1.0 : // Profitable positions: No time pressure
holdTimer_Short <= signalLookbackBars ? 1.0 : // Loss positions 1-8 bars: Base
holdTimer_Short <= signalLookbackBars * 2 ? 1.1 : // Loss positions 9-16 bars: +10% stricter
1.3 // Loss positions 17+ bars: +30% stricter
// Dual-Layer Threshold Calculation
baseThreshold_Long = mtfConflict_Long ? dynamicThreshold + 1.0 : dynamicThreshold
baseThreshold_Short = mtfConflict_Short ? dynamicThreshold + 1.0 : dynamicThreshold
timeAdjustedThreshold_Long = baseThreshold_Long * timeMultiplier_Long
timeAdjustedThreshold_Short = baseThreshold_Short * timeMultiplier_Short
// Final Smart Hold Decision with Dual-Layer Intelligence
smartHold_Long = not mtfConflict_Long and smartScoreLong >= timeAdjustedThreshold_Long and compositeBuyRecentCount >= signalMinCount
smartHold_Short = not mtfConflict_Short and smartScoreShort >= timeAdjustedThreshold_Short and compositeSellRecentCount >= signalMinCount
= evaluateSmartHold()
Evaluates whether to hold positions past TP1/TP2/TP3 levels based on continued signal strength, volume confirmation, and multi-timeframe trend alignment
HOW TO USE THE STRATEGY
Step 1: Initial Setup
Apply strategy to your preferred timeframe (backtested on 15M)
Enable "Use Heikin-Ashi Base" for smoother signals in volatile markets
"Show EMA Lines" and "Show Ichimoku Cloud" are enabled for visual context
Set default quantities to match your risk management (5% equity default)
Step 2: Signal Recognition
Visual Signal Guide:
Visual Signal Guide - Complete Reference:
🔶 Red Diamond: Bearish momentum breakdown - short reversal signal
🔷 Blue Diamond: Strong bullish momentum - long reversal signal
🔵 Blue Dot: Volume-confirmed directional move - trend continuation
🟢 Green Dot: Bullish EMA crossover - trend reversal confirmation
🟠 Orange X: Oversold reversal setup - counter-trend opportunity
❌ Red X: Bearish EMA breakdown - trend reversal warning
✡ Star Uprising: Strong bullish convergence
💥 Ultra Entry: Ultra-rapid downward momentum acceleration
▲ VSS Long: Velocity-based bullish momentum confirmation
▼ VSS Short: Velocity-based bearish momentum confirmation
Step 3: Entry Execution
For Long Positions:
1. ✅ EMA1 crossed above EMA2 exactly 3 bars ago [ta.crossover(ema1,ema2) ]
2. ✅ Current EMA structure: EMA1 > EMA2 (maintained)
3. ✅ Composite score ≥ 5.0 points (6.5+ for 5-minute timeframes)
4. ✅ Cooldown period completed (no recent stop losses)
5. ✅ Volume spike confirmation (green dot/blue dot signals)
6. ✅ Bullish candle closes above EMA structure
For Short Positions:
1. ✅ EMA1 crossed below EMA2 exactly 3 bars ago [ta.crossunder(ema1,ema2) ]
2. ✅ Current EMA structure: EMA1 < EMA2 (maintained)
3. ✅ Composite score ≥ 5.4 points (7.0+ for 5-minute timeframes)
4. ✅ Cooldown period completed (no recent stop losses)
5. ✅ Momentum breakdown (red diamond/red X signals)
6. ✅ Bearish candle closes below EMA structure
🎯 Critical Timing Note: The strategy requires EMA crossover to have occurred 3 bars prior to entry, not at the current bar. This attempts to avoid premature entries and may improve signal reliability.
Step 4: Reading Market Context
EMA Ribbon Interpretation:
All EMAs ascending = Strong uptrend context
EMAs 1-3 above EMAs 4-8 = Bullish structure
Tight EMA spacing = Low volatility/consolidation
Wide EMA spacing = High volatility/trending
Ichimoku Cloud Context:
Price above cloud = Bullish environment
Price below cloud = Bearish environment
Cloud color intensity = Momentum strength
Thick cloud = Strong support/resistance
THE SMART EXIT GRID SYSTEM
Smart Exit Grid Approach:
The Smart Exit Grid uses dynamic hold evaluation that continuously analyzes market conditions after position entry. This differs from traditional fixed profit targets by adapting exit timing based on real-time signal strength.
How Smart Exit Grid System Works
The system operates through three evaluation phases:
Smart Score Calculation:
The smart score calculation aggregates 22 signal components in real-time, combining reversal warnings, continuation signals, trend alignment indicators, EMA structural analysis, and risk penalties into a numerical representation of market conditions. MTF analysis provides additional confirmation as a separate validation layer.
Signal Stack Management:
The per-tick signal accumulation system monitors 22 active signal types with MTF providing trend validation and conflict detection as a separate confirmation layer.
Take Profit Progression:
Smart Exit Activation:
The QRE system activates Smart Exit Grid immediately upon position entry. When strategy.entry() executes, the system initializes monitoring systems designed to track position progress.
Upon position opening, holdTimer begins counting, establishing the foundation for subsequent decisions. The Smart Exit Grid starts accumulating signals from entry, with all 22 signal components beginning real-time tracking when the trade opens.
The system operates on continuous evaluation where smartScoreLong and smartScoreShort calculate from the first tick after entry. QRE's approach is designed to capture market structure changes, trend deteriorations, or signal pattern shifts that can trigger protective exits even before the first take profit level is reached.
This activation creates a proactive position management framework. The 8-candle sliding window starts from entry, meaning that if market conditions change rapidly after entry - due to news events, liquidity shifts, or technical changes - the system can respond within the configured lookback period.
TP Markers as Reference Points:
The TP1, TP2, and TP3 levels function as reference points rather than mandatory exit triggers. When longTP1Hit or shortTP1Hit conditions activate, they serve as profit confirmation markers that inform the Smart Exit algorithm about achieved reward levels, but don't automatically initiate position closure.
These TP markers enhance the Smart Exit decision matrix by providing profit context to ongoing signal evaluation. The system recognizes when positions have achieved target returns, but the actual exit decision remains governed by continuous smart score evaluation and signal stack analysis.
TP2 Reached: Enhanced Monitoring
TP2 represents significant profit capture with additional monitoring features:
This approach is designed to help avoid premature profit-taking during trending conditions. If TP2 is reached but smartScoreLong remains above the dynamic threshold and the 8-candle sliding window shows persistent signals, the position continues holding. If market structure deteriorates before reaching TP2, the Smart Exit can trigger closure based on signal analysis.
The visual TP circles that appear when levels are reached serve as performance tracking tools, allowing users to see how frequently entries achieve various profit levels while understanding that actual exit timing depends on market structure analysis.
Risk Management Systems:
Operating independently from the Smart Exit Grid are two risk management systems: the Trap Wick Detection Protocol and the Stop Loss Mechanism. These systems maintain override authority over other exit logic.
The Trap Wick System monitors for conditionBearTrapExit during long positions and conditionBullTrapExit during short positions. When detected, these conditions trigger position closure with state reset, bypassing Smart Exit evaluations. This system recognizes that certain candlestick patterns may indicate reversal risk.
Volatility Exit Monitoring: The strategy monitors for isStrongBearCandle combined with conditionBearTrapExit, recognizing when market structure may be shifting.
Volume Validation: Before exiting on volatility, the strategy requires volume confirmation: volume > ta.sma(volume, 20) * 1.8. This is designed to filter exits on weak, low-volume movements.
The Stop Loss Mechanism operates through multiple triggers including traditional price-based stops (longSLHit, shortSLHit) and early exit conditions based on smart score deterioration combined with negative ROI. The early exit logic activates when smartScoreLong < 1.0 or smartScoreShort < 1.0 while realROI < -0.9%.
These risk management systems are designed so that risk scenarios can trigger protective closure with state reset across all 22 signal counters, TP tracking variables, and smart exit states.
This architecture - Smart Exit activation, TP markers as navigation tools, and independent risk management - creates a position management system that adapts to market conditions while maintaining risk discipline through dedicated protection protocols.
TP3 Reached: Enhanced Protection
Once TP3 is hit, the strategy shifts into enhanced monitoring:
EMA Structure Monitoring: isEMAStructureDown becomes a primary exit trigger
MTF Alignment: The higher timeframe receives increased consideration
Wick Trap Priority: conditionBearTrapExit becomes an immediate exit signal
Approach Differences:
Traditional Fixed Exits:
Exit at predetermined levels regardless of market conditions
May exit during trend continuation
May exit before trend completion
Limited adaptation to changing volatility
Smart Exit Grid Approach:
Adaptive timing based on signal conditions
Exits when supporting signals weaken
Multi-timeframe validation for trend confirmation
Volume confirmation requirements for holds
Structural monitoring for trend analysis
Dynamic ATR-Based Smart Score Threshold System
Market Volatility Adaptive Scoring
// Real-time ATR Analysis
atr_raw = ta.atr(atrLen)
atrValue = na(atr_raw) ? close * 0.02 : atr_raw
atrRatio = atrValue / close
// Three-Tier Dynamic Threshold Matrix
dynamicThreshold = atrRatio > 0.02 ? 1.0 : // High volatility: Lower threshold
(atrRatio > 0.01 ? 1.5 : // Medium volatility: Standard
2.8) // Low volatility: Higher threshold
The market volatility adaptive scoring calculates real-time ATR with a 2% fallback for new markets. The atrRatio represents the relationship between current volatility and price, creating a foundation for threshold adjustment.
The three-tier dynamic threshold matrix responds to market conditions by adjusting requirements based on volatility levels: lowering thresholds during high volatility periods above 2% ATR ratio to 1.0 points, maintaining standard requirements at 1.5 points for medium volatility between 1-2%, and raising standards to 2.8 points during low volatility periods below 1%.
Profit-Loss Adaptive Management:
The system applies different evaluation criteria based on position performance:
Winning Positions (realROI ≥ 0%):
→ timeMultiplier = 1.0 (No additional pressure)
→ Maintains base threshold requirements
→ Allows natural progression to TP2/TP3 levels
Losing Positions (realROI < 0%):
→ Progressive time pressure activated
→ Increasingly strict requirements over time
→ Faster decision-making on underperforming trades
ROI-Adaptive Smart Hold Decision Process:
The strategy uses a profit-loss adaptive system:
Winning Position Management (ROI ≥ 0%):
✅ Standard threshold requirements maintained
✅ No additional time-based pressure applied
✅ Allows positions to progress toward TP2/TP3 levels
✅ timeMultiplier remains at 1.0 regardless of hold duration
Losing Position Management (ROI < 0%):
⚠️ Time-based threshold adjustments activated
⚠️ Progressive increase in required signal strength over time
⚠️ Earlier exit evaluation on underperforming positions
⚠️ timeMultiplier increases from 1.0 → 1.1 → 1.3 based on hold duration
Real-Time Monitoring:
Monitor Analysis Table → "Smart" filter → "Score" vs "Dynamic Threshold"
Winning positions: Evaluation based on signal strength deterioration only
Losing positions: Evaluation considers both signal strength and progressive time adjustments
Breakeven positions (0% ROI): Treated as winning positions - no time adjustments
This approach differentiates between winning and losing positions in the hold evaluation process, requiring higher signal thresholds for extended holding of losing positions while maintaining standard requirements for winning ones.
ROI-Conditional Decision Matrix Examples:
Scenario 1 - Winning Position in Any Market:
Position ROI: +0.8% → timeMultiplier = 1.0 (regardless of hold time)
ATR Medium (1.2%) → dynamicThreshold = 1.5
Final Threshold = 1.5 × 1.0 = 1.5 points ✅ Position continues
Scenario 2 - Losing Position, Extended Hold:
Position ROI: -0.5% → Time pressure activated
Hold Time: 20 bars → timeMultiplier = 1.3
ATR Low (0.8%) → dynamicThreshold = 2.8
Final Threshold = 2.8 × 1.3 = 3.64 points ⚡ Enhanced requirements
Scenario 3 - Fresh Losing Position:
Position ROI: -0.3% → Time pressure activated
Hold Time: 5 bars → timeMultiplier = 1.0 (still early)
ATR High (2.1%) → dynamicThreshold = 1.0
Final Threshold = 1.0 × 1.0 = 1.0 points 📊 Recovery opportunity
Scenario 4 - Breakeven Position:
Position ROI: 0.0% → timeMultiplier = 1.0 (no pressure)
Hold Time: 15 bars → No time penalty applied
Final Threshold = dynamicThreshold only ⚖️ Neutral treatment
🔄8-Candle Sliding Window Signal Rotation System
Composite Signal Counting Mechanism
// Dynamic Lookback Window (configurable: default 8)
signalLookbackBars = input.int(8, "Composite Lookback Bars", minval=1, maxval=50)
// Rolling Signal Analysis
compositeBuyRecentCount = 0
compositeSellRecentCount = 0
for i = 0 to signalLookbackBars - 1
compositeBuyRecentCount += compositeBuySignal ? 1 : 0
compositeSellRecentCount += compositeSellSignal ? 1 : 0
Candle Flow Example (8-bar window):
→
✓ ✓ ✗ ✓ ✗ ✓ ✗ ✓ 🗑️
New Signal Count = 5/8 signals in window
Threshold Check: 5 ≥ signalMinCount (2) = HOLD CONFIRMED
Signal Decay & Refresh Mechanism
// Signal Persistence Tracking
if compositeBuyRecentCount >= signalMinCount
smartHold_Long = true
else
smartHold_Long = false
The composite signal counting operates through a configurable sliding window. The system maintains rolling counters that scan backward through the specified number of candles.
During each evaluation cycle, the algorithm iterates through historical bars, incrementing counters when composite signals are detected. This creates a dynamic signal persistence measurement where recent signal density determines holding decisions.
The sliding window rotation functions like a moving conveyor belt where new signals enter while the oldest signals drop off. For example, in an 8-bar window, if 5 out of 8 recent candles showed composite buy signals, and the minimum required count is 2, the system confirms the hold condition. As new bars form, the window slides forward, potentially changing the signal count and triggering exit conditions when signal density falls below the threshold.
Signal decay and refresh occur continuously where smartHold_Long remains true only when compositeBuyRecentCount exceeds signalMinCount. When recent signal density drops below the minimum requirement, the system switches to exit mode.
Advanced Signal Stack Management - 22-Signal Real-Time Evaluation
// Long Position Signal Stacking (calc_on_every_tick=true)
if inLong
// Primary Reversal Signals
if signalRedDiamond: signalCountRedDiamond += 1 // -0.5 points
if signalStarUprising: signalCountStarUprising += 1 // +1.5 points
if entryUltraShort: signalCountUltra += 1 // -1.0 points
// Trend Confirmation Signals
if strongUpTrend: trendUpCount_Long += 1 // +1.5 points
if emaAlignment_Bull: bullAlignCount_Long += 1 // +1.0 points
// Risk Assessment Signals
if highRisk_Long: riskCount_Long += 1 // -1.5 points
if topZone: tzoneCount_Long += 1 // -0.5 points
The per-tick signal accumulation system operates with calc_on_every_tick=true for real-time responsiveness. During long positions, the system monitors primary reversal signals where Red Diamond signals subtract 0.5 points as reversal warnings, Star Uprising adds 1.5 points for continuation signals, and Ultra Short signals deduct 1.0 points as counter-trend warnings.
Trend confirmation signals provide weighted scoring where strongUpTrend adds 1.5 points for aligned momentum, emaAlignment_Bull contributes 1.0 point for structural support, and various EMA-based confirmations contribute to the overall score. Risk assessment signals apply negative weighting where highRisk_Long situations subtract 1.5 points, topZone conditions deduct 0.5 points, and other risk factors create defensive scoring adjustments.
The smart score calculation aggregates all 22 components in real-time, combining reversal warnings, continuation signals, trend alignment indicators, EMA structural analysis, and risk penalties into a numerical representation of market conditions. This score updates continuously, providing the foundation for hold-or-exit decisions.
MULTI-TIMEFRAME (MTF) SYSTEM
MTF Data Collection
The strategy requests higher timeframe data (default 30-minute) for trend confirmation:
= request.security(syminfo.tickerid, mtfTimeframe, , lookahead=barmerge.lookahead_off, gaps=barmerge.gaps_off)
MTF Watchtower System - Implementation Logic
The system employs a timeframe discrimination protocol where currentTFInMinutes is compared against a 30-minute threshold. This creates different operational behavior between timeframes:
📊 Timeframe Testing Results:
30M+ charts: Full MTF confirmation → Tested with full features
15M charts: Local EMA + adjusted parameters → Standard testing baseline
5M charts: Local EMA only → Requires parameter adjustment
1M charts: High noise → Limited testing conducted
When the chart timeframe is 30 minutes or above, the strategy activates useMTF = true and requests external MTF data through request.security(). For timeframes below 30 minutes, including your 5-minute setup, the system deliberately uses local EMA calculations to avoid MTF lag and data inconsistencies.
The triple-layer data sourcing architecture works as follows: timeframes from 1 minute to 29 minutes rely on chart-based EMA calculations for immediate responsiveness. Timeframes of 30 minutes and above utilize MTF data through the security function, with a backup system that doubles the EMA length (emaLen * 2) if MTF data fails. When MTF data is unavailable or invalid, the system falls back to local EMA as the final safety net.
Data validation occurs through a pipeline where mtf_dataValid checks not only for non-null values but also verifies that EMA values are positive above zero. The system tracks data sources through mtf_dataSource which displays "MTF Data" for successful external requests, "Backup EMA" for failed MTF with backup system active, or "Chart EMA" for local calculations.
🔄 MTF Smart Score Caching & Recheck System
// Cache Update Decision Logic
mtfSmartIntervalSec = input.int(300, "Smart Grid Recheck Interval (sec)") // 5-minute cache
canRecheckSmartScore = na(timenow) ? false :
(na(lastCheckTime) or (timenow - lastCheckTime) > mtfSmartIntervalSec * 1000)
// Cache Management
if canRecheckSmartScore
lastCheckTime := timenow
cachedSmartScoreLong := smartScoreLong // Store current calculation
cachedSmartScoreShort := smartScoreShort
The performance-optimized caching system addresses the computational intensity of continuous MTF analysis through intelligent interval management. The mtfSmartIntervalSec parameter, defaulting to 300 seconds (5 minutes), determines cache refresh frequency. The system evaluates canRecheckSmartScore by comparing current time against lastCheckTime plus the configured interval.
When cache updates trigger, the system stores current calculations in cachedSmartScoreLong and cachedSmartScoreShort, creating stable reference points that reduce excessive MTF requests. This cache management balances computational efficiency with analytical accuracy.
The cache versus real-time hybrid system creates a multi-layered decision matrix where immediate signals update every tick for responsive market reaction, cached MTF scores refresh every 5 minutes for stability filtering, dynamic thresholds recalculate every bar for volatility adaptation, and sliding window analysis updates every bar for trend persistence validation.
This architecture balances real-time signal detection with multi-timeframe strategic validation, creating adaptive trading intelligence that responds immediately to market changes while maintaining strategic stability through cached analysis and volatility-adjusted decision thresholds.
⚡The Execution Section Deep Dive
The execution section represents the culmination of all previous systems – where analysis transforms into action.
🚪 Entry Execution: The Gateway Protocol
Primary Entry Validation:
Entry isn't just about seeing a signal – it's about passing through multiple security checkpoints, each designed to filter out low-quality opportunities.
Stage 1: Signal Confirmation
entryCompositeBuySignal must be TRUE for longs
entryCompositeSellSignal must be TRUE for shorts
Stage 2: Enhanced Entry Validation
The strategy employs an "OR" logic system that recognizes different types of market opportunities:
Path A - Trend Reversal Entry:
When emaTrendReversal_Long triggers, it indicates the market structure is shifting in favor of the trade direction. This isn't just about a single EMA crossing – it represents a change in market momentum that experienced traders recognize as potential high-probability setups.
Path B - Momentum Breakout Entry:
The strongBullMomentum condition is where QRE identifies accelerating market conditions:
Criteria:
EMA1 rising for 3+ candles AND
EMA2 rising for 2+ candles AND
Close > 10-period high
This combination captures those explosive moves where the market doesn't just trend – it accelerates, creating momentum-driven opportunities.
Path C - Recovery Entry:
When previous exit states are clean (no recent stop losses), the strategy permits entry based purely on signal strength. This pathway is designed to help avoid the strategy becoming overly cautious after successful trades.
🛡️ The Priority Exit Matrix: When Rules Collide
Not all exit signals are created equal. QRE uses a strict hierarchy that is designed to avoid conflicting signals from causing hesitation:
Priority Level 1 - Exception Exits (Immediate Action):
Condition: TP3 reached AND Wick Trap detected
Action: Immediate exit regardless of other signals
Rationale: Historical analysis suggests wick traps at TP3 may indicate potential reversals
Priority Level 2 - Structural Breakdown:
Condition: TP3 active AND EMA structure deteriorating AND Smart Score insufficient
Logic: isEMAStructureDown AND NOT smartHold_Long
This represents the strategy recognizing that the underlying market structure that justified the trade is failing. It's like a building inspector identifying structural issues – you don't wait for additional confirmation.
Priority Level 3 - Enhanced Volatility Exits:
Conditions: TP2 active AND Strong counter-candle AND Wick trap AND Volume spike
Logic: Multiple confirmation required to reduce false exits
Priority Level 4 - Standard Smart Score Exits:
Condition: Any TP level active AND smartHold evaluates to FALSE
This is the bread-and-butter exit logic where signal deterioration triggers exit
⚖️ Stop Loss Management: Risk Control Protocol
Dual Stop Loss System:
QRE provides two stop loss modes that users can select based on their preference:
Fixed Mode (Default - useAdaptiveSL = false):
Uses predetermined percentage levels regardless of market volatility:
- Long SL = entryPrice × (1 - fixedRiskP - slipBuffer)
- Short SL = entryPrice × (1 + fixedRiskP + slipBuffer)
- Default: 0.6% risk + 0.3% slippage buffer = 0.9% total stop
- Consistent and predictable stop loss levels
- Recommended for users who prefer stable risk parameters
Adaptive Mode (Optional - useAdaptiveSL = true):
Dynamic system that adjusts stop loss based on market volatility:
- Base Calculation uses ATR (Average True Range)
- Long SL = entryPrice × (1 - (ATR × atrMultSL) / entryPrice - slipBuffer)
- Short SL = entryPrice × (1 + (ATR × atrMultSL) / entryPrice + slipBuffer)
- Automatically widens stops during high volatility periods
- Tightens stops during low volatility periods
- Advanced users can enable for volatility-adaptive risk management
Trend Multiplier Enhancement (Both Modes):
When strongUpTrend is detected for long positions, the stop loss receives 1.5x breathing room. Strong trends often have deeper retracements before continuing. This is designed to help avoid the strategy being shaken out of active trades by normal market noise.
Mode Selection Guidance:
- New Users: Start with Fixed Mode for predictable risk levels
- Experienced Users: Consider Adaptive Mode for volatility-responsive stops
- Volatile Markets: Adaptive Mode may provide better stop placement
- Stable Markets: Fixed Mode often sufficient for consistent risk management
Early Exit Conditions:
Beyond traditional stop losses, QRE implements "smart stops" that trigger before price-based stops:
Early Long Exit: (smartScoreLong < 1.0 OR prev5BearCandles) AND realROI < -0.9%
🔄 State Management: The Memory System
Complete State Reset Protocol:
When a position closes, QRE doesn't just wipe the slate clean – it performs a methodical reset:
TP State Cleanup:
All Boolean flags: tp1/tp2/tp3HitBefore → FALSE
All Reached flags: tp1/tp2/tp3Reached → FALSE
All Active flags: tp1/tp2/tp3HoldActive → FALSE
Signal Counter Reset:
Every one of the 22 signal counters returns to zero.
This is designed to avoid signal "ghosting" where old signals influence new trades.
Memory Preservation:
While operational states reset, certain information is preserved for learning:
killReasonLong/Short: Why did this trade end?
lastExitWasTP1/TP2/TP3: What was the exit quality?
reEntryCount: How many consecutive re-entries have occurred?
🔄 Re-Entry Logic: The Comeback System
Re-Entry Conditions Matrix:
QRE implements a re-entry system that recognizes not all exits are created equal:
TP-Based Re-Entry (Enabled):
Criteria: Previous exit was TP1, TP2, or TP3
Cooldown: Minimal or bypassed entirely
Logic: Target-based exits indicate potentially viable market conditions
EMA-Based Re-Entry (Conditional):
Criteria: Previous exit was EMA-based (structural change)
Requirements: Must wait for EMA confirmation in new direction
Minimum Wait: 5 candles
Advanced Re-Entry Features:
When adjustReEntryTargets is enabled, the strategy becomes more aggressive with re-entries:
Target Adjustment: TP1 multiplied by reEntryTP1Mult (default 2.0)
Stop Adjustment: SL multiplied by reEntrySLMult (default 1.5)
Logic: If we're confident enough to re-enter, we should be confident enough to hold for bigger moves
Performance Tracking: Strategy tracks re-entry win rate, average ROI, and total performance separately from initial entries for optimization analysis.
📊 Exit Reason Analytics: Learning from Every Trade
Kill Reason Tracking:
Every exit is categorized and stored:
"TP3 Exit–Wick Trap": Exit at target level with wick pattern detection
"Smart Exit–EMA Down": Structural breakdown exit
"Smart Exit–Volatility": Volatility-based protection exit
"Exit Post-TP1/TP2/TP3": Standard smart exit progression
"Long SL Exit" / "Short SL Exit": Stop loss exits
Performance Differentiation:
The strategy tracks performance by exit type, allowing for continuous analysis:
TP-based exits: Achieved target levels, analyze for pattern improvement
EMA-based exits: Mixed results, analyze for pattern improvement
SL-based exits: Learning opportunities, adjust entry criteria
Volatility exits: Protective measures, monitor performance
🎛️ Trailing Stop Implementation:
Conditional Trailing Activation:
Activation Criteria: Position profitable beyond trailingStartPct AND
(TP hold active OR re-entry trade)
Dynamic Trailing Logic:
Unlike simple trailing stops, QRE's implementation considers market context:
Trending Markets: Wider trail offsets to avoid whipsaws
Volatile Markets: Tighter offsets to protect gains
Re-Entry Trades: Enhanced trailing to maximize second-chance opportunities
Return-to-Entry Protection:
When deactivateOnReturn is enabled, the strategy will close positions that return to entry level after being profitable. This is designed to help avoid the frustration of watching profitable trades turn into losers.
🧠 How It All Works Together
The beauty of QRE lies not in any single component, but in how everything integrates:
The Entry Decision: Multiple pathways are designed to help identify opportunities while maintaining filtering standards.
The Progression System: Each TP level unlocks new protection features, like achieving ranks in a video game.
The Exit Matrix: Prioritized decision-making aims to reduce analysis paralysis while providing appropriate responses to different market conditions.
The Memory System: Learning from each trade while preventing contamination between separate opportunities.
The Re-Entry Logic: Re-entry system that balances opportunity with risk management.
This creates a trading system where entry conditions filter for quality, progression systems adapt to changing market conditions, exit priorities handle conflicting signals intelligently, memory systems learn from each trade cycle, and re-entry logic maximizes opportunities while managing risk exposure.
📊 ANALYSIS TABLE INTERPRETATION -
⚙️ Enabling Analysis Mode
Navigate to strategy settings → "Testing & Analysis" → Enable "Show Analysis Table". The Analysis Table displays different information based on the selected test filter and provides real-time insight into all strategy components, helping users understand current market conditions, position status, and system decision-making processes.
📋 Filter Mode Interpretations
"All" Mode (Default View):
Composite Section:
Buy Score: Aggregated strength from all 22 bullish signals (threshold 5.0+ triggers entry consideration)
Sell Score: Aggregated strength from all 22 bearish signals (threshold 5.4+ triggers entry consideration)
APEX Filters:
ATG Trend: Shows current trend direction analysis
Indicates whether momentum filters are aligned for directional bias
ReEntry Section:
Most Recent Exit: Displays exit type and timeframe since last position closure
Status: Shows if ReEntry system is Ready/Waiting/Disabled
Count: Current re-entry attempts versus maximum allowed attempts
Position Section (When Active):
Status: Current position state (LONG/SHORT/FLAT)
ROI: Dual calculation showing Custom vs Real ROI percentages
Entry Price: Original position entry level
Current Price: Live market price for comparison
TP Tracking: Progress toward profit targets
"Smart" Filter (Critical for Active Positions):
Smart Exit Section:
Hold Timer: Time elapsed since position opened (bar-based counting)
Status: Whether Smart Exit Grid is Enabled/Disabled
Score: Current smart score calculation from 22-component matrix
Dynamic Threshold: ATR-based minimum score required for holding
Final Threshold: Time and ROI-adjusted threshold actually used for decisions
Score Check: Pass/Fail based on Score vs Final Threshold comparison
Smart Hold: Current hold decision status
Final Hold: Final recommendation based on all factors
🎯 Advanced Smart Exit Debugging - ROI & Time-Based Threshold System
Understanding the Multi-Layer Threshold System:
Layer 1: Dynamic Threshold (ATR-Based)
atrRatio = ATR / close
dynamicThreshold = atrRatio > 0.02 ? 1.0 : // High volatility: Lower threshold
(atrRatio > 0.01 ? 1.5 : // Medium volatility: Standard
2.8) // Low volatility: Higher threshold
Layer 2: Time Multiplier (ROI & Duration-Based)
Winning Positions (ROI ≥ 0%):
→ timeMultiplier = 1.0 (No time pressure, regardless of hold duration)
Losing Positions (ROI < 0%):
→ holdTimer ≤ 8 bars: timeMultiplier = 1.0 (Early stage, standard requirements)
→ holdTimer 9-16 bars: timeMultiplier = 1.1 (10% stricter requirements)
→ holdTimer 17+ bars: timeMultiplier = 1.3 (30% stricter requirements)
Layer 3: Final Threshold Calculation
finalThreshold = dynamicThreshold × timeMultiplier
Examples:
- Winning Position: 2.8 × 1.0 = 2.8 (Always standard)
- Losing Position (Early): 2.8 × 1.0 = 2.8 (Same as winning initially)
- Losing Position (Extended): 2.8 × 1.3 = 3.64 (Much stricter)
Real-Time Debugging Display:
Smart Exit Section shows:
Score: 3.5 → Current smartScoreLong/Short value
Dynamic Threshold: 2.8 → Base ATR-calculated threshold
Final Threshold: 3.64 (ATR×1.3) → Actual threshold used for decisions
Score Check: FAIL (3.5 vs 3.64) → Pass/Fail based on final comparison
Final Hold: NO HOLD → Actual system decision
Position Status Indicators:
Winner + Early: ATR×1.0 (No pressure)
Winner + Extended: ATR×1.0 (No pressure - winners can run indefinitely)
Loser + Early: ATR×1.0 (Recovery opportunity)
Loser + Extended: ATR×1.1 or ATR×1.3 (Increasing pressure to exit)
MTF Section:
Data Source: Shows whether using MTF Data/EMA Backup/Local EMA
Timeframe: Configured watchtower timeframe setting
Data Valid: Confirms successful MTF data retrieval status
Trend Signal: Higher timeframe directional bias analysis
Close Price: MTF price data availability confirmation
"Composite" Filter:
Composite Section:
Buy Score: Real-time weighted scoring from multiple indicators
Sell Score: Opposing directional signal strength
Threshold: Minimum scores required for signal activation
Components:
Flash/Blink: Momentum acceleration indicators (F = Flash active, B = Blink active)
Individual filter contributions showing which specific signals are firing
"ReEntry" Filter:
ReEntry System:
System: Shows if re-entry feature is Enabled/Disabled
Eligibility: Conditions for new entries in each direction
Performance: Success metrics of re-entry attempts when enabled
🎯 Key Status Indicators
Status Column Symbols:
✓ = Condition met / System active / Signal valid
✗ = Condition not met / System inactive / No signal
⏳ = Cooldown active (waiting period)
✅ = Ready state / Good condition
🔄 = Processing / Transitioning state
🔍 Critical Reading Guidelines
For Active Positions - Smart Exit Priority Reading:
1. First Check Position Type:
ROI ≥ 0% = Winning Position (Standard requirements)
ROI < 0% = Losing Position (Progressive requirements)
2. Check Hold Duration:
Early Stage (≤8 bars): Standard multiplier regardless of ROI
Extended Stage (9-16 bars): Slight pressure on losing positions
Long Stage (17+ bars): Strong pressure on losing positions
3. Score vs Final Threshold Analysis:
Score ≥ Final Threshold = HOLD (Continue position)
Score < Final Threshold = EXIT (Close position)
Watch for timeMultiplier changes as position duration increases
4. Understanding "Why No Hold?"
Common scenarios when Score Check shows FAIL:
Losing position held too long (timeMultiplier increased to 1.1 or 1.3)
Low volatility period (dynamic threshold raised to 2.8)
Signal deterioration (smart score dropped below required level)
MTF conflict (higher timeframe opposing position direction)
For Entry Signal Analysis:
Composite Score Reading: Signal strength relative to threshold requirements
Component Analysis: Individual filter contributions to overall score
EMA Structure: Confirm 3-bar crossover requirement met
Cooldown Status: Ensure sufficient time passed since last exit
For ReEntry Opportunities (when enabled):
System Status: Availability and eligibility for re-engagement
Exit Type Analysis: TP-based exits enable immediate re-entry, SL-based exits require cooldown
Condition Monitoring: Requirements for potential re-entry signals
Debugging Common Issues:
Issue: "Score is high but no hold?"
→ Check Final Threshold vs Score (not Dynamic Threshold)
→ Losing position may have increased timeMultiplier
→ Extended hold duration applying pressure
Issue: "Why different thresholds for same score?"
→ Position ROI status affects multiplier
→ Time elapsed since entry affects multiplier
→ Market volatility affects base threshold
Issue: "MTF conflicts with local signals?"
→ Higher timeframe trend opposing position
→ System designed to exit on MTF conflicts
→ Check MTF Data Valid status
⚡ Performance Optimization Notes
For Better Performance:
Analysis table updates may impact performance on some devices
Use specific filters rather than "All" mode for focused monitoring
Consider disabling during live trading for optimal chart performance
Enable only when needed for debugging or analysis
Strategic Usage:
Monitor "Smart" filter when positions are active for exit timing decisions
Use "Composite" filter during setup phases for signal strength analysis
Reference "ReEntry" filter after position closures for re-engagement opportunities
Track Final Threshold changes to understand exit pressure evolution
Advanced Debugging Workflow:
Position Entry Analysis:
Check Composite score vs threshold
Verify EMA crossover timing (3 bars prior)
Confirm cooldown completion
Hold Decision Monitoring:
Track Score vs Final Threshold progression
Monitor timeMultiplier changes over time
Watch for MTF conflicts
Exit Timing Analysis:
Identify which threshold layer caused exit
Track performance by exit type
Analyze re-entry eligibility
This analysis system provides transparency into strategy decision-making processes, allowing users to understand how signals are generated and positions are managed according to the programmed logic during various market conditions and position states.
SIGNAL TYPES AND CHARACTERISTICS
🔥 Core Momentum Signals
Flash Signal
Calculation: ta.rma(math.abs(close - close ), 5) > ta.sma(math.abs(close - close ), 7)
Purpose: Detects sudden price acceleration using smoothed momentum comparison
Characteristics: Triggers when recent price movement exceeds historical average movement
Usage: Primary momentum confirmation across multiple composite calculations
Weight: 1.3 points in composite scoring
Blink Signal
Calculation: math.abs(ta.change(close, 1)) > ta.sma(math.abs(ta.change(close, 1)), 5)
Purpose: Identifies immediate price velocity spikes
Characteristics: More sensitive than Flash, captures single-bar momentum bursts
Usage: Secondary momentum confirmation, often paired with Flash
Weight: 1.3 points in composite scoring
⚡ Advanced Composite Signals
Apex Pulse Signal
Calculation: apexAngleValue > 30 or apexAngleValue < -30
Purpose: Detects extreme EMA angle momentum
Characteristics: Identifies when trend angle exceeds ±30 degrees
Usage: Confirms directional momentum strength in trend-following scenarios
Pressure Surge Signal
Calculation: volSpike_AVP and strongTrendUp_ATG
Purpose: Combines volume expansion with trend confirmation
Characteristics: Requires both volume spike and strong uptrend simultaneously
Usage: bullish signal for trend continuation
Shift Wick Signal
Calculation: ta.crossunder(ema1, ema2) and isWickTrapDetected and directionFlip
Purpose: Detects bearish reversal with wick trap confirmation
Characteristics: Combines EMA crossunder with upper wick dominance and directional flip
Usage: Reversal signal for trend change identification
🛡️ Trap Exit Protection Signals
Bear Trap Exit
Calculation: isUpperWickTrap and isBearEngulfNow
Conditions: Previous bullish candle with 80%+ upper wick, followed by current bearish engulfing
Purpose: Emergency exit signal for long positions
Priority: Highest - overrides all other hold conditions
Action: Immediate position closure with full state reset
Bull Trap Exit
Calculation: isLowerWickTrap and isBullEngulfNow
Conditions: Previous bearish candle with 80%+ lower wick, followed by current bullish engulfing
Purpose: Emergency exit signal for short positions
Priority: Highest - overrides all other hold conditions
Action: Immediate position closure with full state reset
📊 Technical Analysis Foundation Signals
RSI-MFI Hybrid System
Base Calculation: (ta.rsi(close, 14) + ta.mfi(close, 14)) / 2
Oversold Threshold: < 35
Overbought Threshold: > 65
Weak Condition: < 35 and declining
Strong Condition: > 65 and rising
Usage: Momentum confirmation and reversal identification
ADX-DMI Trend Classification
Strong Up Trend: (adx > 25 and diplus > diminus and (diplus - diminus) > 5) or (ema1 > ema2 and ema2 > ema3 and ta.rising(ema2, 3))
Strong Down Trend: (adx > 20 and diminus > diplus - 5) or (ema1 < ema2 and ta.falling(ema1, 3))
Trend Weakening: adx < adx and adx < adx
Usage: Primary trend direction confirmation
Bollinger Band Squeeze Detection
Calculation: bbWidth < ta.lowest(bbWidth, 20) * 1.2
Purpose: Identifies low volatility periods before breakouts
Usage: Entry filter - avoids trades during consolidation
🎨 Visual Signal Indicators
Red X Signal
Calculation: isBearCandle and ta.crossunder(ema1, ema2)
Visual: Red X above price
Purpose: Bearish EMA crossunder with confirming candle
Composite Weight: +1.0 for short positions, -1.0 for long positions
Characteristics: Simple but effective trend change indicator
Green Dot Signal
Calculation: isBullCandle and ta.crossover(ema1, ema2)
Visual: Green dot below price
Purpose: Bullish EMA crossover with confirming candle
Composite Weight: +1.0 for long positions, -1.0 for short positions
Characteristics: Entry confirmation for trend-following strategies
Blue Diamond Signal
Trigger Conditions: amcBuySignal and score >= 4
Scoring Components: 11 different technical conditions
Key Requirements: AMC bullish + momentum rise + EMA expansion + volume confirmation
Visual: Blue diamond below price
Purpose: Bullish reversal or continuation signal
Characteristics: Multi-factor confirmation requiring 4+ technical alignments
Red Diamond Signal
Trigger Conditions: amcSellSignal and score >= 5
Scoring Components: 11 different technical conditions (stricter than Blue Diamond)
Key Requirements: AMC bearish + momentum crash + EMA compression + volume decline
Visual: Red diamond above price
Purpose: Potential bearish reversal or continuation signal
Characteristics: Requires higher threshold (5 vs 4) for more selective triggering
🔵 Specialized Detection Signals
Blue Dot Signal
Calculation: volumePulse and isCandleStrong and volIsHigh
Requirements: Volume > 2.0x MA, strong candle body > 35% of range, volume MA > 55
Purpose: Volume-confirmed momentum signal
Visual: Blue dot above price
Characteristics: Volume-centric signal for high-liquidity environments
Orange X Signal
Calculation: Complex multi-factor oversold reversal detection
Requirements: AMC oversold + wick trap + flash/blink + RSI-MFI oversold + bullish flip
Purpose: Oversold bounce signal with multiple confirmations
Visual: Orange X below price
Characteristics: Reversal signal requiring 5+ simultaneous conditions
VSS (Velocity Signal System)
Components: Volume spike + EMA angle + trend direction
Buy Signal: vssTrigger and vssTrendDir == 1
Sell Signal: vssTrigger and vssTrendDir == -1
Visual: Green/Red triangles
Purpose: Velocity-based momentum detection
Characteristics: Fast-response signal for momentum trading
⭐ Elite Composite Signals
Star Uprising Signal
Base Requirements: entryCompositeBuySignal and echoBodyLong and strongUpTrend and isAMCUp
Additional Confirmations: RSI hybrid strong + not high risk
Special Conditions: At bottom zone OR RSI bottom bounce OR strong volume bounce
Visual: Star symbol below price
Purpose: Bullish reversal signal from oversold conditions
Characteristics: Most selective bullish signal requiring multiple confirmations
Ultra Short Signal
Scoring System: 7-component scoring requiring 4+ points
Key Components: EMA trap + volume decline + RSI weakness + composite confirmation
Additional Requirements: Falling EMA structure + volume spike + flash confirmation
Visual: Explosion emoji above price
Purpose: Aggressive short entry for trend reversal or continuation
Characteristics: Complex multi-layered signal for experienced short selling
🎯 Composite Signal Architecture
Enhanced Composite Scoring
Long Composite: 15+ weighted components including structure, momentum, flash/blink, volume, price action, reversal triggers, trend alignment
Short Composite: Mirror structure with bearish bias
Threshold: 5.0 points required for signal activation
Conflict Resolution: If both long and short signals trigger simultaneously, both are disabled
Final Validation: Requires EMA momentum confirmation (ta.rising(emaFast_ATG, 2) for longs, ta.falling(emaFast_ATG, 2) for shorts)
Risk Assessment Integration
High Risk Long: RSI > 70 OR close > upper Bollinger Band 80%
High Risk Short: RSI < 30 OR close < lower Bollinger Band 80%
Zone Analysis: Top zone (95% of 50-bar high) vs Bottom zone (105% of 50-bar low)
Risk Penalty: High risk conditions subtract 1.5 points from composite scores
This signal architecture creates a multi-layered detection system where simple momentum signals provide foundation, technical analysis adds structure, visual indicators offer clarity, specialized detectors capture different market conditions, and composite signals identify potential opportunities while integrated risk assessment is designed to filter risky entries.
VISUAL FEATURES SHOWCASE
Ichimoku Cloud Visualization
Dynamic Color Intensity: Cloud transparency adapts to momentum strength - darker colors indicate stronger directional moves, while lighter transparency shows weakening momentum phases.
Gradient Color Mapping: Bullish momentum renders blue-purple spectrum with increasing opacity, while bearish momentum displays corresponding color gradients with intensity-based transparency.
Real-time Momentum Feedback: Color saturation provides immediate visual feedback on market structure strength, allowing traders to assess levels at a glance without additional indicators.
EMA Ribbon Bands
The 8-level exponential moving average system creates a comprehensive trend structure map with gradient color coding.
Signal Type Visualization
STRATEGY PROPERTIES & BACKTESTING DISCLOSURE
📊 Default Strategy Configuration:
✅ Initial Capital: 100,000 USD (realistic for average traders)
✅ Commission: 0.075% per trade (realistic exchange fees)
✅ Slippage: 3 ticks (market impact consideration)
✅ Position Size: 5% equity per trade (sustainable risk level)
✅ Pyramiding: Disabled (single position management)
✅ Sample Size: 185 trades over 12-month backtesting period
✅ Risk Management: Adaptive stop loss with maximum 1% risk per trade
COMPREHENSIVE BACKTESTING RESULTS
Testing Period & Market Conditions:
Backtesting Period: June 25, 2024 - June 25, 2025 (12 months)
Timeframe: 15-minute charts (MTF system active)
Market: BTCUSDT (Bitcoin/Tether)
Market Conditions: Full market cycle including volatility periods
Deep Backtesting: Enabled for maximum accuracy
📈 Performance Summary:
Total Return: +2.19% (+2,193.59 USDT)
Total Trades Executed: 185 trades
Win Rate: 34.05% (63 winning trades out of 185)
Profit Factor: 1.295 (gross profit ÷ gross loss)
Maximum Drawdown: 0.65% (653.17 USDT)
Risk-Adjusted Returns: Consistent with conservative risk management approach
📊 Detailed Trade Analysis:
Position Distribution:
Long Positions: 109 trades (58.9%) | Win Rate: 36.70%
Short Positions: 76 trades (41.1%) | Win Rate: 30.26%
Average Trade Duration: Optimized for 15-minute timeframe efficiency
Profitability Metrics:
Average Profit per Trade: 11.74 USDT (0.23%)
Average Winning Trade: 151.17 USDT (3.00%)
Average Losing Trade: 60.27 USDT (1.20%)
Win/Loss Ratio: 2.508 (winners are 2.5x larger than losses)
Largest Single Win: 436.02 USDT (8.69%)
Largest Single Loss: 107.41 USDT (controlled risk management)
💰 Financial Performance Breakdown:
Gross Profit: 9,523.93 USDT (9.52% of capital)
Gross Loss: 7,352.48 USDT (7.35% of capital)
Net Profit After Costs: 2,171.44 USDT (2.17%)
Commission Costs: 1,402.47 USDT (realistic trading expenses)
Maximum Equity Run-up: 2,431.66 USDT (2.38%)
⚖️ Risk Management Validation:
Maximum Drawdown: 0.65% showing controlled risk management
Drawdown Recovery: Consistent equity curve progression
Risk per Trade: Successfully maintained below 1.5% per position
Position Sizing: 5% equity allocation proved sustainable throughout testing period
📋 Strategy Performance Characteristics:
✅ Strengths Demonstrated:
Controlled Risk: Maximum drawdown well below industry standards (< 1%)
Positive Expectancy: Win/loss ratio of 2.5+ creates profitable edge
Consistent Performance: Steady equity curve without extreme volatility
Realistic Costs: Includes actual commission and slippage impacts
Sample Size: 185 trades during testing period
⚠️ Performance Considerations:
Win Rate: 34% win rate requires discipline to follow system signals
Market Dependency: Performance may vary significantly in different market conditions
Timeframe Sensitivity: Optimized for 15-minute charts; other timeframes may show different results
Slippage Impact: Real trading conditions may affect actual performance
📊 Benchmark Comparison:
Strategy Return: +2.19% over 12 months
Buy & Hold Bitcoin: +71.12% over same period
Strategy Advantage: Significantly lower drawdown and volatility
Risk-Adjusted Performance: Different risk profile compared to holding cryptocurrency
🎯 Real-World Application Insights:
Expected Trading Frequency:
Average: 15.4 trades per month (185 trades ÷ 12 months)
Weekly Frequency: Approximately 3-4 trades per week
Active Management: Requires regular monitoring during market hours
Capital Requirements:
Minimum Used in Testing: $10,000 for sustainable position sizing
Tested Range: $50,000-$100,000 for comfortable risk management
Commission Impact: 0.075% per trade totaled 1.4% of capital over 12 months
⚠️ IMPORTANT BACKTESTING DISCLAIMERS:
📈 Performance Reality:
Past performance does not guarantee future results. Backtesting results represent hypothetical performance and may not reflect actual trading outcomes due to market changes, execution differences, and emotional factors.
🔄 Market Condition Dependency:
This strategy's performance during the tested period may not be representative of performance in different market conditions, volatility regimes, or trending vs. sideways markets.
💸 Cost Considerations:
Actual trading costs may vary based on broker selection, market conditions, and trade size. Commission rates and slippage assumptions may differ from real-world execution.
🎯 Realistic Expectations:
The 34% win rate requires psychological discipline to continue following signals during losing streaks. Risk management and position sizing are critical for replicating these results.
⚡ Technology Dependencies:
Strategy performance assumes reliable internet connection, platform stability, and timely signal execution. Technical failures may impact actual results.
CONFIGURATION OPTIMIZATION
5-Minute Timeframe Optimization (Advanced Users Only)
⚠️ Important Warning: 5-minute timeframes operate without MTF confirmation, resulting in reduced signal quality and higher false signal rates.
Example 5-Minute Parameters:
Composite Thresholds: Long 6.5, Short 7.0 (vs 15M default 5.0/5.4)
Signal Lookback Bars: 12 (vs 15M default 8)
Volume Multiplier: 2.2 (vs 15M default 1.8)
MTF Timeframe: Disabled (automatic below 30M)
Risk Management Adjustments:
Position Size: Reduce to 3% (vs 5% default)
TP1: 0.8%, TP2: 1.2%, TP3: 2.0% (tighter targets)
SL: 0.8% (tighter stop loss)
Cooldown Minutes: 8 (vs 5 default)
Usage Notes for 5-Minute Trading:
- Wait for higher composite scores before entry
- Require stronger volume confirmation
- Monitor EMA structure more closely
15-Minute Scalping Setup:
TP1: 1.0%, TP2: 1.5%, TP3: 2.5%
Composite Threshold: 5.0 (higher filtering)
TP ATR Multiplier: 7.0
SL ATR Multiplier: 2.5
Volume Multiplier: 1.8 (requires stronger confirmation)
Hold Time: 2 bars minimum
3-Hour Swing Setup:
TP1: 2.0%, TP2: 4.0%, TP3: 8.0%
Composite Threshold: 4.5 (more signals)
TP ATR Multiplier: 8.0
SL ATR Multiplier: 3.2
Volume Multiplier: 1.2
Hold Time: 6 bars minimum
Market-Specific Adjustments
High Volatility Periods:
Increase ATR multipliers (TP: 2.0x, SL: 1.2x)
Raise composite thresholds (+0.5 points)
Reduce position size
Enable cooldown periods
Low Volatility Periods:
Decrease ATR multipliers (TP: 1.2x, SL: 0.8x)
Lower composite thresholds (-0.3 points)
Standard position sizing
Disable extended cooldowns
News Events:
Temporarily disable strategy 30 minutes before major releases
Increase volume requirements (2.0x multiplier)
Reduce position sizes by 50%
Monitor for unusual price action
RISK MANAGEMENT
Dual ROI System: Adaptive vs Fixed Mode
Adaptive RR Mode:
Uses ATR (Average True Range) for automatic adjustment
TP1: 1.0x ATR from entry price
TP2: 1.5x ATR from entry price
TP3: 2.0x ATR from entry price
Stop Loss: 1.0x ATR from entry price
Automatically adjusts to market volatility
Fixed Percentage Mode:
Uses predetermined percentage levels
TP1: 1.0% (default)
TP2: 1.5% (default)
TP3: 2.5% (default)
Stop Loss: 0.9% total (0.6% risk tolerance + 0.3% slippage buffer)(default)
Consistent levels regardless of volatility
Mode Selection: Enable "Use Adaptive RR" for ATR-based targets, disable for fixed percentages. Adaptive mode works better in varying volatility conditions, while fixed mode provides predictable risk/reward ratios.
Stop Loss Management
In Adaptive SL Mode:
Automatically scales with market volatility
Tight stops during low volatility (smaller ATR)
Wider stops during high volatility (larger ATR)
Include 0.3% slippage buffer in both modes
In Fixed Mode:
Consistent percentage-based stops
2% for crypto, 1.5% for forex, 1% for stocks
Manual adjustment needed for different market conditions
Trailing Stop System
Configuration:
Enable Trailing: Activates dynamic stop loss adjustment
Start Trailing %: Profit level to begin trailing (default 1.0%)
Trailing Offset %: Distance from current price (default 0.5%)
Close if Return to Entry: Optional immediate exit if price returns to entry level
Operation: Once position reaches trailing start level, stop loss automatically adjusts upward (longs) or downward (shorts) maintaining the offset distance from favorable price movement.
Timeframe-Specific Risk Considerations
15-Minute and Above (Tested):
✅ Full MTF system active
✅ Standard risk parameters apply
✅ Backtested performance metrics valid
✅ Standard position sizing (5%)
5-Minute Timeframes (Advanced Only):
⚠️ MTF system inactive - local signals only
⚠️ Higher false signal rate expected
⚠️ Reduced position sizing preferred (3%)
⚠️ Tighter stop losses required (0.8% vs 1.2%)
⚠️ Requires parameter optimization
⚠️ Monitor performance closely
1-Minute Timeframes (Limited Testing):
❌ Excessive noise levels
❌ Strategy not optimized for this frequency
Risk Management Practices
Allocate no more than 5% of your total investment portfolio to high-risk trading
Never trade with funds you cannot afford to lose
Thoroughly backtest and validate the strategy with small amounts before full implementation
Always maintain proper risk management and stop-loss settings
IMPORTANT DISCLAIMERS
Performance Disclaimer
Past performance does not guarantee future results. All trading involves substantial risk of loss. This strategy is provided for informational purposes and does not constitute financial advice.
Market Risk
Cryptocurrency and forex markets are highly volatile. Prices can move rapidly against positions, resulting in significant losses. Users should never risk more than they can afford to lose.
Strategy Limitations
This strategy relies on technical analysis and may not perform well during fundamental market shifts, news events, or unprecedented market conditions. No trading strategy can guarantee 100% success or eliminate the risk of loss.
Legal Compliance
You are responsible for compliance with all applicable regulations and laws in your jurisdiction. Consult with licensed financial professionals when necessary.
User Responsibility
Users are responsible for their own trading decisions, risk management, and compliance with applicable regulations in their jurisdiction.
PSE, Practical Strategy EnginePSE, Practical Strategy Engine
A ready-to-use engine that is simple to connect your indicator to, simple to use, and effective at generating alerts for order-filled events during the real-time candle.
Great for
• Evaluating indicators on important metrics without the need to write a strategy script for backtesting.
• Using indicators with built-in risk management.
About The PSE
This engine accepts entry and exit signals from your indicator to provide trade signals for both long and short positions. The PSE was written for trading Funds (e.g. ETF’s), Stocks, Forex, Futures, and Cryptocurrencies. The trades on the chart indicate market, limit, and stop orders. The PSE allows for backtesting of trades along with metrics of performance based on trade-groups with many great features.
Note: A link to a video of how to connect your indicator(s) to the PSE is provided below.
Key Features
Trade-Grp’s
A Trade-Grp makes up one or more trade positions from the first position entering to the last position exiting. Using Trade-Grp’s instead of positions should help you better assess if the metric results fit your trading style.
Below are two (2) examples of a Trade-Grp with three (3) positions.
Metrics
A table of metrics is available if the “Show Metrics Table” checkbox is enabled on the Inputs tab, but metrics always show in the Data Window.
Examples of the Metrics Table are shown below.
• ROI (Return on Investment) and CAGR (Compound Annual Growth Rate) are based on the Avg Invest/Trade-Grp and are adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled.
• Profit/Risked is based on Trade-Grp’s. Also known as reward/risk, as well as expectancy per amount risked. It determines the effectiveness of your strategy and provides a measure of comparison between your strategies. This is adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled. In the Data Window the color is green when above the breakeven point of making a profit and red when below the breakeven point. In the Table the color is red if below the breakeven point, otherwise it is the default color. For example, using the 3 metrics tables above:
For every USD risked the profit is 1.709 USD.
For every BTC risked the profit is 0.832 BTC.
For every JPY risked the profit is 0.261 JPY.
• Winning % is based on Trade-Grp’s. In the Data Window the color is green when above the breakeven point of making a profit and red when below the breakeven point. In the Table the color is red if below the breakeven point, otherwise it is the default color.
The breakeven point is a relationship between the Profit/Risked and Winning % to indicate system profitability potential. Another way to assess trading system performance. For example, for a low Winning % a high Profit/Risked is needed for the system to be potentially profitable.
• Profit Factor (PF) is based on Trade-Grp’s. The dividend payment, if any, is not considered in the calculation of a win or loss. The “Include Dividends in Profit Factor” checkbox allows you the option to either include or not include dividends in the calculation of Profit Factor. The default is enabled.
Must enable the “Include Dividends in Profit” checkbox to include dividends in PF.
Including dividends in PF evaluates the trading strategy with a more overall profitability performance view.
Enable/Disable “Include Dividends in Profit Factor” checkbox also affects the Avg Trade-Grp Loss, and thus Equity Loss from ECL and % Equity Loss from ECL.
• Max Consecutive Losses are based on Trade-Grp’s.
• Nbr of Trade-Grp’s and Nbr of Positions.
These help you to determine if enough trades have occurred to validate your strategy. The Nbr of Positions is the count of positions on the chart. The TV list of trades in the Strategy Tester may indicate more than what is actually shown on the chart. The Data Window includes 'Nbr Strat Tester Trades', which equals the TV listing trades, to help you locate specific trades on the chart.
• Time in Market (%) is based on Trade-Grp’s and date range selected.
• Avg Invest/Trade-Grp will indicate the average amount of money invested in a Trade-Grp. This is adjusted for dividends if the “Include Dividends in Profit” checkbox is enabled.
• Equivalent Consecutive Losses, labeled as Equiv. Cons. Losses (ECL).
This value is determined by the Winning % and Nbr of Trade-Grp’s. This simulates the more likely case of a series of losses, then a small win, then another series of losses to form an equivalent consecutive losing streak. To lower the value, increase the Winning %.
• Equity Loss from ECL is the equity loss from the equivalent consecutive losses.
• % Equity Loss from ECL is the percent of equity loss from the equivalent consecutive losses.
Risk Management
• Pyramid rules enforce and maintain position sizing designated by you on the Inputs tab (% Equity to Risk, Up/Dwn Gap) & Properties tab (number of pyramids, slippage, and commission).
A pyramid position will not occur unless both its stop covers the last entry price with gap/slippage and commission cost of previous trade is covered. If take profit is enabled, a pyramid position will not occur unless commission cost of the trade is covered when take profit target is reached.
• Position sizing, stop-loss (SL), trailing stop-loss (TSL), and take profit (TP) are used.
• Wash sale prevention for applicable assets is enforced. Wash sale assets include stock and fund (e.g. ETF’s).
• No more than one entry position per candle is enforced .
Other Great Features
• Losing Trade-Grp’s indicated at the exit with label text in the color blue. Used to easily find consecutive losses affecting your strategy’s performance. The dividend payment, if any, is not considered in the calculation of a win or loss.
• Position values can be displayed on the chart. The number format is based on the min tick value, but is limited to 8 decimal places only for display purposes.
• Dividends per share and the amount can be displayed on the chart.
• Hold Days . This is the number of days to hold before allowing the next Trade-Grp. Can be a decimal number. This feature may help those trading on a cash account to avoid any settlement violations when trading the same asset.
• Date Filter. Partition the time when trading is allowed to see if the strategy works well across the date range selected. The metrics should be acceptable across all four (4) time ranges: entire range, 1st half, IQR (inter-quartile range), and 2nd half.
• Price gap amount identification. Used in determining if a pyramid entry may be profitable, and may be used in determining slippage amount to use.
• When TP is enabled, the PSE will only allow a pyramid position if the potential is profitable based on commission and price gap selected.
• Trade-Grp’s shown in background color: green for long positions and red for short positions.
• The PSE will alert you to update your stop-loss as the market changes if your exchange/broker does not allow for trailing stop-loss orders. Enable this option on the Inputs tab with Alert Chg TSL.
• The PSE will alert you if your drawdown exceeds Max % Equity Drawdown set on the Inputs tab.
• The PSE will send an alert to warn you of an expiring GTC order.
Some brokers will indicate the order is GTC, Good 'Till Cancelled, but there really is a time limit on the order and is typically 60-120 days. Therefore, the PSE will alert you if you've been in position for close to 60 days so you can refresh your order. The alert is typically a few days before the 60-day time period.
• For order fill alerts just use a {{placeholder}} in the Message of the alert. Details on how to enter placeholders is explained below.
• Identify same bar enter/exit for first entries and pyramids. This is shown in the Data Window as well. This can help you determine what stop-loss % works best for your trading style.
• Leverage trading information is displayed in the Data Window and applies to Trade-Grps.
Failed PosSize or Margin (%): Shows a zero if the failed-to-trade position size was less than 1 or shows the margin % which failed to meet the margin requirement set in the Properties tab. A flag will show on the bar where a failed-to-trade occurred. This is only applicable to the first position of a Trade-Grp. Position the cursor over the flag for the value to show in the Data Window.
Notional Value: total Trade-Grp position size x latest entry price x point value. The equity must be > notional value x margin requirement for a trade to occur.
Current Margin (%): must be greater than margin requirement set on the Properties tab in order for a trade to occur.
Margin Call Price: when enabled on the Style tab is displayed on both the chart and the Data Window as shown below.
PSE Settings
Pyramids
• Pyramiding requires the Stop Method to be set to either TSL or Both (meaning SL & TSL).
• The maximum number of pyramids is determined by the value entered in the Properties tab.
• Pyramid orders require the enter price to be higher than the previous close for Longs and lower than the previous close for Shorts.
• Pyramids also require the stop with gap/slippage to be higher than the last entry price for Longs, and lower than the last entry price for Shorts. This covers all previous positions and maintains position sizing.
• When take profit, TP, is enabled, the pyramids also require that they will be profitable when opening a position assuming they will reach TP. This is automatically adjusted by you with the Dwn Gap/Up Gap, Slippage, and Commission settings.
Inputs Tab
General Settings
Color Traded Background
Enable to change background color where in a trade. Green for long positions and red for short positions.
Show Losing Trade-Grp
Enable to show if losing Trade-Grp and is indicated by text in blue color. The last position may be at a loss, but if there was profit for the Trade-Grp, then it will not be shown as a loss .
Show Position Values
Enable to show the currency value of each position in gold color.
Include Dividends in Profit
This feature is only applicable if the asset pays dividends and the time frame period of the chart is 1D or less, otherwise ignored. The PSE assumes dividends are taken as cash and not reinvested.
Enable to adjust ROI, CAGR, Profit/Risked, Avg Invest/Trade-Grp, and Equity to include dividend payments. This feature considers if you were in position at least one day prior to the ex-dividend date and had not exited until after the ex-dividend date.
When Show Dividends is enabled it will display the payout in currency/share, as well as the total amount based on the number of shares the position(s) of the Trade-Grp are currently holding.
Include Dividends in Profit Factor
This checkbox allows you the option to either include or not include dividends in the calculation of Profit Factor. Must enable the “Include Dividends in Profit” checkbox to include dividends in PF. The dividend payment, if any, is not considered in the calculation of a win or loss.
Show Metrics Table
Options are font size and table location.
Alert Failed to Trade
Enable for the strategy to alert you when a trade did not happen due to low equity or low order size. Applicable only for the first position of a Trade-Grp.
Trade Direction
Options are 'Longs Only', 'Both', 'Shorts Only'.
Hold Days
This is the number of days to hold before allowing the next Trade-Grp. Applies only to the first trade position of a Trade-Grp. Where a Trade-Grp consists of the first position plus any pyramid positions.
The value entered will be overwritten to >= 31 to prevent wash sale for applicable assets in the event the last Trade-Grp was a loss. Wash sale assets include stock and fund (i.e. ETF’s).
The minimum value is the equivalent of 1 candle and is automatically assigned by the PSE if the entered value is equivalent to less than one candle. To calculate Hold Days in # of candles on the Hour chart divide the chart period by 24 x #candles. On the Minute chart divide the chart period by 60 then by 24 x #candles.
Show Vertical Lines at From Date & To Date
Shows a vertical dotted line at the From Date and To Date for visual inspection of the setting.
Date Filter
When enabled, trades are allowed between the From Date and To Date, i.e., the date range.
When disabled, trades are allowed for all candles.
Partition the time when trading is allowed to see if your indicator settings work well across the date range. Click 1st Half, IQR (inter-quartile range), or 2nd Half buttons to trade a portion of the date range.
Select only one at-a-time to partition the time when trading is allowed.
When 1st Half is enabled only trades for the 1st half of the date range are allowed.
When IQR is enabled only trades for the inter-quartile date range are allowed.
When 2nd Half is enabled only trades for the 2nd half of the date range are allowed.
Position Sizing
The % of Equity to Risk has been separated into two (2) areas: for initial trades and for pyramid trades. This allows for greater ability to maximize profits within your acceptable drawdown. A variation of the Anti-Martingale method from the initial trade if you choose to use it in that manner.
% Equity to Risk for Initial Trades: enter the percent of equity you want to risk per position for the initial trades of each Trade-Grp. For example, for 1% enter 1.
% Equity to Risk for Pyramid Trades: enter the percent of equity you want to risk per position for the pyramid trades of each Trade-Grp. For example, for 2% enter 2.
% Equity for Max Position Size: the position size will not exceed this amount. For example, for 25% enter 25.
Max % Equity Drawdown Warning: an alert will be triggered if the maximum drawdown exceeds this v alue. For example, for 10% enter 10.
Stop Methods
NOTE: The Stop Method must be either Both or TSL in order for the pyramids to work. This feature enforces position sizing.
Stop-loss, SL, and trailing stop-loss, TSL, are other features that enforce risk management.
The trailing stop-loss, TSL, is activated immediately if Stop Method = TSL. If Stop Method = Both, then the TSL is activated when its value is above stop-loss, SL, for Longs and below the SL for Shorts.
The calculated TSL value (shown on the chart by + symbol) of the previous bar is used for the current bar and the plot value is off by default, but you can it turn on via the Style tab. This is available so you can better understand how the TSL value used was calculated from. It is beneficial to show when monitoring the real-time candle.
Alert Chg TSL
When enabled, this feature will alert you to update your stop price if it moves greater than the change amount in %. The amount is the absolute % so will work for both Longs and Shorts. For example, for 1% enter 1 . This is provided since some exchanges/brokers do not offer TSL orders and you must manually adjust as price action plays out.
The alert will also suggest a stop limit price based on the gap selected and explained below.
The alert will occur at the close of the candle at the calculated TSL value of the candle just prior to the real-time candle.
Dwn Gap/Up Gap Input Settings
A price gap is the difference between the closing price of the previous candle and the opening price of the current candle. Dwn Gap and Up Gap are illustrated here.
The values of the Dwn Gap and Up Gap can be seen in the Data Window and are based on the settings of the Date Filter.
The options are “zero gap”, "median gap", "avg gap", "80 pct gap", "90 pct gap". The X pct gap stands for X percentile rank. For example, "80 pct gap" means that 80% of the gaps are less than or equal to the value shown in the Data Window. Select “zero gap” to disable this feature.
If Show Stop Limit is enabled, it will show a dotted-line below or above the current stop price where a stop-limit order should be taken. It is shown based on the gap option selected. Again, the PSE trades market, limit, and stop orders, but a stop-limit may be shown if you wanted to see where one would be set using the Up/Dwn Gap.
Dwn Gap: Affects Short Take Profit, Long Pyramid Entries, and to show the Long Stop Limit.
Up Gap : Affects Long Take Profit, Short Pyramid Entries, and to show the Short Stop Limit.
Fixed Take Profit (TP)
When take profit (TP) is enabled, the PSE will determine if opening a pyramid position will be in profit assuming the TP will be hit while considering commission costs (on Properties tab).
The larger of Up Gap or Slippage value is used with Long positions regarding TP.
The larger of Dwn Gap or Slippage value is used with Short positions regarding TP.
Properties Tab
• Initial Capital: Set as desired.
• Base Currency: Leave as Default. The PSE is designed to use the instrument’s currency, therefore leave as Default.
• Order Size: Leave as default. This setting has been disabled and position sizing is handled on the Inputs tab and is based on % of equity.
• Pyramiding: Set as desired.
• Commission: Set as number %. The PSE is designed to only work with commission as a percent of the position value.
• Verify Price for Limit Orders: Set as desired.
Slippage
Adjust Slippage on the Properties tab to account for a realistic bid-ask spread. You can use one of Dwn/Up Gap values or other guidelines. Again, the Dwn/Up Gap values are based on the Date Filter input settings.
Heed warnings from the TradingView Pine Script™ manual about values entered into the Slippage field.
The Slippage (ticks) have a noticeable influence on entry price and exit price especially at the beginning when the date range includes prices from $0.01 to $100,000.00 like that for BTC-USD INDEX. When this is the case, it is best to use different slippage values when partitioning time with the Date Filter.
To minimize the effects of slippage, yet account for it select ‘median gap’ on the Input Tab and use that value for slippage on the Properties tab.
The slippage value is included in the placeholder {{strategy.order.price}}.
Leverage Trading
The PSE is designed to be used both without leverage (the default) and with leverage.
These two settings apply to Trade-Grps. For example, for 5x leverage enter 20 (1/5x100=20).
Margin for Long Positions: Set as desired. The default is 100%.
Margin for Short Positions: Set as desired. The default is 100%.
This setting on the Inputs tab applies to each trade position within a Trade-Grp.
Max % Equity per Position: Set as desired. The default is 20% and intended for non-leverage trading. For leverage trading set as desired. For example, for 3x leverage enter 300 (3x100=300).
Recalculate After Order Is Filled
The PSE uses the strategy parameter calc_on_order_fills=true to allow for enter/exit on the same bar and generate alerts immediately after an order is filled. This parameter is on the Properties tab and is named ‘Recalculate After order is filled’ and is enabled by default.
Disabling this feature will cause the PSE to not work as intended.
You will see the following Caution! on the TV Strategy Tester
This occurs because the PSE has the strategy parameter calc_on_order_fills = true.
Again, the PSE will only work as intended if this parameter is enabled and set to true.
Therefore, you can close the caution sign and be confident of receiving realistic results.
Recalculate On every tick: Disable.
Fill Orders
• Using bar magnifier: Set as desired.
• On Bar Close: Disable. The PSE will not work as intended if this is enabled.
• Using Standard OHLC: Set as desired.
Using The Alert Message Box From TV Strategy Alert
Set alerts to gain access to all the alerts from PSE. This allows for both order filled alerts, as well as the alert function calls related to refresh GTC orders, drawdown exceeded, update stop-loss order, and Failed to Trade.
Example Message for Manual Trading Alerts
(This is just an example. Consult TV manual for possible placeholders to use.)
{
Alert for {{plot("position_for_alert")}} position. (long = 1; short = -1)
{{exchange}}:{{ticker}} on TF of {{interval}} at Broker Name
{{strategy.order.action}} Equity x Equity_Multiplier USD in shares at price = {{strategy.order.price}},
where Equity_Multiplier = {{strategy.order.contracts}} x {{strategy.order.price}} / {{plot("Equity")}}
or {{strategy.order.action}} {{strategy.order.contracts}} shares at price = {{strategy.order.price}}.
}
Note: Use the Equity x Equity_Multiplier method if you have several accounts with different initial capital.
Example Message for Bot Trading Alerts
(You must consult your specific bot for configuring the alert message. This is just an example.)
{
"action": "{{strategy.order.action}}",
“price”: {{strategy.order.price}}
"amount": {{strategy.order.contracts}},
"botId": "1234"
}
Connecting to the PSE
The diagram below illustrates how to connect indicators to the PSE.
The Aroon and MACD indicators are only used here as an example. Substitute your own indicators and add as many as you like.
Connection Indicator for the PSE
A video of how to connect your indicator(s) to the PSE is below.
The Connection Indicator for the PSE, also called here the connection-indicator.
Below is a description of how to connect your chosen indicators to the connection-indicator. Two (2) indicators were chosen for the example, but you may have one (1) or many indicators.
If you have source code access to your indicators you can paste the code directly into the connection-indicator to eliminate the need to have those indicators on the chart and the additional connection of them to the connection-indicator. Below will assume source code to the indicators are not available.
The MACD and Aroon Oscillator are from TV built standard indicators and are shown here just as an example for inputs (i.e. source) to the connection-indicator. They were configured as follows:
The source code for the connection-indicator is shown below. Substitute your own chosen indicators and add as many as you like to create your connection-indicator that feeds into the PSE. The MACD and Aroon Oscillator were simply chosen as an example. Configure your connection-indicator in the manner shown below.
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// This is just an example Indicator to show how to interface with the PSE.
// The indicators used in the example are standard TV built indicators.
//@version=5
indicator(title="Connection Indicator for the PSE", overlay=false, max_lines_count=500, max_labels_count=500, max_boxes_count=500)
// Ind_1 INDICATOR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// This is just and example and used MACD histogram as the source.
Filter_Ind_1 = input.bool(false, 'Ind_1', group='Ind_1 INDICATOR ~~~~~~~~~~~~~~~~~', tooltip='Click ON to enable the indicator')
input_Ind_1 = input.source(title = "input_Ind_1", defval = close, group='Ind_1 INDICATOR ~~~~~~~~~~~~~~~~~')
Entry_Ind_1_Long = Filter_Ind_1 ? input_Ind_1 > 0 ? 1 : 0 : 0
Entry_Ind_1_Short = Filter_Ind_1 ? input_Ind_1 < 0 ? 1 : 0 : 0
Exit_Ind_1_Long = Entry_Ind_1_Short
Exit_Ind_1_Short = Entry_Ind_1_Long
// Ind_2 INDICATOR ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// This is just an example and used Aroon Oscillator as the source. Included limits to use with the oscillator to determine enter and exit.
Filter_Ind_2 = input.bool(false, "Ind_2", group='Ind_2 INDICATOR ~~~~~~~~~~~~~~', tooltip='Click ON to enable the indicator')
Filter_Ind_2_Limit = input.int(35, minval=0, step=5, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
Filter_Ind_2_UL = Filter_Ind_2_Limit
Filter_Ind_2_LL = -Filter_Ind_2_Limit
up = input.source(title = "input_Ind_2A Up", defval = close, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
down = input.source(title = "input_Ind_2B Down", defval = close, group='Ind_2 INDICATOR ~~~~~~~~~~~~~~')
oscillator = up - down
Entry_Ind_2_Long = Filter_Ind_2? oscillator > Filter_Ind_2_UL ? 1 : 0 : 0
Entry_Ind_2_Short = Filter_Ind_2? oscillator < Filter_Ind_2_LL ? 1 : 0 : 0
Exit_Ind_2_Long = Entry_Ind_2_Short
Exit_Ind_2_Short = Entry_Ind_2_Long
//#region ~~~~~~~ASSEMBLY OF FILTERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// You may have as many indicators as you like. Assemble them in similar fashion as below.
// ——————— Assembly of Entry Filters
Nbr_Entries = input.int(1, minval=1, title='Min Nbr Entries', inline='nbr_in_out', group='Assembly of Indicators')
// Update the assembly based on the number of indicators connected.
EntryLongOK = Entry_Ind_1_Long + Entry_Ind_2_Long >= Nbr_Entries? true: false
EntryShortOK = Entry_Ind_1_Short + Entry_Ind_2_Short >= Nbr_Entries? true: false
entry_signal = EntryLongOK ? 1 : EntryShortOK ? -1 : 0
plot(entry_signal, title="Entry_Signal", color=color.new(color.blue, 0))
// ——————— Assembly of Exit Filters
Nbr_Exits = input.int(1, minval=1, title='Min Nbr of Exits', inline='nbr_in_out', group='Assembly of Indicators', tooltip='Enter the minimum number of entries & exits
required for a signal.')
// Update the assembly based on the number of indicators connected.
ExitLongOK = Exit_Ind_1_Long + Exit_Ind_2_Long >= Nbr_Exits? true: false
ExitShortOK = Exit_Ind_1_Short + Exit_Ind_2_Short >= Nbr_Exits? true: false
exit_signal = ExitLongOK ? 1 : ExitShortOK ? -1 : 0
plot(exit_signal, title="Exit_Signal", color=color.new(color.red, 0))
//#endregion ~~~~~~~END OF ASSEMBLY OF FILTERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
The input box for the connection-indicator is shown below. The default for input source is “close”. For Input_Ind_1 click the dropdown and select the MACD Histogram. For Input_Ind_2 click the dropdown and select Aroon Up and Aroon Down as shown.
Signal Connection Section of PSE
Below is a description of how to connect your chosen indicators to the PSE from the connection-indicator.
At the PSE Input tab, the Signal Connection Section is where you select the source of the Entry and Exit Signal to the PSE. These are the outputs from connection-indicator.
The default source is “close”. Click the dropdown and select the entry and exit signal to establish a connection as shown below.
Bitcoin CME-Spot Z-Spread - Strategy [presentTrading]This time is a swing trading strategy! It measures the sentiment of the Bitcoin market through the spread of CME Bitcoin Futures and Bitfinex BTCUSD Spot prices. By applying Bollinger Bands to the spread, the strategy seeks to capture mean-reversion opportunities when prices deviate significantly from their historical norms
█ Introduction and How it is Different
The Bitcoin CME-Spot Bollinger Bands Strategy is designed to capture mean-reversion opportunities by exploiting the spread between CME Bitcoin Futures and Bitfinex BTCUSD Spot prices. The strategy uses Bollinger Bands to detect when the spread between these two correlated assets has deviated significantly from its historical norm, signaling potential overbought or oversold conditions.
What sets this strategy apart is its focus on spread trading between futures and spot markets rather than price-based indicators. By applying Bollinger Bands to the spread rather than individual prices, the strategy identifies price inefficiencies across markets, allowing traders to take advantage of the natural reversion to the mean that often occurs in these correlated assets.
BTCUSD 8hr Performance
█ Strategy, How It Works: Detailed Explanation
The strategy relies on Bollinger Bands to assess the volatility and relative deviation of the spread between CME Bitcoin Futures and Bitfinex BTCUSD Spot prices. Bollinger Bands consist of a moving average and two standard deviation bands, which help measure how much the spread deviates from its historical mean.
🔶 Spread Calculation:
The spread is calculated by subtracting the Bitfinex spot price from the CME Bitcoin futures price:
Spread = CME Price - Bitfinex Price
This spread represents the difference between the futures and spot markets, which may widen or narrow based on supply and demand dynamics in each market. By analyzing the spread, the strategy can detect when prices are too far apart (potentially overbought or oversold), indicating a trading opportunity.
🔶 Bollinger Bands Calculation:
The Bollinger Bands for the spread are calculated using a simple moving average (SMA) and the standard deviation of the spread over a defined period.
1. Moving Average (SMA):
The simple moving average of the spread (mu_S) over a specified period P is calculated as:
mu_S = (1/P) * sum(S_i from i=1 to P)
Where S_i represents the spread at time i, and P is the lookback period (default is 200 bars). The moving average provides a baseline for the normal spread behavior.
2. Standard Deviation:
The standard deviation (sigma_S) of the spread is calculated to measure the volatility of the spread:
sigma_S = sqrt((1/P) * sum((S_i - mu_S)^2 from i=1 to P))
3. Upper and Lower Bollinger Bands:
The upper and lower Bollinger Bands are derived by adding and subtracting a multiple of the standard deviation from the moving average. The number of standard deviations is determined by a user-defined parameter k (default is 2.618).
- Upper Band:
Upper Band = mu_S + (k * sigma_S)
- Lower Band:
Lower Band = mu_S - (k * sigma_S)
These bands provide a dynamic range within which the spread typically fluctuates. When the spread moves outside of these bands, it is considered overbought or oversold, potentially offering trading opportunities.
Local view
🔶 Entry Conditions:
- Long Entry: A long position is triggered when the spread crosses below the lower Bollinger Band, indicating that the spread has become oversold and is likely to revert upward.
Spread < Lower Band
- Short Entry: A short position is triggered when the spread crosses above the upper Bollinger Band, indicating that the spread has become overbought and is likely to revert downward.
Spread > Upper Band
🔶 Risk Management and Profit-Taking:
The strategy incorporates multi-step take profits to lock in gains as the trade moves in favor. The position is gradually reduced at predefined profit levels, reducing risk while allowing part of the trade to continue running if the price keeps moving favorably.
Additionally, the strategy uses a hold period exit mechanism. If the trade does not hit any of the take-profit levels within a certain number of bars, the position is closed automatically to avoid excessive exposure to market risks.
█ Trade Direction
The trade direction is based on deviations of the spread from its historical norm:
- Long Trade: The strategy enters a long position when the spread crosses below the lower Bollinger Band, signaling an oversold condition where the spread is expected to narrow.
- Short Trade: The strategy enters a short position when the spread crosses above the upper Bollinger Band, signaling an overbought condition where the spread is expected to widen.
These entries rely on the assumption of mean reversion, where extreme deviations from the average spread are likely to revert over time.
█ Usage
The Bitcoin CME-Spot Bollinger Bands Strategy is ideal for traders looking to capitalize on price inefficiencies between Bitcoin futures and spot markets. It’s especially useful in volatile markets where large deviations between futures and spot prices occur.
- Market Conditions: This strategy is most effective in correlated markets, like CME futures and spot Bitcoin. Traders can adjust the Bollinger Bands period and standard deviation multiplier to suit different volatility regimes.
- Backtesting: Before deployment, backtesting the strategy across different market conditions and timeframes is recommended to ensure robustness. Adjust the take-profit steps and hold periods to reflect the trader’s risk tolerance and market behavior.
█ Default Settings
The default settings provide a balanced approach to spread trading using Bollinger Bands but can be adjusted depending on market conditions or personal trading preferences.
🔶 Bollinger Bands Period (200 bars):
This defines the number of bars used to calculate the moving average and standard deviation for the Bollinger Bands. A longer period smooths out short-term fluctuations and focuses on larger, more significant trends. Adjusting the period affects the responsiveness of the strategy:
- Shorter periods (e.g., 100 bars): Makes the strategy more reactive to short-term market fluctuations, potentially generating more signals but increasing the risk of false positives.
- Longer periods (e.g., 300 bars): Focuses on longer-term trends, reducing the frequency of trades and focusing only on significant deviations.
🔶 Standard Deviation Multiplier (2.618):
The multiplier controls how wide the Bollinger Bands are around the moving average. By default, the bands are set at 2.618 standard deviations away from the average, ensuring that only significant deviations trigger trades.
- Higher multipliers (e.g., 3.0): Require a more extreme deviation to trigger trades, reducing trade frequency but potentially increasing the accuracy of signals.
- Lower multipliers (e.g., 2.0): Make the bands narrower, increasing the number of trade signals but potentially decreasing their reliability.
🔶 Take-Profit Levels:
The strategy has four take-profit levels to gradually lock in profits:
- Level 1 (3%): 25% of the position is closed at a 3% profit.
- Level 2 (8%): 20% of the position is closed at an 8% profit.
- Level 3 (14%): 15% of the position is closed at a 14% profit.
- Level 4 (21%): 10% of the position is closed at a 21% profit.
Adjusting these take-profit levels affects how quickly profits are realized:
- Lower take-profit levels: Capture gains more quickly, reducing risk but potentially cutting off larger profits.
- Higher take-profit levels: Let trades run longer, aiming for bigger gains but increasing the risk of price reversals before profits are locked in.
🔶 Hold Days (20 bars):
The strategy automatically closes the position after 20 bars if none of the take-profit levels are hit. This feature prevents trades from being held indefinitely, especially if market conditions are stagnant. Adjusting this:
- Shorter hold periods: Reduce the duration of exposure, minimizing risks from market changes but potentially closing trades too early.
- Longer hold periods: Allow trades to stay open longer, increasing the chance for mean reversion but also increasing exposure to unfavorable market conditions.
By understanding how these default settings affect the strategy’s performance, traders can optimize the Bitcoin CME-Spot Bollinger Bands Strategy to their preferences, adapting it to different market environments and risk tolerances.
RunRox - Backtesting System (SM)RunRox - Backtesting System (SM) is designed for flexible and comprehensive testing of trading strategies, closely integrated with our RunRox - Signals Master indicator. This combination enhances your ability to refine strategies efficiently, providing you with insights to adapt and optimize your trading tactics seamlessly.
The Backtesting System (SM) excels in pinpointing the optimal settings for the RunRox - Signals Master indicator, efficiently highlighting the most effective configurations.
Capabilities of the Backtesting System (SM)
Optimal Settings Determination: Identifies the best configurations for the Signals Master indicator to enhance its effectiveness.
Timeframe-Specific Strategy Testing: Allows strategies to be tested over specific historical time periods to assess their viability.
Customizable Initial Conditions: Enables setting of initial deposit, risk per trade, and commission rates to mirror real-world trading conditions.
Flexible Money Management: Provides options to set take profits and stop losses, optimizing potential returns and risk management.
Intuitive Dashboard: Features a user-friendly dashboard that visually displays all pertinent information, making it easy to analyze and adjust strategies.
Trading Flexibility Across Three Modes:
Dual-Direction Trading: Engage in both buying and selling with this mode. Our dashboard optimizes and identifies the best settings for trading in two directions, streamlining the process to maximize effectiveness for both buy and sell orders.
Buy-Only Mode: Tailored for traders focusing exclusively on purchasing assets. In this mode, our backtester pinpoints the most advantageous sensitivity, speed reaction, and filter settings specifically for buying. Optimal settings in this mode may differ from those used in dual-direction trading, providing a customized approach to single-direction strategies.
Sell-Only Mode: Perfect for strategies primarily based on selling. This setting allows you to discover the ideal configurations for asset sales, which can be particularly useful if you are looking for optimal exit points in long-term transactions or under specific market conditions.
Here's an example of how profits can differ on the same asset when trading using two distinct strategies: exclusively buying or trading in both directions.
Above in the image, you can see how one-directional trading influences the results of backtests on historical data. While this does not guarantee future outcomes, it provides insight into how the strategy's performance can vary with different trading directions.
As you can also see from the image, one-directional trading has affected the optimal combination of settings for Sensitivity, Speed Reaction, and Filters.
Stop Loss and Take Profit
Our backtesting system, as you might have gathered, includes flexible settings for take profits and stop losses. Here are the main features:
Multiple Take Profits: Ability to set from 1 to 4 take profit levels.
Fixed Percentage: Option to assign a fixed percentage for each take profit.
Trade Proportion Fixation: Ability to set a fixed size from the trade for securing profits.
Stop Loss Installation: Option to establish a stop loss.
Break-Even Stop Loss: Ability to move the stop loss to a break-even point upon reaching a specified take profit level.
These settings offer extensive flexibility and can be customized according to your preferences and trading style. They are suitable for both novice and professional traders looking to test their trading strategies on historical data.
As illustrated in the image above, we have implemented money management by setting fixed take profits and stop losses. Utilizing money management has improved indicators such as profit, maximum drawdown, and profit factor, turning even historically unprofitable strategies into profitable ones. Although this does not guarantee future results, it serves as a valuable tool for understanding the effectiveness of money management.
Additionally, as you can see, the optimal settings for Signals Master have been adjusted, highlighting the best configurations for the most favorable outcomes.
Disclaimer:
Historical data is not indicative of future results. All indicators and strategies provided by RunRox are intended for integration with traders' strategies and should be used as tools for analysis rather than standalone solutions. Traders should use their own discretion and understand that all trading involves risk.
Martingale + Grid DCA Strategy [YinYangAlgorithms]This Strategy focuses on strategically Martingaling when the price has dropped X% from your current Dollar Cost Average (DCA). When it does Martingale, it will create a Purchase Grid around this location to likewise attempt to get you a better DCA. Likewise following the Martingale strategy, it will sell when your Profit has hit your target of X%.
Martingale may be an effective way to lower your DCA. This is due to the fact that if your initial purchase; or in our case, initial Grid, all went through and the price kept going down afterwards, that you may purchase more to help lower your DCA even more. By doing so, you may bring your DCA down and effectively may make it easier and quicker to reach your target profit %.
Grid trading may be an effective way of reducing risk and lowering your DCA as you are spreading your purchases out over multiple different locations. Likewise we offer the ability to ‘Stack Grids’. What this means, is that if a single bar was to go through 20 grids, the purchase amount would be 20x what each grid is valued at. This may help get you a lower DCA as rather than creating 20 purchase orders at each grid location, we create a single purchase order at the lowest grid location, but for 20x the amount.
By combining both Martingale and Grid DCA techniques we attempt to lower your DCA strategically until you have reached your target profit %.
Before we start, we just want to make it known that first off, this Strategy features 8% Commission Fees, you may change this in the Settings to better reflect the Commission Fees of your exchange. On a similar note, due to Commission Fees being one of the number one profit killers in fast swing trade strategies, this strategy doesn’t focus on low trades, but the ideology of it may result in low amounts of trades. Please keep in mind this is not a bad thing. Since it has the ability to ‘Stack Grid Purchases’ it may purchase more for less and result in more profit, less commission fees, and likewise less # of trades.
Tutorial:
In this example above, we have it set so we Martingale twice, and we use 100 grids between the upper and lower level of each martingale; for a total of 200 Grids. This strategy will take total capital (initial capital + net profit) and divide it by the amount of grids. This will result in the $ amount purchased per grid. For instance, say you started with $10,000 and you’ve made $2000 from this Strategy so far, your total capital is $12,000. If you likewise are implementing 200 grids within your Strategy, this will result in $12,000 / 200 = $60 per grid. However, please note, that the further down the grid / martingale is, the more volume it is able to purchase for $60.
The white line within the Strategy represents your DCA. As the Strategy makes purchases, this will continue to get lower as will your Target Profit price (Blue Line). When the Close goes above your Target Profit price, the Strategy will close all open positions and claim the profit. This profit is then reinvested back into the Strategy, which may exponentially help the Strategy become more profitable the longer it runs for.
In the example above, we’ve zoomed in on the first example. In this we want to focus on how the Strategy got back into the trades shortly after it sold. Currently within the Settings we have it set so our entry is when the Lowest with a length of 3 is less than the previous Lowest with a length of 3. This is 100% customizable and there are multiple different entry options you can choose from and customize such as:
EMA 7 Crossover EMA 21
EMA 7 Crossunder EMA 21
RSI 14 Crossover RSI MA 14
RSI 14 Crossunder RSI MA 14
MFI 14 Crossover MFI MA 14
MFI 14 Crossunder MFI MA 14
Lowest of X Length < Previous Lowest of X Length
Highest of X Length > Previous Highest of X Length
All of these entry options may be tailored to be checked for on a different Time Frame than the one you are currently using the Strategy on. For instance, you may be running the Strategy on the 15 minute Time Frame yet decide you want the RSI to cross over the RSI MA on the 1 Day to be a valid entry location.
Please keep in mind, this Strategy focuses on DCA, this means you may not want the initial purchase to be the best location. You may want to buy when others think it is a good time to sell. This is because there may be strong bearish momentum which drives the price down drastically and potentially getting you a good DCA before it corrects back up.
We will continue to add more Entry options as time goes on, and if you have any in mind please don’t hesitate to let us know.
Now, back to the example above, if we refer to the Yellow circle, you may see that the Lowest of a length of 3 was less than its previous lowest, this triggered the martingales to create their grids. Only a few bars later, the price went into the first grid and went a little lower than its midpoint (Yellow line). This caused about 60% of the first grid to be purchased. Shortly after the price went even lower into this grid and caused the entire first martingale grid to be purchased. However, if you notice, the white line (your DCA) is lower than the midpoint of the first grid. This is due to the fact that we have ‘Stack Grid Purchases’ enabled. This allows the Strategy to purchase more when a single bar crosses through multiple grid locations; and effectively may lower your average more than if it simply executed a purchase order at each grid.
Still looking at the same location within our next example, if we simply increase the Martingale amount from 2 to 3 we can see something strange happens. What happened is our Target Profit price was reached, then our entry condition was met, which caused all of the martingale grids to be formed; however, the price continued to increase afterwards. This may not be a good thing, sure the price could correct back down to these grid locations, but what if it didn’t and it just kept increasing? This would result in this Strategy being stuck and unable to make any trades. For this reason we have implemented a Failsafe in the Settings called ‘Reset Grids if no purchase happens after X bars’.
We have enabled our Failsafe ‘Reset Grids if no purchase happens after X bars’ in this example above. By default it is set to 100 bars, but you can change this to whatever works best for you. If you set it to 0, this Failsafe will be disabled and act like the example prior where it is possible to be stuck with no trades executing.
This Failsafe may be an important way to ensure the Strategy is able to make purchases, however it may also mean the Grids increase in price when it is used, and if a massive correction were to occur afterwards, you may lose out on potential profit.
This Strategy was designed with WebHooks in mind. WebHooks allow you to send signals from the Strategy to your exchange. Simply set up a Custom TradingView Bot within the OKX exchange or 3Commas platform (which has your exchange API), enter the data required from the bot into the settings here, select your bot type in ‘Webhook Alert Type’, and then set up the alert. After that you’re good to go and this Strategy will fully automate all of its trades within your exchange for you. You need to format the Alert a certain way for it to work, which we will go over in the next example.
Add an alert for this Strategy and simply modify the alert message so all it says is:
{{strategy.order.alert_message}}
Likewise change from the Alert ‘Settings’ to Alert ‘Notifications’ at the top of the alert popup. Within the Notifications we will enable ‘Webhook URL’ and then we will pass the URL we are sending the Webhook to. In this example we’ve put OKX exchange Webhook URL, however if you are using 3Commas you’ll need to change this to theirs.
OKX Webhook URL:
www.okx.com
3Commas Webhook URL:
app.3commas.io
Make sure you click ‘Create’ to actually create this alert. After that you’re all set! There are many Tutorials videos you can watch if you are still a little confused as to how Webhook trading works.
Due to the nature of this Strategy and how it is designed to work, it has the ability to never sell unless there it will make profit. However, because of this it also may be stuck waiting in trades for quite a long period of time (usually a few months); especially when your Target Profit % is 15% like in the example above. However, this example above may be a good indication that it may maintain profitability for a long period of time; considering this ‘Deep Backtest’ is from 2017-8-17.
We will conclude the tutorial here. Hopefully you understand how this Strategy has the potential to make calculated and strategic DCA Grid purchases for you and then based on a traditional Martingale fashion, bulk sell at the desired Target Profit Percent.
Settings:
Purchase Settings:
Only Purchase if its lower than DCA: Generally speaking, we want to lower our Average, and therefore it makes sense to only buy when the close is lower than our current DCA and a Purchase Condition is met.
Purchase Condition: When creating the initial buy location you must remember, you want to Buy when others are Fearful and Sell when others are Greedy. Therefore, many of the Buy conditions involve times many would likewise Sell. This is one of the bonuses to using a Strategy like this as it will attempt to get you a good entry location at times people are selling.
Lower / Upper Change Length: This Lower / Upper Length is only used if the Purchase Condition is set to 'Lower Changed' or 'Upper Changed'. This is when the Lowest or Highest of this length changes. Lowest would become lower or Highest would become higher.
Purchase Resolution: Purchase Resolution is the Time Frame that the Purchase Condition is calculated on. For instance, you may only want to start a new Purchase Order when the RSI Crosses RSI MA on the 1 Day, but yet you run this Strategy on the 15 minutes.
Sell Settings:
Trailing Take Profit: Trailing Take Profit is where once your Target Profit Percent has been hit, this will trail up to attempt to claim even more profit.
Target Profit Percent: What is your Target Profit Percent? The Strategy will close all positions when the close price is greater than your DCA * this Target Profit Percent.
Grid Settings:
Stack Grid Purchases: If a close goes through multiple Buy Grids in one bar, should we amplify its purchase amount based on how many grids it went through?
Reset Grids if no purchase happens after X Bars: Set this to 0 if you never want to reset. This is very useful in case the price is very bullish and continues to increase after our Target Profit location is hit. What may happen is, Target Profit location is hit, then the Entry condition is met but the price just keeps increasing afterwards. We may not want to be sitting waiting for the price to drop, which may never happen. This is more of a failsafe if anything. You may set it very large, like 500+ if you only want to use it in extreme situations.
Grid % Less than Initial Purchase Price: How big should our Buy Grid be? For instance if we bought at 0.25 and this value is set to 20%, that means our Buy Grid spans from 0.2 - 0.25.
Grid Amounts: How many Grids should we create within our Buy location?
Martingale Settings:
Amount of Times 'Planned' to Martingale: The more Grids + the More Martingales = the less $ spent per grid, however the less risk. Remember it may be better to be right and take your time than risk too much and be stuck too long.
Martingale Percent: When the current price is this percent less than our DCA, lets create another Buy Grid so we can lower our average more. This will make our profit location less.
Webhook Alerts:
Webhook Alert Type: How should we format this Alert? 3Commas and OKX take their alerts differently, so please select the proper one or your webhooks won't work.
3Commas Webhook Alerts:
3Commas Bot ID: The 3Commas Bot ID is needed so we know which BOT ID we are sending this webhook too.
3Commas Email Token: The 3Commas Email Token is needed for your webhooks to work properly as it is linked to your account.
OKX Webhook Alerts:
OKX Signal Token: This Signal Token is attached to your OKX bot and will be used to access it within OKX.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
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.
All Instrument Swing Trader with Pyramids, DCA and Leverage
Introduction
This is my most advanced Pine 4 script so far. It combines my range trader algorithms with my trend following pyramids all on a single interval. This script includes my beta tested DCA feature along with simulated leverage and buying power calculations. It has a twin study with several alerts. The features in this script allow you to experiment with different risk strategies and evaluate the approximate impact on your account capital. The script is flexible enough to run on instruments from different markets and at various bar intervals. This strategy can be run in three different modes: long, short and bidirectional. The bidirectional mode has two split modes (Ping Pong and BiDir). It also generates a summary report label with information not available in the TradingView Performance report such as Rate Of Return Standard Deviation and other Sharpe Ratio input values. Notable features include the following:
- Swing Trading Paradigm
- Uni or Bidirectional trading modes
- Calculation presets for Crypto, Stocks and Forex
- Conditional Minimum Profit
- Hard stop loss field
- Two types of DCA (Positive and Negative)
- Discretionary Pyramid levels with threshold adjustment and limiter
- Consecutive loss counter with preset and label
- Reentry loss limiter and trade entry caution fields
- Simulated Leverage and margin call warning label (approximation only)
- Buying power report labels (approximation only)
- Rate Of Return report with input values for Sharpe Ratio, Sortino and others
- Summary report label with real-time status indicators
- Trend follow bias modes (Its still range trading)
- Six anti-chop settings
- Single interval strategy to reduce repaint occurrence
This is a swing trading strategy so the 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. 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 intermingled continuously as long as there exists a detectable vertex. Unfortunately, this can work against your backtest profitability on long duration trends where prices continue in a single direction without pullback. I have designed various features in the script to compensate for this event. A well configured script should perform in a range bound market and minimize losses in a trend. For a range trader the trend is most certainly not your friend. I also have a trend following version of this script for those not interested in trading the range.
This script makes use of the TradingView pyramid feature accessible from the properties tab. Additional trades can be placed in the draw-down space increasing the position size and thereby increasing the profit or loss when the position finally closes. Each individual add on trade increases its order size as a multiple of its pyramid level. This makes it easy to comply with NFA FIFO Rule 2-43(b) if the trades are executed here in America. The inputs dialog box contains various settings to adjust where the add on trades show up, under what circumstances and how frequent if at all. Please be advised that pyramiding is an advanced feature and can wipe out your account capital if your not careful. You can use the “Performance Bond Leverage” feature to stress test your account capital with varying pyramid levels during the backtest. Use modest settings with realistic capital until you discover what you think you can handle. See the“Performance Bond Leverage” description for more information.
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 TV properties tab. The inputs for this feature 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 Forex contest or 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 to data mining bias. Please remember that.
This script is equipped with a consecutive loss counter. A limit field is provided in the report section of the input dialog box. This is a whole number value that, when specified, will generate a label on the chart when consecutive losses exceed the threshold. Every stop hit beyond this limit will be reported on a version 4 label above the bar where the stop is hit. Use the location of the labels along with the summary report tally to improve the adaptability of system. Don’t simply fit the chart. A good trading system should adapt to ever changing market conditions. On the study version the consecutive loss limit can be used to halt live trading on the broker side (managed manually).
This script can simulate leverage applied to your account capital. Basically, you want to know if the account capital you specified in the properties tab is sufficient to trade this script with the order size, pyramid and DCA parameters needed. TradingView does not halt trading when the account capital is depleted nor do you receive notification of such an event. Input the leverage you intend to trade with and simulate the stress on your account capital. When the check box labeled “Report Margin Call” is enabled a marker will plot on the chart at the location where the threshold was breached. Additionally, the Summary Report will indicated such a breach has occurred during the backtest. Please note that the margin calculation uses a performance bond contract model which is the same type of leverage applied to Forex accounts. This is not the same leverage as stock margin accounts since shares are not actually borrowed. It is also not applicable to futures contracts since we do not calculate maintenance margin. Also note that the account margin and buying power are calculated using the U.S. Dollar as a funding currency. Margin rules across the globe vary considerably so use this feature as an approximation. The “Report Margin Call” plot only appears on negative buying power which is well beyond the NFA enforced margin closeout price. Vary the order size and account capital and activate the buying power plot to get as close as you can to the desired margin call threshold. Also keep in mind that rollover fees, commissions, spreads, etc affect the margin call in actual live trading. This feature does not include any of those costs.
Inputs
The script input dialog box is divided into five sections. The last section, Section 5, contains all of the script reporting options. Notable reporting options are the inputs which provide support for calculating actual Sharpe Ratios and other risk / performance metrics. The TradingView performance report does not produce a scalable Sharpe Ratio which is unfortunate considering the limited data supplied to the backtest. Three report fields made available in this section are intended to enable users to measure the performance of this script using various industry standard risk metrics. In particular, The Sharpe Ratio, Sortino Ratio, Alpha Calculation, Beta Calculation, R-Squared and Monthly Standard Deviation. The following fields are dedicated to this effort:
– ROR Sample Period - Integer number which specifies the rate of return period. This number is a component of the Sharpe Ratio and determines the number of sample periods divisible in the chart data. The number specified here is the length of the period measured in bar intervals. Since the quantity of TradingView historical data is limited this number should reflect the scalar value applied to your Sharpe calculation. When the checkbox “Report Period ROR” is enabled red boxes plot on the dates corresponding to the ROR sample period. The red boxes display information useful in calculating various risk and performance models. Ongoing buying power is included in the period report which is especially useful in assessing the DCA stress on account capital. Important: When the “ROR Sample Period” is specified the script computes the ROR mean value and displays the result in the summary report label on the live end of the chart. Use this number to calculate the historical standard deviation of period returns.
– Return Mean Value - This is the ROR mean value which is displayed in the summary report field “ROR Mean”. Enter the value shown in the summary report here in order to calculate the standard deviation of returns. Once calculated the result is displayed in the summary report field “Standard Dev”. Please note that ROR and standard deviation are calculated on the quote currency of the chart and not the account currency. If you intend to calculate risk metrics based on other denominated returns use the period calculations in a spreadsheet. Important: Do not change the account denomination on the properties tab simply to force a dollar calculation. It will alter the backtest itself since the minimum profit, stop-loss and other variables are always measured in the quote currency of the chart.
– Report Period ROR - This checkbox is used to display the ROR period report which plots a red label above the bars corresponding to the ROR sample period. The sample period is defined by the value entered into the “ROR Sample Period” field. This checkbox only determines if the period labels plot on the chart. It does not enable or disable the ROR calculation itself. Please see input description“ROR Sample Period” for a detailed description of this feature.
Design
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a much larger program on another 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 form the basis of the entry and exit points. The vertices are calculated using one of five featured indicators. Each indicator is actually a composite of calculations which produce a distinct mean. This mathematical distinction enables the script to be useful on various instruments which belong to entirely different markets. In other words, at least one of these indicators should be able generate pivots on an arbitrarily selected instrument. Try each one to find the best fit.
The entire script is around 2200 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. This script incorporates code from both my range trader and trend following published programs. Both have been in development for nearly two years and have been in beta test for the last several months. During the beta test of the range trading script it was discovered that by widening the stop and delaying the entry, add on trading opportunities appeared on the chart. I determined that by sacrificing a few minor features code space could be made available for pyramiding capability in the range trader. The module has been through several refactoring passes and makes extensive use of ternary statements. As such, It takes a full three minutes 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. For the most part the same configuration settings for the range script can be applied to this script.
Inputs to the script use cone centric measurements in effort to avoid exposing adjustments to the various internal indicators. The goal was to keep the inputs relevant to the actual trade entry and exit locations as opposed to a series of MA input values and the like. As a result the strategy exposes over 70 inputs grouped into long or short sections. Inputs are available for the usual minimum profit and stop-loss as well as safeguards, trade frequency, pyramids, DCA, modes, presets, reports and lots of calibrations. The inputs are numerous, I know. Unfortunately, at this time, TradingView does not offer any other method to get data in the script. The usual initialization files such as cnf, cfg, ini, json and xml files are currently unsupported.
I have several example configuration settings that I use for my own trading. They include cryptocurrencies and forex instruments on various time frames.
Indicator Repainting and Anomalies
Indicator repainting is an industry wide problem which mainly occurs when you mix backtest data with real-time data. It doesn't matter which platform you use some form of this condition will manifest itself on your chart over time. The critical aspect being whether live trades on your broker’s account continue to match your TradingView study.
Based on my experience with Pine, most of the problems stem from TradingView’s implementation of multiple interval access. Whereas most platforms provide a separate bar series for each interval requested, the Pine language interleaves higher time frames with the primary chart interval. The problem is exacerbated by allowing a look-ahead parameter to the Security function. The goal of my repaint prevention is simply to ensure that my signal trading bias remains consistent between the strategy, study and broker. That being said this is what I’ve done address this issue in this script:
1. This script uses only 1 time frame. The chart interval.
2. Every entry and exit condition is evaluated on closed bars only.
3. No security functions are called to avoid a look-ahead possibility.
4. Every contributing factor specified in the TradingView wiki regarding this issue has been addressed.
5. Entry and exit setups are not reliant on crossover conditions.
6. I’ve run a 10 minute chart live for a week and compared it to the same chart periodically reloaded. The two charts were highly correlated with no instances of completely opposite real-time signals. I do have to say that there were differences in the location of some trades between the backtest and the study. But, I think mostly those differences are attributable to trading off closed bars in the study and the use of strategy functions in the backtest.
The study does indeed bring up the TV warning dialog. The only reason for this is because the script uses an EMA indicator which according to TradingView is due to “peculiarities of the algorithm”. I use the EMA for the Bill Williams Alligator so there is no way to remove it.
One issue that comes up when comparing the strategy with the study is that the strategy trades show on the chart one bar later than the study. This problem is due to the fact that “strategy.entry()” and “strategy_exit()” do not execute on the same bar called. The study, on the other hand, has no such limitation since there are no position routines.
Please be aware that the data source matters. Cryptocurrency has no central tick repository so each exchange supplies TradingView its feed. Even though it is the same symbol the quality of the data and subsequently the bars that are supplied to the chart varies with the exchange. This script will absolutely produce different results on different data feeds of the same symbol. Be sure to backtest this script on the same data you intend to receive alerts for. Any example settings I share with you will always have the exchange name used to generate the test results.
Usage
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 configs that I use for my own trading that I can share with you. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
The input dialog box contains over 70 inputs separated into five sections. Each section is identified as such with a makeshift separator input. There are three main areas that must to be configured: long side, short side and settings that apply to both. The rest of the inputs apply to pyramids, DCA, reporting and calibrations. The following steps address these three main areas only. You will need to get your backtest in the black before moving on to the more advanced features.
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 3. 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 3 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 4 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. Return to Section 3 and 4 and turn off “Base To Base Margin” which was enabled in steps 9 and 10.
Step 13. Turn off Show Markers in Section 2.
Step 14. 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. This is a fixed value minimum profit and stop loss. Also 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 (due to the exit condition). 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. On the study version, the stop is executed at the close of the bar.
Step 15. 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 16. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 17. 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 18. Other adjustments may make a crucial difference.
Step 18. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 3 and 4.
Step 19. Enable the “Mandatory Snap” checkbox in Section 3 and 4 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 20. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 3 and 4. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 21. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 3 and 4. 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 22. Improve the backtest profitability by adjusting the “Sparse Delta” in Section 3 and 4.
Step 23. Improve the backtest profitability by adjusting the “Chase Delta” in Section 3 and 4.
Step 24. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 3 and 4. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 25. Try each checkbox in Section 3 and 4. See if it improves the backtest profitability. The “Caution Lackluster” checkbox only works when “Caution Mode” is enabled.
Step 26. Enable the reporting conditions in Section 5. Look for long runs of consecutive losses or high debt sequences. These are indications that your trading system cannot withstand sudden changes in market sentiment.
Step 27. 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 Macro indicator captures the tallest peaks and valleys.
Step 28. Apply the backtest settings to the study version and perform forward testing.
This script is open for beta testing. After successful beta test it will become a commercial application available by subscription only. I’ve invested quite a lot of time and effort into making this the best possible signal generator for all of the instruments I intend to trade. I certainly welcome any suggestions for improvements. Thank you all in advance.
One final note. I'm not a fan of having the Performance Overview (blue wedge) automatically show up at the end of the publish page since it could be misleading. On the EUR/USD backtest showing here I used a minimum profit of 65 pips, a stop of 120 pips, the candle indicator and a 5 pyramid max value. Also Mark Pyramid Levels (blue triangles) are enabled along with a 720 ROR Sample Period (red labels).
Strategy Chameleon [theUltimator5]Have you ever looked at an indicator and wondered to yourself "Is this indicator actually profitable?" Well now you can test it out for yourself with the Strategy Chameleon!
Strategy Chameleon is a versatile, signal-agnostic trading strategy designed to adapt to any external indicator or trading system. Like a chameleon changes colors to match its environment, this strategy adapts to match any buy/sell signals you provide, making it the ultimate backtesting and automation tool for traders who want to test multiple strategies without rewriting code.
🎯 Key Features
1) Connects ANY external indicator's buy/sell signals
Works with RSI, MACD, moving averages, custom indicators, or any Pine Script output
Simply connect your indicator's signal output to the strategy inputs
2) Multiple Stop Loss Types:
Percentage-based stops
ATR (Average True Range) dynamic stops
Fixed point stops
3) Advanced Trailing Stop System:
Percentage trailing
ATR-based trailing
Fixed point trailing
4) Flexible Take Profit Options:
Risk:Reward ratio targeting
Percentage-based profits
ATR-based profits
Fixed point profits
5) Trading Direction Control
Long Only - Bull market strategies
Short Only - Bear market strategies
Both - Full market strategies
6) Time-Based Filtering
Optional trading session restrictions
Customize active trading hours
Perfect for day trading strategies
📈 How It Works
Signal Detection: The strategy monitors your connected buy/sell signals
Entry Logic: Executes trades when signals trigger during valid time periods
Risk Management: Automatically applies your chosen stop loss and take profit levels
Trailing System: Dynamically adjusts stops to lock in profits
Performance Tracking: Real-time statistics table showing win rate and performance
⚙️ Setup Instructions
0) Add indicator you want to test, then add the Strategy to your chart
Connect Your Signals:
imgur.com
Go to strategy settings → Signal Sources
1) Set "Buy Signal Source" to your indicator's buy output
2) Set "Sell Signal Source" to your indicator's sell output
3) Choose table position - This simply changes the table location on the screen
4) Set trading direction preference - Buy only? Sell only? Both directions?
imgur.com
5) Set your preferred stop loss type and level
You can set the stop loss to be either percentage based or ATR and fully configurable.
6) Enable trailing stops if desired
imgur.com
7) Configure take profit settings
8) Toggle time filter to only consider specific time windows or trading sessions.
🚀 Use Cases
Test various indicators to determine feasibility and/or profitability.
Compare different signal sources quickly
Validate trading ideas with consistent risk management
Portfolio Management
Apply uniform risk management across different strategies
Standardize stop loss and take profit rules
Monitor performance consistently
Automation Ready
Built-in alert conditions for automated trading
Compatible with trading bots and webhooks
Easy integration with external systems
⚠️ Important Notes
This strategy requires external signals to function
Default settings use 10% of equity per trade
Pyramiding is disabled (one position at a time)
Strategy calculates on bar close, not every tick
🔗 Integration Examples
Works perfectly with:
RSI strategies (connect RSI > 70 for sells, RSI < 30 for buys)
Moving average crossovers
MACD signal line crosses
Bollinger Band strategies
Custom oscillators and indicators
Multi-timeframe strategies
📋 Default Settings
Position Size: 10% of equity
Stop Loss: 2% percentage-based
Trailing Stop: 1.5% percentage-based (enabled)
Take Profit: Disabled (optional)
Trade Direction: Both long and short
Time Filter: Disabled
TheRookAlgoPROThe Rook Algo PRO is an automated strategy that uses ICT dealing ranges to get in sync with potential market trends. It detects the market sentiment and then place a sell or a buy trade in premium/discount or in breakouts with the desired risk management.
Why is useful?
This algorithm is designed to help traders to quickly identify the current state of the market and easily back test their strategy over longs periods of time and different markets its ideal for traders that want to profit on potential expansions and want to avoid consolidations this algo will tell you when the expansion is likely to begin and when is just consolidating and failing moves to avoid trading.
How it works and how it does it?
The Algo detects the current and previous market structure to identify current ranges and ICT dealing ranges that are created when the market takes buyside liquidity and sellside liquidity, it will tell if the market is in a consolidation, expansion, retracement or in a potential turtle soup environment, it will tell if the range is small or big compared to the previous one. Is important to use it in a trending markets because when is ranging the signals lose effectiveness.
This algo is similar to the previously released the Rook algo with the additional features that is an automated strategy that can take trades using filters with the desired risk reward and different entry types and trade management options.
Also this version plots FVGS(fair value gaps) during expansions, and detects consolidations with a box and the mid point or average. Some bars colors are available to help in the identification of the market state. It has the option to show colors of the dealing ranges first detected state.
How to use it?
Start selecting the desired type of entry you want to trade, you can choose to take Discount longs, premium sells, breakouts longs and sells, this first four options are the selected by default. You can enable riskier options like trades without confirmation in premium and discount or turtle soup of the current or previous dealing range. This last ones are ideal for traders looking to enter on a counter trend but has to be used with caution with a higher timeframe reference.
In the picture below we can see a premium sell signal configuration followed by a discount buy signal It display the stop break even level and take profit.
This next image show how the riskier entries work. Because we are not waiting for a confirmation and entering on a counter trend is normal to experience some stop losses because the stop is very tight. Should only be used with a clear Higher timeframe reference as support of the trade idea. This algo has the option to enable standard deviations from the normal stop point to prevent liquidity sweeps. The purple or blue arrows indicate when we are in a potential turtle soup environment.
The algo have a feature called auto-trade enable by default that allow for a reversal of the current trade in case it meets the criteria. And also can take all possible buys or all possible sells that are riskier entries if you just want to see the market sentiment. This is useful when the market is very volatile but is moving not just ranging.
Then we configure the desired trade filters. We have the options to trade only when dealing ranges are in sync for a more secure trend, or we can disable it to take riskier trades like turtle soup trades. We can chose the minimum risk reward to take the trade and the target extension from the current range and the exit type can be when we hit the level or in a retracement that is the default setting. These setting are the most important that determine profitability of the strategy, they has be adjusted depending on the timeframe and market we are trading.
The stop and target levels can also be configured with standard deviations from the current range that way can be adapted to the market volatility.
The Algo allow the user to chose if it want to place break even, or trail the stop. In the picture below we can see it in action. This can work when the trend is very strong if not can lead to multiple reentries or loses.
The last option we can configure is the time where the trades are going to be taken, if we trade usually in the morning then we can just add the morning time by default is set to the morning 730am to 1330pm if you want to trade other times you should change this. Or if we want to enter on the ICT macro times can also be added in a filter. Trade taken with the macro times only enable is visible in the picture below.
Strategy Results
The results are obtained using 2000usd in the MNQ! In the 15minutes timeframe 1 contract per trade. Commission are set to 2USD, slippage to 1tick, the backtesting range is from May 2 2024 to March 2025 for a total of 119 trades, this Strategy default settings are designed to take trades on the daily expansions, trail stop and Break even is activated the exit on profit is on a retracement, and for loses when the stop is hit. The auto-trade option is enable to allow to detect quickly market changes. The strategy give realistic results, makes around 200% of the account in around a year. 1.4 profit factor with around 37% profitable trades. These results can be further improve and adapted to the specific style of trading using the filters.
Remember entries constitute only a small component of a complete winning strategy. Other factors like risk management, position-sizing, trading frequency, trading fees, and many others must also be properly managed to achieve profitability. Past performance doesn’t guarantee future results.
Summary of features
-Easily Identify the current dealing range and market state to avoid consolidations
-Recognize expansions with FVGs and consolidation with shaded boxes
-Recognize turtle soups scenarios to avoid fake out breakout
-Configurable automated trades in premium/discount or breakouts
-Auto-trade option that allow for reversal of the current trade when is no longer valid
-Time filter to allow only entries around the times you trade or on the macro times.
-Risk Reward filter to take the automated trades with visible stop and take profit levels
-Customizable trade management take profit, stop, breakeven level with standard deviations
-Trail stop option to secure profit when price move in your favor
-Option to exit on a close, retracement or reversal after hitting the take profit level
-Option to exit on a close or reversal after hitting stop loss
-Dashboard with instant statistics about the strategy current settings and market sentiment
ThePawnAlgoPROThe Pawn algo PRO is an automated strategy that is useful to trade retracements and expansions using any higher timeframe reference.
Why is useful?
This algorithm is helpful to trade with the higher timeframe Bias and to see the HTF manipulations of the highs or lows once the candle open, usually in a normal buy candle will be a manipulation lower to end up higher. In a normal sell candle will be a manipulation higher to close lower. Once the potential direction of the Higher time frame candle is clear the algo will just enter on a trade on the lower timeframe aligned with the higher timeframe trend.
You can select any HTF you want from 1-365Days, 1-12Months or 1-52W ranges. Making this algorithm very flexible to adapt to any trader specialized timeframe.
How it works and how it does it?
It works with a simple but powerful pattern a close above previous candle high means higher prices and a close below previous candle low means lower prices, Close inside previous candle range means price is going to consolidate do some kind of retracement or reversal. The algo plots the candles with different colors to identify each of these states. And it does this in the HTF range plot.
This algo is similar to the previously released Pawn algo with the additional features that is an automated strategy that can take trade using desired risk reward and different entry types and trade management options. When the simple pattern is detected.
Also this version allows to plot the current developing HTF levels meaning the high, low and the 50%, plus the first created FVG(fair value gap introduced by ICT) in the range allowing to easily track any change in the potential direction of the HTF candle.
How to use it?
First select a higher timeframe reference and then select a lower timeframe, to visualize it better is recommended that the LTF is at least 10 times lower. Default HTF is 1 Week and LTF is 60min for trading the weekly expansions intraday.
Then we configure the HTF visualization it can be configure to show different HTF levels the premium/discount, wicks midpoints, previous levels, actual developing range or both. The Shade of the HTF range can be the body or the whole HTF range.
After that we configure the automated entries we can chose between buys only ,sell only entries or both and minimum risk reward to take a trade. Default value is 1.8RR and both entries selected. We can choose the maximum Risk Reward to avoid unrealistic targets default is 10RR. The maximum trades per HTF candle is also possible to select around this section.
Then we got the option to select which type of trade you want to take a trade around the open, the 50% or 75-80% or around the previous High for shorts or Low for longs. And off course the breakout entry that is for taking expansions outside previous HTF range. The picture below showcase an option using only entries on previous candles High or lows and 1Day as a HTF. You can also see the actual and previous HTF levels plotted.
Is important to take into account that these default settings are optimized for the MNQ! the 1W and 1H timeframes, but traders can adjust these settings to their desire timeframes or market and find a profitable configuration adjusting the parameters as they prefer. Initial balance, order size and commissions might be needed to be configured properly depending of the market. The algo provides a dashboard that make it easy to find a profitable configuration. It specifies the total trades, ARR that is an approximate value of the accumulative risk reward assuming all loses are 1R. The profit factor(PF) and percent profitable trades(PP) values are also available plus consecutives take profits and consecutives loses experimented in the simulation.
Finally there is an option to allow the algo to just trade following the direction of the trend if you just want to use it for sentiment or potential trend detection, this will place a trade in the most probable direction using the HTF reference levels, first FVG and LTF price action.
In the picture below you can see it in action in the 1min chart using 1H as HTF. When its trending works pretty well but when is consolidating is better to avoid using this option. Configuration below uses a time filter with the macro times specified by ICT that is also an available filter for taking trades. And the risk reward is set to minimum 2RR.
The cyan dotted line is the stop loss and the blue one above is the take profit level. The algo allows for different ways to exit in this case is using exit on a reversal, but can also be when the take profit is hit, or in a retracement. For the stop loss we can chose to exit on a close, reversal or when price hit the level.
Strategy Results
The results are obtained using 2000usd in the MNQ! 1 contract per trade. Commission are set to 2USD,slippage to 1tick,
The backtesting range is from April 19 2021 to the present date that is march 2025 for a total of 180 trades, this Strategy default settings are designed to take trades on retracements only, in any of the available options meaning around 50% to the extreme HTF high or low following the HTF trend, but can only take 2 trades per HTF candle and the risk reward must be minimum 1.8RR and maximum 8RR. Break even is set when price reaches 2RR and the exit on profit is on a reversal, and for loses when the stop is hit. The HTF range is 1 Week and LTF is 1H. The strategy give decent results, makes around 2 times the money is lost with around 30% profitable. It experiments drawdown when the market makes quick market structure shifts or consolidates for long periods of time. So should be used with caution, remember entries constitute only a small component of a complete winning strategy. Other factors like risk management, position-sizing, trading frequency, trading fees, and many others must also be properly managed to achieve profitability. Past performance doesn’t guarantee future results.
Summary of features
-Take advantage of market fractality select HTF from 1-365Days, 1-12Months or 1-52W ranges
-Easily identify manipulations in the LTF using any HTF key levels, from previous or actual HTF range
-LTF Candles and shaded HTF boxes change color depending of previous candle close and price action
-Plot the first presented FVG of the selected HTF range plus 50% developing range of the HTF
-Configurable automated trades for retracements into the previous close, around 50%,75-80% or using the HTF high or low
-Option to enable automated breakout entries for expansions of the HTF range
-Trend follower algo that automatically place a trade where is likely to expand.
-Time filter to allow only entries around the times you trade or the macro times.
-Risk Reward filter to take the automated trades with visible stop and take profit levels
- Customizable trade management take profit, stop, breakeven level with standard deviations
-Option to exit on a close, retracement or reversal after hitting the take profit level
-Option to exit on a close or reversal after hitting stop loss
-Dashboard with instant statistics about the strategy current settings






















