Bagheri IG EtherThis is a technical trading strategy for Ethereum ( BINANCE:ETHUSDT ). We built and developed it on MetaEditor and optimized it with MetaTrader optimizer.
The main indicators are Donchian Channel, Oscillator of ROC, Bears Power, Balance of Power, and Simple Moving Average (SMA). Default values in the input panel are the best combination of these indicators, but you can change any of them and try it for better results.
Please notice that this strategy has been optimized on the 1-minute chart of Ethereum.
For each position, you can see the Take Profit (TP) and Stop Loss (SL) levels. Also, you can find the values of mentioned TP and SL in points from the input panel of the script.
Attention: The price of Ethereum has 2 decimal places.
Therefore, 3000 points for TP means 30 USDT for trading 1 BINANCE:ETHUSDT .
Ketidakstabilan
Bollinger Bands Strategy [Alorse]This is a highly effective strategy that is based on going against the micro trend when the price exceeds the Bollinger bands by X percentage.
The percentage set by default to 30%, you can change it from the indicator settings.
You also have the option of enabling or disabling Short entries.
[KL] Relative Volume + ATR StrategyThis strategy will enter into long position when (a) current volume is above the average volume, and when (b) volatility of prices (based on ATR) is relatively low.
Backtested on hourly timeframes, win rates range between 35% to 50% on stocks with positive drifts (i.e. tendency to move upwards). Default setups are as follows:
- Average volume is computed using simple moving average (sma) of 14 periods. By default, 1.4x ratio seems to work well on most large cap stocks. If it's too high, then amount of potential points for entry will decrease. But if it's too low, then this indicator becomes meaningless.
- ATR (for determining volatility), look back period is 14 (following conventions). I have noticed that the profits could change drastically when changed to different values for each individually security. Feel free to experiment around with this parameter.
Other information: This strategy is based off of one of my previous scripts; a script called "Relatively Volume Strategy". The objective of this new script is to simplify the process of determining periods of low volatility. In this new script, we assume prices are consolidating when current ATR is within its moving average value by +/- one standard deviation.
COIN FX PRO TRADERCoin Fx Pro strategy makes the cryptocurrency markets buy and sell automatically. 5 stoploss, fixed profit take and stoploss level can be customized from strategy settings. There are 4 separate strategies that you can set in the strategy. First of them, there are strategies that decide long and short positions in accordance with your settings at the pivot levels, second of the super trend, third of the potential return levels, third of the up and down breaks. Pyramiding can offer multiple entry points. Strategy back tests can be adjusted to the desired time period and can be used as spot or term if desired. Frostybot is set to work fully compatible with js when the necessary inputs are made from these strategy settings. When installing an alarm for FROSTYBOT JS, the alarm message field is {{strategy.order.alert_message}}.
For best back test performance results. Use it
BTCUSDTP and 5 MIN TIME FRAME!!!
CRYPTO TRADING BOT - 1min SCALPING LONG/SHORTHOW IT WORKS
The core concept behind the script is the determination of the current market mood in sense of creating a trendline indicator using EMA / SMA .
By using this trend indication alongside RSI / MACD value range, we are able to enter/exit the market in both directions: LONG and SHORT .
In case of confirmed false signals, we try to catch up the next good opportunity to minimise loss and to close the current trade.
If the chance for a good countertrade is given at this point, the market is going to be entered reversely.
Should the market move incredibly fast against our trade direction, we use proven Stop-loss targets, to bring our children into safety.
As many others, we could tell you now, that we used state-of-the-art machine learning algorithms
as well as highly sophisticated methods to gain our results.
As a fact, we started with an idea, using simple and common trading tools/indicators,
as a solid ground. We did not want to reinvent the wheel and it paid off.
GET A WORKING SCRIPT
The algorithm we are using has initially been created with a self-developed backtesting software.
To be able to deliver gas to our engine, we have bought a huge amount of OHLCV data for the 1min chart.
After many exhausting and frustrating weeks of our workflow-rotation (develop, fail, fix, test, repeat)
we finally got confirmation for all of our conditions/expectations, so we translated our algorithm into pine-code.
THE RESULTS
Since we have been using our Pine-Strategy alongside our backtesting software , we checked all the results provided by TradingView
and our tool to be 100% sure every outcome, every entry and every exit is exactly the same.
We did this for several months and since 2021 June we have been using it with real Alerts, coped to our binance account.
Below, you will find how the performance for the previous months looked like (every trade was made with 100% of the capital, of course using proper stop loss and take profit):
September 2020: 15.18%
October 2020: 36.17%
November 2020: 15.12%
December 2020: 48.58%
January 2021: 150.10%
February 2021: 45.96%
March 2021: 46.48%
April 2021: 4.96%
May 2021: 43.48%
June 2021: -28.99%
Juli 2021: 15.63%
August 2021 (so far): 11.57%
Accumulated Profit: 1,979.01%
To prove our results, we will link an excel sheet for every trade that was made within this timerange.
Link: docs.google.com
ABOUT US
We are two good friends, both incredibly interested in mathematics, software engineering, AI and algorithmics. After getting introduced into the crypto space
by a common friend, we started figuring out that there is a pattern behind every big or small move which happens in an asset.
This is where the passion for creating a CRYPTO TRADING BOT began. It was our goal, to create this script for the 1min Timeframe, so the software can react quickly when a
big or small move is happening - this is why it is called a SCALPING SCRIPT .
We are incredibly proud of this script and would like to share it with this amazing community - just hit us up on TradingView!
3Commas BotBjorgum 3Commas Bot
A strategy in a box to get you started today
With 3rd party API providers growing in popularity, many are turning to automating their strategies on their favorite assets. With so many options and layers of customization possible, TradingView offers a place no better for young or even experienced coders to build a platform from to meet these needs. 3Commas has offered easy access with straight forward TradingView compatibility. Before long many have their brokers hooked up and are ready to send their alerts (or perhaps they have been trying with mixed success for some time now) only they realize there might just be a little bit more to building a strategy that they are comfortable letting out of their sight to trade their money while they eat, sleep, etc. Many may have ideas for entry criteria they are excited to try, but further questions arise... "What about risk mitigation?" "How can I set stop or limit orders?" "Is there not some basic shell of a strategy that has laid some of this out for me to get me going?"
Well now there is just that. This strategy is meant for those that have begun to delve into the world of algorithmic trading providing a template that offers risk defined positions complete with stops, limit orders, and even trailing stops should one so choose to employ any of these criteria. It provides a framework that is easily manipulated (with some basic working knowledge of pine coding) to encompass ones own ideas and entry criteria, while also providing an already functioning strategy.
The default settings have a basic 1:1 risk to reward ratio, which sets a limit and a stop equal distance from the entry. The entry is a simple MA cross (up for long, down for short). There a variety of MA's to choose from and the user can define the lengths of the averages. The ratio can be adjusted from the menu along with a volatility based adder (ATR) that helps to distance a stop from support or resistance. These values are calculated off the swing low/high of the user defined lookback period. Risk is calculated from position entry to stop, and projected upwards to the limit as a function of the desired risk to reward ratio. Of note: the default settings include 0.05% commissions. Competitive commissions of the leading cryptocurrency exchanges are .1% round trip (one buy and one sell) for market orders. There is also some slippage to allow time for alerts to be sent and orders to fill giving the back test results a more accurate representation of real time conditions. Its recommended to research the going rates for your exchange and set them to default for the strategy you use or build.
To get started a user would:
1) Make a copy of the code and paste in their bot keys in the area provided under the "3Comma Keys" section
- eg. Long bot "start deal" copied from 3commas in to define "Long" etc. (code is commented)
2) Place alert on desired asset with desired settings ensuring to select "Order fills and alert() function calls"
3) Paste webhook into the webhook box and select webhook URL alerts (3rd party provided webhook)
3) Delete contents of alert message box and replace with {{strategy.order.alert_message}} and nothing else
- the codes will be sent to the webhook appropriately as the strategy enters and exits positions. Only 1 alert is needed
settings used for the display image:
1hr chart on BTCUSD
-ATR stop
-Risk adjustment 1.2
-ATR multiplier 1.3
-RnR 0.6
-MAs HEMA/SMA
-MA Length 50/100
-Order size percent of equity
-Trail trigger 60% of target
Experiment with your own settings on your crypto of choice or implement your own code!
Implementing your trailing stop (optional)
Among the options for possible settings is a trailing stop. This stop will ratchet higher once triggered as a function of the Average True Range (ATR). There is a variable level to choose where the user would like to begin trailing the stop during the trade. The level can be assigned with a decimal between 0 and 1 (eg. 0.5 = 50% of the distance between entry and the target which must be exceeded before the trail triggers to begin). This can allow for some dips to occur during the trade possibly keeping you in the trade for longer, while potentially reducing risk of drawdown over time. The default for this setting is 0 meaning unless adjusted, the trail will trigger on entry if the trailing stop exit method is selected. An example can be seen below:
Again, optional as well is the choice to implement a limit order. If one were to select a trailing stop they could choose not to set a limit, which could allow a trail to run further until hit. Drawdowns of this strategy would be foregoing locking gains at highs on target on other trades. This is a trade-off the user can decide on and test. An example of this working in favor can be observed below:
Conclusion
Although a simple strategy is implemented here, the benefits of this script allow a user a starting platform to build their strategies from with built in risk mitigation. This allows the user to sidestep some of the potential difficulties' that can arise while learning Pine and taking on the endeavor of automating their trading strategies. It is meant as an aid, a structure, and an educational piece that can be seen as a "pick-up-and-go" strategy with easy 3Commas compatibility. Additionally, this can help users become more comfortable with strategy alert messages and sending strings in the form of alerts from Pine. As well, FAQs are often littered with questions regarding "strategy.exit" calls, how to implement stops. how to properly set a trailing stop based on ATR, and more. The time this can save an individual to get started is likely of the best "take-aways" here.
Happy trading
OnePunch Algo Momentum Indicator V1This is another Plugin from One Punch Algo Team. We call it OnePunch Algo Momentum Indicator V1.
Basic Use:
One Punch Algo Momentum Indicator plugin is used for momentum stocks and high volatility crypto. It provide signals based on Simple Moving Average, Volume, Support & Resistance Lines.
SIGNALS/ALERTS
Buy Signal: Purple Color uptrend icon gives you a signal of an up-trending movement or we call it momentum movement. This signal basically happen when a stock land in a high volatility zone. We use in-build systems such as SMA, Support and Resistance and Trends to come up with the Buy Signal.
Sell Signal: Gray Color downtrend icon gives you a signal of a downtrend movement.
Other Lines Shown in the Diagram:
Red Line is the 200 Day Simple Moving Average (SMA)
Green Line is the 50 Day Simple Moving Average (SMA)
Strategy Tester
Always make sure to use the strategy tester to test how historically our Algo has performed in different time frames. One Punch Algo Momentum Indicator provide the ability to backtest based on certain time periods. This allows you to backtest our Algo vs some other Algo to find which performed well for the given time period, you if you want to see buy and hold performance better than the use of an Algo. This is a strong tool to use for your analysis of a stock or crypto.
What are the timeframes where it is most effective?
Different Stocks or Crypto perform differently with One Punch Algo Momentum Indicator. Please make sure to backtest a stock or crypto before you use the strategy.
Short Term/Day Trading Setup
For Short Term or Day Trade: 1min, 5min, 15min & 30min candlesticks works really well.
Also 3min, 5min, 7min and 15min works as well
Mid Term Trading Setup
For Mid-term traders: 30min, 1hr,2hr, and 4hr setup works really well.
For Long Term Trading Setup
For long term traders: 4hr, 1D, 1Week and 1Month Setup works well.
Best used with Heikin Ashi or Candlestick charts.
DISCLAIMER: Stocks and options trading involves substantial RISK of LOSS and is NOT suitable for every investor. The valuation of stocks and options may fluctuate, and, as a result, clients may lose more than their original investment. If the market moves against you, you may sustain a total loss greater than the amount you deposited into your account. You are responsible for all the risks and financial resources you use and for the chosen trading system. You should not engage in trading unless you fully understand the nature of the transactions you are entering into and the extent of your exposure to loss. If you do not fully understand these risks, you must seek independent advice from your financial advisor.
All trading strategies are used at your own risk. And OnePunch ALGO Developer, Youtuber or the channel does NOT take any responsibility for your losses using any of the advice or suggestions or strategies are shown/said in any of OnePunch ALGO Youtuber or the channel videos.
Keltner Worm Strategy [PrismBot] [Lite]Included in this Keltner Worm Lite Strategy:
✔️ Tweak a multitude of specific settings (MA lengths, R:R, SL distance etc)
✔️ Enable advanced setup filters
✔️ Use money management and risk calculations
✔️ Draw trade info directly to chart (eg. SL size in percent, win rate etc)
✔️ Use various filters (eg. time filter, date filter, MA slope angle etc)
✔️ Manage risk per position when auto-trading forex through AutoView
✔️ Choose from various alert conditions!
✔️ Sync to any bot or algorithmic trading system
Some details about this strategy:
- it incorporates 2 strategies - Keltner Re-entry and Baseline MA Crossing
- it uses a take profit and stop loss level fixed
- there are up to 6 allowable "worms"
- the worm multipliers are exponential, so a value of 2 will mean that the 6th worm is multiplied by 6
- you can multiply the offset or the Keltner Channel default values
- You can enable alerts for order entry, take profit, and stop loss values
- You can easily enable and disable strategies using the checkbox.
- This strategy incorporates a risk to reward system where the user can select between ATR and Percent based stop losses and take profit targets. This means that the user has much better control over money management when utilizing this strategy and it doesn't require you to babysit the strategy to ensure it's entering and existing strategies in an ideal place.
Crypto Scalper Divergence Macd Psar Ema 200This is a very efficient crypto scalper adapted to very short timeframes, however it can be optimized for other timeframes and assests as well.
Its components are
MACD
P SAR
EMA 200
Risk management
Rules for entry:
For short : we have an uptrend on PSAR , histogram is positive (divergence MACD) and close of a candle is below EMA 200
For long : we dont have an uptrend on PSAR, histogram is negative(divergence MACD) and close of a candle is above EMA 200
Rules for exit:
We exit when we either find a reverse condition than the entry one, or based on stop loss/take profit that are calculated on % movements of the price.
If you have any questions, let me know !
[VJ]Phoenix Force of PSAR +MACD +RSIThis is a simple intraday strategy for working on Stocks or commodities based out on PSAR, MACD , RSI and chop index . You can modify the start time and end time based on your timezones. Session value should be from market start to the time you want to square-off
Important: The end time should be at least 2 minutes before the intraday square-off time set by your broker
Comment below if you get good returns
Strategy: Entry Exits using PSAR and momentum and trend using MACD and RSI. A chop index is used as filtering
Indicators used :
Parabolic SAR is a technical indicator that is used to determine the price direction of stocks and it also draws attention to the traders when the price is changing
PSAR helps you:
Identify when a certain price trend is going to change direction
Indicate the most effective level at which to enter into the trade
Indicate the most effective exit point for the trade
Moving average convergence divergence (MACD) is a trend-following momentum indicator that shows the relationship between two moving averages of a security's price. ... Traders may buy the security when the MACD crosses above its signal line and sell—or short—the security when the MACD crosses below the signal line
RSI is intended to chart the current and historical strength or weakness of a stock or market based on the closing prices of a recent trading period.
Buying/Selling
When trading with the parabolic SAR, you would buy a market when the dots move below the current asset price and are green in colour. Alternatively, you would sell a market when the dots move above the current asset price and are red in colour. We use MACD , RSI to ensure that a right trade is picked when PSAR gives an indication. CI is used to stay away from the range bound market as much as possible.
Usage & Best setting :
Choose a good volatile stock and a time frame - 5m.
MA length : 200
RSI threshold : 50
MACD: 12,26,9
There is stop loss and take profit that can be used to optimise your trade
The template also includes daily square off based on your time.
WUNDER VolPIN SHORT StrategyHello to everyone
Overview
I am publishing the 2nd version of the volpin long strategy that I have published before. In this strategy, we make purchases 20 times with DCA logic and we exit at the rate we wish.
Calculation:
In this strategy, we buy according to bar movements. The volume of the bars and the needle tips they leave are used in the calculation. You can edit the intensity of the needle point in the settings section from the section that says pin percentage. You can adjust the volume intensity from the volatility percentage section. The most important part here is that you must change it for each time zone while making the settings. For example, I set the volatility to 1.005 and the pin percentegae part to 1.004 in the 15-minute charts by default. You can use these settings by changing them according to the time zone. You can also evaluate the strategy at any time in the day and time setting section.
Summary :
In summary, it is a simple but very effective strategy. Just get the settings right. Lots of gains.ery effective strategy. Just get the settings right. Lots of gains.
Av3Based on the ANNE EA v3 for MT4. For use on FOREX.
if ATR is greater than ATR average taken from last 5 candles, then market considered as trending, and so Open(0)>Close(1)=buy Open(0)Close(1)=sell Open(0)<Close(1)=buy.
If trending, then buy high & sell low, if consolidation then buy low sell high.
Exit is by trail and Take Profit.
PM me for edit or MT4 version info.
ROC_PA_Strategy (A3Sh)Hi there,
An experiment with rate of price change in combination with price averaging. The strategy is inspired by Price Change Scalping Strategy developed by Prosum Solutions and Scalping Dips On Trend Strategy developed by Coinrule. Both strategies look at the percentage of price change to open orders.
When the price drops beyond a specified percentage, a order entry threshold (yellow line) is setup. The order entry threshold is only active for a specified number of bars and will de-activate when not crossed within the specified number of bars. When the price drops further and crosses the entry threshold with a minimum of a specified percentage, a long position is entered. The same reverse logic (white line) used to close the long position.
I first ran the strategy without stop loss and take profit and that worked very well in a bullish market. I later added stop loss and take profit and that seems to work better in a side ways or bearisch market. There are a lot of tweaking possibilities in the settings.
In the settings you can specify the percentage of portfolio to use for each trade to spread the risk and for each order a trading fee of 0.075% is calculated.
Multi-Market Swing Trader Webhook Ready [HullBuster]
Introduction
This is an all symbol swing trading strategy intended for webhook integration to live accounts. This script employs an adjustable bandwidth ping pong algorithm which can be run in long only, short only or bidirectional modes. Additionally, this script provides advanced features such as pyramiding and DCA. It has been in development for nearly three years and exposes over 90 inputs to accommodate varying risk reward ratios. Equipped with a proper configuration it is suitable for professional traders seeking quality trades from a cloud based platform. This is my most advanced Pine Script to date which combines my RangeV3 and TrendV2 scripts. Using this combination it tries to bridge the gap between range bound and trending markets. I have put a lot of time into creating a system that could transition by itself so as to require less human intervention and thus be able to withstand long periods in full automation mode.
As a Pine strategy, hypothetical performance can be easily back-tested. Allowing you to Iron out the configuration of your target instrument. Now with recent advancements from the Pine development team this same script can be connected to a webhook through the alert mechanism. The requirement of a separate study script has been completely removed. This really makes things a lot easier to get your trading system up and running. I would like to also mention that TradingView has made significant advancements to the back-end over the last year. Notably, compile times are much faster now permitting more complex algorithms to be implemented. Thank you TradingView!
I used QuantConnect as my role model and strived to produce a base script which could compete with higher end cloud based platforms while being attractive to similarly experienced traders. The versatility of the Pine Language combined with the greater selection of end point execution systems provides a powerful alternative to other cloud based platforms. At the very least, with the features available today, a modular trading system for everyday use is a reality. I hope you'll agree.
This is a swing trading strategy so the behavior of this script is to buy on weakness and sell on strength. In trading parlance this is referred to as Support and Resistance Trading. Support being the point at which prices stop falling and start rising. Resistance being the point at which prices stop rising and fall. The chart real estate between these two points being defined as the range. This script seeks to implement strategies to profit from placing trades within this region. Short positions at resistance and long positions at support. Just to be clear, the range as well as trends are merely illusions as the chart only receives prices. However, this script attempts to calculate pivot points from the price stream. Rising pivots are shorts and falling pivots are longs. I refer to pivots as a vertex in this script which adds structural components to the chart formation (point, sides and a base). When trading in “Ping Pong” mode long and short positions are interleaved continuously as long as there exists a detectable vertex.
This is a non-hedging script so those of us subject to NFA FIFO Rule 2-43(b) should be generally safe to webhook into signals emitted from this script. However, as covered later in this document, there are some technical limitations to this statement. I have tested this script on various instruments for over two years and have configurations for forex, crypto and stocks. This script along with my TrendV2 script are my daily trading vehicles as a webhook into my forex and crypto accounts. This script employs various high risk features that could wipe out your account if not used judiciously. You should absolutely not use this script if you are a beginner or looking for a get-rich-quick strategy. Also please see my CFTC RULE 4.41 disclosure statement at the end of the document. Really!
Does this script repaint? The short answer is yes, it does, despite my best efforts to the contrary. EMAs are central to my strategy and TradingView calculates from the beginning of the series so there is just no getting around this. However, Pine is improving everyday and I am hopeful that this issue will be address from an architectural level at some point in the future. I have programmed my webhook to compensate for this occurrence so, in the mean time, this my recommended way to handle it (at the endpoint and before the broker).
Design
This strategy uses a ping pong algorithm of my own design. Basically, trades bounce off each other along the price stream. Trades are produced as a series of reversals. The point at which a trade reverses is a pivot calculation. A measurement is made between the recent valley to peak which results in a standard deviation value. This value is an input to implied probability calculation.Yes, the same implied probability used in sports betting. Odds are then calculated to determine the likelihood of price action continuing or retracing to the pivot. Based on where the account is at alert time, the action could be an entry, take profit or pyramid signal. In this design, trades must occur in alternating sequence. A long followed by a short then another long followed by a short and so on. In range bound price action trades appear along the outer bands of the channel in the aforementioned sequence. Shorts on the top and longs at the bottom. Generally speaking, the widths of the trading bands can be adjusted using the vertex dynamics in Section 2. There are a dozen inputs in this section used to describe the trading range. It is not a simple adjustment. If pyramids are enabled the strategy overrides the ping pong reversal pattern and begins an accumulation sequence. In this case you will see a series of same direction trades.
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a C++ program on proprietary trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs play a key role in identifying the pivot points. I really like the Hull Moving Average. I use it in all my systems, including 3 other platforms. It’s is an excellent leading indicator and a relatively light calculation.
The trend detection algorithms rely on several factors:
1. Smoothed EMAs in a Willams Alligator pattern.
2. Number of pivots encountered in a particular direction.
3. Which side debt is being incurred.
4. Settings in Section 4 and 5 (long and short)
The strategy uses these factors to determine the probability of prices continuing in the most recent direction. My TrendV2 script uses a higher time frame to determine trend direction. I can’t use that method in this script without exceeding various TradingView limitations on code size. However, the higher time frame is the best way to know which trend is worth pursuing or better to bet against.
The entire script is around 2400 lines of Pine code which pushes the limits of what can be created on this platform given the TradingView maximums for: local scopes, run-time duration and compile time. The module has been through numerous refactoring passes and makes extensive use of ternary statements. As such, It takes a full minute to compile after adding it to a chart. Please wait for the hovering dots to disappear before attempting to bring up the input dialog box. Scrolling the chart quickly may bring up an hour glass.
Regardless of the market conditions: range or trend. The behavior of the script is governed entirely by the 91 inputs. Depending on the settings, bar interval and symbol, you can configure a system to trade in small ranges producing a thousand or more trades. If you prefer wider ranges with fewer trades then the vertex detection settings in Section 2 should employ stiffer values. To make the script more of a trend follower, adjustments are available in Section 4 and 5 (long and short respectively). Overall this script is a range trader and the setups want to get in that way. It cannot be made into a full blown trend trading system. My TrendV2 is equipped for that purpose. Conversely, this script cannot be effectively deployed as a scalper either. The vertex calculation require too much data for high frequency trading. That doesn’t work well for retail customers anyway. The script is designed to function in bar intervals between 5 minutes and 4 hours. However, larger intervals require more backtest data in order to create reliable configurations. TradingView paid plans (Pro) only provide 10K bars which may not be sufficient. Please keep that in mind.
The transition from swing trader to trend follower typically happens after a stop is hit. That means that your account experiences a loss first and usually with a pyramid stack so the loss could be significant. Even then the script continues to alternate trades long and short. The difference is that the strategy tries to be more long on rising prices and more short on falling prices as opposed to simply counter trend trading. Otherwise, a continuous period of rising prices results in a distinctly short pyramid stack. This is much different than my TrendV2 script which stays long on peaks and short on valleys. Basically, the plan is to be profitable in range bound markets and just lose less when a trend comes along. How well this actually plays out will depend largely on the choices made in the sectioned input parameters.
Sections
The input dialog for this script contains 91 inputs separated into six sections.
Section 1: Global settings for the strategy including calculation model, trading direction, exit levels, pyramid and DCA settings. This is where you specify your minimum profit and stop levels. You should setup your Properties tab inputs before working on any of the sections. It’s really important to get the Base Currency right before doing any work on the strategy inputs. It is important to understand that the “Minimum Profit” and “Limit Offset” are conditional exits. To exit at a profit, the specified value must be exceeded during positive price pressure. On the other hand, the “Stop Offset” is a hard limit.
Section 2: Vertex dynamics. The script is equipped with four types of pivot point indicators. Histogram, candle, fractal and transform. Despite how the chart visuals may seem. The chart only receives prices. It’s up to the strategy to interpret patterns from the number stream. The quality of the feed and the symbol’s bar characteristics vary greatly from instrument to instrument. Each indicator uses a fundamentally different pattern recognition algorithm. Use trial and error to determine the best fit for your configuration. After selecting an indicator type, there are eight analog fields that must be configured for that particular indicator. This is the hardest part of the configuration process. The values applied to these fields determine how the range will be measured. They have a big effect on the number of trades your system will generate. To see the vertices click on the “Show Markers” check box in this section. Red markers are long positions and blue markers are short. This will give you an idea of where trades will be placed in natural order.
Section 3: Event thresholds. Price spikes are used to enter and exit trades. The magnitude which define these spikes are configured here. The rise and fall events are primarily for pyramid placement. The rise and fall limits determine the exit threshold for the conditional “Limit Offset” field found in Section 1. These fields should be adjusted one at a time. Use a zero value to disengage every one but the one you are working on. Use the fill colors found in Section 6 to get a visual on the values applied to these fields. To make it harder for pyramids to enter stiffen the Event values. This is more of a hack as the formal pyramid parameters are in Section 1.
Section 4 and 5: Long and short settings. These are mirror opposite settings with all opposing fields having the same meaning. Its really easy to introduce data mining bias into your configuration through these fields. You must combat against this tendency by trying to keep your settings as uniform as possible. Wildly different parameters for long and short means you have probably fitted the chart. There are nine analog and thirteen Boolean fields per trade direction. This section is all about how the trades themselves will be placed along the range defined in Section 2. Generally speaking, more restrictive settings will result in less trades but higher quality. Remember that this strategy will enter long on falling prices and short on rising prices. So getting in the trade too early leads to a draw-down. However, this could be what you want if pyramiding is enabled. I, personally, have found that the best configurations come from slightly skewing one side. I just accept that the other side will be sub-par.
Section 6: Chart rendering. This section contains one analog and four Boolean fields. More or less a diagnostic tool. Of particular interest is the “Symbol Debt Sequence” field. This field contains a whole number which paints regions that have sustained a run of bad trades equal or greater than specified value. It is useful when DCA is enabled. In this script Dollar Cost Averaging on new positions continues only until the symbol debt is recouped. To get a better understanding on how this works put a number in this field and activate DCA. You should notice how the trade size increases in the colored regions. The “Summary Report” checkbox displays a blue information box at the live end of the chart. It exposes several metrics which you may find useful if manually trading this strategy from audible alerts or text messages.
Pyramids
This script features a downward pyramiding strategy which increases your position size on losing trades. On purely margin trades, this feature can be used to, hypothetically, increase the profit factor of positions (not individual trades). On long only markets, such as crypto, you can use this feature to accumulate coins at depressed prices. The way it works is the stop offset, applied in the Section 1 inputs, determines the maximum risk you intend to bear. Additional trades will be placed at pivot points calculated all the way down to the stop price. The size of each add on trade is increased by a multiple of its interval. The maximum number of intervals is limited by the “Pyramiding” field in the properties tab. The rate at which pyramid positions are created can be adjusted in Section 1. To see the pyramids click on the “Mark Pyramid Levels” check box in the same section. Blue triangles are painted below trades other than the primary.
Unlike traditional Martingale strategies, the result of your trade is not dependent on the profit or loss from the last trade. The position must recover the R1 point in order to close. Alternatively, you can set a “Pyramid Bale Out Offset” in Section 1 which will terminate the trade early. However, the bale out must coincide with a pivot point and result in a profitable exit in order to actually close the trade. Should the market price exceed the stop offset set in Section 1, the full value of the position, multiplied by the accepted leverage, will be realized as a loss to the trading account. A series of such losses will certainly wipe out your account.
Pyramiding is an advanced feature intended for professional traders with well funded accounts and an appropriate mindset. The availability of this feature is not intended to endorse or promote my use of it. Use at your own risk (peril).
DCA
In addition to pyramiding this script employs DCA which enables users to experiment with loss recovery techniques. This is another advanced feature which can increase the order size on new trades in response to stopped out or winning streak trades. The script keeps track of debt incurred from losing trades. When the debt is recovered the order size returns to the base amount specified in the properties tab. The inputs for this feature are found in section 3 and include a limiter to prevent your account from depleting capital during runaway markets. The main difference between DCA and pyramids is that this implementation of DCA applies to new trades while pyramids affect open positions. DCA is a popular feature in crypto trading but can leave you with large “bags” if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much experience.
To be sure pyramiding and dollar cost averaging is as close to gambling as you can get in respectable trading exchanges. However, if you are looking to compete in a spot trading contest or just want to add excitement to your trading life style those features could find a place in your strategies. Although your backtest may show spectacular gains don’t expect your live trading account to do the same. Every backtest has some measure of data mining bias. Please remember that.
Webhook Integration
The TradingView alerts dialog provides a way to connect your script to an external system which could actually execute your trade. This is a fantastic feature that enables you to separate the data feed and technical analysis from the execution and reporting systems. Using this feature it is possible to create a fully automated trading system entirely on the cloud. Of course, there is some work to get it all going in a reliable fashion. To that end this script has several things going for it. First off, it is a strategy type script. That means that the strategy place holders such as {{strategy.position_size}} can be embedded in the alert message text. There are more than 10 variables which can write internal script values into the message for delivery to the specified endpoint. Additionally, my scripts output the current win streak and debt loss counts in the {{strategy.order.alert_message}} field. Depending on the condition, this script will output other useful values in the JSON “comment” field of the alert message. Here is an excerpt of the fields I use in my webhook signal:
"broker_id": "kraken",
"account_id": "XXX XXXX XXXX XXXX",
"symbol_id": "XMRUSD",
"action": "{{strategy.order.action}}",
"strategy": "{{strategy.order.id}}",
"lots": "{{strategy.order.contracts}}",
"price": "{{strategy.order.price}}",
"comment": "{{strategy.order.alert_message}}",
"timestamp": "{{time}}"
Though TradingView does a great job in dispatching your alert this feature does come with a few idiosyncrasies. Namely, a single transaction call in your script may cause multiple transmissions to the endpoint. If you are using placeholders each message describes part of the transaction sequence. A good example is closing a pyramid stack. Although the script makes a single strategy.close() call, the endpoint actually receives a close message for each pyramid trade. The broker, on the other hand, only requires a single close. The incongruity of this situation is exacerbated by the possibility of messages being received out of sequence. Depending on the type of order designated in the message, a close or a reversal. This could have a disastrous effect on your live account. This broker simulator has no idea what is actually going on at your real account. Its just doing the job of running the simulation and sending out the computed results. If your TradingView simulation falls out of alignment with the actual trading account lots of really bad things could happen. Like your script thinks your are currently long but the account is actually short. Reversals from this point forward will always be wrong with no one the wiser. Human intervention will be required to restore congruence. But how does anyone find out this is occurring? In closed systems engineering this is known as entropy. In practice your webhook logic should be robust enough to detect these conditions. Be generous with the placeholder usage and give the webhook code plenty of information to compare states. Both issuer and receiver. Don’t blindly commit incoming signals without verifying system integrity.
Operation
This is a swing trading strategy so the fundamental behavior of this script is to buy on weakness and sell on strength. As such trade orders are placed in a counter direction to price pressure. What you will see on the chart is a short position on peaks and a long position on valleys. This is slightly misleading since a range as well as a trend are best recognized, in hindsight, after the patterns occur on the chart. In the middle of a trade, one never knows how deep valleys will drop or how high peaks will rise. For certain, long trades will continue to trigger as the market prices fall and short trades on rising prices. This means that the maximum efficiency of this strategy is achieved in choppy markets where the price doesn’t extend very far from its adjacent pivot point. Conversely, this strategy will be the least efficient when market conditions exhibit long continuous single direction price pressure. Especially, when measured in weeks. Translation, the trend is not your friend with this strategy. Internally, the script attempts to recognize prolonged price pressure and changes tactics accordingly. However, at best, the goal is to weather the trend until the range bound market returns. At worst, trend detection fails and pyramid trades continue to be placed until the limit specified in the Properties tab is reached. In all likelihood this could trigger a margin call and if it hits the stop it could wipe out your account.
This script has been in beta test four times since inception. During all that time no one has been successful in creating a configuration from scratch. Most people give up after an hour or so. To be perfectly honest, the configuration process is a bear. I know that but there is no way, currently, to create libraries in Pine. There is also no way specify input parameters other than the flattened out 2-D inputs dialog. And the publish rules clearly state that script variations addressing markets or symbols (suites) are not permitted. I suppose the problem is systemic to be-all-end-all solutions like my script is trying to be. I needed a cloud strategy for all the symbols that I trade and since Pine does not support library modules, include files or inter process communication this script and its unruly inputs are my weapon of choice in the war against the market forces. It takes me about six hours to configure a new symbol. Also not all the symbols I configure are equally successful. I should mention that I have a facsimile of this strategy written in another platform which allows me to run a backtest on 10 years of historical data. The results provide me a sanity check on the inputs I select on this platform.
My personal configurations use a 10 minute bar interval on forex instruments and 15 minutes on crypto. I try to align my TradingView scripts to employ standard intervals available from the broker so that I can backtest longer durations than those available on TradingView. For example, Bitcoin at 15 minute bars is downloadable from several sources. I really like the 10 minute bar. It provides lots of detectable patterns and is easy to store many years in an SQL database.
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configurations that I use for my own trading that I can share with you if you like. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
Step 1. Setup the Base currency and order size in the properties tab.
Step 2. Select the calculation presets in the Instrument Type field.
Step 3. Select “No Trade” in the Trading Mode field
Step 4. Select the Histogram indicator from Section 2. You will be experimenting with different ones so it doesn’t matter which one you try first.
Step 5. Turn on Show Markers in Section 2.
Step 6. Go to the chart and checkout where the markers show up. Blue is up and red is down. Long trades show up along the red markers and short trades on the blue.
Step 7. Make adjustments to “Base To Vertex” and “Vertex To Base” net change and ROC in Section 2. Use these fields to move the markers to where you want trades to be.
Step 8. Try a different indicator from Section 2 and repeat Step 7 until you find the best match for this instrument on this interval. This step is complete when the Vertex settings and indicator combination produce the most favorable results.
Step 9. Go to Section 4 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 5 and enable “Apply Blue Base To Base Margin”.
Step 11. Go to Section 2 and adjust “Minimum Base To Base Blue” and “Minimum Base To Base Red”. Observe the chart and note where the markers move relative to each other. Markers further apart will produce less trades but will reduce cutoffs in “Ping Pong” mode.
Step 12. Turn off Show Markers in Section 2.
Step 13. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Percentage is not currently supported. Note that the profit is taken as a conditional exit on a market order not a fixed limit. The actual profit taken will almost always be greater than the amount specified. The stop loss, on the other hand, is indeed a hard number which is executed by the TradingView broker simulator when the threshold is breached.
Step 14. Return to step 3 and select a Trading Mode (Long, Short, BiDir, Ping Pong). If you are planning to trade bidirectionally its best to configure long first then short. Combine them with “BiDir” or “Ping Pong” after setting up both sides of the trade individually. The difference between “BiDir” and “Ping Pong” is that “Ping Pong” uses position reversal and can cut off opposing trades less than the specified minimum profit. As a result “Ping Pong” mode produces the greatest number of trades.
Step 15. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 16. Make adjustments to the Vertex fields in Section 2 until the TradingView performance report is showing a profit. This includes the “Minimum Base To Base” fields. If a profit cannot be achieved move on to Step 17.
Step 17. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 4 and 5.
Step 18. Enable the “Mandatory Snap” checkbox in Section 4 and 5 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 19. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 4 and 5. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 20. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 4 and 5. This is an absolute value specified in the symbol’s quote currency (right side scale of the chart). This value is similar to the minimum profit and stop loss fields in Section 1.
Step 21. The “Buy Composite Strength” input works in tandem with “Long Decay Minimum Span” in Section 4. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Long Decay Minimum Span”.
Step 22. The “Sell Composite Weakness” input works in tandem with “Short Decay Minimum Span” in Section 5. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Short Decay Minimum Span”.
Step 23. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 4 and 5. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 24. At this point your strategy should be more or less working. Experiment with the remaining check boxes in Section 4 and 5. Keep the ones which seem to improve the performance.
Step 25. Examine the chart and see that trades are being placed in accordance with your desired trading goals. This is an important step. If your desired model requires multiple trades per day then you should be seeing hundreds of trades on the chart. Alternatively, you may be looking to trade fewer steep peaks and deep valleys in which case you should see trades at major turning points. Don’t simply settle for what the backtest serves you. Work your configuration until the system aligns with your desired model. Try changing indicators and even intervals if you cannot reach your simulation goals. Generally speaking, the histogram and Candle indicators produce the most trades. The Fractal indicator captures the tallest peaks and valleys. The Transform indicator is the most reliable but doesn’t well work on all instruments.
Example Settings
To reproduce the performance shown on the chart please use the following configuration:
1. Select XBTUSD Kraken as the chart symbol.
2. On the properties tab set the Order Size to: 0.01 Bitcoin
3. On the properties tab set the Pyramiding to: 10
4. In Section 1: Select “Forex” for the Instrument Type
5. In Section 1: Select “Ping Pong” for the Trading Mode
6. In Section 1: Input 1200 for the Minimum Profit
7. In Section 1: Input 15000 for the Stop Offset
8. In Section 1: Input 1200 for the Pyramid Minimum Span
9. In Section 1: Check mark the Ultra Wide Pyramids
10. In Section 2: Check mark the Use Transform Indicator
So to be clear, I used a base position size of one - one hundredth of a Bitcoin and allow the script to add up to 10 downward pyramids. The example back-test did hit eight downward pyramids. That means the account would have to be able to withstand a base position size (0.01) times 28. The resulting position size is 0.28 of a Bitcoin. If the price of Bitcoin is 35K then the draw down amount (not including broker fees) would be $9800 dollars. Since I have a premium subscription my backtest chart includes 20K historical bars. That's roughly six months of data. As of today, pro accounts only get 10K bars so the performance cannot be exactly matched with such a difference in historical data. Please keep that in mind.
There are, of course, various ways to reduce the risk incurred from accumulating pyramids. You can increase the “Pyramid Minimum Span” input found in Section 2 which increases the space between each pyramid trade. Also you can set a “Pyramid Bale Out Offset” in the same input section. This lets you out of the trade faster on position recovery. For example: Set a value of 8000 into this input and the number of trades increase to 178 from 157. Since the positions didn’t go full term, more trades were created at less profit each. The total brute force approach would be to simply limit the number of pyramids in the Properties tab.
It should be noted that since this is crypto, accumulating on the long side may be what you want. If you are not trading on margin and thus outright buying coins on the Kraken exchange you likely are interested in increasing your Bitcoin position at depressed prices. This is a popular feature on some of the other crypto trading packages like CryptoHopper and Profit Trailer. Click on Enable TV Long Only Rule in Section 1. This switches the signal emitter to long only. However, you may still see short trades on the chart. They are treated as a close instead of a reversal.
Feel free to PM me with any questions related to this script. Thank you and happy trading!
CFTC RULE 4.41
These results are based on simulated or hypothetical performance results that have certain inherent limitations. Unlike the results shown in an actual performance record, these results do not represent actual trading. Also, because these trades have not actually been executed, these results may have under-or over-compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated or hypothetical trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to these being shown.
Swing Trader-Pro V2The strategy- what is it?
This indicator is designed from a theory created by myself in order to distinguish a correction from an impulse. This comes down to the ability to compare "x" range of candles to "y" range of candles and highlight key differences to then correctly portray that the most recent move in price will be (or is) a correction.
Following this theory, we all understand that corrections don't go with the trend right? So this means at some point, there is a high probability of a rejection somewhere in this most recent move, that will ultimately push price higher or lower as it continues back with the trend. Therefore, through extensive quantitative research and back-testing, we are able to highlight areas of high-probability rejections within these supposed corrections.
How does it work?
Firstly, we need to establish a high and low point (using pivots ) that help us decide what the state is of the recent move between the high and low (we call this "point A" and "point B"). So we can only consider whether the recent move in price was an impulse or a correction until the move from "point B" to "point C" is made. But before that, once we have identified "Point A" and "point B", we use 2 (supposedly) strong levels which help integrate a box onscreen and thus, indicate this area of high liquidity. This box will continue to adjust according to the change of pivots (if price keeps creating HH's & HL's or LH's & LL's depending on market trend). But if we establish a strong high and low and price stays within this range, then the box will remain in place.
The default color of the box is red; the only time the color of the box will change is when:
- Price retraces from the high/low back to the box (price has to touch the box)
AND
-If any of our confirmations indicate a successful correction based on our theory.
So the box color varies:
- Red = very weak (or) no entry = no confirmations were made
- Yellow = weak entry = some but not all confirmations were made
- Green = strong entry = all confirmations have indicated that the move from "point B" to "point C" (remember that "point C" is where the box is) is a correction when compared with the move from "point A" to "point B"
These confirmations are all validated on the same candle during live candle activity (not when the candle has closed on the box). As this happens, the confirmations will determine the state of entry quality as soon as price touches the box.
In this time, we will see a new orange label highlighting what indicators have confirmed a successful correction and what haven't.
The label shows the different confirmation indicators in which we have provided different names (as this is the secret we intend to keep). So we have:
- "CC"
- "B1/B2"
- "B3"
Usually, we will see either an "OK" or "NOT OK" next to each confirmation indicator. This just tells us whether they have confirmed or not. Please note that this "point C" label does not stay permanently, regardless of the state of entry quality. The label will in fact stay on the screen until the next box has been generated, which is usually a few candles after the entry has been triggered.
Entries, SL's and TP's
This indicator shows the user an area of high-probability rejection. So in terms of specifying a precise entry, you're completely free to enter on the following:
- the moment price touches the box (depending on what color it is of course)
- the other end of the box (if you would like to catch a "sniper entry")
- or if price pierces the entire box and is still green, you can wait to see if price comes back through the box (which indicates a false breakout).
As for Stop-losses, i would recommend:
- Long entries: set your SL at the recent low (this should be "point A")
- Short entries: set your SL to the recent high (this should be "point A" as well, because if you're switching from the "long entry" setting to the "short entry" setting, the indicator labels flip around and are the opposite of what they are for long entries).
For Take profits, this is entirely up to the user. Because some entries will allow you to have great RR ratios depending on how you manage the active trades. Some recommendations below:
- Set TP to "point B" pivot
- Use trailing stop function or something similar if available
- Add other indicators such as the RSI and close when price reaches key levels
- When price shows signs of exhaustion or early stages of reversal then just close
Additional information and recommendations
- This works on any time frame and on any financial market, whether you prefer Forex, stocks, crypto, commodities , etc.
- In regards to trade direction, you can change in the settings to look for either long or short positions in the market. I would recommend using it in favor of the overall trend of the markets because you will find a lot better entries. Although, this does work against the trend at times as well. Additionally, this tool also works in consolidating markets which is beneficial.
- After becoming used to the script, i would say to apply it twice to your screen and have one looking for Long entries and the other looking for Short entries.
- As the user, you have the ability to remove the labels in the parameter settings (because it does look quite messy onscreen, especially if you have both long and short entries on at the same time). I would only personally show the labels when price hits the current box to see what confirmations have been identified.
- I will also provide the best parameters to use. You will only need one set of parameters for each long and short setting, as these parameters are universal for any time frame and any financial market.
FIRST UPDATE
After extensive back testing using our first version, we found that in fact, there are some great opportunities being wasted as the entry box stays red. This is due to some series of market structure that don't always fit our theory of continuations within the market. We found that although our theory is accurate, the amount of times the market fits this is more rare than times when price follows sequences. When we look for sequences in the market instead of specifying differences between impulses and corrections, we actually see areas of serious repetitiveness, thanks to how our indicator initially generates. Not how it confirms. So, understanding this new theory through one component of our previous indicator, we are still able to keep boxes at the same area yet accurately confirm more profitable entries external to our full previous strategy.
Moving towards the practical side of things:
-Make sure "add extra confirmation" parameter is selected, as this will allow the indicator to search for more valid entries rather than just our normal confirmations. (this is a tick box).
- Default parameters are already set for both C1 and C2
In a simple sense, this update is added to find more confirmations to turn more red boxes into green boxes based on other theories outside of our original one. How we do this exactly is part of the mystery.
SECOND UPDATE
- Fibonacci based moving average: using elements of the Fibonacci sequence and its relevance to being a hot-spot in price activity, we have integrated this into a moving average which is stronger than your usual MA. Here, you will notice it showing stronger signs of rejecting price, especially when trending. Hence, this is extremely useful to implement into your strategy as part of the trend identification. When price is consolidating, depending on how volatile or close-in the waves are during these periods, the FMA is similar to your typical MA, so therefore not so good. But the overall intention of this is to enhance your conclusion to whether price is trending and whether price is bullish or bearish.
- This is now a strategy, not just an indicator: So now we can choose from a huge variety of parameters in accordance to what ones work best with what pair, or time frame. The typical parameters to change would be the entry points, stop losses and take profits. We have also added in a "SL to entry" option. ALL PARAMETERS ARE FIBONACCI LEVELS AS THIS MAKES IT UNIVERSAL TO ANY PAIR/ TIME FRAME.
- Move the entry boxes : So this is very useful for certain pairs and mainly to help the user understand key sequences on a quantitative level. Sometimes we can notice that pairs spike higher than the typical entry (0.618) so we have allowed flexibility to the point where you can alter the box appearance to either the 0.618 level (default), 0.786 and the 0.9 level.
- Back-testing: Now the user can back-test the strategy and see the performance within any financial market you add this to! Please note that according to the strategy, once a trade is placed, it wont enter any more trades when the current one is still active. I have requested to change this, but it is out of our development team's reach. However, this doesn't discredit what the system can help you achieve, as you will still be able to find profitable parameters within the financial markets.
Strategy default properties
Backtest start: this date is when you would like to start the backtest, however, the indicator will go as far as the data can be read
Backtest end: choose your date to end the back test.
Trade session: choose the trading session you want this strategy to work on.
Filter by session: you can filter the backtested results depending on whether you want the strategy to take trades within the chosen trading session.
Filter by Fibonacci moving average: select this if you would like for the back tested results to consider whether the valid trade setups are in accordance to what the FMA displays (Bullish or Bearish). This is deselected.
Fibonacci Moving Average Timeframe: here you can select what timeframe you would like the FMA to work on, default is the “same as chart” button/ option.
TraderDirection: choose whether you would like LONG or SHORT entries for the indicator to find.
Max risk per trade: choose the risk setting per trade, i would suggest lowering this to 1% ((MODERATOR) This is the default setting!)
EntryFib: choose between the options as to where you would like the strategy to enter positions, the default is the 0.618 zone which is the closest side of the box to price. You will also see that when you choose to change this, the boxes on your screen will move accordingly. A very helpful function!
StopFib: choose your Stop Loss based on the same Fibonacci level as what you choose for your entry, remember that the higher the fib level, the higher (or safer) your Stop Loss is from price spiking. It all comes down to preference.
TakeProfitFib: choose your Take Profit based on the same Fibonacci level as what you choose for your entry, remember that the lower the fib level, the higher your Take Profit is again, It all comes down to preference.
BreakevenFib: the default setting is on “disabled” however when you select a certain Fibonacci level, once price reaches there during the active trade, your Stop Loss will be set to entry, this function is designed to stop volatile price fluctuations rendering your in-profit trade result to hitting your Stop Loss and losing when it closes out.
ADX + BB %B + AO + EMA by @DaviddTechThis trading strategy combines different indicators:
1) ADX , Average Directional Movement to make sure we are in a trend.
2) BB %B Bollinger Band %B: to spots relative price position to Bollinger Bands
3) AO Awesome Oscillator for momentum - you will need to configure this to fit the pair.
4) EMA 5, EMA 21, EMA 50, EMA 200: crossovers to get our entry short or long & trend direction
This script was inspired by TraderPro - Crazy 78% Win Rate Proven Trading Strategy Revealed - ADX + BB %B + AO + EMA
My settings are pretty much as default.
- I have added a 10,000 USD default
- 7% of portfolio is used to create the results.
You can of course optimize all of this in the settings.
WARNING:
- For purpose educate only
- Plots EMAs and other values on chart.
- This script to change bars colors.
Rosebud Trend Backtest [DepthHouse]*Past Performance Does Not Guarantee Future Results*
*Strategy created for backtesting purposes only.
*Backtesting assesses the viability of a trading strategy or pricing model by discovering how it would have played out retrospectively using historical data.
* Please be sure to read all updates below as the information below could change with future updates.
Rosebud Trend Indicator uses complex range calculations to easily detect trend changes, critical support and resistance levels, and even aid in spotting reversals. The Critical Support & Resistance Zones are plotted via the red and green cloud. This cloud not only visually displays the expected trend direction but often acts as major support and resistance zones. The outer band measures the expected range in which the assets trade over longer periods of time.
The Rosebud Trend Backtest combines the calculations of the ATR Auto Oscillator & the Rosebud Trend Indicator to demonstrate backtest performance.
// Settings //
Users can switch the ‘ Trend Sensitivity ’ between ‘ Low ', ' Med ', and ‘ High ’ to increase or decrease the rate at which the cloud changes.
By altering the S/R Band Thickness users can furthermore increase or decrease the rate at which a trend changes by altering the thickness of the cloud. Default is .50 however this can be lowered if needed.
Bar colors are generated by a combination of Rosebuds primary function and our ATR AUTO Oscillator base functions. Users have 3 bar color options to select from: Simple, Complex, and Off.
Simple: Bars colors alternate between shades of red and green based on the trend direction and the ATR Auto strength. The stronger the shade, the stronger the trend.
Complex: This adds a few extra variables to the script which generates a more complex bar color display. Using this option, Rosebud will generate light red bars in a bull trend if downward movement is strong and vice versa in a bear trend. It also will generate a purple bar if the candle successfully closes above or below the Top & Bottom Range Bands; We call this a range break, and it could be an early sign of strong upward or downward movement.
Off: In case you like to keep things even simpler, this option hides all overlay bar colors.
ATR Options: Used for Light & Strong Entries/Exits // Bar Colors also based on these settings
ATR Smoothed Signal Option: Turns advance smoothing on or off. On will reduce signal noise, while Off could land you that perfect bottom signal with a lower success rate.
ATR Candlestick Length: Default factor for bar color and shape generation, the higher the number the fewer signals that will generate.
ATR Candlestick Smoothing: Default smoothing for the Candlestick Length
Signal Lookback: Adjust the factor at which Bull, Bear, Up, and Down. Lower this to 2 for more signals.
// ⇅ BackTest Settings ⇅ //
Short Trading: Option to see backtest results for both long and short positions. Default is Long Only.
Strategy Entry Options:
Trend Only: Positions are entered right as there is a cloud trend change.
Light Entry: This enters a trade as soon as there is a breakout or breakdown signal generated from the ATR settings.
Strong Entry: Multiple conditions must be met; Price action must be near the Trend Base and must receive either a bullish or bearish crossover in the oversold or overbought range of the ATR Settings.
Strategy Exit Options:
Trend Only: Exits all positions after there is a primary trend change.
Light Exit: Exits a user set percentage of open positions when the ATR generates a breakdown or breakout. Will continue to do this at each occurrence. Presets are built in to keep these from triggering too often in volatile conditions.
Strong Exit: Exits a user set percentage of open positions when the ATR generates a bullish or bearish crossover in the overbought or oversold ranges. Will continue to do this with each occurrence. Presets are built in to keep these from triggering too often in volatile conditions.
Profit Points: Exits a set percentage of the position up to 3 times at a user set percentage gap from the entry. Any remaining amount in the position exits upon a trend change.
Profit QTY Percent: Percent of the position to exit when an exit condition triggers. This does not apply to the “Trend Only” exit option.
Profit Percent Gap: Percent gap for Profit Point Exits. Recommend adjusting based on timeframe. See example below.
Strategy TemplateTrying to include few basic things which is needed for strategy which can be used as template.
Few important components
Strategy parameters
Few important parameters include - initial_capital, default_qty_type, default_qty_value, commission_type, pyramiding and commission_value. All my strategies will have similar settings with initial captial set to 20000 to 100000. 100% of equity per trade with no pyramiding (set to 1) and minimal commission.
margin_long and margin_short can be used for leveraged trading. But, since we are not using pyramiding, it will make no effect.
Trade Limiting parameters
Two types of limiting is available in the scripts
Limiting trading direction : this is done through method strategy.risk.allow_entry_in and input parameter tradeDirection
Limiting trades to particular time window : This is achieved through adding start time and end time parameters of type input.time and check whether time is within this window
Custom Methods
customized security method to get higher timeframe data
customized moving average method to get moving average of any type
Custom Parameters
Moving average Type option list which I use quite often. Any strategy where there is need to use moving average, I try to scan through different moving average types and lengths to see which one is more appropriate for the given strategy. Hence, keeping this parameter in template to make it readily available when I start with new strategy
waitForCloseBeforeExit - this is used if trailing stop need to activated as soon as price hits the stop or only on close price. This is again something I switch quite often based on strategy. Hence, keeping this as part of the template.
Entry and Exit statements for long and short
These statements from line (57 to 62) can remain as is even with new strategy. Only thing to be set are variables - buyCondition, sellCondition, closeBuyCondition and closeSellCondition
Last but not the least
In pinescript, a long and short position cannot coexist in a strategy at any point of time. Any short positions created will automatically stop long positions and vice versa. Hence, it is important make short and long trades mutually exclusive. In this example, I have used 200 weekly moving average as trend bias. No short positions are taken when price is trading above 200 weekly moving average low/close and no long positions are taken when price is less than 200 weekly moving average high/close. Any rule built on top of this (In this case a simple supertrend rules) ensures that there are no conflicting signals and hence avoids confusing trades on the stratgy.
MACandles-LinearRegression-StrategyThis is combination of multiple indicators and strategies. Mainly useful for indexes and to time the entry and exits of indexes. No stoploss used - makes it less desirable for leveraged trades or trading individual stocks.
Let us rewind and look back at some of the indicators/strategies published earlier.
1. Moving Average Candles - this is one of my favourite tool for general trend filtering. Applying supertrend on moving average candles is one of the easiest ways to find reversal in trending market without exiting positions too early. Few scripts published on this basis are:
MA Candles Supertrend
MA Candles Supertrend Strategy
2. VixFix and Linear Regression - this itself is combination of two indicators.
Williams-Vix-Fix-Finds-Market-Bottoms - by @ChrisMoody
Squeeze-Momentum-Indicator - by @LazyBear
I have combined these two indicators to derive VIX-Fix linear regression to find absolute market bottoms. More description here:
VixFixLinReg-Strategy
VixFixLinReg-Indicator
Now, in this strategy, we combine all these together.
Derive moving average candles
Derive momentum of moving average candles
Derive Linear regression on momentum
Optionally, also calculate VIX Fix and Linear regression on VixFix momentum
To find market bottom:
There are two options
1. Use when momentum of MA candles hit bottom (red) and slowly turn up (orange). In aggressiveLong mode, signals are also generated when momentum starts going positive from negative.
2. Use Vix Fix linear regression of MA candles as described in the original script of VixFixLinReg-Strategy
To find market top
Here only Ma candles momentum decreasing is used as signal. If looking for longTrades , exit signal is generated only when momentum is turning negative extreme(orange). Or else, exit signal is generated when momentum has turned neutral.
At this stage, it is very much experimental - use it with caution :)
Crypto RSI with RVI StrategyThis is a long only strategy adapted for crypto market.
Its idea is to take the most juice out of a long trend and cut the losses as soon as possible.
For this , its components are RSI with a very big length - 100 or 200 preferably and RVI.
Rules for entry
If RVI is in the buy zone and we have a crossover from RSI with the overbought level.
Rules for exit
With change condition : If RVI is in the sell zone and we have a cross under from RSI with the oversold level.
With stop loss : we have a SL based on movement in % of the price, recommendable between 5-10%.
If you have any questions let me know !
CoinruleCombinedCryptoStratUtilizes a combination of RSI and MA to determine the best time to acquire cryptocurrencies and then sell when the markets are reaching peak prices. Best followed on lower time frames. Based on a strategy of averaging down during dips then selling at peaks with the highest volume first, then slowly liquidating as the price increases in percentage of holdings.
Forex bot full strategy with risk managementThis is a full strategy designed for forex major pairs, specially EUR/USD using 1h time frame chart.
Its components are
200 EMA
MACD
OBV
PSAR
RIsk management with tp and sl movements
Rules for entry
For long = Previous histogram from MACD was below 0 and current one is above 0. CLose of a candle is above EMA 200 , OBV oscillator is negative and we have an uptrend from PSAR
For short = Previous histogram from MACD was above 0 and current one is below 0. CLose of a candle is below EMA 200 , OBV oscillator is positive and we have an downtrend from PSAR
Rules for exit
For tp and sl values we calculate the distance from the close of candle until the psar values.
If you have any questions, let me know !
Sola Fide [Strategy]Sola Fide High Accuracy with ATR R:R
Indicators used:
- Stochastic RSI
- Chopiness Index
- RSI
- Ichimoku Cloud
- ATR
Script has been set up in strategy format to give backtesting data.
The strategy has been made for BTC and ETH pairs against USDT on the hourly timerframe
Currently outperforming the Buy and Hold Return on both assets.
This script has been made to make it easier to automate strategies on 3commas
In the settings you will see options for BTC strategy or ETH strategy
Choose the asset you are on, copy your 3commas Bot ID and Email token and paste them into the settings box for eachever asset you are on.
To receive the alerts set up within the strategy, in your alert message box use " {{strategy.order.alert_message}}"
This will then be able to send any orders taken on the tradingview script directly to your long or short bot on 3commas
This strategy is set up with a strict set of rules on the ATR for the Take profits and Losses.
There is a repaint warning because the code uses heikin ashi candles through the security function, the given entry and exit signals do not repaint,
I have been automating this for myself with no errors.
You don't need to use more than 3x leverage...
Past results do not guarentee future results.