BitcoinNinjas Ninja Signals Buy/Sell Alert Trading Strategy v3.0Bitcoin Ninjas 'Ninja Signals' Buy/Sell Alerts & Backtesting TradingView Script v3.0
(for Cryptocurrencies, Forex, GunBot, ProfitTrailer, automatic trading software, and more)
This is version 3 of our popular Ninja Signals trading script, which is similar to version 2, but with a new hard-coded calibration (resolution) setting that automatically matches candle size (period) to ensure that no repainting occurs regardless of the number or type of indicators and filters traders apply when configuring the script.
'Ninja Signals' v3.0 (SCRIPT)
'Ninja Signals' v3.0 (STRATEGY)
'Ninja Signals' v2.0 (SCRIPT)
'Ninja Signals' v2.0 (STRATEGY)
'Ninja Signals' v1.0 (SCRIPT)
'Ninja Signals' v1.0 (STRATEGY)
-Allows users to easily set automated buy and sell alerts on TradingView for use with automatic and manual trading of cryptocurrencies, Forex securities, and more (alerts are compatible with automatic trading software such as GunBot, ProfitTrailer, and more).
-Synthesizes many powerful indicators [e.g. Relative Strength Index (RSI), stochastic RSI, Money Flow Index (MFI), Moving Average Convergence Divergence (MACD), etc.) into one super script to generate very precise buy and sell signals in almost any market condition.
-Buy arrows (blue) and sell arrows (red) can be changed or hidden for ease of viewing.
-No lag EMA trendline featuring trend-reversal color-coding (white uptrend, black downtrend).
-Adjustable ‘calibration’ setting allows users to customize the script to work for any currency or security available through TradingView, on any exchange, simply by adjusting a number.
-Complete with backtesting strategy version of script which allows users to test various buy and sell strategies based on the alerts the script generates (see info and screenshots below).
-Backtesting strategy incorporates a user-defined adjustable date range, so users can estimate the script’s performance over specific periods of time, such as the last day, week, or month.
-Backtesting strategy utilizes a minimum protective gain setting to help you never sell for a loss. Simply adjust your minimum profit (%) per trade, and the test results will update.
-Backtesting strategy allows for pyramid buying to test various average down / double up buying strategies. Simply adjust the number of pyramid buys and the quantity of each buy.
- Free 7-day trial available for TradingView users who join our free BitcoinNinjas community.
-Free 24/7 support via BitcoinNinjas Telegram GunBot support group with script purchase.
-Fully compatible with GunBot automatic trading software (TradingView plugin is required).
-Special discount available for traders who purchase GunBot automatic trading software and the GunBot TradingView plugin from BitcoinNinjas, allowing for fully automatic trading.
-Contact us via Email or Telegram for more information, to request additional / custom screenshots, or to start your free trial.
DISCLAIMER: By using our BitcoinNinjas ‘Ninja Signals’ planning script, you agree to the BitcoinNinjas 'Terms of Use', as presented on our website (www.BitcoinNinjas.org) and as stated here. No sharing, copying, reselling, modifying, or any other forms of use are authorized for our documents, script / strategy, and the information published with them. This informational planning script / strategy is strictly for individual use and educational purposes only. This is not financial or investment advice. Investments are always made at your own risk and are based on your personal judgement. Bitcoin Ninjas is not responsible for any losses you may incur. Please invest wisely.
חפש סקריפטים עבור "backtest"
Strategy Stats [presentTrading]Hello! it's another weekend. This tool is a strategy performance analysis tool. Looking at the TradingView community, it seems few creators focus on this aspect. I've intentionally created a shared version. Welcome to share your idea or question on this.
█ Introduction and How it is Different
Strategy Stats is a comprehensive performance analytics framework designed specifically for trading strategies. Unlike standard strategy backtesting tools that simply show cumulative profits, this analytics suite provides real-time, multi-timeframe statistical analysis of your trading performance.
Multi-timeframe analysis: Automatically tracks performance metrics across the most recent time periods (last 7 days, 30 days, 90 days, 1 year, and 4 years)
Advanced statistical measures: Goes beyond basic metrics to include Information Coefficient (IC) and Sortino Ratio
Real-time feedback: Updates performance statistics with each new trade
Visual analytics: Color-coded performance table provides instant visual feedback on strategy health
Integrated risk management: Implements sophisticated take profit mechanisms with 3-step ATR and percentage-based exits
BTCUSD Performance
The table in the upper right corner is a comprehensive performance dashboard showing trading strategy statistics.
Note: While this presentation uses Vegas SuperTrend as the underlying strategy, this is merely an example. The Stats framework can be applied to any trading strategy. The Vegas SuperTrend implementation is included solely to demonstrate how the analytics module integrates with a trading strategy.
⚠️ Timeframe Limitations
Important: TradingView's backtesting engine has a maximum storage limit of 10,000 bars. When using this strategy stats framework on smaller timeframes such as 1-hour or 2-hour charts, you may encounter errors if your backtesting period is too long.
Recommended Timeframe Usage:
Ideal for: 4H, 6H, 8H, Daily charts and above
May cause errors on: 1H, 2H charts spanning multiple years
Not recommended for: Timeframes below 1H with long history
█ Strategy, How it Works: Detailed Explanation
The Strategy Stats framework consists of three primary components: statistical data collection, performance analysis, and visualization.
🔶 Statistical Data Collection
The system maintains several critical data arrays:
equityHistory: Tracks equity curve over time
tradeHistory: Records profit/loss of each trade
predictionSignals: Stores trade direction signals (1 for long, -1 for short)
actualReturns: Records corresponding actual returns from each trade
For each closed trade, the system captures:
float tradePnL = strategy.closedtrades.profit(tradeIndex)
float tradeReturn = strategy.closedtrades.profit_percent(tradeIndex)
int tradeType = entryPrice < exitPrice ? 1 : -1 // Direction
🔶 Performance Metrics Calculation
The framework calculates several key performance metrics:
Information Coefficient (IC):
The correlation between prediction signals and actual returns, measuring forecast skill.
IC = Correlation(predictionSignals, actualReturns)
Where Correlation is the Pearson correlation coefficient:
Correlation(X,Y) = (nΣXY - ΣXY) / √
Sortino Ratio:
Measures risk-adjusted return focusing only on downside risk:
Sortino = (Avg_Return - Risk_Free_Rate) / Downside_Deviation
Where Downside Deviation is:
Downside_Deviation = √
R_i represents individual returns, T is the target return (typically the risk-free rate), and n is the number of observations.
Maximum Drawdown:
Tracks the largest percentage drop from peak to trough:
DD = (Peak_Equity - Trough_Equity) / Peak_Equity * 100
🔶 Time Period Calculation
The system automatically determines the appropriate number of bars to analyze for each timeframe based on the current chart timeframe:
bars_7d = math.max(1, math.round(7 * barsPerDay))
bars_30d = math.max(1, math.round(30 * barsPerDay))
bars_90d = math.max(1, math.round(90 * barsPerDay))
bars_365d = math.max(1, math.round(365 * barsPerDay))
bars_4y = math.max(1, math.round(365 * 4 * barsPerDay))
Where barsPerDay is calculated based on the chart timeframe:
barsPerDay = timeframe.isintraday ?
24 * 60 / math.max(1, (timeframe.in_seconds() / 60)) :
timeframe.isdaily ? 1 :
timeframe.isweekly ? 1/7 :
timeframe.ismonthly ? 1/30 : 0.01
🔶 Visual Representation
The system presents performance data in a color-coded table with intuitive visual indicators:
Green: Excellent performance
Lime: Good performance
Gray: Neutral performance
Orange: Mediocre performance
Red: Poor performance
█ Trade Direction
The Strategy Stats framework supports three trading directions:
Long Only: Only takes long positions when entry conditions are met
Short Only: Only takes short positions when entry conditions are met
Both: Takes both long and short positions depending on market conditions
█ Usage
To effectively use the Strategy Stats framework:
Apply to existing strategies: Add the performance tracking code to any strategy to gain advanced analytics
Monitor multiple timeframes: Use the multi-timeframe analysis to identify performance trends
Evaluate strategy health: Review IC and Sortino ratios to assess predictive power and risk-adjusted returns
Optimize parameters: Use performance data to refine strategy parameters
Compare strategies: Apply the framework to multiple strategies to identify the most effective approach
For best results, allow the strategy to generate sufficient trade history for meaningful statistical analysis (at least 20-30 trades).
█ Default Settings
The default settings have been carefully calibrated for cryptocurrency markets:
Performance Tracking:
Time periods: 7D, 30D, 90D, 1Y, 4Y
Statistical measures: Return, Win%, MaxDD, IC, Sortino Ratio
IC color thresholds: >0.3 (green), >0.1 (lime), <-0.1 (orange), <-0.3 (red)
Sortino color thresholds: >1.0 (green), >0.5 (lime), <0 (red)
Multi-Step Take Profit:
ATR multipliers: 2.618, 5.0, 10.0
Percentage levels: 3%, 8%, 17%
Short multiplier: 1.5x (makes short take profits more aggressive)
Stop loss: 20%
HTF star - trailingDescription:
The HTF - Stars (Highertimeframe Stars) Strategy Script is designed to explore the behavior of a strategy using multiple timeframes. This experimental script focuses on identifying star candle patterns on a chosen higher timeframe and capturing subsequent price movements on a lower timeframe. By leveraging the power of star candle patterns forming on a higher timeframe, this strategy aims to capture potential trading opportunities on a shorter timeframe.
Key Features:
Multiple Timeframe Analysis: The strategy script allows you to be on a lower timeframe while searching for star candle patterns on a higher timeframe using the security function. This approach enables you to take advantage of higher timeframe insights and potentially capture favorable price movements on a shorter timeframe.
Star Candle Pattern Detection: The script identifies star candle patterns on the chosen higher timeframe. After the candle closes, a buy or sell order is executed on the lower timeframe, signaling a potential trading opportunity based on the detected pattern.
Trailing Stop: The strategy utilizes a trailing stop feature to manage trades. The trailing stop is set at a specified ATR (Average True Range) distance above or below the candle closes. This mechanism allows you to capture potential profits if the price moves in the anticipated direction and then reverses.
Mean Reversion Potential: During backtesting, it was observed that shorting stars above the 360 MA (Moving Average) and taking long positions on stars below the 360 MA yielded the most profitable results in the current market conditions. This suggests that star candle patterns in this context may serve as potential mean reversion signals. However, user inputs allow for customization, enabling you to experiment with different trading approaches when a star candle is detected.
Backtesting Feature: The script includes a backtesting feature that uses a percentage of equity, with 1% of equity set as the default. It displays a table presenting various statistics about the strategy's performance, providing valuable insights into its historical results.
Adjustable User Inputs: The script offers multiple adjustable settings, each accompanied by tooltips explaining their functionality. This flexibility allows you to fine-tune the strategy according to your preferences and experiment with different parameters to optimize its performance.
Disclaimer:
The HTF - Stars Strategy Script is provided for experimental and educational purposes only. Trading in the financial markets involves risk, and you should only trade with funds that you can afford to lose. The information presented in this script does not constitute financial advice or investment recommendations. Always conduct your own research and due diligence before making any investment decisions. The creator of this script shall not be held responsible for any losses or damages incurred from the use of this script. Historical performance is not indicative of future results.
Please note that past performance is not necessarily indicative of future results. Trading the markets involves risk, and there is no guarantee that the strategy described will be profitable for you. It is important to thoroughly test the strategy, adapt it to your trading style, and use proper risk management techniques.
STD-Filtered, Gaussian-Kernel-Weighted Moving Average BT [Loxx]STD-Filtered, Gaussian-Kernel-Weighted Moving Average BT is the backtest for the following indicator
Included:
This backtest uses a special implementation of ATR and ATR smoothing called "True Range Double" which is a range calculation that accounts for volatility skew.
You can set the backtest to 1-2 take profits with stop-loss
Signals can't exit on the same candle as the entry, this is coded in a way for 1-candle delay post entry
This should be coupled with the INDICATOR version linked above for the alerts and signals. Strategies won't paint the signal "L" or "S" until the entry actually happens, but indicators allow this, which is repainting on current candle, but this is an FYI if you want to get serious with Pinescript algorithmic botting
You can restrict the backtest by dates
It is advised that you understand what Heikin-Ashi candles do to strategies, the default settings for this backtest is NON Heikin-Ashi candles but you have the ability to change that in the source selection
This is a mathematically heavy, heavy-lifting strategy. Make sure you do your own research so you understand what is happening here.
STD-Filtered, Gaussian-Kernel-Weighted Moving Average is a moving average that weights price by using a Gaussian kernel function to calculate data points. This indicator also allows for filtering both source input price and output signal using a standard deviation filter.
Purpose
This purpose of this indicator is to take the concept of Kernel estimation and apply it in a way where instead of predicting past values, the weighted function predicts the current bar value at each bar to create a moving average that is suitable for trading. Normally this method is used to create an array of past estimators to model past data but this method is not useful for trading as the past values will repaint. This moving average does NOT repaint, however you much allow signals to close on the current bar before taking the signal. You can compare this to Nadaraya-Watson Estimator wherein they use Nadaraya-Watson estimator method with normalized kernel weighted function to model price.
What are Kernel Functions?
A kernel function is used as a weighing function to develop non-parametric regression model is discussed. In the beginning of the article, a brief discussion about properties of kernel functions and steps to build kernels around data points are presented.
Kernel Function
In non-parametric statistics, a kernel is a weighting function which satisfies the following properties.
A kernel function must be symmetrical. Mathematically this property can be expressed as K (-u) = K (+u). The symmetric property of kernel function enables its maximum value (max(K(u)) to lie in the middle of the curve.
The area under the curve of the function must be equal to one. Mathematically, this property is expressed as: integral −∞ + ∞ ∫ K(u)d(u) = 1
Value of kernel function can not be negative i.e. K(u) ≥ 0 for all −∞ < u < ∞.
Kernel Estimation
In this article, Gaussian kernel function is used to calculate kernels for the data points. The equation for Gaussian kernel is:
K(u) = (1 / sqrt(2pi)) * e^(-0.5 *(j / bw )^2)
Where xi is the observed data point. j is the value where kernel function is computed and bw is called the bandwidth. Bandwidth in kernel regression is called the smoothing parameter because it controls variance and bias in the output.
STD-Filterd, R-squared Adaptive T3 w/ Dynamic Zones BT [Loxx]STD-Filterd, R-squared Adaptive T3 w/ Dynamic Zones BT is the backtest strategy for "STD-Filterd, R-squared Adaptive T3 w/ Dynamic Zones " seen below:
Included:
This backtest uses a special implementation of ATR and ATR smoothing called "True Range Double" which is a range calculation that accounts for volatility skew.
You can set the backtest to 1-2 take profits with stop-loss
Signals can't exit on the same candle as the entry, this is coded in a way for 1-candle delay post entry
This should be coupled with the INDICATOR version linked above for the alerts and signals. Strategies won't paint the signal "L" or "S" until the entry actually happens, but indicators allow this, which is repainting on current candle, but this is an FYI if you want to get serious with Pinescript algorithmic botting
You can restrict the backtest by dates
It is advised that you understand what Heikin-Ashi candles do to strategies, the default settings for this backtest is NON Heikin-Ashi candles but you have the ability to change that in the source selection
This is a mathematically heavy, heavy-lifting strategy with multi-layered adaptivity. Make sure you do your own research so you understand what is happening here. This can be used as its own trading system without any other oscillators, moving average baselines, or volatility/momentum confirmation indicators.
What is the T3 moving average?
Better Moving Averages Tim Tillson
November 1, 1998
Tim Tillson is a software project manager at Hewlett-Packard, with degrees in Mathematics and Computer Science. He has privately traded options and equities for 15 years.
Introduction
"Digital filtering includes the process of smoothing, predicting, differentiating, integrating, separation of signals, and removal of noise from a signal. Thus many people who do such things are actually using digital filters without realizing that they are; being unacquainted with the theory, they neither understand what they have done nor the possibilities of what they might have done."
This quote from R. W. Hamming applies to the vast majority of indicators in technical analysis . Moving averages, be they simple, weighted, or exponential, are lowpass filters; low frequency components in the signal pass through with little attenuation, while high frequencies are severely reduced.
"Oscillator" type indicators (such as MACD , Momentum, Relative Strength Index ) are another type of digital filter called a differentiator.
Tushar Chande has observed that many popular oscillators are highly correlated, which is sensible because they are trying to measure the rate of change of the underlying time series, i.e., are trying to be the first and second derivatives we all learned about in Calculus.
We use moving averages (lowpass filters) in technical analysis to remove the random noise from a time series, to discern the underlying trend or to determine prices at which we will take action. A perfect moving average would have two attributes:
It would be smooth, not sensitive to random noise in the underlying time series. Another way of saying this is that its derivative would not spuriously alternate between positive and negative values.
It would not lag behind the time series it is computed from. Lag, of course, produces late buy or sell signals that kill profits.
The only way one can compute a perfect moving average is to have knowledge of the future, and if we had that, we would buy one lottery ticket a week rather than trade!
Having said this, we can still improve on the conventional simple, weighted, or exponential moving averages. Here's how:
Two Interesting Moving Averages
We will examine two benchmark moving averages based on Linear Regression analysis.
In both cases, a Linear Regression line of length n is fitted to price data.
I call the first moving average ILRS, which stands for Integral of Linear Regression Slope. One simply integrates the slope of a linear regression line as it is successively fitted in a moving window of length n across the data, with the constant of integration being a simple moving average of the first n points. Put another way, the derivative of ILRS is the linear regression slope. Note that ILRS is not the same as a SMA ( simple moving average ) of length n, which is actually the midpoint of the linear regression line as it moves across the data.
We can measure the lag of moving averages with respect to a linear trend by computing how they behave when the input is a line with unit slope. Both SMA (n) and ILRS(n) have lag of n/2, but ILRS is much smoother than SMA .
Our second benchmark moving average is well known, called EPMA or End Point Moving Average. It is the endpoint of the linear regression line of length n as it is fitted across the data. EPMA hugs the data more closely than a simple or exponential moving average of the same length. The price we pay for this is that it is much noisier (less smooth) than ILRS, and it also has the annoying property that it overshoots the data when linear trends are present.
However, EPMA has a lag of 0 with respect to linear input! This makes sense because a linear regression line will fit linear input perfectly, and the endpoint of the LR line will be on the input line.
These two moving averages frame the tradeoffs that we are facing. On one extreme we have ILRS, which is very smooth and has considerable phase lag. EPMA has 0 phase lag, but is too noisy and overshoots. We would like to construct a better moving average which is as smooth as ILRS, but runs closer to where EPMA lies, without the overshoot.
A easy way to attempt this is to split the difference, i.e. use (ILRS(n)+EPMA(n))/2. This will give us a moving average (call it IE /2) which runs in between the two, has phase lag of n/4 but still inherits considerable noise from EPMA. IE /2 is inspirational, however. Can we build something that is comparable, but smoother? Figure 1 shows ILRS, EPMA, and IE /2.
Filter Techniques
Any thoughtful student of filter theory (or resolute experimenter) will have noticed that you can improve the smoothness of a filter by running it through itself multiple times, at the cost of increasing phase lag.
There is a complementary technique (called twicing by J.W. Tukey) which can be used to improve phase lag. If L stands for the operation of running data through a low pass filter, then twicing can be described by:
L' = L(time series) + L(time series - L(time series))
That is, we add a moving average of the difference between the input and the moving average to the moving average. This is algebraically equivalent to:
2L-L(L)
This is the Double Exponential Moving Average or DEMA , popularized by Patrick Mulloy in TASAC (January/February 1994).
In our taxonomy, DEMA has some phase lag (although it exponentially approaches 0) and is somewhat noisy, comparable to IE /2 indicator.
We will use these two techniques to construct our better moving average, after we explore the first one a little more closely.
Fixing Overshoot
An n-day EMA has smoothing constant alpha=2/(n+1) and a lag of (n-1)/2.
Thus EMA (3) has lag 1, and EMA (11) has lag 5. Figure 2 shows that, if I am willing to incur 5 days of lag, I get a smoother moving average if I run EMA (3) through itself 5 times than if I just take EMA (11) once.
This suggests that if EPMA and DEMA have 0 or low lag, why not run fast versions (eg DEMA (3)) through themselves many times to achieve a smooth result? The problem is that multiple runs though these filters increase their tendency to overshoot the data, giving an unusable result. This is because the amplitude response of DEMA and EPMA is greater than 1 at certain frequencies, giving a gain of much greater than 1 at these frequencies when run though themselves multiple times. Figure 3 shows DEMA (7) and EPMA(7) run through themselves 3 times. DEMA^3 has serious overshoot, and EPMA^3 is terrible.
The solution to the overshoot problem is to recall what we are doing with twicing:
DEMA (n) = EMA (n) + EMA (time series - EMA (n))
The second term is adding, in effect, a smooth version of the derivative to the EMA to achieve DEMA . The derivative term determines how hot the moving average's response to linear trends will be. We need to simply turn down the volume to achieve our basic building block:
EMA (n) + EMA (time series - EMA (n))*.7;
This is algebraically the same as:
EMA (n)*1.7-EMA( EMA (n))*.7;
I have chosen .7 as my volume factor, but the general formula (which I call "Generalized Dema") is:
GD (n,v) = EMA (n)*(1+v)-EMA( EMA (n))*v,
Where v ranges between 0 and 1. When v=0, GD is just an EMA , and when v=1, GD is DEMA . In between, GD is a cooler DEMA . By using a value for v less than 1 (I like .7), we cure the multiple DEMA overshoot problem, at the cost of accepting some additional phase delay. Now we can run GD through itself multiple times to define a new, smoother moving average T3 that does not overshoot the data:
T3(n) = GD ( GD ( GD (n)))
In filter theory parlance, T3 is a six-pole non-linear Kalman filter. Kalman filters are ones which use the error (in this case (time series - EMA (n)) to correct themselves. In Technical Analysis , these are called Adaptive Moving Averages; they track the time series more aggressively when it is making large moves.
What is R-squared Adaptive?
One tool available in forecasting the trendiness of the breakout is the coefficient of determination ( R-squared ), a statistical measurement.
The R-squared indicates linear strength between the security's price (the Y - axis) and time (the X - axis). The R-squared is the percentage of squared error that the linear regression can eliminate if it were used as the predictor instead of the mean value. If the R-squared were 0.99, then the linear regression would eliminate 99% of the error for prediction versus predicting closing prices using a simple moving average .
R-squared is used here to derive a T3 factor used to modify price before passing price through a six-pole non-linear Kalman filter.
What are Dynamic Zones?
As explained in "Stocks & Commodities V15:7 (306-310): Dynamic Zones by Leo Zamansky, Ph .D., and David Stendahl"
Most indicators use a fixed zone for buy and sell signals. Here’ s a concept based on zones that are responsive to past levels of the indicator.
One approach to active investing employs the use of oscillators to exploit tradable market trends. This investing style follows a very simple form of logic: Enter the market only when an oscillator has moved far above or below traditional trading lev- els. However, these oscillator- driven systems lack the ability to evolve with the market because they use fixed buy and sell zones. Traders typically use one set of buy and sell zones for a bull market and substantially different zones for a bear market. And therein lies the problem.
Once traders begin introducing their market opinions into trading equations, by changing the zones, they negate the system’s mechanical nature. The objective is to have a system automatically define its own buy and sell zones and thereby profitably trade in any market — bull or bear. Dynamic zones offer a solution to the problem of fixed buy and sell zones for any oscillator-driven system.
An indicator’s extreme levels can be quantified using statistical methods. These extreme levels are calculated for a certain period and serve as the buy and sell zones for a trading system. The repetition of this statistical process for every value of the indicator creates values that become the dynamic zones. The zones are calculated in such a way that the probability of the indicator value rising above, or falling below, the dynamic zones is equal to a given probability input set by the trader.
To better understand dynamic zones, let's first describe them mathematically and then explain their use. The dynamic zones definition:
Find V such that:
For dynamic zone buy: P{X <= V}=P1
For dynamic zone sell: P{X >= V}=P2
where P1 and P2 are the probabilities set by the trader, X is the value of the indicator for the selected period and V represents the value of the dynamic zone.
The probability input P1 and P2 can be adjusted by the trader to encompass as much or as little data as the trader would like. The smaller the probability, the fewer data values above and below the dynamic zones. This translates into a wider range between the buy and sell zones. If a 10% probability is used for P1 and P2, only those data values that make up the top 10% and bottom 10% for an indicator are used in the construction of the zones. Of the values, 80% will fall between the two extreme levels. Because dynamic zone levels are penetrated so infrequently, when this happens, traders know that the market has truly moved into overbought or oversold territory.
Calculating the Dynamic Zones
The algorithm for the dynamic zones is a series of steps. First, decide the value of the lookback period t. Next, decide the value of the probability Pbuy for buy zone and value of the probability Psell for the sell zone.
For i=1, to the last lookback period, build the distribution f(x) of the price during the lookback period i. Then find the value Vi1 such that the probability of the price less than or equal to Vi1 during the lookback period i is equal to Pbuy. Find the value Vi2 such that the probability of the price greater or equal to Vi2 during the lookback period i is equal to Psell. The sequence of Vi1 for all periods gives the buy zone. The sequence of Vi2 for all periods gives the sell zone.
In the algorithm description, we have: Build the distribution f(x) of the price during the lookback period i. The distribution here is empirical namely, how many times a given value of x appeared during the lookback period. The problem is to find such x that the probability of a price being greater or equal to x will be equal to a probability selected by the user. Probability is the area under the distribution curve. The task is to find such value of x that the area under the distribution curve to the right of x will be equal to the probability selected by the user. That x is the dynamic zone.
Included:
Bar coloring
Signals
Alerts
Loxx's Expanded Source Types
Elegant Oscillator Backtest [loxx]Elegant Oscillator Backtest : John Elhers Elegant Oscillator from TASC's February 2022 edition of Traders' Tips.
Backtest for this:
What is it?
Normalized, Inverse Fisher Transform that oscillates between -1 and 1
How does this help me?
Helps the trader identify reversions to the mean
Backtest Features:
-Baseline filtering. 10+ moving averages to choose from
-ATR qualifier boundaries above/below the selected baseline
-1-3 take profit levels with stop loss
-Trailing take profit using ATR offset
-Post Signal, Baseline Cross signals
-Continuation Longs and Shorts
-Regular Longs and Shorts
-Backtest date ranges
-Ability to change how much is removed from trade at each take profit
*** Make sure the take profit % removed adds up to 100% between the number of TPs selected
Cava Signals Backtesting/VisualizerPLEASE READ THE DESCRIPTION CAREFULLY
Trying this again, as it seems I keep violating the rules unintentionally. Moderator, please forgive me as I try to make this right.
This backtesting/visualizer script was created for me to get a visual idea of the Cava Signals indicator throughout its development time and continuous optimization.
This script is to be used on the 30-minute timeframe on supported markets, and whether I can only publish strategies on regular candles, the indicator is meant to trigger on heikin ashi candles.I understand backtesting on non-regular candles produces unrealistic results, but I emphasize that this script is more for visualization purposes rather than accurate $ amounts from the trades. The signals are used along with a dedicated bot configuration, so part of the strategy is not managed by the script, but by the bot's config.
Some behind the scenes on what we are looking at:
a combination of ema and sma crosses on different time frames (5m, 15m, 30m, 60m and 90m) - we call this the wave trend
a combination of stochastic rsi on different time frames (10m, 30m)
a combination of schaff trend cycles on different time frames (5m, 20m and 30m)
a combination of money flow index on different time frames (10m and 30m)
volume information for each supported market/pair
and a couple of other info particular to each pair
With the above combination of data points, we try to optimize our strategy for an entry, for dca'ing down in case the coin goes down as well as dca'ing up to maximize profit when a coin is going up, take profit levels when we recognize a good time to do so, and of course, a closing level. I would like to emphasize the *visualization* purpose of this script in recognizing lows, highs, and market structure to identify the important levels to signal - this script is NOT to be used for accurate backtesting, but for an idea of the overall performance of when signals are triggered.
Let me try to explain the workflow and icons you see on the chart:
The colored circles on the bottom of the chart are all buy signals; each color corresponds to a particular buy signal, we have a combination of 9 possible situations that would trigger a buy signal. Some would trigger a buy signal only in combination with other buy signals or other indicators within the script. we also display a green upwards arrow below bars when a buy signal is triggered.
The colored arrows pointing down on the top of the chart are close signals. We have a combination of 5 closing criteria each color corresponds to one, just like the buy signals do. We only close a trade in profit. If not in profit, we will look to DCA down.
DCA signals are shown by the green flag above bars. they are signals to DCA up or down depending on the trade being negative or positive. DCA'ing up or down is also managed by the bot's configuration for limits on when to accept the signal.
Take Profit levels are shown by the green diamond above bars and work in conjunction with the bot's config on when to take the signal if at all and other take profit levels. Usually, when we hit the first take profit level we move our stop loss to entry via the bot's take profit safety feature. You can see this call with the close entry named TPS .
The black bars you may see on the chart is to illustrate when the market is extended based on a particular strategy. During this period we will not trigger a buy signal unless there is a huge spike in positive volume .
The green number below the bars is the total positive delta volume on the buy candles.
On the table on the right upper corner, we show some information on the market and performance of the backtesting - for visualization purposes only!
Currently, the script is tailored to work with the following markets/pairs:
Binance Spot: ADA, ALGO, ATOM, AVAX, BNB, BTC , DOT, ETH, LINK, LUNA, MATIC, SOL, VET, XRP, XTZ
Binance Futures: BTC , ETH, ADA, ALGO, ATOM, BNB, COMP, DOT, ENJ , LINK, OCEAN, OMG, SOL, VET, XMR, XRP, XTZ, AVAX, AAVE, DOGE, LTC, LUNA, MKR , NEAR, ONT, RUNE, SUSHI, LTC, XLM , COMP, ONT, THETA, FTM , EGLD , WAVES, ONE, HTN , CHZ , HOT, MANA, CRV , RVN, BAT, ANKR, 1INCH, ALICE, ATA , AXS , CHR , COTI, NKN , RAY, REN, SRM , SXP , TLM
ByBit Inverse Perpetual: BTCUSD , ETHUSD
ByBit Futures: AAVE, ADA, ALGO, AVAX, AXS , BNB, BTC , DOT, ETH, LINK, LTC, MATIC, SOL, SUSHI, UNI , XEM, XRP, XTZ
The chosen pairs are subject to change based on the best-performing assets we are constantly analyzing.
I hope this helps to understand the script, its purpose and ideas. I hope this satisfies the community rules - it was not my intention to break them - if there's anything on the above or the script that still violates the guidelines, please let me know and accept my apologies in advance.
If anyone would like to know more, let me know in the comment section.
Thank you!
TEMA Cross +HTF BacktestThis is a follow up to a previous script release called " TEMA Cross Backtest ".
This new strategy uses two TEMA crosses, one for trend direction, one for entry and exit. The entry and exit parameters are the same as the previous script. The trend direction is based on a user configurable higher timeframe TEMA cross which determines when to take longs or shorts. When the indicator is purple, it is looking for shorts, and when it is yellow, it is looking for longs. The background of the chart is colored accordingly to see the trend direction at a glance.
The default settings are the ones I have found produce the highest backtest results. The backtest is set by default to use a $500 account, and use $500 for every entry and exit, no matter the direction or overall profit/loss.
Parts of script borrowed from other public scripts.
Cyatophilum Swing Trader [BACKTEST]This is an indicator for swing trading which allows you to build your own strategies, backtest and alert. This version is the backtest which allows to use the Strategy Tester. The alert version can be found in my profile scripts page.
The particularity of this indicator is that it contains several indicators, including a custom one, that you can choose in a drop down list, as well as a trailing stop loss and take profit system.
The current indicators are :
CYATO AI: a custom indicator inspired by Donchian Channels that will catch each big trend and important reversal points .
The indicator has two major "bands" or channels and two minor bands. The major bands are bigger and are always displayed.
When price reaches a major band, acting as a support/resistance, it will either bounce on it or break through it. This is how "tops" and "bottoms", and breakouts are caught.
The minor bands are used to catch smaller moves inside the major bands. A combination of volume, momentum and price action is used to calculate the signals.
Advantages of this indicator: it should catch top and bottoms better than other swing trade indicators.
Cons of this indicator: Some minor moves might be ignored. Sometimes the script will catch a fakeout due to the Bands design.
Best timeframes to use it : 2H~4H
Sample:
Other indicators available:
SARMA: A combination of Parabolic Stop and Reverse and Exponential Moving Average (20 and 40) .
SAR: Regular Parabolic Stop and Reverse .
QQE: An indicator based on Quantitative Qualitative Estimation .
SUPERTREND: A reversal indicator based on Average True Range .
CHANNELS: The classic Donchian Channels .
More indicators might be added in the future.
About the signals: each entry (long & short) is calculated at bar close to avoid repainting. Exits (SL & TP) can either be intra-bar or at bar close using the Exit alert type parameter.
STOP LOSS SYSTEM
The base indicators listed above can be used with or without TP/SL.
TP and SL can be both turned on and off and configured for both directions.
The system can be configured with 3 parameters as follows:
Stop Loss Base % Price: Starting Value for LONG/SHORT stop loss
Trailing Stop % Price to Trigger First parameter related to the trailing stop loss. Percentage of price movement in the right direction required to make the stop loss line move.
Trailing Stop % Price Movement: Second parameter related to the trailing stop loss. Percentage for the stop loss trailing movement.
Another option is the "Reverse order on Stop Loss". Use this if you want the strategy to trigger a reverse order when a stop loss is hit.
TAKE PROFIT SYSTEM
The system can be configured with 2 parameters as follows:
Take Profit %: Take profit value in percentage of price.
Trailing Profit Deviation %: Percent deviation for the trailing take profit.
Combining indicators and Take Profit/Stop Loss
One thing to note is that if a reversal signal triggers during a trade, the trade will be closed before SL or TP is reached.
Indeed, the base indicators are reversal indicators, they will trigger long/short signals to follow the trend.
It is possible to use a takeprofit without stop loss, like in this example, knowing that the signal will reverse if the trade goes badly.
The base indicators settings can be changed in the "Advanced Parameters" section.
Configuration used for this snapshot:
BACKTEST SETTINGS
· Initial Capital: 10 000 $
· Order Size: 10% equity (to avoid compounding effect)
· Commission : 0.1% per order (total commission paid: 244.41 €)
· Slippage: 5 ticks
Oldest trade: 2014-04-01
Backtest Period: From 2014-04-01 to 2020-09-04
Use the link below to obtain access to this indicator.
BO - Bar's direction Signal - BacktestingBO - Bar's direction Signal - Backtesting Options:
A. Factors Calculate probability of x bars same direction
1. Periods Counting: Data to count From day/month/year To day/month/year
2. Trading Time: only cases occurred in trading time were counted.
B. Timezone
1. Trading time depend on Time zone and specified chart.
2. Enable Highlight Trading Time to check your period time is correct
C. Date Backtesting
* Only cases occurred in Date Backtesting were reported.
D. Setup Options & Rule
1. Reversal after 2 bars same direction
* Probability of 3 bars same direction < 50
* 2 bars same direction is start of series
2. Reversal after 3 bars same direction
* Probability of 4 bars same direction < 50
* 3 bars same direction is start of series
3. Reversal after 4 bars same direction
* Probability of 4 bars same direction < 50
* 3 bars same direction is start of series
4. Reversal after 5 bars same direction
* Probability of 5 bars same direction < 50
* 4 bars same direction is start of series
5. Reversal after 6 bars same direction
* Probability of 6 bars same direction < 50
* 5 bars same direction is start of series
BITCOINDICATOR StrategyStrategy for BITCOINDICATOR for your own backtesting purposes.
The trade locations mirror the price label values generated by BITCOINDICATOR (You can check by clicking on Strategy Tester > List of Trades). Just like BITCOINDICATOR, this strategy works with all time frames, although higher time frames will result in better average profit per trade.
Inputs:
- Click the gear icon to adjust the backtesting date range inputs.
Properties (gear icon then click properties tab):
- The default initial capital is 0, and the default order size is 1 Contract (1 BTC ) per trade (this gives more weight to the most recent data).
* We recommend keeping the order size in contracts because if you use fiat, the time periods of lower-priced Bitcoin will have a greater impact on the strategy (since those trades would transact more BTC ).
- Pyramiding is the number of trades allowed to be taken in the same direction. The default value is set to 5, although it is rare to see more than 2 trades in the same direction.
* Additional trades in the same direction can be useful for adding on to your position or just for trend confirmation. If you prefer to see every SHORT followed by a LONG and vice-versa, you can change pyramiding to 1.
Side Notes:
- BITCOINDICATOR strategy can also be used for any Altcoin/Stable coin pair (such as ETH/USD). However, you will want to increase the order size from 1 Contract, to suit your Altcoin (For example, at the time of writing: 1 BTC = 47 ETH, so I would trade ETH/USD with an order size of 47 contracts). Of course, you can adjust the order size to the amount that you are actually trading.
- You will notice that the lower the selected time frame, the date range for backtesting becomes more limited. This is because there is a historical bar data limit of 5,000 - 10,000 bars depending on the tier of your TradingView account.
*Bitcoindicator Strategy is part of the Bitcoindicator package.
For detailed information on Bitcoindicator and how to add it to your charts, please visit:
www.bitcoindicator.com
Strategy tested on BTC/USD(Day) from 1/1/2017 - 10/1/2019 :
Hybrid, Zero lag, Adaptive cycle MACD Backtest (Simple) [Loxx]Simple backtest for Hybrid, Zero lag, Adaptive cycle MACD Backtest (Simple) found here:
What this backtest includes:
-Customization of inputs for MACD calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
-Zero-cross entry signal plots
-MACD-Signal cross entry continuations
-Longs and shorts
Happy trading!
HMA (Hull Moving Averge) Backtest (Simple) [Loxx]Simple backtest for HMA (Hull Moving Average) found here:
What this indicator includes:
- Various average modes to fine-tune the signal
- Shift to offset chart (purely visual, has no bearing on actual calculation or backtest)
What this backtest includes:
-Longs and shorts
-Customization of inputs for HMA calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
Happy trading!
EURUSD signal [DinhChienFX Corner] Ver 3.0* Signals are tested successfully for 3.5 years with a steady win rate year on year until now.
Risk: 1%.
* Backtest time: 3.5 years / Premium, varies between currency pairs (Cryto default backtest time is shorter since the market is open both Saturday and Sunday: about 2 years).
The price rule of EURUSD in 20,000 past H1 candles past:
- Upterm (Long): Buy
+ When the price crossing up (Crossover) the Upper line gives 1 point.
- Downterm (Short): Sell
+ When the price crossing down (Crossunder) the Lower line gives 1 point.
- 2 or more points (> = 2), the entry conditions are met
- The entry point for the highest winning rate: when the price adjusts to the Upper / Lower line, the order price is at the closing price of the adjustment candle.
- When the above conditions are met, the Indicator shows a Buy / Sell signal according to the trend.
-----------------------------------
- Maximum risk / reward winning ratio: 1 / 1.05
- Stoploss: Calculated from the entry point + - actual fluctuation with the formula ATR (20) * risk ratio (risk).
- Profit: Calculated from the entry point + - actual fluctuation by the formula ATR (20) * reward ratio (reward).
- Profit: So the product has a stable profit of over 30% / year.
- Should backtest 3 Years (long term), every Year (medium term) and quarterly or 6 months (short term). If each year the success rate is always over 50%, it can be used for real trade.
Ultimate T3 Fibonacci for BTC Scalping. Look at backtest report!Hey Everyone!
I created another script to add to my growing library of strategies and indicators that I use for automated crypto trading! This strategy is for BITCOIN on the 30 minute chart since I designed it to be a scalping strategy. I calculated for trading fees, and use a small amount of capital in the backtest report. But feel free to modify the capital and how much per order to see how it changes the results:)
It is called the "Ultimate T3 Fibonacci Indicator by NHBprod" that computes and displays two T3-based moving averages derived from price data. The t3_function calculates the Tilson T3 indicator by applying a series of exponential moving averages to a combined price metric and then blending these results with specific coefficients derived from an input factor.
The script accepts several user inputs that toggle the use of the T3 filter, select the buy signal method, and set parameters like lengths and volume factors for two variations of the T3 calculation. Two T3 lines, T3 and T32, are computed with different parameters, and their colors change dynamically (green/red for T3 and blue/purple for T32) based on whether the lines are trending upward or downward. Depending on the selected signal method, the script generates buy signals either when T32 crosses over T3 or when the closing price is above T3, and similarly, sell signals are generated on the respective conditions for crossing under or closing below. Finally, the indicator plots the T3 lines on the chart, adds visual buy/sell markers, and sets alert conditions to notify users when the respective trading signals occur.
The user has the ability to tune the parameters using TP/SL, date timerames for analyses, and the actual parameters of the T3 function including the buy/sell signal! Lastly, the user has the option of trading this long, short, or both!
Let me know your thoughts and check out the backtest report!
Hulk Grid Algorithm V2 - The Quant ScienceIt's the latest proprietary grid algorithm developed by our team. This software represents a clearer and more comprehensive modernization of the deprecated Hulk Grid Algorithm. In this new release, we have optimized the source code architecture and investment logic, which we will describe in detail below.
Overview
Hulk Grid Algorithm V2 is designed to optimize returns in sideways market conditions. In this scenario, the algorithm divides purchases with long orders at each level of the grid. Unlike a typical grid algorithm, this version applies an anti-martingale model to mitigate volatility and optimize the average entry price. Starting from the lower level, the purchase quantity is increased at each new subsequent level until reaching the upper level. The initial quantity of the first order is fixed at 0.50% of the initial capital. With each new order, the initial quantity is multiplied by a value equal to the current grid level (where 1 is the lower level and 10 is the upper level).
Example: Let's say we have an initial capital of $10,000. The initial capital for the first order would be $50 * 1 = $50, for the second order $50 * 2 = $100, for the third order $50 * 3 = $150, and so on until reaching the upper level.
All previously opened orders are closed using a percentage-based stop-loss and take-profit, calculated based on the extremes of the grid.
Set Up
As mentioned earlier, the user's goal is to analyze this strategy in markets with a lack of trend, also known as sideways markets. After identifying a price range within which the asset tends to move, the user can choose to create the grid by placing the starting price at the center of the range. This way, they can consider trading the asset, if the backtesting generates a return greater than the Buy & Hold return.
Grid Configuration
To create the grid, it's sufficient to choose the starting price during the launch phase. This level will be the center of the grid from which the upper and lower levels will be calculated. The grid levels are computed using an arithmetic method, adding and subtracting a configurable fixed amount from the user interface (Grid Step $).
Example: Let's imagine choosing 1000 as the starting price and 50 as the Grid Step ($). The upper levels will be 1000, 1050, 1100, 1150, 1200. The lower levels will be 950, 900, 850, 800, and 750.
Markets
This software can be used in all markets: stocks, indices, commodities, cryptocurrencies, ETFs, Forex, etc.
Application
With this backtesting software, is possible to analyze the strategy and search for markets where it can generate better performance than Buy & Hold returns. There are no alerts or automatic investment mechanisms, and currently, the strategy can only be executed manually.
Design
Is possible to modify the grid style and customize colors by accessing the Properties section of the user interface.
SUPPORT RESISTANCE STRATEGY [5MIN TF]A SUPPORT RESISTANCE BREAKOUT STRATEGY for 5 minute Time-Frame , that has the time condition for Indian Markets
The Timing can be changed to fit other markets, scroll down to "TIME CONDITION" to know more.
The commission is also included in the strategy .
The basic idea is when ,
1) Price crosses above Resistance Level ,indicated by Red Line, is a Long condition.
2) Price crosses below Support Level ,indicated by Green Line , is a Short condition.
3) Candle high crosses above ema1, is a part of the Long condition .
4) Candle low crosses below ema1, is a part of the Short condition .
5) Volume Threshold is an added confirmation for long/short positions.
6) Maximum Risk per trade for the intraday trade can be changed .
7) Default qty size is set to 50 contracts , which can be changed under settings → properties → order size.
8) ATR is used for trailing after entry, as mentioned in the inputs below.
// ═════════════════════════//
// ————————> INPUTS <————————— //
// ═════════════════════════//
→ L_Bars ———————————> Length of Resistance / Support Levels.
→ R_Bars ———————————> Length of Resistance / Support Levels.
→ Volume Break ———————> Volume Breakout from range to confirm Long/Short position.
→ Price Cross Ema —————> Added condition as explained above (3) and (4).
→ ATR LONG —————————> ATR stoploss trail for Long positions.
→ ATR SHORT ————————> ATR stoploss trail for Short positions.
→ RISK ————————————> Maximum Risk per trade intraday.
The strategy was back-tested on TCS ,the input values and the results are mentioned under "BACKTEST RESULTS" below.
// ═════════════════════════ //
// ————————> PROPERTIES<——————— //
// ═════════════════════════ //
Default_qty_size ————> 50 contracts , which can be changed under
Settings
↓
Properties
↓
Order size
// ═══════════════════════════════//
// ————————> TIME CONDITION <————————— //
// ═══════════════════════════════//
The time can be changed in the script , Add it → click on ' { } ' → Pine editor→ making it a copy [right top corner} → Edit the line 27.
The Indian Markets open at 9:15am and closes at 3:30pm.
The 'time_cond' specifies the time at which Entries should happen .
"Close All" function closes all the trades at 3pm , at the open of the next candle.
To change the time to close all trades , Go to Pine Editor → Edit the line 92 .
All open trades get closed at 3pm , because some brokers don't allow you to place fresh intraday orders after 3pm .
// ═══════════════════════════════════════════════ //
// ————————> BACKTEST RESULTS ( 100 CLOSED TRADES )<————————— //
// ═══════════════════════════════════════════════ //
INPUTS can be changed for better Back-Test results.
The strategy applied to NSE:TCS ( 5 min Time-Frame and contract size 50) gives us 60% profitability , as shown below
It was tested for a period a 6 months with a Profit Factor of 1.8 ,net Profit of 30,000 Rs profit .
Sharpe Ratio : 0.49
Sortino Ratio : 1.4
The graph has a Linear Curve with Consistent Profits.
The INPUTS are as follows,
1) L_Bars —————————> 4
2) R_Bars —————————> 4
3) Volume Break ————> 5
4) Price Cross Ema ——> 100
5) ATR LONG ——————> 2.4
6) ATR SHORT —————> 2.6
7) RISK —————————> 2000
8) Default qty size ——> 50
NSE:TCS
Save it to favorites.
Apply it to your charts Now !!
Thank You ☺ NSE:TCS
The Ultimate Backtest - Fontiramisu█ OVERVIEW
The Ultimate Backtest allows you to create an infinite number of trading strategies and backtest them easily and quickly.
You can leverage the trading setup you created with the tradingview's real-time alert system.
The tool is constantly being improved to accommodate more in-house indicators in order to imagine more trading strategies.
█ HOW IT WORKS.
The tool is divided into 3 main parts:
1. The indicators:
These are the indicators that you will be able to set up to create your setups.
Example: rsi, exponential moving average, home made resistance/support indicator etc.
We are working to add more and more in-house indicators to multiply the trading strategies.
2. The entry/exit strategy:
The entry/exit trades management is a central point of the strategy.
Here we propose several ways to take profits and in-house optimizations to enter a position.
3. The setup: the combination of indicators
Here it is up to you to create your own recipe.
You combine the different indicators set up above to make a real strategy.
Example: RSI Divergence + Location on a support.
Let's look at this in more detail.
Below is a description of all sections
█ 1. THE INDICATORS
TREND: MA (moving average) -->
Set up a moving average from multiple methods (sma, ema, smma...) of the type and length you want.
> A long is taken if the price is above the MA.
> A short is taken if the price comes below the MA.
You can set up a smoothing MA from the existing moving average and use it in the same way.
ENVELOPE: SUPER TREND -->
The supertrend is a trend following indicator. It clearly describes the distinction between downtrends and uptrends with a red or green direction. It is calculated according to the ATR and a factor.
> A long is taken when the direction is green and the price touches the supertrend support line.
> A short is taken when the direction is red and the price touches the supertrend resistance line.
ENVELOPE: BOLLINGER BAND -->
Bollinger bands are used to evaluate the volatility and probable evolution of prices, here we exploit the envelope
> A long is taken if the price crosses the lower band.
> A short is taken if the price crosses the upper band.
CLOUD: ICHIMOKU -->
The Ichimoku cloud aims to identify the direction and reversal points of dominant market trends. It displays support and resistance levels.
> A long is taken when the price enters the green ichimoku cloud.
> A short is taken when the price enters the red ichimoku cloud.
MOMENTUM: MACD ZERO LAG / MACD / RSI -->
RSI (Relative Strength Index) reflects the relative strength of upward movements, compared to downward movements.
MACD (Moving Average Convergence Divergence) is a momentum indicator that follows the trend and shows the correlation between two moving averages of the asset price.
MACD ZERO LAG is calculated in the same way except that the exponential moving averages that make up the calculation do not lag.
> A long is taken on a potential bullish divergence.
> A short is taken on a potential bearish divergence.
For now, with these indicators, we only take a trade based on divergences but we will add overbuy/oversell etc.
MOMENTUM: MA SLOPE -->
This house indicator allows you to use the slope of a moving average as a measure of momentum.
Define the length of the moving average whose slope we will take.
We then take a fast ma of the slope then a slow ma (You define the lengths with the parameters)
The tool foresees a subtraction between the slow and fast ma to have another interpretation of the slope.
This indicator is available and can be viewed freely on my tradingview profile.
> A long is taken when there is a potential bullish divergence on the fast/slow MA or the difference.
> A short is taken when there is a potential bear divergence on the fast/slow MA or the difference.
RESISTANCE: R/S FONTIRAMISU -->
An in-house indicator that shows resistances and supports according to the chosen parameters.
Indicator available and can be viewed freely on my tradingview profile.
> A long is taken when the price arrives on a support.
> A short is taken when the price arrives on a resistance.
-----
MOMENTUM DIVERGENCE -->
Section used to set the divergence detection.
The first field allows you to select which momentum you want to calculate the divergence on.
PIVOT DETECTION -->
Used to calculate top and dip on the chart, it is used with divergences/resistances/enter-exit optimizations....
Default parameters are: Deviation: 2.5, Depth: 10.
█ 2. STRATEGY FOR ENTERING/EXITING TRADES.
STRATEGY: TP/SL -->
Enter/Exit Trade Mode" field: The first field allows you to choose between two modes:
1. TP/SL Mode:
This mode allows you to take entries with take profits that you define afterwards with the TP1 and TP2 parameters .
> The stop loss is calculated automatically by taking the last dip if it is a long and the last top if it is a short.
> You can add a "Stop Loss % Offset" which will increase the size of the stop loss by the % value you set.
> If you activate TP2, the profit taking is split between TP1 and TP2, you can select the percentage of profit taking split between TP1 and TP2 via the "Percent Exit Profit TP1" field.
> The "TPX Multiplier" fields allow you to define the desired Risk Reward, if = 1 then RR = 1/1.
> A Trailing stop option is available, if active then the profit take will be split between TP1 and Trailing stop.
For the moment you can choose between the two MA's set up above to serve as trailing stop:
> In long, if the price goes below the MA then you take the profit (or the loss)
> In short, if the price goes above the MA then you take the profit (or the loss)
2. ONLY BUY/SELL:
Here the take profits are not taken into account, we only have an alternation between the long and the shorts.
The trailing stop applies to this mode and can be interesting depending on the use.
STRATEGY: SETUP OPTIMIZER (FP) -->
Here we have 3 home made optimization tools to take more relevant trades.
1. FAVORABLE ENTRY FROM PIVOT.
Here the tool will favor entries with interesting locations depending on dips and tops before.
A red cross with "FP" will appear on the chart each time a trade does not meet this condition.
2.STOP LOSS MAX (SL).
Will only take trades where the stop loss is maximum at X%.
A red cross with "%SL" will appear on the chart each time a trade does not meet this condition.
3. MOVE ALREADY TRADED.
Will not take several trades in the same move.
This can avoid cascading losing trades on some setups.
A red cross with "MT" will appear on the chart each time a trade does not meet this condition.
█ 3. THE SETUP: THE COMBINATION OF INDICATORS
Here, let your creativity speak.
You are free to assemble the indicators in the following way:
The conditions defined inside a group (group1/group2/group3) are combined to each other via an OR operator .
Example, if "cond01 = Momentum DIv" and "cond02 = Res/Sup Location", then trades will be triggered if one of the two conditions is met.
The conditions defined between several groups are multiplied via the AND operator .
Example, if "cond01 = Momentum DIv" and "cond12 = Res/Sup Location", then trades are taken if both conditions are met at the same time.
ALL CONDITIONS:
> NONE
No conditions selected.
> Momentum Div
Triggers when a potential divergence occurs on the selected momentum (in the divergence section).
> Momentum Div UT Sup
Triggers when a potential divergence occurs on the selected momentum (in the divergence section) in the upper timeframe.
The upper timeframe of the momentum is calculated directly in the code by multiplying the set parameters by 4 (fastlenght/slowlenght...).
> Multi MA
It is set in the "Trend: MA" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Smooting MA
Is set in the "Trend: MA" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Super Trend Env
Is set in the "ENVELOPE: SUPER TREND" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> BB Env
It is set in the "ENVELOPE: BOLLINGER BAND" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Ichimoku Cloud
Is set in the "CLOUD: ICHIMOKU" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Res/Sup Location
Is set in the "RESISTANCE: R/S" section and is triggered by the conditions mentioned in the "INDICATORS" section.
Aroon Backtest (Simple) [Loxx]Simple backtest for Bears Bulls Impulse found here:
What this backtest includes:
-Customization of inputs for Aroon calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
-Long and short signal cross entries
-Continuation long and shorts entries calculated by lagged same-signal cross-ups and cross-downs
Happy trading!
Bears Bulls Impulse Backtest (Simple) [Loxx]Simple backtest for Bears Bulls Impulse found here:
What this backtest includes:
-Customization of inputs for MACD calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
-Signal-cross entry signals
-Longs and shorts
Happy trading!
Fisher Transform, MT4 "Fisher_no_repainting" Backtest (Simple)Simple backtest for Fisher Transform, clone of MT4 "Fisher_no_repainting" found here:
What this backtest includes:
-Customization of inputs for Fisher Transform calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
-Zero-cross entry signal plots
-Longs and shorts
Happy trading!
McGinley Dynamic Backtest (Simple) [Loxx]Simple backtest for McGinley Dynamic found here:
What this backtest includes:
-Longs and shorts
-Customization of inputs for McGinley Dynamic calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
Happy trading!
VIDYA (Variable Index Dynamic Average) Backtest (Simple) [Loxx]Simple backtest for VIDYA (Variable Index Dynamic Average) found here:
What this backtest includes:
-Longs and shorts
-Customization of inputs for VIDYA calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
Happy trading!






















