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.
在腳本中搜尋"crypto"
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 !
Traffic Lights Strategy4HS Crypto Market Strategy
This strategy uses 4 ema to get Long or Short Signals
Length are: 4, 9, 18, 100
We take long positions when the order of the emas is the following:
green > yellow > red (As the color of Traffic Lights) and they are above white ema (Used as a filter for long positions)
We take short positions when the order of the emas is the following:
green < yellow < red (As the color of inverse Traffic Lights) and they are below white ema (Used as a filter for short positions)
Enable Long and/or Short Positions in settings
Enable Profit and Stop in strategy settings with different percentage to backtest the strategy. Also if it is better to use a Traditional Stop Loss or a Trailing Stop Loss based on ATR
Change ema filter resolution in settings for better strategy performance
This Strategy was tested on Crypto Market with good results in assets as BTC, ETH, BNB, ADA, LTC, XLM, BCH, among others
Feel free to optimize this strategy, optimizing its parameters. Each asset has its own "personality".
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
Boltoc DominanceThis indicator is simply an oscillator form Bitcoin Dominance made to ease the process of comparing cryptocurrencies with Bitcoin's Dominance
Cryptobull | Long / Short IndicatorCryptobull is a indicator based on the Williams R and Bollinger Band to find Long / Short entries (together with your strategy).
!!! The indicator is not working in every market situation -> so i recommend to add the indicator to your existing strategy !!!
Designed for:
->15m Chart
->5m Chart
->Crypto
->(Stocks)
I recommend using this indicator with Price Action or your own strategy to enter trades.
Supertrend LSMA long StrategyThis is a long strategy which combines Super trend indicator with LSMA moving average.
In general it tends to works better with long trending markets such as stocks and cryptos using a big timeframe.
The rules are simple
Long entry:
Supertrend is telling us to go long and close of a candle is above moving average
Long exit:
Supertrend is telling us to go short
IF you have any questions, let me know !
BTC Sentiment analysis RSI 2xEMAThis is a CRYPTO correlation strategy, which is using BTC sentiment with BITFINEX long and short ratios.
WIth them we are making from one side 2 RSI, one for long and another for short. And from another side, we are going to make multiple EMA's, using the ratios for long and short.
Rules for entry
For this scenario I created a long only strategy.
The long entry condition is : we have a crossover of the rsi long ratio with rsi short ratio and long ratio from BITFINEX is above the long EMA and short ratio from BITFINEX is below short EMA.
We exit when we get the opposite condition, in this case we have a crossunder of the rsi long ratio with rsi short ratio and long ratio from BITFINEX is below the long EMA and short ratio from BITFINEX is above short EMA.
If you have any questions, let me know !
BTC Candle Correlation Strategy This is a special strategy adapted for crypto market, which instead of using the current chart candles, we use inside calculation a candle from different charts.
For best usage I recommend a big timeframe like 1-4h+.
In this case we take the high, low, open and close candles from different brokers for BTC, and with it we form up the candle that we are going to use for the logic of entry.
At the same time we are going to create an upper and lower bands using a moving average and the difference between high and low.
So in a way to put it, if BTC triggers a sell or buy order, we input instead these orders on the current chart, like in this example with ETH.
Rules for entry
For long : if we have a crossover of the btc source value with the upper band .
For short: if we have a crossunder of the btc source vale with the lower band.
For exit, we do it when we receive a different signal than the initial one.
This strategy does not have any other risk management inside, so use it with caution.
If you have any other questions, let me know !
Aggregated Volume Colored (Bitcoin, ETH, Altcoins, everything)BITSTAMP:BTCUSD
This indicator aggregates trading volume data of up to 10 symbols and can display the individual data by color.
It is useful for assets which are traded on multiple exchanges, like cryptocurrencies, commodities, forex and derivatives showing you what is happening across the market and on the individual exchanges to give you beter insights.
You can change the symbols from which the indicator gathers data in the settings under inputs, just like the colors, and you can add a moving average.
By default trading volume is aggregated from the following symbols:
Binance, BTC /USDT
Binance, BTC /BUSD
Bingbon, BTC /USD
Huobi, BTC /USDT
OkeX, BTC /USDT
Coinbase, BTC /USD
Bitfinex, BTC /USD
Gemini, BTC /USD
Kraken, XBT/USD
Bitstamp, BTC /USD
Kifier's ALT-COIN Failed Volume PressureGeneral Idea:
The basic idea is really simple - to detect during a bull-run, good mid-run entries or even predicting the start of a run, and the overcoming of the sell pressure, and I got this idea very naturally while looking back at my entries with ADA 6 months back. The indicator simply detects for you and alerts where volume reaches high reds but the actual price of the asset does not close lower than the previous open. This essentially shows a rejection of the selling pressure, and usually if either in a stagnant or bullish trend will just result in a bullish trend. It’s also great to detect entries into a bull-run mid way, which can happen quite often with cryptos. Due to the reliance of volume in this one, it’s probably best to stick with mid to low cap alt-coins, as BTC and even ETH at this point have a more complicated price action trends.
Usage:
It’s built ideally for long-term timeframes, so 1D is the minimum in my opinion, and it should be used in combination with other indicators to confirm entries and market conditions, plus fundamental analysis is VERY important when it comes to trading with volume as a leading indicator in lower cap alt-coins.
Structure:
The blue line is an average of the volume over a period while the yellow is the current volume, this makes it easy when a volume anomaly occurs and essentially a massive sell-off.
The green/red lines at the bottom unimaginatively is just a simple trend indicator based of two EMAs.
I also want to attempt to make a version for smaller time-frames as well, which needs to also account for market noise and a better trend detection but that’s for a future time.
It’d be great to hear feedback and even ideas on beneficial changes!
Financial Astrology Crypto ML Daily TrendThis daily trend indicator is based on financial astrology cycles detected with advanced machine learning techniques for the crypto-currencies research portfolio: ADA, BAT, BNB, BTC, DASH, EOS, ETC, ETH, LINK, LTC, XLM, XMR, XRP, ZEC and ZRX. The daily price trend is forecasted through this planets cycles (angular aspects, speed, declination), fast ones are based on Moon, Mercury, Venus and Sun and Mid term cycles are based on Mars, Vesta and Ceres. The combination of all this cycles produce a daily price trend prediction that is encoded into a PineScript array using binary format "0 or 1" that represent sell and buy signals respectively. The indicator provides signals since 2021-01-01 to 2022-12-31, the past months signals purpose is to support backtesting of the indicator combined with other technical indicator entries like MAs, RSI or Stochastic. For future predictions besides 2022 a machine learning models re-train phase will be required.
The resolution of this indicator is 1D, you can tune a parameter where you can determine how many future bars of daily trend are plotted and adjust an hours shift to anticipate future signals into current bar in order to produce a leading indicator effect to anticipate the trend changes with some hours of anticipation. Combined with technical analysis indicators this daily trend is very powerful because can help to produce approximately 60% of profitable signals based on the backtesting results. You can look at our open source Github repositories to validate accuracy using the backtesting strategies we have implemented in Jesse Crypto Trading Framework as proof of concept of the predictive potential of this indicator. Alternatively, we have implemented a PineScript strategy that use this indicator, just consider that we are pending to do signals update to the period July 2021 to December 2022: This strategy have accumulated more than 110 likes and many traders have validated the predictive power of Financial Astrology.
DISCLAIMER: This indicator is experimental and don’t provide financial or investment advice, the main purpose is to demonstrate the predictive power of financial astrology. Any allocation of funds following the documented machine learning model prediction is a high-risk endeavour and it’s the users responsibility to practice healthy risk management according to your situation.
Aggregated VolumeBITSTAMP:BTCUSD
This indicator aggregates trading volume data of assets which are traded on multiple exchanges (like cryptocurrencies, commodities, forex and derivatives) to give you better insights on the markets.
You can change the markets from which the indicator gathers data in the settings under inputs.
By default, data is aggregated from the following markets:
Binance, BTC /USDT
Binance, BTC /BUSD
Bitfinex, BTC /USD
Coinbase, BTC /USD
Bingbon, BTC /USD
Bitstamp , BTC /USD
Kraken, XBT/USD
Gemini, BTC /USD
OkeX, BTC /USDT
Huobi, BTC /USDT
Average EnvelopeA script to calculate a support / resistance level which acts as either a bounce level or a flip level. This is rather a macro play guide than a day trade tool.
The average is calculated by taking into account monthly/weekly/daily highs and average them out.
The script also paints fib levels based on the values of the upper and the lower band.
While this was designed with a cryptocurrency market in mind (no 'close' values per-se) it holds with traditional markets as well.
[francrypto® strategy] 4 EMAs, P.SAR & Vol.Prof. (by kv4coins)(ENG)
This script consists of my own strategy for cryptocurrency (but can be adapted very well for stocks, forex, etc.)
Is a combination of:
- Four Exponentials Moving Average (EMA), configurables: by defect are 10, 21, 55 and 200 periods in yellow, aqua, orange and blue each of them
- Parabolic SAR System (PSAR), configurable
- Volume Profile (that has been developed by kv4coins - he has already authorized me to use it under the same OSS Licence Terms: MPL 2.0), configurable: with another default values and bilingual support for Spanish (SPA)
How it works
1) It is always better to detect specifics candlesticks or patrons: doji , pinbar or inverted pinbar , engulfing bars , morning star or evening star , harami , twizzer bottom or top , etc.
2) The 10 and 21 periods EMA help to identify the short-term behavior
3) The 55 periods EMA can be used like a support or resistance in medium-term, as 200 periods EMA in very long-term
4) It will convenient search for a double cross (10 & 21) or a triple cross (10, 21 & 55) to determine the medium-term change Downtrend to UpTrend (or viceversa)
5) Confirm the change patron with the Parabolic SAR and then identify potencials purchases or sales
6) Use Volume profile to detect potential supports or resistances areas, in order to set stop limit/loss and take profit orders.
Hope this helps!
Cheers,
FRANCRYPTO®
–––––– 0 ––––––
(ESP)
Este script consiste en mi propia estrategia para criptomonedas (pero puede adaptarse muy bien para acciones, forex, etc.)
Es la combinación de:
1) Cuatro Medias Móviles Exponenciales (EMA), configurables: por defecto son de 10, 21, 55 y 200 períodos en amarillo, turquesa, naranja y azul cada una de ellas
2) Sistema Parabolic SAR (PSAR), configurable
3) Perfil de Volumen (que fuera desarrollado por kv4coins - que ya me ha autorizado a su uso bajo las mismas condiciones de la Licencia OSS: MPL 2.0), configurable: con otros valores por defecto y soporte bilingüe para Español (SPA)
Cómo funciona
1) Siempre va a resultar mejor detectar velas japonesas específicas o patrones: doji , martillos o martillos invertidos , velas envolventes , patrón amanecer o atardecer , harami , velas gemelas , etcétera
2) La EMA de 10 y 21 períodos ayudan a identificar el comportamiento de corto plazo
3) La EMA de 55 períodos puede ser usada como un soporte o resistencia de mediano plazo, como así también, la EMA de 200 períodos en el muy largo plazo
4) Será conveniente buscar un doble cruce (10 & 21) o un triple cruce (10, 21 & 55) para determinar un cambio de la tendencia de mediano plazo de bajista hacia alcista (o viceversa)
5) Confirmá el patrón de cambio con la Parabólica de SAR y entonces identificá potenciales compras o ventas
6) Usá el perfil de volumen para detectar las potenciales zonas de soporte o resistencia, principalmente para establecer ordenes stop limit/loss o take profit.
¡Espero que pueda serles de utilidad!
Saludos,
FRANCRYPTO®
MACD EMA - TradingRush StrategyHey there!
Today I present you a rather simple, but very profitable MACD strategy. Since I trade it with cryptocurrencies, the settings have been adjusted.
I discovered the strategy on a YouTube channel and tried to transfer it as a strategy into a script.
Tested with the crypto pair ETH/USDT in the 15 minute chart.
There is the possibility to switch between short and long positions.
-----------------------------------------------------------------------------------
How does the strategy work?
ENTRY
The MACD indicator must cross below the histogram. If it crosses when the price is below the EMA, only short positions are traded. Above the EMA - long.
EXIT
The Lowest Low (long) / highest high (short) serves as the stop loss. The TP is formed on the basis of a factor. (SL multiplied by factor 2.1 = TP).
The red lines are used to illustrate the SL. Above for short positions below for long positions.
The results of the strategy are without commissions and levers.
If you have any questions or feedback, please let me know in the comments.
If you need more information about the strategy and want to know exactly how to apply it, check out my profile.
I wish you good luck with the strategy!
All in One Strategy no RSI Label - For higher dollar cryptoThis is the All in One Strategy without the RSI suggestion label that will work well for any of the crypto currencies trading above $500 so the overlay shows up better. I am using ETH as an example on this.
Based on some comments on my previously published script that has been replaced I have added Alert Conditions to this version that can be used in other bots. You can also copy and paste these alert conditions into the other All in One script I published for the lower priced cryptocurrencies.
To use the alert conditions I have in here, you will need to convert this strategy into a study to do so. Delete the entry and exit logic at the end (lines 299 through 351), delete line 18 and paste the following in place of line 18:
study(shorttitle='Ain1 No Label',title='All in One Strategy no RSI Label', overlay=true, scale=scale.left)
Here are the settings to mimic what you see here in the back test strategy I am publishing. Remember that previous results do not guarantee future results.
Chart Time = 30 Minutes (if you didn't read my original All in One post, read it. Shorter isn't better. You lose your money faster in a shorter amount of time and I learned that the hard way)
Start Time = 1 April 2021 00:00
End Time = 31 December 2021 00:00
Trade Type = Long/Short
Stop Loss % = 20.1
Take Profit % = 14.57
RSI Length = 20
Overbought = 44
Oversold = 45
EMA Fast Length = 5
EMA Slow Length = 15
Overbought Lookback Minimum Value = 62
Overbought Lookback Bars = 3
Oversold Minimum Value = 43
Oversold Lookback Bars = 5
Source = Close
Max Lookback Period = 5
Use EMA Only = True (check the box)
K = 9
D = 17
K Mode = SMA
High Source = ohlc4
Low Source = ohlc4
Properties - Starting Amount is $3500, everything else is the same.
Any questions, feel free to ask. I will answer as soon as I can.
MACD Signal with RSI Indicating StrategyThis strategy looks for MACD signal crossover and RSI confirmation of oversold/overbought condition.
Tune to your crypto/stock for best results using the strategy and sent an alert. Currently set up to use 25% of equity at each buy signal and will sell 1/3 of position at each sell signal. Initial investment is $1000, but adjust as necessary.
Currently tuned to DOGEUSD on 30min chart.
If you like/use/profit, follow me or shoot me a donation. If you are looking for a script design, I can help.
Liquidation Levels
I got sick of calculating leverage all of the time, so I made this real time calculator. It is primarily for crypto derivatives.
It tracks and displays the liquidation price for 5 customisable leverage levels and plots them either historically and/or in real time, with labels beside each including the estimated price.
These calculations include maintenance margin and can be configured for linear futures (USDT) or non-linear futures. Never again make dumb mistakes that are obvious with a bit of maths.
To jazz it up, you can customise the colours, disable various labels, set different leverage multiples, and change the offsets and number of bars to plot in the past.
Alternatively, you can change the offset to 24 on an hourly chart and change show last bars to 0. By doing this, you can see which levels most often get liquidated. It is crude, I know, and there are better tools for tracking liquidation hunts. This is not an attempt to replace or compete with them.
Enjoy and trade safely.
Extremely Overfit Bitcoin Long/ShortThis is a highly overfit (in my opinion) script to long/short BTC on the 15m time frame. May be usable for other cryptocurrencies or timeframes with some parameter adjustments. I backtested it on a few exchanges with ETH.
The simplest way to increase the number of trades is to decrease the "FastChannelLength" parameter or increase the "SlowChannelLength" parameter, or both. Decreasing the margins of the channels also increases the number of trades. In GENERAL, you should expect that adding more trades will hurt profitability, because, as the title says, this script is extraordinarily overfit.
It does include a commission fee from the start, which I find is essential to not providing an overly rosy view of how a strategy would work.
Moritsz's Customized RSIBasically just your standard RSI with a twist. Key differences:
1. Overbought and Oversold levels are moved to a higher and lower level following the nature of cryptocurrency.
2. Added a middle trendline at 50. Above is usually an uptrend, below is a downtrend.
3. Better looking than your typical RSI.
4. Nice pretty colors to please your eyes :)
Enjoy.
USD Prices for Uniswap Token/WETHUniswap instrument prices are in WETH. This indicator translates the series to USD prices and plots the series as candles or as a line. Data is translated by using corresponding series data for ETHUSD. The reference ETHUSD price is from Coinbase.
Any token listed as a ETH/WETH pair could be specified as an input parameter. The default instrument value is set to UNISWAP: DPIWETH, an index created by indexcoop and tracking the DEFI basket.
The script is simple and easy to understand. It allows for quick conversion and comparisons and something we had to do in a custom way prior to this script. The crypto and DEFI community would benefit from it immensely. There is even a feature request for something like this on the tradingview subreddit.
Annualised Price Volatility % CRYPTO dailiesThis is the correct annualisation for crypto currencies (continually traded). It is the rolling 1m vol using 30 days (instead of 25) and an annualisation factor of sqrt(365) not sqrt(252).