[strategy][1H] SPY slow stochastics
SPY slow stochastics
Overview
The "SPY Auto RSI Stochastics" strategy is designed to leverage a combination of Relative Strength Index (RSI) and Stochastic indicators to identify potential entry and exit points in trading the SPY $SP:SPX.
The technicals:
A simple yet effective strategy for identifying (reversal) trends on SPY (or any asset).
The logic is as follows:
1. Slow stochastics are effective at predicting momentum. They can also be used to effectively identify reversals.
2. A combination of slow and fast RSI (along with an SMA for the fast RSI) can be used to see potential changes in the directional trend of the underlying asset.
3. In order to reduce noise, a band in the middle of RSI values is ignored; think of this as the price converging and potential explosions (sometimes fake) on either side.
4. Outside this noise band, a crossover of fast RSI on slow RSI indicates an upward trend incoming.
5. A crossunder of fast RSI on slow RSI indicates a downward trend incoming.
Strategy Specific Notes -
1. Load this strategy on SPREADEX:SPX on an hourly chart for the best results.
2. This is a generic strategy, use it on anything - index, stocks, etc. You will need to adjust the parameters for the best results.
3. The RSI Upper defines the cutoff for two things -- threshold for entering a long AND exit signal for short. Likewise for RSI Lower.
4. To have alerts on the strategy, add this to your chart, be content with the backtesting results, select "strategy tester", the alert icon, replace the message body with "{{strategy.order.alert_message}}" without the ".
5. In my experience, the strategy won't be immediately profitable upon a signal but it does get there in the backtested results. Intuitively, this makes sense. Reversals take some time to kick in completely.
Inputs
- **slowRSILength**: Length parameter for the slow RSI calculation.
- **fastRSILength**: Length parameter for the fast RSI calculation.
- **smaRSILength**: Length parameter for the Simple Moving Average (SMA) of the fast RSI.
- **RSIUpperThreshold**: Upper threshold for the RSI, used in exit conditions.
- **RSILowerThreshold**: Lower threshold for the RSI, used in exit conditions.
- **RSIUpperDeadzone**: Upper deadzone threshold for the RSI.
- **RSILowerDeadzone**: Lower deadzone threshold for the RSI.
Strategy Logic
- **RSI Calculation**: The script calculates both slow and fast RSI values based on the provided lengths.
- **Entry Condition**: Entry conditions for long and short positions are based on the crossing of fast RSI over slow RSI and SMA RSI, respectively, along with avoidance of RSI deadzones and validation of trade time.
- **Exit Condition**: Exit conditions for both long and short positions are based on crossing RSI thresholds or opposite entry conditions.
Trade Management
- **Position Entry**: Long and short positions are entered based on predefined entry conditions.
- **Position Exit**: Positions are exited based on predefined exit conditions.
- **Alerts**: The script provides alert messages for entry and exit points.
Plotting
- **Slow RSI**: Plots the slow RSI on the chart.
- **SMA RSI**: Plots the Simple Moving Average of fast RSI on the chart.
Example Usage
The defaults work well for SPY on a 1H timeframe.
If you apply this to anything else DAX, EUSTX50, FTSE, CAC (these are what i have); tweak the input parameters.
Plotting
plot(slowRSI, "Slow RSI", color=color.green) //or fastRSI
plot(smaRSI, "SMA RSI", color=color.white)
Conclusion
The "SPY Auto RSI Stochastics" strategy combines RSI and Stochastic indicators to provide potential trade signals for the SPY ETF. Traders can use this strategy with proper risk management and analysis to enhance their trading decisions.
Oscylatory
TTP Intelligent AccumulatorThe intelligent accumulator is a proof of concept strategy. A hybrid between a recurring buy and TA-based entries and exits.
Distribute the amount of equity and add to your position as long as the TA condition is valid.
Use the exit TA condition to define your exit strategy.
Decide between adding only into losing positions to average down or take a riskier approach by allowing to add into a winning position as well.
Take full profit or distribute your exit into multiple take profit exists of the same size.
You can also decide if you allow your exit conditions to close your position in a loss or require a minimum take profit %.
The strategy includes a default built-in TA conditions just for showcasing the idea but the final intent of this script is to delegate the TA entries and exists to external sources.
The internal conditions use RSI length 7 crossing below the BB with std 1 for entries and above for exits.
To control the number of orders use the properties from settings:
- adjust the pyramiding
- adjust the percentage of equity
- make sure that pyramiding * % equity equals 100 to prevent over use of equity (unless using leverage)
The script is designed as an alternative to daily or weekly recurring buys but depending on the accuracy of your TA conditions it might prove profitable also in lower timeframes.
The reason the script is named Intelligent is because recurring buy is most commonly used without any decision making: buy no matter what with certain frequency. This strategy seeks to still perform recurring buys but filtering out some of the potential bad entries that can delay unnecessarily seeing the position in profits. The second reason is also securing an exit strategy from the beginning which no recurring buy option offers out-of-the-box.
CULTURATRADING STRATEGYThe "CULTURATRADING STRATEGY" is designed to capitalize on market trends by incorporating a combination of technical indicators that signal potential entry and exit points for trades on various assets. This strategy is not just a mere collection of indicators but a well-thought-out approach that synergizes different market signals to optimize trade decisions.
The script uses the MACD (Moving Average Convergence Divergence) to gauge momentum and trend direction, with the slope of the MACD line serving as a trigger for market entries. A positive slope suggests an upward trend and potential long entry, while a negative slope indicates a downward trend and a possible short entry.
In tandem with the MACD, the ADX (Average Directional Index) is utilized to measure the strength of the trend. An ADX value above 25 signifies a strong trend, which, when aligned with MACD signals, can validate the trade entries.
The RSI (Relative Strength Index) is another critical component, identifying overbought and oversold conditions. This strategy looks for crossovers above and below key levels (60 for overbought, 40 for oversold) to determine high-probability turning points in the market. The inclusion of a 20-period SMA (Simple Moving Average) of the RSI adds a layer to filter the signals further, allowing for the refinement of entry and exit points.
The script employs a dynamic stop-loss system, set at the lowest low of the past 20 bars for long positions and the highest high for shorts, to manage risk effectively. The strategy is configured for a $10,000 account, risking a reasonable portion of capital per trade, with a pyramid effect to allow for diversified entries from various signals. The backtesting results are based on a 5% capital allocation per trade and include a 0.08% commission. To ensure accurate backtesting, the script includes an additional percentage to account for slippage within the commission.
To provide a comprehensive understanding, the script also outputs a "volatility histogram" based on the ADX, offering insights into market volatility and helping to time the trades better.
This strategy has been backtested across different timeframes and assets, showing resilience in various market conditions. It is essential to check the 'recalculate after order filled' option due to the dynamic nature of stop-loss orders.
This script is paired with the "CULTURATRADING INDICATOR" for enhanced signal clarity, providing a holistic view of the strategy's performance. Please note that this script is for educational purposes and should not be taken as financial advice.
The "CULTURATRADING INDICATOR" is an essential tool that works in conjunction with the "CULTURATRADING STRATEGY" to provide traders with a clear visualization of the market's conditions. It enhances the strategy by offering visual cues that help interpret complex market data more intuitively.
The indicator displays key RSI levels, such as 60 for overbought conditions and 40 for oversold conditions, with a mid-level at 55 to indicate when a trend may be weakening. The colors on the RSI line change to reflect these conditions, offering a quick reference for traders: a blue color signifies an RSI above 60, indicating overbought conditions; a red color shows an RSI below 40, pointing to oversold conditions; and white represents values in between, suggesting a neutral state.
Moreover, the volatility histogram, which is part of the "CULTURATRADING INDICATOR," provides a visual representation of market volatility. The histogram changes colors based on the ADX value and the slope of the MACD line. For instance, a green histogram suggests a positive MACD slope during a strong trend, indicating potential bullish momentum. Conversely, a red histogram implies a negative MACD slope during strong trends, hinting at bearish momentum. A grey color might be used to represent periods when the trend is weak or the market is less volatile.
Together, these visual elements of the "CULTURATRADING INDICATOR" complement the strategy's signals, providing traders with an at-a-glance summary of the current market scenario, which can be particularly useful when managing multiple trades or assessing opportunities quickly.
Please remember, this script and its associated indicator are designed to serve as educational tools to assist in understanding market dynamics and are not intended as financial advice. Always conduct your own research and consider consulting a financial advisor for personalized guidance.
Bollinger and Stochastic with Trailing Stop - D.M.P.This trading strategy combines Bollinger Bands and the Stochastic indicator to identify entry opportunities in oversold and overbought conditions in the market. The aim is to capitalize on price rebounds from the extremes defined by the Bollinger Bands, with the confirmation of the Stochastic to maximize the probability of success of the operations.
Indicators Used
- Bollinger Bands Used to measure volatility and define oversold and overbought levels. When the price touches or breaks through the lower band, it indicates a possible oversold condition. Similarly, when it touches or breaks through the upper band, it indicates a possible overbought condition.
- Stochastic: A momentum oscillator that compares the closing price of an asset with its price range over a certain period. Values below 20 indicate oversold, while values above 80 indicate overbought.
Strategy Logic
- Long Entry (Buy): A purchase operation is executed when the price closes below the lower Bollinger band (indicating oversold) and the Stochastic is also in the oversold zone.
- Short Entry (Sell): A sell operation is executed when the price closes above the upper Bollinger band (indicating overbought) and the Stochastic is in the overbought zone.
PresentTrend RMI Synergy - Strategy [presentTrading] █ Introduction and How it is Different
The "PresentTrend RMI Synergy Strategy" is the combined power of the Relative Momentum Index (RMI) and a custom presentTrend indicator. This strategy introduces a multifaceted approach, integrating momentum analysis with trend direction to offer traders a more nuanced and responsive trading mechanism.
BTCUSD 6h L/S Performance
Local
█ Strategy, How It Works: Detailed Explanation
The "PresentTrend RMI Synergy Strategy" intricately combines the Relative Momentum Index (RMI) and a custom SuperTrend indicator to create a powerful tool for traders.
🔶 Relative Momentum Index (RMI)
The RMI is a variation of the Relative Strength Index (RSI), but instead of using price closes against itself, it measures the momentum of up and down movements in price relative to previous prices over a given period. The RMI for a period length `N` is calculated as follows:
RMI = 100 - 100/ (1 + U/D)
where:
- `U` is the average upward price change over `N` periods,
- `D` is the average downward price change over `N` periods.
The RMI oscillates between 0 and 100, with higher values indicating stronger upward momentum and lower values suggesting stronger downward momentum.
RMI = 21
RMI = 42
For more information - RMI Trend Sync - Strategy :
🔶 presentTrend Indicator
The presentTrend indicator combines the Average True Range (ATR) with a moving average to determine trend direction and dynamic support or resistance levels. The presentTrend for a period length `M` and a multiplier `F` is defined as:
- Upper Band: MA + (ATR x F)
- Lower Band: MA - (ATR x F)
where:
- `MA` is the moving average of the close price over `M` periods,
- `ATR` is the Average True Range over the same period,
- `F` is the multiplier to adjust the sensitivity.
The trend direction switches when the price crosses the presentTrend bands, signaling potential entry or exit points.
presentTrend length = 3
presentTrend length = 10
For more information - PresentTrend - Strategy :
🔶 Strategy Logic
Entry Conditions:
- Long Entry: Triggered when the RMI exceeds a threshold, say 60, indicating a strong bullish momentum, and when the price is above the presentTrend, confirming an uptrend.
- Short Entry: Occurs when the RMI drops below a threshold, say 40, showing strong bearish momentum, and the price is below the present trend, indicating a downtrend.
Exit Conditions with Dynamic Trailing Stop:
- Long Exit: Initiated when the price crosses below the lower presentTrend band or when the RMI falls back towards a neutral level, suggesting a weakening of the bullish momentum.
- Short Exit: Executed when the price crosses above the upper presentTrend band or when the RMI rises towards a neutral level, indicating a reduction in bearish momentum.
Equations for Dynamic Trailing Stop:
- For Long Positions: The exit price is set at the lower SuperTrend band once the entry condition is met.
- For Short Positions: The exit price is determined by the upper SuperTrend band post-entry.
These dynamic trailing stops adjust as the market moves, providing a method to lock in profits while allowing room for the position to grow.
This strategy's strength lies in its dual analysis approach, leveraging RMI for momentum insights and presentTrend for trend direction and dynamic stops. This combination offers traders a robust framework to navigate various market conditions, aiming to capture trends early and exit positions strategically to maximize gains and minimize losses.
█ Trade Direction
The strategy provides flexibility in trade direction selection, offering "Long," "Short," or "Both" options to cater to different market conditions and trader preferences. This adaptability ensures that traders can align the strategy with their market outlook, risk tolerance, and trading goals.
█ Usage
To utilize the "PresentTrend RMI Synergy Strategy," traders should input their preferred settings in the Pine Script™ and apply the strategy to their charts. Monitoring RMI for momentum shifts and adjusting positions based on SuperTrend signals can optimize entry and exit points, enhancing potential returns while managing risk.
█ Default Settings
1. RMI Length: 21
The 21-period RMI length strikes a balance between capturing momentum and filtering out market noise, offering a medium-term outlook on market trends.
2. Super Trend Length: 7
A SuperTrend length of 7 periods is chosen for its responsiveness to price movements, providing a dynamic framework for trend identification without excessive sensitivity.
3. Super Trend Multiplier: 4.0
The multiplier of 4.0 for the SuperTrend indicator widens the trend bands, focusing on significant market moves and reducing the impact of minor fluctuations.
---
The "PresentTrend RMI Synergy Strategy" represents a significant step forward in trading strategy development, blending momentum and trend analysis in a unique way. By providing a detailed framework for understanding market dynamics, this strategy empowers traders to make more informed decisions.
EMA Crossover Strategy with RSI Filter BIGTIME 5mThis script essentially creates a trading strategy that goes long when there is an EMA crossover, but only if the RSI is below a certain overbought level. It goes short when there is an EMA crossunder, but only if the RSI is above a certain oversold level. The moving averages are plotted on the chart for visual reference.
SCALPING 5m
Pairs: BIGTIME/USDT--- API3/USDT---BAKE/USDT--- ZIL/USDT
BitBell - EMA PullBack RSI EXO
🔵 Introduction
Version 1.1
This is a Pine 5 trend following strategy. It has a four strategy with several alerts and signals. The design intent is to produce a commercial grade signal generator that can be adapted to any symbol in cryptocurrency and only 1H Chart. 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 brokerages. The strategy can be run in three different modes: long, short and bidirectional.
As a trend following strategy, the behavior of the script is to buy on strength and sell on weakness. As such the trade orders maintain its directional bias according to price pressure. What you will see on the chart is long positions on the left side of the mountain and short on the right. Long and short positions are not intermingled as long as there exists a detectable trend. This is extremely beneficial feature in long running bull or bear markets. The script uses multiple setups to avoid the situation where you got in on the trend, took a small profit but couldn’t get back in because the logic is waiting for a pullback or some other intricate condition.
Deep draw-downs are a characteristic of trend following systems and this system is no different. However, this script makes use of the TradingView pyramid feature with three NPUs to find better place and even you can change drop percentage in settings for another trigger, accessible from the properties tab.
When trend market break it will stop the trade and usually it takes 2-4 percent loss but don't worry it has prefect money management and you can use it for Futures market and even Spot market.
🔵 Design
This script uses twelve indicators on two time frames. The chart (primary) interval and one higher time frame which is based on the primary. The higher time frame identifies the trend for which the primary will trade. I’ve tried to keep the higher time frame around five times greater than the primary. 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 alligator itself is used to identify the trend main body.
The entire script is around 740 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 over a year and have tested it on various instruments stock crypto. It performs well on higher liquidity markets that have at least a year of historical data. Though it can be configured to work on any interval between 15 minutes and 4 hour, trend trading is generally a longer term paradigm. For day trading the 10 to 15 minute interval will allow you to catch momentum breakouts. For intraweek trades 30 minutes to 1 hour should give you a trade every other a day.
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 12 inputs grouped into long or short sections. Inputs are available for the usual minimum profit and stop-loss as well as trade, 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.
it has no repaint i guaranty this, and you can have 10 days free with comment and check it by yourself
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_close()” do not execute on the same bar called. The study, on the other hand, has no such limitation since there are no position routines. However, alerts that are subsequently fired off when triggered in the study are dispatched from the TradingView servers one bar later from the study plot. Therefore the alert you actually receive on your cell phone matches the strategy plot but is one bar later than the study plot.
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
It sends long and short signals with pyramid orders of up to 3, meaning that the strategy can trigger up to 3 orders in the same direction. Good risk and money management.
It's important to note that the strategy combines 2 systems working together (Long and LongX). Let’s describe the specific features of this strategy.
🔵 If Findes Supports And Ressitances And Trend Lines As Best As It Can, And You Can See:
🟢 Frist Simple Long Condition = It Look At The Trend Wait For RSI Cross 30 Number Then Ckeck Risk To Reward, check something else such as divergence:
🟢 Another Long Example:
🔴 Frist Simple Short Condition = It Look At The Trend Wait For RSI Cross 70 Number Then Ckeck Risk To Reward, check something else such as divergence:
🔴 Another Short Example:
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 12 inputs, There are four options must to be configured: Choose Target, side, Choose Settings, Money Management,and settings that apply to both. The following steps address these four main options only.
Money Management System For Leverage 10:
Bot Finds Last Lower Low And Calculate Distance From Entry Price, Then Cross It To Initial Capitan And Cross Leverage =>
Position_Size = (((1.64) * (initial Capital)) * (leverage))
And Check Dominances Too For Getting Best Money Management Result
🔵 Settings
* Side, You Can Set Long Or Short Or Both.
* Choose Target, You Can Set One Target Or All Targets.
* Money Management, You Can ON Or OFF It, With OFF You Can USE It For SPOT Trades.
* Choose Settings, In This Field You Can Set Mathematical Optimization, Ddepends On Which Pair You USE.
* Clear With Daily PullBack?, With This Check Box You Can Clear Signals With Daily PullBack.
* Long X, You Can Set Long Leverage.
* Short X, You Can Set Short Leverage.
* Second Order X, You Can Set Pyramiding Leverage.
* Target Long, You Can Set Percent For Long Target.
* Target Short, You Can Set Percent For Short Target.
* Short Martin Percent, You Can Set Short Martingale Percent.
* Long Martin Percent, You Can Set Long Martingale Percent.
🟡 Pyraming 3
🟡 Commission Is 0.065 %
🟡 Slippage Is 10 ticks
🔴Only Use For 1 Hour Chart
🔴 CONCLUSION
We believe that success lies in the association of the user with the indicator, opposed to many traders who have the perspective that the indicator itself can make them become profitable. The reality is much more complicated than that.
The aim is to provide an indicator comprehensive, customizable, and intuitive enough that any trader can be led to understand this truth and develop an actionable perspective of technical indicators as support tools for decision making.
🔴 RISK DISCLAIMER
Trading is risky & most day traders lose money. All content, tools, scripts, articles, & education provided by BitBell are purely for informational & educational purposes only. Past performance does not guarantee future results.
CCI based support and resistance strategy
WARNING:
Commissions and slippage has not been considered! Don’t take it easy adding commissions and slippage could turns a fake-profitable strategy to a real disaster.
We consider account size as 10k and we enter 1000 for each trade.
Less than 100 trades is too small sample community and it’s not reliable, Also the performance of the past do not guarantee future performance. This result was handpicked by author and will differ by other timeframes, instruments and settings.
*PLEASE SHARE YOUR SETTINGS THAT WORK WITH THE COMMUNITY.
Introduction:
The CCI-based dynamic support and resistance is a "Bands and Channels" kind of indicator consisting an upper and lower band. This is a strategy which uses CCI-based (Made by me) indicator to execute trades.
SL and TP are calculated based on max ATR during last selected time period. You can edit strategy settings using "Ksl", "Ktp" and the other button for time period. “KSL” and “KTP” are 2.5 and 5 by default.
Bands are calculated regarding CCI previous high and low pivot. CCI length, right pivot length and left pivot length are 50.
A dynamic support and resistance has been calculated using last upper-cci minus a buffer and last lower-cci plus the buffer. The buffer is 10.
If "Trend matter?" button is on you can detect trend by color of the upper and lower line. Green is bullish and red is bearish! "Trend matter?" is on.
The "show mid?" button makes mid line visible, which is average of upper and lower lines, visible. The button is not active by default.
Reaction to the support could be a buy signal while a reaction to the resistance could interpreted as a sell signal.
How this strategy work?
Donald Lambert, a technical analyst, created the CCI, or Commodity Channel Index, which he first published in 1980. CCI is calculated regarding CCI can be used both as trend-detector or an oscillator. As an oscillator most traders believe in static predefined levels. Overbought and oversold candles which are clear in the chart could be used as sell and buy signals.
During my trading career I’ve noticed that there might be some reversal points for the CCI. I believe CCI could have to potential to reverse more from lately reversal point. Of course, just like other trading strategies we are talking about probabilities. We do not expect a win trade each time.
On price chart
Now this the question! What price should the instrument reach that CCI turns to be equal to our reversing aim for CCI? Imagine we have found last important bearish reversal of CCI in 200. Now, if we need the CCI to be 200 what price should we wait for?
How to calculate?
This is the CCI formula:
CCI = (Typical Price - SMA of TP) / (0.015 x Mean Deviation)
Where, Typical Price (TP) = (High + Low + Close)/3
For probable reversing points, high and low pivots of 50 bars have been used.
So we do have an Upper CCI and a Lower CCI. They are valid until the next pivot is available.
By relocating factors in CCI formula you can reach the “Typical Price”.
“
Typical Price = CCI (0.015 * Mean Deviation) + SMA of TP
So we could have a Support or Resistance by replacing CCI with Upper and Lower CCI.
A buy signal is valid if the trend is bullish (or “trend matter” is off) and lowest low of last 2 candles is lower than support and close is greater than both support and open.
A Sell signal is produced in opposite situation.
There are 2+1 options for trend!
Trend matter box is on by default, which means we’ll just open trades in direction of the trend. It’s available to turn it off.
Other 2 options are cross and slope. Cross calculated by comparing fast SMA and slow SMA. The slope one differentiate slow SMA to last “n” one.
Considering last day and today highest ATR as the ATR to calculating SL and TP is our unique technique.
Monthly Performance Table by Dr. MauryaWhat is this ?
This Strategy script is not aim to produce strategy results but It aim to produce monthly PnL performance Calendar table which is useful for TradingView community to generate a monthly performance table for Own strategy.
So make sure to read the disclaimer below.
Why it is required to publish?:
I am not satisfied with the monthly performance available on TV community script. Sometimes it is very lengthy in code and sometimes it showing the wrong PNL for current month.
So I have decided to develop new Monthly performance or return in value as well as in percentage with highly flexible to adjust row automatically.
Features :
Accuracy increased for current month PnL.
There are 14 columns and automatically adjusted rows according to available trade years/month.
First Column reflect the YEAR, from second column to 13 column reflect the month and 14 column reflect the yearly PnL.
In tabulated data reflects the monthly PnL (value and (%)) in month column and Yearly PnL (value and (%)) in Yearly column.
Various color input also added to change the table look like background color, text color, heading text color, border color.
In tabulated data, background color turn green for profit and red for loss.
Copy from line 54 to last line as it is in your strategy script.
Credit: This code is modified and top up of the open-source code originally written by QuantNomad. Thanks for their contribution towards to give base and lead to other developers. I have changed the way of determining past PnL to array form and keep separated current month and year PnL from array. Which avoid the false pnl in current month.
Strategy description:
As in first line I said This strategy is aim to provide monthly performance table not focused on the strategy. But it is necessary to explain strategy which I have used here. Strategy is simply based on ADX available on TV community script. Long entry is based on when the difference between DIPlus and ADX is reached on certain value (Set value in Long difference in Input Tab) while Short entry is based on when the difference between DIMinus and ADX is reached on certain value (Set value in Short difference in Input Tab).
Default Strategy Properties used on chart(Important)
This script backtest is done on 1 hour timeframe of NSE:Reliance Inds Future cahrt, using the following backtesting properties:
Balance (default): 500 000 (default base currency)
Order Size: 1 contract
Comission: 20 INR per Order
Slippage: 5 tick
Default setting in Input tab
Len (ADX length) : 14
Th (ADX Threshhold): 20
Long Difference (DIPlus - ADX) = 5
Short Difference (DIMinus - ADX) = 5
We use these properties to ensure a realistic preview of the backtesting system, do note that default properties can be different for various reasons described below:
Order Size: 1 contract by default, this is to allow the strategy to run properly on most instruments such as futures.
Comission: Comission can vary depending on the market and instrument, there is no default value that might return realistic results.
We strongly recommend all users to ensure they adjust the Properties within the script settings to be in line with their accounts & trading platforms of choice to ensure results from the strategies built are realistic.
Disclaimer:
This script not provide indicative of any future results.
This script don’t provide any financial advice.
This strategy is only for the readymade snippet code for monthly PnL performance calender table for any own strategy.
LuxAlgo - Backtester (OSC)The OSC Backtester is an innovative strategy script that allows users to create a wide variety of strategies using various unique oscillators.
By utilizing our 'Step' and 'Match' algorithms, users can create custom and complex strategy entries from each of the supported oscillators and included conditions, as well as any external sources, allowing users to create entries from a sequence of conditions and/or multiple matching conditions.
We included a complete alert system that will send a notification for each action taken by the strategy and we also allow users to set custom messages for each action taken by a strategy.
🔶 Features
🔹 Step & Match Algorithm
More complex entry rules can be created by using multiple conditions together, this is done thanks to the Step dropdown setting on the right of each condition.
The Step setting is directly related to the Step & Match algorithm and works in two ways:
When two or more conditions have the same step number, both conditions are evaluated. Used to test matching conditions.
When two or more conditions have different step numbers, each conditions will be evaluated in order, testing for the first step and switching to the next step once the previous one is true. When the final step is true the strategy will open a market order. Used to create sequence of conditions.
This operation is complementary, as you can create a sequence of conditions with one step consisting of two or more matching conditions as long as they have the same step number.
🔹 Fully Customizable Entries From Various Oscillators And Conditions
We allow the users to set entries using our unique HyperWave, Smart Money Flow, and their derived conditions as entries.
The Hyper Wave is a normalized adaptive oscillator aiming to reflect price trends without returning a high amount of noise.
The Smart Money Flow aims to detect trends based on market activity, by doing a comparative analysis between current volume and historical volume. A Smart Money Flow above 50 suggest market participants are bullish, else bearish. Derived from this oscillator we have Overflow indications, this indicator detects when market is overbought or oversold based on participants activity.
Other entries include proprietary reversal signals, real-time divergence detection, oscillator confluence (indicating how aligned each oscillator is), as well as entries using external sources.
🔹 Complete Alert System
Users can get alerted for any action executed by a strategy, from opening positions to closing them.
The message field in the Alert Messages setting section allows for the strategy to send a custom alert message depending on the action taken by the strategy, if no messages are set the strategy will send default messages.
🔶 Usage
Users can create a wide variety of strategies from this script, whether they are trend-following or contrarian traders.
Let's see a contrarian (revesal-based) strategy example using the following entry conditions:
Long: Hyperwave bullish divergence and oversold Hyperwave (lower than 20).
Short: Hyperwave bearish divergence and overbought Hyperwave (greater than 20).
We can also introduce take-profit and stop-loss exit conditions based on external indicators, allowing more control over exits in our strategy. For example:
Long: Hyperwave crossing over 50 while money flow is bearish.
Short: Hyperwave crossing under 50 while money flow is bullish.
Exit Long on a profit (long exit tp): Hyperwave crossing 80.
Exit Short on a profit (short exit tp): Hyperwave crossing 20.
While this strategy script can be used as a standalone, we recommend using other indicators creatively to assist with entries and exits as well as TP/SLs.
Our Step & Match algorithm can magnify interoperability, allowing for way more complete strategies through complex conditions, let's demonstrate this using the following entries:
Long: Any bullish reversal occurring after the price crosses over the lowest upper reversal zone of the Signals & Overlays™.
Short: Any bearish reversal occurring after the price crosses under the highest lower reversal zone of the Signals & Overlays™.
Long TP/SL: 5 ATR's away from the entry price.
Short TP/SL: 5 ATR's away from the entry price.
🔶 Strategy Properties (Important)
This script backtest is done on daily EURGBP, using the following backtesting properties:
Balance (default): 10 000 (default base currency)
Order Size: 10% of the equity
Comission: 3.4 pips (average spread for EURGBP)
Slippage: 3 tick
Stop Loss: 0.02 points away from entry price
We use these properties to ensure a realistic preview of the backtesting system, do note that default properties can be different for various reasons described below:
Order Size: 1 contract by default, this is to allow the strategy to run properly on most instruments such as futures.
Comission: Comission can vary depending on the market and instrument, there is no default value that might return realistic results.
We strongly recommend all users to ensure they adjust the Properties within the script settings to be in line with their accounts & trading platforms of choice to ensure results from the strategies built are realistic.
🔶 How To Access
You can see the Author's Instructions below to learn how to get access.
RSI & Backed-Weighted MA StrategyRSI & MA Strategy :
INTRODUCTION :
This strategy is based on two well-known indicators that work best together: the Relative Strength Index (RSI) and the Moving Average (MA). We're going to use the RSI as a trend-follower indicator, rather than a reversal indicator as most are used to. To the signals sent by the RSI, we'll add a condition on the chart's MA, filtering out irrelevant signals and considerably increasing our winning rate. This is a medium/long-term strategy. There's also a money management method enabling us to reinvest part of the profits or reduce the size of orders in the event of substantial losses.
RSI :
The RSI is one of the best-known and most widely used indicators in trading. Its purpose is to warn traders when an asset is overbought or oversold. It was designed to send reversal signals, but we're going to use it as a trend indicator by increasing its length to 20. The RSI formula is as follows :
RSI (n) = 100 - (100 / (1 + (H (n)/L (n))))
With n the length of the RSI, H(n) the average of days closing above the open and L(n) the average of days closing below the open.
MA :
The Moving Average is also widely used in technical analysis, to smooth out variations in an asset. The SMA formula is as follows :
SMA (n) = (P1 + P2 + ... + Pn) / n
where n is the length of the MA.
However, an SMA does not weight any of its terms, which means that the price 10 days ago has the same importance as the price 2 days ago or today's price... That's why in this strategy we use a RWMA, i.e. a back-weighted moving average. It weights old prices more heavily than new ones. This will enable us to limit the impact of short-term variations and focus on the trend that was dominating. The RWMA used weights :
The 4 most recent terms by : 100 / (4+(n-4)*1.30)
The other oldest terms by : weight_4_first_term*1.30
So the older terms are weighted 1.30 more than the more recent ones. The moving average thus traces a trend that accentuates past values and limits the noise of short-term variations.
PARAMETERS :
RSI Length : Lenght of RSI. Default is 20.
MA Type : Choice between a SMA or a RWMA which permits to minimize the impact of short term reversal. Default is RWMA.
MA Length : Length of the selected MA. Default is 19.
RSI Long Signal : Minimum value of RSI to send a LONG signal. Default is 60.
RSI Short signal : Maximum value of RSI to send a SHORT signal. Default is 40.
ROC MA Long Signal : Maximum value of Rate of Change MA to send a LONG signal. Default is 0.
ROC MA Short signal : Minimum value of Rate of Change MA to send a SHORT signal. Default is 0.
TP activation in multiple of ATR : Threshold value to trigger trailing stop Take Profit. This threshold is calculated as multiple of the ATR (Average True Range). Default value is 5 meaning that to trigger the trailing TP the price need to move 5*ATR in the right direction.
Trailing TP in percentage : Percentage value of trailing Take Profit. This Trailing TP follows the profit if it increases, remaining selected percentage below it, but stops if the profit decreases. Default is 3%.
Fixed Ratio : This is the amount of gain or loss at which the order quantity is changed. Default is 400, which means that for each $400 gain or loss, the order size is increased or decreased by a user-selected amount.
Increasing Order Amount : This is the amount to be added to or subtracted from orders when the fixed ratio is reached. The default is $200, which means that for every $400 gain, $200 is reinvested in the strategy. On the other hand, for every $400 loss, the order size is reduced by $200.
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Important : A bot has been used to test the different parameters and determine which ones maximize return while limiting drawdown. This strategy is the most optimal on BITSTAMP:ETHUSD with a timeframe set to 6h. Parameters are set as follows :
MA type: RWMA
MA Length: 19
RSI Long Signal: >60
RSI Short Signal : <40
ROC MA Long Signal : <0
ROC MA Short Signal : >0
TP Activation in multiple ATR : 5
Trailing TP in percentage : 3
ENTER RULES :
The principle is very simple:
If the asset is overbought after a bear market, we are LONG.
If the asset is oversold after a bull market, we are SHORT.
We have defined a bear market as follows : Rate of Change (20) RWMA < 0
We have defined a bull market as follows : Rate of Change (20) RWMA > 0
The Rate of Change is calculated using this formula : (RWMA/RWMA(20) - 1)*100
Overbought is defined as follows : RSI > 60
Oversold is defined as follows : RSI < 40
LONG CONDITION :
RSI > 60 and (RWMA/RWMA(20) - 1)*100 < -1
SHORT CONDITION :
RSI < 40 and (RWMA/RWMA(20) - 1)*100 > 1
EXIT RULES FOR WINNING TRADE :
We have a trailing TP allowing us to exit once the price has reached the "TP Activation in multiple ATR" parameter, i.e. 5*ATR by default in the profit direction. TP trailing is triggered at this point, not limiting our gains, and securing our profits at 3% below this trigger threshold.
Remember that the True Range is : maximum(H-L, H-C(1), C-L(1))
with C : Close, H : High, L : Low
The Average True Range is therefore the average of these TRs over a length defined by default in the strategy, i.e. 20.
RISK MANAGEMENT :
This strategy may incur losses. The method for limiting losses is to set a Stop Loss equal to 3*ATR. This means that if the price moves against our position and reaches three times the ATR, we exit with a loss.
Sometimes the ATR can result in a SL set below 10% of the trade value, which is not acceptable. In this case, we set the SL at 10%, limiting losses to a maximum of 10%.
MONEY MANAGEMENT :
The fixed ratio method was used to manage our gains and losses. For each gain of an amount equal to the value of the fixed ratio, we increase the order size by a value defined by the user in the "Increasing order amount" parameter. Similarly, each time we lose an amount equal to the value of the fixed ratio, we decrease the order size by the same user-defined value. This strategy increases both performance and drawdown.
Enjoy the strategy and don't forget to take the trade :)
EUR/USD 45 MIN Strategy - FinexBOTThis strategy uses three indicators:
RSI (Relative Strength Index) - It indicates if a stock is potentially overbought or oversold.
CCI (Commodity Channel Index) - It measures the current price level relative to an average price level over a certain period of time.
Williams %R - It is a momentum indicator that shows whether a stock is at the high or low end of its trading range.
Long (Buy) Trades Open:
When all three indicators suggest that the stock is oversold (RSI is below 25, CCI is below -130, and Williams %R is below -85), the strategy will open a buy position, assuming there is no current open trade.
Short (Sell) Trades Open:
When all three indicators suggest the stock is overbought (RSI is above 75, CCI is above 130, and Williams %R is above -15), the strategy will open a sell position, assuming there is no current open trade.
SL (Stop Loss) and TP (Take Profit):
SL (Stop Loss) is 0.45%.
TP (Take Profit) is 1.2%.
The strategy automatically sets these exit points as a percentage of the entry price for both long and short positions to manage risks and secure profits. You can easily adopt these inputs according to your strategy. However, default settings are recommended.
Adaptive SMI Ergodic StrategyThe Adaptive SMI Ergodic Strategy aims to capture the momentum and direction of a financial asset by leveraging the Stochastic Momentum Index Indicator (SMI) in an ergodic form. The strategy uses two lengths for the SMI, a shorter and a longer one, and an Exponential Moving Average (EMA) to serve as the signal line. Additionally, the strategy incorporates customizable overbought and oversold thresholds to improve the probability of successful trade execution.
How It Works:
Long Entry: A long position is taken when the ergodic SMI crosses over the EMA signal line, and both the SMI and EMA are below the oversold threshold.
Short Entry: A short position is initiated when the ergodic SMI crosses under the EMA signal line, and both the SMI and EMA are above the overbought threshold.
The strategy plots the SMI in yellow and the EMA signal line in purple. Horizontal lines indicate the overbought and oversold thresholds, and a colored background helps in visually identifying these zones.
Parameters:
Long Length: The length of the long EMA in SMI calculation.
Short Length: The length of the short EMA in SMI calculation.
Signal Line Length: The length for the EMA serving as the signal line.
Oversold: Customizable threshold for the oversold condition.
Overbought: Customizable threshold for the overbought condition.
Historical Context: The SMI Indicator
The Stochastic Momentum Index (SMI) was developed by William Blau in the early 1990s as an enhancement to traditional stochastic oscillators. The SMI provides a range of values like a traditional stochastic, but it differs in that it calculates the distance of the current close relative to the median of the high/low range, as opposed to the close relative to the low. As a result, the SMI is less erratic and more responsive, offering a clearer picture of market trends.
In recent years, the SMI has been adapted into ergodic forms to facilitate smoother data analysis, reduce lag, and improve trading accuracy. The Adaptive SMI Ergodic Strategy leverages these modern enhancements to offer a more robust, customizable trading strategy that aligns with various market conditions.
SOFEX Strong Volatility Trend Follower + BacktestingWhat is the SOFEX Strong Volatility Trend Follower + Backtesting script?
🔬 Trading Philosophy
This script is trend-following, attempting to avoid choppy markets.
It has been developed for Bitcoin and Ethereum trading, on 1H timeframe.
The strategy does not aim to make a lot of trades, or to always remain in a position and switch from long to short. Many times there is no direction and the market is in "random walk mode", and chasing trades is futile.
Expectations of performance should be realistic.
The script focuses on a balanced take-profit to stop-loss ratio. In the default set-up of the script, that is a 2% : 2% (1:1) ratio. A relatively low stop loss and take profit build onto the idea that positions should be exited promptly. There are many options to edit these values, including enabling trailing take profit and stop loss. Traders can also completely turn off TP and SL levels, and rely on opposing signals to exit and enter new trades.
Extreme scenarios can happen on the cryptocurrency markets, and disabling stop-loss levels completely is not recommended. The position size should be monitored since all of it is at risk with no stop-loss.
⚙️ Logic of the indicator
The Strong Volatility Trend Follower indicator aims at evading ranging market conditions. It does not seek to chase volatile, yet choppy markets. It aims at aggressively following confirmed trends. The indicator works best during strong, volatile trends, however, it has the downside of entering trades at trend tops or bottoms.
This indicator also leverages proprietary adaptive moving averages to identify and follow strong trend volatility effectively. Furthermore, it uses the Average Directional Index, Awesome Oscillator, ATR and a modified version of VWAP, to categorize trends into weak or strong ones. The VWAP indicator is used to identify the monetary (volume) inflow into a given trend, further helping to avoid short-term manipulations. It also helps to distinguish choppy-market volatility with a trending market one.
📟 Parameters Menu
The script has a comprehensive parameter menu:
Preset Selection : Choose between Bitcoin or Ethereum presets to tailor the indicator to your preferred cryptocurrency market.
Indicator Sensitivity Parameter : Adjust the sensitivity to adapt the indicator, particularly to make it seek higher-strength trends.
Indicator Signal Direction : Set the signal direction as Long, Short, or Both, depending on your preference.
Exit of Signals : You have options regarding Take-Profit (TP) and Stop-Loss (SL) levels. Enable TP/SL levels to exit trades at predetermined levels, or disable them to rely on direction changes for exits. Be aware that removing stop losses can introduce additional risk, and position sizing should be carefully monitored.
By enabling Trailing TP/SL, the system switches to a trailing approach, allowing you to:
- Place an initial customizable SL.
- Specify a level (%) for the Trailing SL to become active.
- When the activation level is reached, the system moves the trailing stop by a given Offset (%).
Additionally, you can enable exit at break-even, where the system places an exit order when the trail activation level is reached, accounting for fees and slippage.
Alert Messages : Define the fields for alert messages based on specific conditions. You can set up alerts to receive email, SMS, and in-app notifications. If you use webhooks for alerts, exercise caution, as these alerts can potentially execute trades without human supervision.
Backtesting : Default backtesting parameters are set to provide realistic backtesting performance:
- 0.04% Commission per trade (for both entries and exits)
- 3 ticks Slippage (highly dependent on exchange)
- Initial capital of $1000
- Order size of $1000
While the order size is equal to the initial capital, the script employs a 2% stop-loss order to limit losses and attempts to prevent risky trades from creating big losses. The order size is a set dollar value, so that the backtesting performance is linear, instead of using % of capital which may result in unrealistic backtesting performance.
Risk Disclaimer
Please be aware that backtesting results, while valuable for statistical overview, do not guarantee future performance in any way. Cryptocurrency markets are inherently volatile and risky. Always trade responsibly and do not risk more than you can afford to lose.
YinYang RSI Volume Trend StrategyThere are many strategies that use RSI or Volume but very few that take advantage of how useful and important the two of them combined are. This strategy uses the Highs and Lows with Volume and RSI weighted calculations on top of them. You may be wondering how much of an impact Volume and RSI can have on the prices; the answer is a lot and we will discuss those with plenty of examples below, but first…
How does this strategy work?
It’s simple really, when the purchase source crosses above the inner low band (red) it creates a Buy or Long. This long has a Trailing Stop Loss band (the outer low band that's also red) that can be adjusted in the Settings. The Stop Loss is based on a % of the inner low band’s price and by default it is 0.1% lower than the inner band’s price. This Stop Loss is not only a stop loss but it can also act as a Purchase Available location.
You can get back into a trade after a stop loss / take profit has been hit when your Reset Purchase Availability After condition has been met. This can either be at Stop Loss, Entry or None.
It is advised to allow it to reset in case the stop loss was a fake out but the call was right. Sometimes it may trigger stop loss multiple times in a row, but you don’t lose much on stop loss and you gain lots when the call is right.
The Take Profit location is the basis line (white). Take Profit occurs when the Exit Source (close, open, high, low or other) crosses the basis line and then on a different bar the Exit Source crosses back over the basis line. For example, if it was a Long and the bar’s Exit Source closed above the basis line, and then 2 bars later its Exit Source closed below the basis line, Take Profit would occur. You can disable Take Profit in Settings, but it is very useful as many times the price will cross the Basis and then correct back rather than making it all the way to the opposing zone.
Longs:
If for instance your Long doesn’t need to Take Profit and instead reaches the top zone, it will close the position when it crosses above the inner top line (green).
Please note you can change the Exit Source too which is what source (close, open, high, low) it uses to end the trades.
The Shorts work the same way as the Long but just opposite, they start when the purchase source crosses under the inner upper band (green).
Shorts:
Shorts take profit when it crosses under the basis line and then crosses back.
Shorts will Stop loss when their outer upper band (green) is crossed with the Exit Source.
Short trades are completed and closed when its Exit Source crosses under the inner low red band.
So, now that you understand how the strategy works, let’s discuss why this strategy works and how it is profitable.
First we will discuss Volume as we deem it plays a much bigger role overall and in our strategy:
As I’m sure many of you know, Volume plays a huge factor in how much something moves, but it also plays a role in the strength of the movement. For instance, let’s look at two scenarios:
Bitcoin’s price goes up $1000 in 1 Day but the Volume was only 10 million
Bitcoin’s price goes up $200 in 1 Day but the Volume was 40 million
If you were to only look at the price, you’d say #1 was more important because the price moved x5 the amount as #2, but once you factor in the volume, you know this is not true. The reason why Volume plays such a huge role in Price movement is because it shows there is a large Limit Order battle going on. It means that both Bears and Bulls believe that price is a good time to Buy and Sell. This creates a strong Support and Resistance price point in this location. If we look at scenario #2, when there is high volume, especially if it is drastically larger than the average volume Bitcoin was displaying recently, what can we decipher from this? Well, the biggest take away is that the Bull’s won the battle, and that likely when that happens we will see bullish movement continuing to happen as most of the Bears Limit Orders have been fulfilled. Whereas with #2, when large price movement happens and Bitcoin goes up $1000 with low volume what can we deduce? The main takeaway is that Bull’s pressured the price up with Market Orders where they purchased the best available price, also what this means is there were very few people who were wanting to sell. This generally dictates that Whale Limit orders for Sells/Shorts are much higher up and theres room for movement, but it also means there is likely a whale that is ready to dump and crash it back down.
You may be wondering, what did this example have to do with YinYang RSI Volume Trend Strategy? Well the reason we’ve discussed this is because we use Volume multiple times to apply multiplications in our calculations to add large weight to the price when there is lots of volume (this is applied both positively and negatively). For instance, if the price drops a little and there is high volume, our strategy will move its bounds MUCH lower than the price actually dropped, and if there was low volume but the price dropped A LOT, our strategy will only move its bounds a little. We believe this reflects higher levels of price accuracy than just price alone based on the examples described above.
Don’t believe us?
Here is with Volume NOT factored in (VWMA = SMA and we remove our Volume Filter calculation):
Which produced -$2880 Profit
Here is with our Volume factored in:
Which produced $553,000 (55.3%)
As you can see, we wen’t from $-2800 profit with volume not factored to $553,000 with volume factored. That's quite a big difference! (Please note previous success does not predict future success we are simply displaying the $ amounts as example).
Now how about RSI and why does it matter in this strategy?
As I’m sure most of you are aware, RSI is one of the leading indicators used in trading. For this reason we figured it would only make sense to incorporate it into our calculations. We fiddled with RSI for quite awhile and sometimes what logically seems to be the right way to use it isn’t. Now, because of this, our RSI calculation is a little odd, but basically what we’re doing is we calculate the RSI, then turn it into a percentage (between 0-1) that can easily be multiplied to the price point we need. The price point we use is the difference between our high purchase zone and our low purchase zone. This allows us to see how much price movement there is between zones. We multiply our zone size with our RSI multiplication and we get the amount we will add +/- to our basis line (white line). This officially creates the NEW high and low purchase zones that we are actually using and displaying in our trades.
If you found that confusing, here are some examples to why it is an important calculation for this strategy:
Before RSI factored in:
Which produced 27.8% Profit
After RSI factored in:
Which produced 553% Profit
As you can see, the RSI makes not only the purchase zones more accurate, but it also greatly increases the profit the strategy is able to make. It also helps ensure an relatively linear profit slope so you know it is reliable with its trades.
This strategy can work on pretty much anything, but you should tweak the values a bit for each pair you are trading it with for best results.
We hope you can find some use out of this simple but effective strategy, if you have any questions, comments or concerns please let us know.
HAPPY TRADING!
Stochastic StrategyThis strategy is designed to make trading decisions based on the Stochastic Oscillator (Stoch) indicator with settings of (7,2,2). The strategy opens a long (buy) position when the Stoch indicator crosses above the 50 level from below. Conversely, it opens a short (sell) position when the Stoch indicator crosses below the 50 level from above. Additionally, when a long position is opened, any existing short position is closed, and vice versa.
Key Parameters:
Stochastic Oscillator Settings: Length = 7, SmoothK = 2, SmoothD = 2.
Overbought Level: 80.
Oversold Level: 20.
Strategy Description:
The Stochastic Oscillator (Stoch) is calculated based on the closing price, high price, and low price with a period of 7, and both the %K and %D lines are smoothed with periods of 2.
When the %K line crosses above the oversold level (20), it generates a long (buy) signal.
When the %K line crosses below the overbought level (80), it generates a short (sell) signal.
The strategy visually marks long and short signals on the chart using upward and downward triangles, respectively.
The strategy automatically enters long or short positions when the respective conditions are met.
If a long position is opened, any existing short position is closed, and vice versa.
Please note that this is a basic example of a trading strategy and does not take into account all possible risk factors or optimizations. Before using this strategy in live trading, it's essential to thoroughly test and customize it to suit your specific needs, and carefully analyze the results. Trading carries risks, and it's important to use proper risk management techniques when implementing any trading strategy.
MMI Auto Backtesting StrategyDescription:
A strategy based on ATR with auto-backtesting capabilities, Take Profit and Stop Loss (either Normal or Trailing). It allows you to select ranges of values and step for each parameter, and backtest the strategy on a multitude of input combinations at once. You can alternatively use a constant value for each parameter. The backtesting results strive to be as close as possible to those given by Tradingview Strategy Tester.
The strategy displays a table with results for different input combinations. This has columns showing current input combination as well as the following stats: Net Profit, Number of trades, % of Profitable trades, Profit Factor, Max Drawdown, Max Runup, Average Trade and Average number of bars in a trade.
You can sort the table by any column (including sorting by multiple columns at the same time) to find, for example, input combination that gives highest Net Profit (or, if sorting by multiple columns, to find input combination with the best balance of Net Profit and % of Profitable trades). You can filter by any column as well (or multiple columns at the same time), using logical expressions like "< value", "> value", "<= value", ">= value". And you can use logical expressions like "< value%" for Net Profit, Max Drawdown, Max Runup and Average trade to filter by percentage value. You will see a "↓" symbol in column's header if that column is sorted from Highest to Lowest, a "↑" symbol if it's sorted from Lowest to Highest and a "𐕢" symbol if that column is being filtered.
The table has customisable styles (like text color, background color of cells, etc.), and can show the total number of backtested combinations with the time taken to test them. You can also change Initial Capital and Position Size (either Contracts, Currency or % of Equity).
Parameters:
The following parameters are located in the "INPUTS (USUAL STRATEGY)" group, and control the behaviour of strategy itself (not the auto-backtesting functionality):
- Period: ATR Length
- Multiplier: ATR Multiplier
- DPO: length of the filtering moving average
- SL: stop loss
- TP: take profit
- Use Stop Loss: enable stop loss
- Stop Loss Mode: stop loss mode (either Normal or Trailing)
- Use Take Profit: enable take profit
- Wicks: use high & low price, or close price
The strategy also has various parameters separated by different groups:
- INPUTS (AUTO-BACKTESTING): has the same parameters as the "INPUTS (USUAL STRATEGY)" group, but controls the input combinations for auto-backtesting; all the numeric parameters have 3 values: F/V (from), T (to) and S (step); if the checkbox to the left of F/V parameter is off, the value of F/V will indicate the constant value used for that parameter (if the checkbox is on, the values will be from F/V to T using step S)
- STRATEGY: contains strategy related parameters like Initial Capital and Position Size
- BACKTESTING: allows you to display either Percentage, Absolute or Both values in the table and has checkboxes that allow you to exclude certain columns from the table
- SORTING: allows you to select sorting mode (Highest to Lowest or vice versa) and has checkboxes in case you want to sort by multiple columns at the same time
- FILTERING: has a text field for each column of the strategy where you can type logical expressions to filter the values
- TABLE: contains styling parameters
Many parameters have the "(i)" description marker, so hover over it to see more details.
Problems:
- The script works best on lower timeframes and continuous markets (trades 24/7), in other cases the backtesting results may vary from those that Tradingview shows
- The script shows closest results when Take Profit and Stop Loss are not used
- Max Runup percentage value is often wrong
Limitations:
- As we are limited by the maximum time a script can be running (which is 20s for Free plan and 40s for Paid plans), we can only backtest several hundreds of combinations within that timeframe (though it depends on the parameters, market and timeframe of the chart you use)
Strategy Gaussian Anomaly DerivativeConcept behind this Strategy :
Considering a normal "buy/sell" situation, an asset would be bought in average at the median price following a Gaussian like concept. A higher or lower average trend would significate that the current perceived value is respectively higher or lower than the current median price, which mean that the buyers are evaluating the price underpriced or overpriced.
This behaviour would be even more relevent depending on its derivative evolution.
Therefore, this Strategy setup is based on this Gaussian like concept anomaly of average close positionning compare to high-low average derivative, such as the derivative of the following ploted basic signal : 1-(high+low)/(2*close).
This Strategy can actually be used like a trend change and continuation strength indicator aswell.
In the Setup Signal part :
You can define the filtering of the basis signal "1-(high+low)/(2*close)" on EMA or SMA as you wish.
You can define the corresponding period and the threathold as a mutiply of the average 1/3 of all time value of the basis signal.
You can define the SMA filtering period of the Derivative signal and the corresponding threathold on the same mutiply of the average 1/3 of all time value of the derivative.
In the Setup Strategy part :
You can set up your strategy assesment based on Long and/or Short. You can also define the considered period.
The most successful tuned strategies I did were based on the derivative indicator with periods on the basis signal and the derivative under 30, can be 1 to 3 of te derivative and 7 to 21 for the basis signal. The threathold depends on the asset volatility aswell, 1 is usually the most efficient but 0 to 10 can be relevent depending on the situation I met. You can find an example of tuning for this strategy based on Kering's case hereafter.
I hoping that you will enjoy using this Strategy, don't hesitate to comment, to question, to correct or complete it ! I would be very curious about similar famous approaches that would have already been made.
Thank to you !
SOFEX High-End Indicators + BacktestingBINANCE:BTCUSDT.P BINANCE:ETHUSDT.P
Introducing the first publicly available suite of indicators for Bitcoin and Ethereum by Sofex - the High-End Indicators & Backtesting System.
🔬 Trading Philosophy
The High-End Indicators & Backtesting system offers both trend-following and mean-reversal algorithms to provide traders with a deep insight into the highly volatile cryptocurrency markets, known for their market noise and vulnerability to manipulation.
With these factors in mind, our indicators are designed to sidestep most potentially false signals. This is facilitated further by the "middle-ground" time frame (1 Hour) we use. Our focus is on the two largest cryptocurrencies: Bitcoin and Ethereum , which provide high liquidity, necessary for reliable trading.
Therefore, we recommend using our suite on these markets.
The backtesting version of the Sofex High-End Indicators includes mainly trend-following indicators. This is because our trading vision is that volatility in cryptocurrency markets is a tool that should be used carefully, and many times avoided. Furthermore, mean-reversal trading can lead to short-term profits, but we have found it less than ideal for long-term trading.
The script does not aim to make a lot of trades, or to always remain in a position and switch from long to short. Many times there is no direction and the market is in "random walk mode", and chasing trades is futile.
Based on our experience, it is preferable if traders remain neutral the majority of the time and only enter trades that can be exited in the foreseeable future. Trading just for the sake of it ultimately leads to loss in the long-run.
Expectations of performance should be realistic.
We also focus on a balanced take-profit to stop-loss ratio. In the default set-up of the script, that is a 2% : 2% (1:1) ratio. A relatively low stop loss and take profit build onto our idea that positions should be exited promptly. There are many options to edit these values, including enabling trailing take profit and stop loss. Traders can also completely turn off TP and SL levels, and rely on opposing signals to exit and enter new trades.
Extreme scenarios can happen on the cryptocurrency markets, and disabling stop-loss levels completely is not recommended. The position size should be monitored since all of it is at risk with no stop-loss.
We take pride in presenting this comprehensive suite of trading indicators, designed for both manual and automated use. Although automated use leads to increased efficiency, traders are free to incorporate any of our indicators into their own manual trading strategy.
⚙️ Indicators
By default, all indicators are enabled for both Long and Short trades.
Extreme Trend Breakouts
The Extreme Trend Breakouts indicator seeks to follow breakouts of support and resistance levels, while also accounting for the unfortunate fact that false signals can be generated on these levels. The indicator combines trend-breakout strategies with various other volatility and direction measurements. It works best in the beginning of trends.
Underpinning this indicator are renowned Perry Kaufman's Adaptive Moving Averages (PKAMA) alongside our proprietary adaptive moving averages. These dynamic indicators adjust their parameters based on recent price movements, attempting to catch trends while maintaining consistent performance in the long run.
In addition, our modification of the TTM Squeeze indicator further enhances the Extreme Trend Breakouts indicator, making it more responsive, especially during the initial stages of trends and filtering of "flat" markets.
High-Volatility Trend Follower
The High-Volatility Trend Follower indicator is based around the logic of evading market conditions where volatility is low (choppy markets) and aggressively following confirmed trends. The indicator works best during strong trends, however, it has the downside of entering trades at trend tops or bottoms.
This indicator also leverages our proprietary adaptive moving averages to identify and follow high-volatility trends effectively. Furthermore, it uses the Average Directional Index, Aroon Oscillator, ATR and a modified version of VWAP, to categorize trends into weak or strong ones. The VWAP indicator is used to identify the monetary (volume) inflow into a given trend, further helping to avoid short-term manipulations.
Low-Volatility Reversal
The Low-Volatility Reversal aims at plugging the holes that trend-following indicators ignore. It specifically looks for choppy markets. Using proven concepts such as Relative Strength Index and volume measurements, among others, this indicator finds local tops and bottoms with good accuracy. It works best in choppy markets with low to medium volatility. It has a downside that all reversals have, losing trades at the end of choppy markets and in the beginning of big trends.
This indicator, like the others, employs PKAMA in conjunction with our proprietary adaptive moving averages, and an Average PSAR indicator to seek out "sideways" markets. Furthermore, Bollinger Bands with an adaptive basis line is used, with the idea of trading against the short-term trends by looking at big deviations in price movement. The above mentioned indicators attempt to catch local tops and bottoms in markets.
Adaptive Trend Convergence
The Adaptive Trend Convergence aims at following trends while avoiding entering positions at local bottoms and tops. It does so by comparing a number of adaptive moving averages and looking for convergence among them. Adaptive filtering techniques for avoiding choppy markets are also used.
This indicator utilizes our proprietary adaptive moving averages, and an Average Price Range indicator to identify trend convergence and divergence effectively, preventing false signals during volatile market phases. It also makes use of Bollinger Bands with an adaptive moving average basis line and price-action adjusted deviation. Contrasting to the Low-Volatility Reversal condition described above, the Bollinger Bands used here attempt to follow breakouts outside of the lower and upper bands.
Double-Filtered Channel Breakouts
The Double-Filtered Channel Breakouts indicator is made out of adaptive channel-identifying indicators. The indicator then follows trends that significantly diverge from the established channels. This aims at following extreme trends, where rapid, continuous movements in either direction occur. This indicator works best in very strong trends and follows them relentlessly. However, these strong trends can end in strong reversals, and the indicator can be stopped out on the last trade.
Our Double-Filtered Channel Breakouts indicator is built on a foundation of adaptive channel indicators. We've harnessed the power of Keltner Channels and Bollinger Band Channels, with a similar approach used in the Adaptive Trend Convergence indicator. The basis and upper/lower bands of the channels do not rely on fixed deviation parameters, rather on adaptive ones, based on price action and volatility. This combination seeks to identify and follows extreme trends.
Direction Tracker
The Direction Tracker indicator is made out of a central slower, adaptive moving average that clearly recognizes global, long-term trends. Combined with direction and range indicators, among others, this indicator excels at finding the long-term trend and ignoring temporary pullbacks in the opposite direction. It works best at the beginning and middle of long and strong trends. It can fail at the end of trends and on very strong historical resistance lines (where sharp reversals are common).
Our Direction Tracker indicator integrates an adaptive SuperTrend indicator into its core, alongside our proprietary adaptive moving averages, to accurately identify and track long-term trends while mitigating temporary pullbacks. Furthermore, it uses Average True Range, ADX and other volatility indicators to attempt to catch unusual moves on the market early-on.
📟 Parameters Menu
To offer traders flexibility, our system comes with a comprehensive parameter menu:
Preset Selection : Choose between Bitcoin or Ethereum presets to tailor the indicators to your preferred cryptocurrency market.
Global Signal Direction: Set the global signal direction as Long, Short, or Both, depending on your trading strategy.
Global Sensitivity Parameter : Adjust the system's sensitivity to adapt to different trend-following conditions, particularly beneficial during higher-strength trends.
Source of Signals : Toggle individual indicators on or off according to your preference. By default, all indicators are enabled. Customize the indicators to trade Long, Short, or Both, aligning them with your desired market exposure.
Confirmation of Signals : Set the minimum number of confirmed signals on the same bar, ensuring signals are generated only when specific confirmation criteria are met. The default value is one, and it can be adjusted for both Long and Short signals.
Exit of Signals : You have options regarding Take-Profit (TP) and Stop-Loss (SL) levels. Enable TP/SL levels to exit trades at predetermined levels, or disable them to rely on direction changes for exits. Be aware that removing stop losses can introduce additional risk, and position sizing should be carefully monitored.
By enabling Trailing TP/SL, the system switches to a trailing approach, allowing you to:
- Place an initial customizable SL.
- Specify a level (%) for the Trailing SL to become active.
- When the activation level is reached, the system moves the trailing stop by a given Offset (%).
Additionally, you can enable exit at break-even, where the system places an exit order when the trail activation level is reached, accounting for fees and slippage.
Alert Messages : Define the fields for alert messages based on specific conditions. You can set up alerts to receive email, SMS, and in-app notifications. If you use webhooks for alerts, exercise caution, as these alerts can potentially execute trades without human supervision.
Backtesting : Default backtesting parameters are set to provide realistic backtesting performance:
- 0.04% Commission per trade (for both entries and exits)
- 3 ticks Slippage (highly dependent on exchange)
- Initial capital of $1000
- Order size of $1000
While the order size is equal to the initial capital, the script employs a 2% stop-loss order to limit losses and attempts to prevent risky trades from creating big losses. The order size is a set dollar value, so that the backtesting performance is linear, instead of using % of capital which may result in unrealistic backtesting performance.
Risk Disclaimer
Please be aware that backtesting results, while valuable for statistical overview, do not guarantee future performance in any way. Cryptocurrency markets are inherently volatile and risky. Always trade responsibly and do not risk more than you can afford to lose.
Broadview Algorithmic StudioWelcome! This is the writeup for the Broadview Algorithmic Studio.
There are many unique features in this script.
- Broadview Underpriced & Overpriced
- Broadview Blackout Bollinger Bands
- Trailing Take Profit Suite
- Algorithmic Weights
- VSA Score
- Pip Change Log
- Activation Panel
- Weight Scanner
There are 116 primary inputs that allow users to algorithmically output unique DCA signal-sets. There are 85 inputs that allow users to control individual lengths, levels, thresholds, and multiplicative weights of the script. You will not find any other script with this many inputs, properly strung together for you to produce unlimited strategies for any market. The entire premise for the Broadview Algorithmic Studio is for users to be able to have extensive-cutting-edge features that allow them to produce more strategies, having control over every element that outputs a signal set. The number of unique strategies you can output with this script is VAST, and each continues to follow a safe DCA methodology.
This script is ready for use with 3Commas, interactive brokers, and other means of automation. It provides detailed information on Base Orders and Safety Orders, giving the number, cumulative spending, position average, and remaining balance for each SO in the series. Using this script we will explore the depths of strategic volume scaling, and the algorithms we use to determine spending.
Let me first start by saying the number of safe DCA-friendly signal-sets this script can output is absolutely staggering.
Let's limit the scope just to the Broadview Underpriced & Overpriced and Broadview Dominance indicators.
Each band of the Dominance Suite can be controlled individually with unique lengths, levels, and weights. This means the Dominance Suite can establish Bearish or Bullish dominance, in any market condition, and give it a unique overloading weight. The Broadview Underpriced & Overpriced indicator finally gives us the ability to establish these "market conditions" first with cycles. Of all the cycles this indicator establishes, the two primary are Underpriced & Overpriced. We determine this using a composite Overbought & Oversold with an Exponential Moving Average. So the script can now know, what cycle it is in, who is dominant during that cycle, and exactly how much weight in volume scaling the order should have.
Brand new is the ability for indicators of this level to be able to talk together in a single script. The Broadview Underpriced & Overpriced indicator and the Broadview Dominance indicator can inform one another across multiple vectors, create a unique market snapshot, and give that snapshot a unique weight every bar. The unique weight is compiled in the volume scaling math, thus giving us an automated-strategic-safe and quite efficient volume scaling for every order. In our coming updates we will explore this synergy to its very deepest layers. These indicators can be laced together in many ways, called vectors.
Only in the Algorithmic Studio do we explore these depths and yield those findings, features, and inputs to the user.
Let me take a quick break to explain another area-of-opportunity for our research and development.
The VSA Score is something we've tried before, but until the creation of the Broadview Blackout Bollinger Bands Auto Indicator it was not possible. The concept we want to explore is "Positional Honing". Over time we want users and the script itself to be able to understand the difference between a script-config that produces a high number of Hits, from a configuration that produces a high number of "Misses". The Volume Scaling Accuracy Score uses the BBB Auto Indicator as a heavily reliable, non-repainting, method of determining what the very-best signals for increased volume-scaling are.
Increased volume scaling is denoted by the near-white highlighter line running vertically. This line will either fall inside the BBB Auto Indicator bands (which are hidden), or, they will fall below and outside the BBB Auto bands. If increased spending happens inside the bands it's a "Miss". If increased spending happens below and outside the bands, it's a Hit. Oftentimes misses are actually pretty good spots for extra spending, which helps lower your position average, but Hits are always better. The Hits that the BBB Auto Indicator provides are extremely good.
Let's talk about the Trailing Take Profit Suite. This suite allows us to set a trailing take profit which is a feature that lets one maximize their profits. If the trailing take profit is engaged, then when the regular take profit is hit, it will trigger, denoted in red vertical lines, and the trailing take profit will look for a specified rate of change before it actually takes profit. This usually helps traders in those times when their regular take profit was set too low, allowing them to maximize their profits with a Trailing Take Profit.
For the moment, let's think about our scores. In the dashboard you'll notice a score beginning the Pip Change Log, the VSA Score, and the Activation Panel.
These scores use a new kind of logistic correlation formula where 4 digits are given to activation, rather than 1. This is to allow room for a future concept in AI we call "Deadzones" or you can think of it as impedance. This is not a bias in logistic regression. It's an entirely different concept. A neuron, which a perceptron attempts to mimic, has a bias.. but it also has a sort of electrical resistance. This is because a neuron is individually-alive entity. So a perceptron, as it were, would need to have both a bias and a natural resistance, or deadzone.
It is a lot of fun to watch the scores and how they react during playback. They tend to smooth trends but are also quite quick to correct to accuracy. In the future we will add the deadzones and biases to the scores. This should help both users and the script produce better signal sets. The Pip Change Log is an indicator that measures Rate of Change in Pips. This is one that I am particularly excited to study, as I am a huge fan of ROC. The Activation Panel shows these scores for 4 primary indicators: On Balance Volume, Relative Strength Index, Average Directional Index, and Average True Range.
Having the Pip Change Log, VSA Score, and Activation Panel up on the dashboard with their logistic correlation scores allows traders to study markets and setups quite intimately. The weight scanner at the bottom allows users to track the cumulative applied multiplicative weights during playback. The massive number of inputs, connected vectors of indicators, input-weights, lengths, levels, and thresholds sets up all the algorithmic infrastructure for powerusers to explore every idea and strategy output they could imagine. Also with the connected vector infrastructure we can deepen our indicators in a way where, "How they talk to each other.", comes first in every development conversation.
The Algorithmic Studio is for the Power-user.
These are not basic equations coming together to determine spending. This is a massive multi-layered-perceptron with everything from Trailing-Take-Profits to strategic-automatic algorithmic downscaling. The Broadview Algorithmic Studio gives a home to the poweruser who wants access to everything in a trading and investing AI, right up until the backpropagation. The Broadview Algorithmic Studio, gives users the ability to sit in the chair of the would-be AI.
Thank you.
Golden Transform The Golden Transform Oscillator contains multiple technical indicators and conditions for making buy and sell decisions. Here's a breakdown of its components and what it's trying to achieve:
Strategy Setup:
The GT is designed to be plotted on the chart without overlaying other indicators.
Rate of Change (ROC) Calculation:
The Rate of Change (ROC) indicator is calculated with a specified period ("Rate of Change Length").
The ROC measures the percentage change in price over the specified period.
Hull Modified TRIX Calculation:
The Hull Modified TRIX indicator is calculated with a specified period ("Hull TRIX Length").
The Hull MA (Moving Average) formula, a modified WMA, is used to calculate a modified TRIX indicator, which is a momentum oscillator.
Hull MA Calculation:
A Hull Moving Average (Hull MA) is calculated as an entry filter.
Fisher Transform Calculation:
The Fisher Transform indicator is calculated to serve as a preemptive exit filter.
It involves mathematical transformations of price data to create an oscillator that can help identify potential reversals. The Fisher Transform is further smoothed using a Hull Moving Average (HMA).
Conditions and Signals:
Long conditions are determined based on crossovers between ROC and TRIX, as well as price relative the the MA. Short conditions are inversed.
Exit Conditions:
Exit conditions are defined for both long and short positions.
For long positions, the strategy exits if ROC crosses under TRIX, or if the smoothed Fisher Transform crosses above a threshold and declines. Once again, short conditions are the inverse.
Visualization and Plotting:
The script uses background colors for entry and shapes for exits to highlight different levels and conditions for the ROC/TRIX correlation.
It plots the Fisher Transform values and a lag trigger on the chart.
Overall, this script is a complex algorithm that combines multiple technical indicators and conditions to generate trading signals and manage positions in the financial markets. It aims to identify potential entry and exit points based on the interplay of the mentioned indicators and conditions.
Gaussian Detrended ReversionThis strategy, titled "Gaussian Detrended Reversion Strategy," aims to identify potential price reversals using the customized Gaussian Detrended Price Oscillator (GDPO) in combination with smoothed price cycles.
Key Elements of the Strategy:
GDPO Calculation: The strategy first calculates the Detrended Price Oscillator (DPO) by comparing the close price to an Exponential Moving Average (EMA) of a specified period. This calculation helps identify short-term price cycles by detrending the price data.
Gaussian Smoothing: The DPO values are then smoothed using the Arnaud Legoux Moving Average (ALMA), applying a Gaussian smoothing technique. This smoothed version of the DPO is intended to filter out noise and provide a clearer picture of price trends.
Entry and Exit Conditions: The strategy defines conditions for both long and short entry points as well as exit points. It looks for specific crossover events between the smoothed GDPO and its lagged version. The strategy enters a long position when the smoothed GDPO crosses above the lag and is negative, and exits the long position when the smoothed GDPO crosses below the lag or the zero line. Similarly, the strategy enters a short position when the smoothed GDPO crosses below the lag and is positive, and exits the short position when the smoothed GDPO crosses above the lag or the zero line.
Visualization: The smoothed GDPO and its lag are plotted on the chart using distinct colors. The zero line is also displayed as a reference point. Additionally, the chart background changes color when the strategy enters a long or short position. Cross markers are also plotted at the crossover points as exit cues.
Overall, this strategy aims to capture potential price reversals using the GDPO and Gaussian smoothing, with specific entry and exit conditions to guide trading decisions.
Vortex Cross w/MA ConfirmationThis script is a trading strategy that combines the Vortex Indicator and a Moving Average (MA) to generate potential entry signals for long and short positions.
1. Vortex Indicator:
The Vortex Indicator consists of two lines: Vortex Positive (VIP) and Vortex Negative (VIM). It is designed to identify trend direction and measure the strength of a trend.
2. Moving Average (MA):
The script uses a chosen type of Moving Average (SMA, EMA, SMMA, WMA, or VWMA) to smooth the price data. The smoothed line is referred to as the "Smoothing Line."
3. Determine Long and Short Conditions:
The script looks for potential long entry signals when VIP crosses above VIM, highlighting each crossover on the chart, and the closing price is above the Smoothing Line. It searches for short entry signals when VIM crosses above VIP, with the closing price is below the Smoothing Line. When the long or short conditions are met, the strategy enters either a long or short position accordingly.
Potential Usage:
The strategy can be utilized in trending markets, where the Vortex Indicator helps identify trend direction and strength, and the Moving Average smooths the price data to filter out some noise. It aims to capture trends and ride them while avoiding false signals during choppy or sideways markets.