Three EMAs Trend-following Strategy (by Coinrule)Trend-following strategies are great because they give you the peace of mind that you're trading in line with the market.
However, by definition, you're always following. That means you're always a bit later than your want to be. The main challenges such strategies face are:
Confirming that there is a trend
Following the trend, hopefully, early enough to catch the majority of the move
Hopping off the trade when it seems to have run its course
This EMA Trend-following strategy attempts to address such challenges while allowing for a dynamic stop loss.
ENTRY
The trading system requires three crossovers on the same candle to confirm that a new trend is beginning:
Price crossing over EMA 7
Price crossing over EMA 14
Price crossing over EMA 21
The first benefit of using all three crossovers is to reduce false signals. The second benefit is that you know that a strong trend is likely to develop relatively soon, with the help of the fast setup of the three EMAs.
EXIT
The strategy comes with a fixed take profit and a volatility stop, which acts as a trailing stop to adapt to the trend's strength. That helps you get out of the way as soon as market conditions change. Depending on your long-term confidence in the asset, you can edit the fixed take profit to be more conservative or aggressive.
The position is closed when:
The price increases by 4%
The price crosses below the volatility stop.
The best time frame for this strategy based on our backtest is the 4-hr. Shorter timeframes can also work well, although they exhibit larger volatility in their returns. In general, this approach suits medium timeframes. A trading fee of 0.1% is taken into account. The fee is aligned to the base fee applied on Binance, which is the largest cryptocurrency exchange.
Cari dalam skrip untuk "crypto"
Midas Mk. II - Ultimate Crypto Swing>> This scrip is only meant to be used in 4hour crypto chart <<
How It Works - To swing trade in a 4 hr candles, which has a much larger range than shorter timeframe candles, the script utilizes a longer timeframe ema, sma and MACDs to account for such. When the ema and sma crosses and the rate of change of the MACD histogram is in favor of the direction, then the system provides a long/short signal.
How To Use - The script works the best when the signal is in par with other analyses (trend, harmonic patterns, etc.) This script does not provide any exit signals , so I recommend exiting when the candle breaks out of the structure, or other strategies.
Updates or revisions will be recorded in the comments. Good luck with this script!
Scalping The BullNome: Scalping The Bull (Indicatore)
Categoria: Scalping, Trend Following, Mean Reversion.
Timeframe: 1M, 5M, 30M, 1D, secondo la conformazione specifica.
(follow description in english)
Analisi tecnica: l’indicatore supporta le operatività descritte nei video di YouTube del canale “Scalping The Bull”. Di norma si basa su price action e medie mobili esponenziali.
Le varie tecniche che possono essere usate insieme all’indicatore sono sintetizzate nei settaggi dell’indicatore e si può fare riferimento ai video specifici per la spiegazione completa.
Utilizzo consigliato: Altcoin che presentano forti trend per scalping e operazioni intra-day.
Configurazione: È possibile configurare lo strumento in maniera semplice e completa.
Medie:
Medie per mercato: e’ possibile utilizzare le medie mobili esponenziali (EMA) esclusivamente per il mercato Crypto (5/10/60/223).
Media addizionale: e’ possibile visualizzare una media aggiuntiva, e.g. a 20 periodi.
Elementi del grafico:
Sfondo: segnala con lo sfondo del grafico in verde una situazione di uptrend ( EMA 60 > EMA 223) e in rosso sfondo rosso una situazione di downtrend (EMA 60 < EMA 223).
Separatori di sessioni: indica l’inizio della sessione corrente.
Punti Trigger:
Massimi e minimi di oggi: disegna sul grafico il prezzo di apertura della candela daily e i massimi e i minimi di giornata.
Massimi minimi di ieri: disegna sul grafico il prezzo di apertura della candela daily, i massimi e i minimi del giorno prima.
(English description)
Name: Scalping The Bull (Indicator)
Category: Scalping, Trend Following, Mean Reversion.
Timeframe: 1M, 5M, 30M, 1D depending on the specific signal.
Technical Analysis: The indicator supports the operations described in the YouTube videos of the channel "Scalping The Bull". Usually it is based on price action and exponential moving averages.
The various techniques that can be used in conjunction with the indicator are summarized in the indicator settings and you can refer to the specific videos for the full explanation.
Suggested usage: Altcoin showing strong trends for scalping and intra-day trades.
Configuration:
Exponential Moving Averages
Per market: you can display averages exclusively for the Crypto market (5/10/60/223).
Additional Average: You can display an additional average, e.g. 20-period average.
Chart elements:
Session Separators: indicates the beginning of the current session.
Background: signals with the background in green an uptrend situation ( 60 > 223) and in red background a downtrend situation (60 < 223).
Trigger points:
Today's highs and lows: draw on the chart the opening price of the daily candle and the highs and lows of the day.
Yesterday's highs and lows: draw on the chart the opening price of the daily candle, the highs and lows of the previous day.
CryptoMettle - Crypto Market Support BandAs the name suggests, the Crypto Market Support Band has historically acted as a support band in bull runs. It refers to the band between the 20W Simple Moving Average (SMA) and 21W Exponential Moving Average (EMA).
Follow the Crypto ShortsThis script allows to test the impact of variations in the number of BTCUSD Shorts Positions on its price. In particular, it compares the number of short positions with its moving average to decide if shorts are being liquidated. In case the number of short positions crosses below its moving average, it will generate a Long Position, which will be closed if shorts crosses above its moving average.
Market Hedge RatioRatio of crypto (total, Bitcoin, or Ethereum market cap) to major stable coins.
A low ratio suggests a lot of people are sitting in cash (sidelined if crypto rallies).
A high ratio suggests possible demand saturation.
TrendsThe Trends indicator is created for trend trading and (Bitsgap) crypto bots of crypto assets over longer time periods.
Works best for 4h, Daily and Weekly candles (even Monthly), but unsuitable for hourly candles and day trading.
This indicator shows you if a crypto pair is in a Bear, Bull or Sideways market.
The idea is to simplify decision making when to sell or buy, or what pairs to use with trading bots.
Stick to the rule of not having bots in a Bear trend!
- Blue = Bull trend
- Red = Bear trend
- Green = Sideways trend - which can be profitable with trading bots
Spread CRYPTO USDT VS PERPSimple spread script.
Calculate the difference between USDT and USDTPERP for major exchanges.
For use only with USDT charts
Works with all crypto if a future contract exists.
Upcoming updates
Speculative Growth Map (FOR BITCOIN)With the ever-increasing volatility flooding the cryptocurrency markets how do you ever know which side of the coin do you lie on in your investments?
The Speculative Growth Map, SGM, aims to show investors whether they are buying into the hype or actually getting a good deal on their purchase. This indicator works by working out the growth of the asset divided into eight major sections and two extreme scenarios. The first four lines, indicated by red. show that if the market enters into that area you should not be purchasing any more assets for that market as the market has entered into optimized growth. The next four lines, in green, indicate that you should be looking into purchasing the asset as it has entered a dip or a pullback. Next up, the yellow lines, indicate an extreme growth or extreme pullbacks. If the market comes close to either of these, it indicates major price action is about to occur.
How does it actually work?
It's pretty simple.
The SGM indicator works by creating EMAs of the close multiplied by 1%, 5%, 7.5%, and 10% growths for the hodl region in red. Vice Versa, EMAs of -1%, -5%, -7.5%, and -10% growth to indicate it's time to buy the asset. The yellow lines essentially mark out the bottom and the tops whenever the price goes below and above the buy and hodl region and then separates them into two but similar lines for the top and the bottom.
TFO + ATR Strategy with Trailing Stop LossThis strategy is an experiment to learn what happens when The Trend Flex Oscillator (by Dr. John Ehlers) is used in conjunction with a volatility indicator like ATR. It was designed with cryptocurrency trading in mind.
The way I coded this experiment makes it unsuitable for bear market conditions.
When applied to a bull market, this trend-following strategy will open long positions when oversold price action appear to be reversing. It will typically close a position within a few days unless it gets caught in a bear market, in which case it holds on for dear life. I have tried to make back-testing very simple, but you should never trust it. It's merely and interesting tool for adjusting the many parameters that I've made editable in the configuration window. Those values include the ATR and TFO parameters, as well as setting a trailing stop loss. When closing a position, the strategy can optionally be told to ignore the trend analysis and only obey the trailing stop loss value. I've made an attempt to allow the user to define the minimum profit necessary to allow the strategy to close all all positions. In my observations, the 2H candlestick charts seem to produce the best results, although the parameters of the strategy could theoretically be adjusted to suit other time periods.
In summary...
This strategy has a bias for HODL (Holds on to Losses) meaning that it provides NO STOP LOSS protection!
Also note that the default behavior is designed for up to 15 open long orders, and executes one order to close them all at once.
Opening a long position is predicated on The Trend Flex Oscillator (TFO) rising after being oversold, and ATR above a certain volatility threshold.
Closing a long is handled either by TFO showing overbought while above a certain ATR level, or the Trailing Stop Loss. Pick one or both.
If the strategy is allowed to sell before a Trailing Stop Loss is triggered, you can set a "must exceed %". Do not mistake this for a stop loss.
Short positions are not supported in this version. Back-testing should NEVER be considered an accurate representation of actual trading results.
// portions © allanster (date window code)
// portions © Dr. John Ehlers (Trend Flex Oscillator)
This code is provided for educational purposes only. The results of this strategy should not be considered investment advice.
The user of this script acknowledges that it can result in serious financial loss when used as a trading tool
Trendalix EntriesThis script is made to simplify the analysis of trends. It changes the mas based on whether you're looking at stocks or crypto. As these 2 markets currently move differently, they need a slightly different approach.
Crypto trends:
Can move much faster than stocks. Ideally the price should be bouncing above the williams alligators (about the 20-30 MAs).
Stocks:
These swing more than crypto so you need to get deep into these swing to be buying at the bottom of a move. The MAs are much larger, between the 50ma and 400ma. It's much more important here that the slower MAs are strong, i.e 200ma is above the 400ma, than it is that the faster MAs are okay.
For stocks an entry and stop line is drawn. These are only visible when the market is sufficiently in a pullback.
Position size FX and CryptoThis indicator I am using to calculate the position size to order for Forex and Crypto Future
Swing Multi Moving Averages Crypto and Stocks StrategySimple and efficient multi moving average strategy combined with risk management and time condition.
Indicators/ Tools used
Multi selection moving average type like SMA , EMA , SMMA , VWMA , VIDYA , FRAMA , T3 and much more
Limit 1 entry max per week, entry on monday exit on sunday or risk management tp/sl.
Rules for entry:
LONG:Close of the candle cross above the moving average while the previous close was below. All of this is happening during monday session.
SHORT:Close of the candle cross below the moving average while the previous close was above. All of this is happening during monday session.
Rules for exit:
We exit either on sunday or if we reach tp/sl levels.
Observations:
I recommend use the strategy 2 types, one for long and another for short, using different parameters since long and short movements behave differently.
For example for long we can use a shorter moving average longth and a higher tp/sl while for short we can use a bigger moving average length and a smaller tp/sl
If you have any questions let me know !
Scalping Trading System ALERT Crypto and StocksThis is the alert version of the strategy with the same name.
Indicators
SImple Moving Average
Exponential Moving Average
Keltner Channels
MACD Histogram
Stochastics
Rules for entry
long= Close of the candle bigger than both moving averages and close of the candle is between the top and bot levels from Keltner . At the same time the macd histogram is negative and stochastic is below 50.
short= Close of the candle smaller than both moving averages and close of the candle is between the top and bot levels from Keltner . At the same time the macd histogram is positive and stochastic is above 50.
Rules for exit
We exit when we meet an opposite reverse order.
This strategy has no risk management inside, so use it with caution !
SSR - Stablecoin Supply Ratio - Bitcoin - CryptocurrencyThe Stablecoin Supply Ratio (SSR) is the ratio between Bitcoin supply and the supply of stablecoins, denominated in BTC.
When the SSR is low, the current stablecoin supply has more "buying power" to purchase BTC. It serves as a proxy for the supply/demand mechanics between BTC and USD.
SROC Crypto Index [upslidedown]The idea for this indicator is simple: Without a crypto index we want to somehow understand ROC across many assets. This will average out data across the top 5 (current) cryptos and provide a benchmark index.
I've recently been looking into momentum strategies more and how to utilize ROC as part of crypto trading. This indicator was born to fill a void as there is no great index like SPY for the crypto world.
Why would you do this? This gives a picture of overall market sentiment and allows you to move stock strategies that use an index to do things like tighten SL, take positions, move to cash, etc. into the cryptocurrency market.
The plotted line is super fat so you can plot individual lines and tell the index from the individual ticker apart. My suggestion is to pair this with a ROC or SROC for individual assets and to develop strategies from there.
WhaleCrew Crypto ArbitrageVisualizes the price difference (deviation) off BTC/ETH across multiple exchanges (Spot and/or Perpetuals)
Spot prices are represented by circles, while perpetual prices are shown as crosses.
Spot:
Binance
FTX
Bitfinex
Coinbase
Perpetuals:
Binance
FTX
Bybit
BitMEX
Baekdoo ANGN for cryptocurrencyHi forks,
I'm trader Baekdoosan who trading Equity from South Korea. This Baekdoo ANGN indicator plot volume when large volume trading happened.
I made this indicator for Korea stock trading. I put bars for large amount of trading happened. Let's say 1% of their market cap, then we can regarded this as very big amount of trading is going on.
But those function that drag into the chart of market cap works only on stock. so I put them into hardcoded value.
you can freely change value (since I put the variable into input, you can modify based on your needs).
And adding ANGN (An-Na-Gan-Ni?, means "are you still there? in Korean")
line for upgrade version of On Balance Volume (OBV).
OBV is very good indicator but when it has long tail and short body, it can have wrong indication of buying or selling from big whales. So ANGN with large volume indicator combination would gives you better idea for the big brothers buying or selling tracker.
hope this will help your trading on equity as well as crypto. I didn't try it on futures . Best of luck all of you. Gazua~!
BitMEX BTC Volatility IndexThis indicator displays the BitMEX BTC Volatility Index ( BVOL24H ) as an indicator and it can be compared to the VIX of the cryptocurrencies.
more information about how BVOL24H is calculated can be found here: www.bitmex.com
Symbol can be changed in the parameters
MACD Alert [All MA in one] [Smart Crypto Trade (SCT)]This code is a gift from "Smart Crypto Trade (SCT)" group
MACD indicator contains 3 EMA, I think one of the best usage of MACD is trend detection and divergences.
In our indicator, you can select the type of Moving averages that used in macd.
You can using "MACD" based on several types of moving averages including:
Exponential Moving Average ( EMA )
Volume-Weighted Moving Average ( VWMA )
Simple Moving Average ( SMA )
Weighted Moving Average ( WMA )
Exponentially Weighted Moving Average (RMA) that used in RSI
Smoothed Moving Average ( SMMA )
Arnaud Legoux Moving Average ( ALMA )
Double EMA ( DEMA )
Double SMA (DSMA)
Double WMA (DWMA)
Double RMA (DRMA)
Triple EMA ( TEMA )
Triple SMA (TSMA)
Triple WMA (TWMA)
Triple RMA (TRMA)
Linear regression curve Moving Average ( LSMA )
Variable Index Dynamic Average ( VIDYA )
Fractal Adaptive Moving Average ( FRAMA )
In other words we tried to collect all the most popular MAs in our MACD indicator.
In addition, you can use four types of alert or alarm conditions for detection LONG or SHORT positions and trends. For this, you must set an alert in alert tab and set the condition based on four defaults conditions.
Enjoy
Average Highest High and Lowest Low Swinger StrategyThis is a full price action strategy designed for trending markets such as crypto and stocks.
Its purely made on calculations for the highest high and lowest low using 2 different length , a faster and a slower one.
With those we make multiple averages.
Rules for entry:
For long: our close of the candle is above both the average using fast and slow line
For short: our close of the candle is below both the average using fast and slow line
Rules for exit
We always exit when we have an opposite order
Caution
This strategy use no risk management system, so be careful with it
If you have any questions, let me know
Webhook Starter Kit [HullBuster]
Introduction
This is an open source strategy which provides a framework for webhook enabled projects. It is designed to work out-of-the-box on any instrument triggering on an intraday bar interval. This is a full featured script with an emphasis on actual trading at a brokerage through the TradingView alert mechanism and without requiring browser plugins.
The source code is written in a self documenting style with clearly defined sections. The sections “communicate” with each other through state variables making it easy for the strategy to evolve and improve. This is an excellent place for Pine Language beginners to start their strategy building journey. The script exhibits many Pine Language features which will certainly ad power to your script building abilities.
This script employs a basic trend follow strategy utilizing a forward pyramiding technique. Trend detection is implemented through the use of two higher time frame series. The market entry setup is a Simple Moving Average crossover. Positions exit by passing through conditional take profit logic. The script creates ten indicators including a Zscore oscillator to measure support and resistance levels. The indicator parameters are exposed through 47 strategy inputs segregated into seven sections. All of the inputs are equipped with detailed tool tips to help you get started.
To improve the transition from simulation to execution, strategy.entry and strategy.exit calls show enhanced message text with embedded keywords that are combined with the TradingView placeholders at alert time. Thereby, enabling a single JSON message to generate multiple execution events. This is genius stuff from the Pine Language development team. Really excellent work!
This document provides a sample alert message that can be applied to this script with relatively little modification. Without altering the code, the strategy inputs can alter the behavior to generate thousands of orders or simply a few dozen. It can be applied to crypto, stocks or forex instruments. A good way to look at this script is as a webhook lab that can aid in the development of your own endpoint processor, impress your co-workers and have hours of fun.
By no means is a webhook required or even necessary to benefit from this script. The setups, exits, trend detection, pyramids and DCA algorithms can be easily replaced with more sophisticated versions. The modular design of the script logic allows you to incrementally learn and advance this script into a functional trading system that you can be proud of.
Design
This is a trend following strategy that enters long above the trend line and short below. There are five trend lines that are visible by default but can be turned off in Section 7. Identified, in frequency order, as follows:
1. - EMA in the chart time frame. Intended to track price pressure. Configured in Section 3.
2. - ALMA in the higher time frame specified in Section 2 Signal Line Period.
3. - Linear Regression in the higher time frame specified in Section 2 Signal Line Period.
4. - Linear Regression in the higher time frame specified in Section 2 Signal Line Period.
5. - DEMA in the higher time frame specified in Section 2 Trend Line Period.
The Blue, Green and Orange lines are signal lines are on the same time frame. The time frame selected should be at least five times greater than the chart time frame. The Purple line represents the trend line for which prices above the line suggest a rising market and prices below a falling market. The time frame selected for the trend should be at least five times greater than the signal lines.
Three oscillators are created as follows:
1. Stochastic - In the chart time frame. Used to enter forward pyramids.
2. Stochastic - In the Trend period. Used to detect exit conditions.
3. Zscore - In the Signal period. Used to detect exit conditions.
The Stochastics are configured identically other than the time frame. The period is set in Section 2.
Two Simple Moving Averages provide the trade entry conditions in the form of a crossover. Crossing up is a long entry and down is a short. This is in fact the same setup you get when you select a basic strategy from the Pine editor. The crossovers are configured in Section 3. You can see where the crosses are occurring by enabling Show Entry Regions in Section 7.
The script has the capacity for pyramids and DCA. Forward pyramids are enabled by setting the Pyramid properties tab with a non zero value. In this case add on trades will enter the market on dips above the position open price. This process will continue until the trade exits. Downward pyramids are available in Crypto and Range mode only. In this case add on trades are placed below the entry price in the drawdown space until the stop is hit. To enable downward pyramids set the Pyramid Minimum Span In Section 1 to a non zero value.
This implementation of Dollar Cost Averaging (DCA) triggers off consecutive losses. Each loss in a run increments a sequence number. The position size is increased as a multiple of this sequence. When the position eventually closes at a profit the sequence is reset. DCA is enabled by setting the Maximum DCA Increments In Section 1 to a non zero value.
It should be noted that the pyramid and DCA features are implemented using a rudimentary design and as such do not perform with the precision of my invite only scripts. They are intended as a feature to stress test your webhook endpoint. As is, you will need to buttress the logic for it to be part of an automated trading system. It is for this reason that I did not apply a Martingale algorithm to this pyramid implementation. But, hey, it’s an open source script so there is plenty of room for learning and your own experimentation.
How does it work
The overall behavior of the script is governed by the Trading Mode selection in Section 1. It is the very first input so you should think about what behavior you intend for this strategy at the onset of the configuration. As previously discussed, this script is designed to be a trend follower. The trend being defined as where the purple line is predominately heading. In BiDir mode, SMA crossovers above the purple line will open long positions and crosses below the line will open short. If pyramiding is enabled add on trades will accumulate on dips above the entry price. The value applied to the Minimum Profit input in Section 1 establishes the threshold for a profitable exit. This is not a hard number exit. The conditional exit logic must be satisfied in order to permit the trade to close. This is where the effort put into the indicator calibration is realized. There are four ways the trade can exit at a profit:
1. Natural exit. When the blue line crosses the green line the trade will close. For a long position the blue line must cross under the green line (downward). For a short the blue must cross over the green (upward).
2. Alma / Linear Regression event. The distance the blue line is from the green and the relative speed the cross is experiencing determines this event. The activation thresholds are set in Section 6 and relies on the period and length set in Section 2. A long position will exit on an upward thrust which exceeds the activation threshold. A short will exit on a downward thrust.
3. Exponential event. The distance the yellow line is from the blue and the relative speed the cross is experiencing determines this event. The activation thresholds are set in Section 3 and relies on the period and length set in the same section.
4. Stochastic event. The purple line stochastic is used to measure overbought and over sold levels with regard to position exits. Signal line positions combined with a reading over 80 signals a long profit exit. Similarly, readings below 20 signal a short profit exit.
Another, optional, way to exit a position is by Bale Out. You can enable this feature in Section 1. This is a handy way to reduce the risk when carrying a large pyramid stack. Instead of waiting for the entire position to recover we exit early (bale out) as soon as the profit value has doubled.
There are lots of ways to implement a bale out but the method I used here provides a succinct example. Feel free to improve on it if you like. To see where the Bale Outs occur, enable Show Bale Outs in Section 7. Red labels are rendered below each exit point on the chart.
There are seven selectable Trading Modes available from the drop down in Section 1:
1. Long - Uses the strategy.risk.allow_entry_in to execute long only trades. You will still see shorts on the chart.
2. Short - Uses the strategy.risk.allow_entry_in to execute short only trades. You will still see long trades on the chart.
3. BiDir - This mode is for margin trading with a stop. If a long position was initiated above the trend line and the price has now fallen below the trend, the position will be reversed after the stop is hit. Forward pyramiding is available in this mode if you set the Pyramiding value in the Properties tab. DCA can also be activated.
4. Flip Flop - This is a bidirectional trading mode that automatically reverses on a trend line crossover. This is distinctively different from BiDir since you will get a reversal even without a stop which is advantageous in non-margin trading.
5. Crypto - This mode is for crypto trading where you are buying the coins outright. In this case you likely want to accumulate coins on a crash. Especially, when all the news outlets are talking about the end of Bitcoin and you see nice deep valleys on the chart. Certainly, under these conditions, the market will be well below the purple line. No margin so you can’t go short. Downward pyramids are enabled for Crypto mode when two conditions are met. First the Pyramiding value in the Properties tab must be non zero. Second the Pyramid Minimum Span in Section 1 must be non zero.
6. Range - This is a counter trend trading mode. Longs are entered below the purple trend line and shorts above. Useful when you want to test your webhook in a market where the trend line is bisecting the signal line series. Remember that this strategy is a trend follower. It’s going to get chopped out in a range bound market. By turning on the Range mode you will at least see profitable trades while stuck in the range. However, when the market eventually picks a direction, this mode will sustain losses. This range trading mode is a rudimentary implementation that will need a lot of improvement if you want to create a reliable switch hitter (trend/range combo).
7. No Trade. Useful when setting up the trend lines and the entry and exit is not important.
Once in the trade, long or short, the script tests the exit condition on every bar. If not a profitable exit then it checks if a pyramid is required. As mentioned earlier, the entry setups are quite primitive. Although they can easily be replaced by more sophisticated algorithms, what I really wanted to show is the diminished role of the position entry in the overall life of the trade. Professional traders spend much more time on the management of the trade beyond the market entry. While your trade entry is important, you can get in almost anywhere and still land a profitable exit.
If DCA is enabled, the size of the position will increase in response to consecutive losses. The number of times the position can increase is limited by the number set in Maximum DCA Increments of Section 1. Once the position breaks the losing streak the trade size will return the default quantity set in the Properties tab. It should be noted that the Initial Capital amount set in the Properties tab does not affect the simulation in the same way as a real account. In reality, running out of money will certainly halt trading. In fact, your account would be frozen long before the last penny was committed to a trade. On the other hand, TradingView will keep running the simulation until the current bar even if your funds have been technically depleted.
Entry and exit use the strategy.entry and strategy.exit calls respectfully. The alert_message parameter has special keywords that the endpoint expects to properly calculate position size and message sequence. The alert message will embed these keywords in the JSON object through the {{strategy.order.alert_message}} placeholder. You should use whatever keywords are expected from the endpoint you intend to webhook in to.
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. Being a strategy type script 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.
Entry and exit use the strategy.entry and strategy.exit calls respectfully. The alert_message parameter has special keywords that my endpoint expects to properly calculate position size and message sequence. The alert message will embed these keywords in the JSON object through the {{strategy.order.alert_message}} placeholder. You should use whatever keywords are expected from the endpoint you intend to webhook in to.
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.
Setup
The following steps provide a very brief set of instructions that will get you started on your first configuration. After you’ve gone through the process a couple of times, you won’t need these anymore. It’s really a simple script after all. I have several example configurations that I used to create the performance charts shown. I can share them with you if you like. Of course, if you’ve modified the code then these steps are probably obsolete.
There are 47 inputs divided into seven sections. For the most part, the configuration process is designed to flow from top to bottom. Handy, tool tips are available on every field to help get you through the initial setup.
Step 1. Input the Base Currency and Order Size in the Properties tab. Set the Pyramiding value to zero.
Step 2. Select the Trading Mode you intend to test with from the drop down in Section 1. I usually select No Trade until I’ve setup all of the trend lines, profit and stop levels.
Step 3. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Remember that the profit is taken as a conditional exit 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 4. Apply the appropriate value to the Tick Scalar field in Section 1. This value is used to remove the pipette from the price. You can enable the Summary Report in Section 7 to see the TradingView minimum tick size of the current chart.
Step 5. Apply the appropriate Price Normalizer value in Section 1. This value is used to normalize the instrument price for differential calculations. Basically, we want to increase the magnitude to significant digits to make the numbers more meaningful in comparisons. Though I have used many normalization techniques, I have always found this method to provide a simple and lightweight solution for less demanding applications. Most of the time the default value will be sufficient. The Tick Scalar and Price Normalizer value work together within a single calculation so changing either will affect all delta result values.
Step 6. Turn on the trend line plots in Section 7. Then configure Section 2. Try to get the plots to show you what’s really happening not what you want to happen. The most important is the purple trend line. Select an interval and length that seem to identify where prices tend to go during non-consolidation periods. Remember that a natural exit is when the blue crosses the green line.
Step 7. Enable Show Event Regions in Section 7. Then adjust Section 6. Blue background fills are spikes and red fills are plunging prices. These measurements should be hard to come by so you should see relatively few fills on the chart if you’ve set this up as intended. Section 6 includes the Zscore oscillator the state of which combines with the signal lines to detect statistically significant price movement. The Zscore is a zero based calculation with positive and negative magnitude readings. You want to input a reasonably large number slightly below the maximum amplitude seen on the chart. Both rise and fall inputs are entered as a positive real number. You can easily use my code to create a separate indicator if you want to see it in action. The default value is sufficient for most configurations.
Step 8. Turn off Show Event Regions and enable Show Entry Regions in Section 7. Then adjust Section 3. This section contains two parts. The entry setup crossovers and EMA events. Adjust the crossovers first. That is the Fast Cross Length and Slow Cross Length. The frequency of your trades will be shown as blue and red fills. There should be a lot. Then turn off Show Event Regions and enable Display EMA Peaks. Adjust all the fields that have the word EMA. This is actually the yellow line on the chart. The blue and red fills should show much less than the crossovers but more than event fills shown in Step 7.
Step 9. Change the Trading Mode to BiDir if you selected No Trades previously. Look on the chart and see where the trades are occurring. Make adjustments to the Minimum Profit and Stop Offset in Section 1 if necessary. Wider profits and stops reduce the trade frequency.
Step 10. Go to Section 4 and 5 and make fine tuning adjustments to the long and short side.
Example Settings
To reproduce the performance shown on the chart please use the following configuration: (Bitcoin on the Kraken exchange)
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: 12
4. In Section 1: Select “Crypto” for the Trading Model
5. In Section 1: Input 2000 for the Minimum Profit
6. In Section 1: Input 0 for the Stop Offset (No Stop)
7. In Section 1: Input 10 for the Tick Scalar
8. In Section 1: Input 1000 for the Price Normalizer
9. In Section 1: Input 2000 for the Pyramid Minimum Span
10. In Section 1: Check mark the Position Bale Out
11. In Section 2: Input 60 for the Signal Line Period
12. In Section 2: Input 1440 for the Trend Line Period
13. In Section 2: Input 5 for the Fast Alma Length
14. In Section 2: Input 22 for the Fast LinReg Length
15. In Section 2: Input 100 for the Slow LinReg Length
16. In Section 2: Input 90 for the Trend Line Length
17. In Section 2: Input 14 Stochastic Length
18. In Section 3: Input 9 Fast Cross Length
19. In Section 3: Input 24 Slow Cross Length
20. In Section 3: Input 8 Fast EMA Length
21. In Section 3: Input 10 Fast EMA Rise NetChg
22. In Section 3: Input 1 Fast EMA Rise ROC
23. In Section 3: Input 10 Fast EMA Fall NetChg
24. In Section 3: Input 1 Fast EMA Fall ROC
25. In Section 4: Check mark the Long Natural Exit
26. In Section 4: Check mark the Long Signal Exit
27. In Section 4: Check mark the Long Price Event Exit
28. In Section 4: Check mark the Long Stochastic Exit
29. In Section 5: Check mark the Short Natural Exit
30. In Section 5: Check mark the Short Signal Exit
31. In Section 5: Check mark the Short Price Event Exit
32. In Section 5: Check mark the Short Stochastic Exit
33. In Section 6: Input 120 Rise Event NetChg
34. In Section 6: Input 1 Rise Event ROC
35. In Section 6: Input 5 Min Above Zero ZScore
36. In Section 6: Input 120 Fall Event NetChg
37. In Section 6: Input 1 Fall Event ROC
38. In Section 6: Input 5 Min Below Zero ZScore
In this configuration we are trading in long only mode and have enabled downward pyramiding. The purple trend line is based on the day (1440) period. The length is set at 90 days so it’s going to take a while for the trend line to alter course should this symbol decide to node dive for a prolonged amount of time. Your trades will still go long under those circumstances. Since downward accumulation is enabled, your position size will grow on the way down.
The performance example is Bitcoin so we assume the trader is buying coins outright. That being the case we don’t need a stop since we will never receive a margin call. New buy signals will be generated when the price exceeds the magnitude and speed defined by the Event Net Change and Rate of Change.
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.
Trend System Multiple Moving Averages RatingThis is a trend system made with multiple moving averages designed especially for trending markets such as stocks or crypto.
It can be used with any timeframe.
Its made of multiple moving averages such as
Simple
Weighted
Volume Weighted
Exponential
Double EMA
Arnaud Legoux
Hull MA
Smoothed
Least Squares
Kaufman Adaptive
Triple EMA
Zero Lag
Fractal Adaptive
Variable Index Dynamic Average
Jurik Moving Average
Tillson
Triangular
Avg of all moving averages
It has also a rating, making an avg from all of the moving averages , going from -100 (all ma's are telling to go short ) to 100 ( all ma are telling to go long).
If you have any questions let me know !