Mazuuma Churn IndicatorThis indicator was specifically made to confirm a periode of sideways movement (churn) on Bitcoin. It can probably be used for other cryptocurrencies as well. I use it on the daily timeframe.
Yellow means "Unconfirmed".
Orange means "Partially Confirmed".
Red means "Confirmed"
The indicator is not perfect, so use your common sense.
Churn starts when at least 2 of the conditions below are met (use also your common sense):
1. ATR < MA 20 on ATR
2. Distance to EMA 200 must be ≤ 16% at “Open churn”
3. EMA 12 on RSI between 40 and 60
4. ADX < 25
The above are weighted. Meaning no 1 has most significance. The numbers can be tweaked.
Reversal coming
* The indicators above break out, especially the ATR
* Color shift of the Heikin Ashi candle on weekly timeframe
* Engulfing candle on weekly timeframe
Because of the offset of the EMA 200, the precision of the Churn predictor can be off after a VERY big spike up or down, e.g. dec 2017. After such a spike use your common sense.
Personally I use this for bot trading, i.e. turn off trend following bots when in sideways market and use grid bots or other means of trading instead.
Komut dosyalarını "市值60亿的股票" için ara
watermarkJust for fun... watermark graphics! The steps are:
1. Choose an image, probably no more than 20x20 pixels
2. Use an image library to convert each pixel into a table cell, as shown in the script.
I used they Python "pillow" library for step 2. This library allows you to iterate over each pixel, grab the RGB value, and generate table cells. You can use the width/height attributes of each cell to size the watermark.
Be careful, because Pinescript has a maximum character limit around 60,000 or so, and this script will reach that limit quickly. You also run into some limitation on table size, I think. That's why I suggest using no more than a 20x20 image.
Pictured in this chart is a legendary trader... message me if you would like to commission your own watermark.
Ichimoku+Based on the ichimoku cloud system, this indicator gives two presets: Standard (9/26/52/26) and Crypto (20/60/120/30).
This also shows on a chart where Tenkan-Kijun cross happens and when a Kumo Twist happens.
VixFix RVol + EMAThis indicator plots Realised Volatility (measured using VixFix method) against its long-term exponential moving average.
RVol breaking above its EMA = Sell signal
RVol breaking below its EMA = Buy signal
60-day VixFix look back period and 900 day EMA work well for lower volatility tickers (equity ETFs, megacap stocks). Higher volatility tickers could benefit from shorter look back period and EMA.
Sentiment Estimator [AstrideUnicorn]Sentiment Estimator is an indicator that estimates market sentiment using only its pricing data. It counts bullish and bearish candles in a rolling window and calculates their relative values as percentages of the total amount of candles in the window. Market sentiment shows the direction in which the market is biased to move or the current trend direction. Extreme values of the market sentiment are contrarian signals. When the market sentiment is too bullish, it is time to sell and vice versa.
HOW TO USE
Sentiment Estimator plots a pair of green and red circles for each candle. They represent bullish and bearish sentiments, respectively.
The vertical positions of the circles show corresponding sentiment values in percentage units. For example, if a green circle's height is 60, the market is 60% bullish. In this case, the red circle's height will be 40, as bullish and bearish parts of the market sentiment sum to 100%.
The blue line plotted at the 50% level shows the neutral sentiment level. If a green circle is above the blue line, the prevailing market sentiment at that time is bullish, and the market is biased to move up. If a red one is above, the market has predominantly bearish sentiment and is prone to move down.
The red level shows extreme sentiment level. If a green or red circle is above this line, it means that the market is extremely bullish or bearish, respectively. It is a contrarian signal, and one can expect a reversal soon. In this case, a blue label with the text "reversal expected" is shown.
SETTINGS
Timeframe - allows choosing a timeframe other than the chart's one for the indicator calculation.
Look-Back Window - sets the historical window length used to perform the calculations. You can adjust the window to get the best results for a particular market or timeframe.
EMA TrendSurfer - RamRapoluThis is a TrendSurfer.
Do a Top Down Approach/Analysis.
TimeFrames :
1) Daily and 4H for Identifying Trend.
2) 1H for Entries
Rules of Entry
1) Identify All EMA are Spawning Parallelly and not Crossing on Daily and then 4H.
if Point 1 is true, then
2) Identify if the EMA are spawing well like in point1.
3) Wait for Candle breaking into 21 EMA.
4) once it breaks 21EMA and does not Touch 60EMA
then
1) if its uptrend/Long position
Entry:
Your Recent High + 21 ATR = Buy Stop Order
Stop Loss (SL) : your 60 EMA - 21 ATR
Target Profit(TP) :
TP1 : 1x SL, Sell 50% then move SL to 60EMA when TP1 hits
TP2 : 2x SL, Sell 50% then move SL to EMA when TP2 hits
TP3 : 3x SL, Sell 50% then move SL to EMA when TP3 hits
Rebalance as a Bear/Bull indicatorCheck if the current market has a Bear tendency or a Bull tendency.
Bear areas are marked as red squares going down from 0.
Bull areas are marked as green squares going up from 0.
Buying/Selling windows of opportunity
On top of the Bear/Bull squares, this indicator tries to show you the windows where to look for good buying/selling opportunities.
These are marked as full columns:
Blue columns represent a window to look out for good buying opportunities
Pink columns represent a window to look out for good selling opportunities
How is this possible?
This is an indicator of a simple idea to check if the market has a Bear or Bull tendency:
1. Start with a virtual portfolio of 60/40 tokens per fiat.
2. Rebalance it when its ratio oscillates by a given % (first input)
3. Count the number of times the rebalancer buys, and sells
4. When the number of buys is greater than the number of sells => the market is going down
5. When the number of sells is greater than the number of buys => the market is going up
This is shown as the "Bear/Bull Strength" squares (red when bear, green when bull)
An extra rebalancer is also kept that works at each bar (regardless of the input %).
This is used to calculate an amount of tokens beying sold/bought and used as a "market force" coefficient.
Another extra: based on both the bear/bull strengh and market force an attempt is made to
provide good buying/selling windows of analysis.
The blue background is a buying opportunity, the red background is a sell opportunity.
In a bear market sales are delayed, and in a bull market buys are delayed.
MAROC Fast/SlowNot sure if a similar indicator already exist, so I created my own. After creating this indicator, I realize it looks very similar to MACD. However, it strictly uses Hull moving average in its calculation for the lines.
MAROC is simply Moving Average Rate of Change. This is a trend-following indicator that calculates the rate of change on two Hull moving averages. By default it calculates the ROC on 60-period HMA (green and red) and 180-period HMA (blue and orange). The zero line represents the confirmation of change in trend. Above zero is up trend and below zero is down trend. Note the difference between the "trend reversal" and the "confirmation of a trend". I like to define trend reversal by the change in direction
The colored squares on the zero line has 4 colors that represents the overall trend. Here I include the slowdown of MAROC as the start of a trend.
- bright green = when both the slow and fast MA are trending up
- faded green = when slow MA trending up, but fast MA trending down
- faded red = when slow MA trending down, but fast MA trending up
- bright red = when both the slow MA and fast MA are trending down
Trend changes triangles are shown to signal the change in trend direction (trend reversal). Green and blue triangles are trend reversal to the upside. Red and orange triangles are trend reversal to the downside.
This indicator includes the option of displaying buy(long) and sell(short) signals that follows these rules. Use at your own discretion, as it may not apply well with your market or ticker.
- Long = Bright green square and either fast or slow MAROC changes trend direction to the upside
- Short = Bright red square and either fast or slow MAROC changes trend direction to the downside
Enjoy~! Please let me know if you find this useful and which market / ticker and timeframe you are using it on~ :)
Bollinger Band Breakout Positional Strategy- BN -15M This strategy consists of following criteria:
Buy:
1. Candle should have RSI is above 60 and Close above Bollinger band upper limit
2. Exit When candle is closed below 20MA
Sell:
1. Candle should have RSI is above 40 and Close below Bollinger band lower limit
2. Exit When candle is closed above 20MA
Checkout results.
Baekdoo compressed multi EMA box and its crossover indicatorHi forks,
I'm trader Baekdoosan who trading Equity from South Korea. This Baekdoo compressed multi EMA box and its crossover indicator tells us good trading time for swing trading.
Here is the idea. As you can see formula, I put ema of 5 days to 100 days.
and draw box when all disparity of the EMAs are less than 5%
I put those value in input variable as 105 (100 means same as max/min disparity ratio, 105 means max is 5% greater than min). This can be used 110 (10% of box) based on your needs.
Once box are drew, I put indicator when it crossover the box with 5 times larger than 60 days' highest volume. Then I put triangle indicator. This will be good trading point for short-mid term trading. you can check historical chart to evaluate this.
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~!
alerts++- Add up to 20 simple alerts per instance
- Each alert requires input of ticker, timeframe, over/under/either, target price
i.e. 'KUCOIN:BNB/USD', '60', 'over', '535'
- Each alert fires once per bar, so choose your timeframe wisely.
- Timeframe options: www.tradingcode.net
Caveats:
- You must manually set the alert group by clicking "add alert" and then selecting name of script, "alert++"
- If you make changes to the settings inputs, you have to delete the previous alert and add a new alert for the changes to take effect. That is, tradingview only "remembers" the state of your chart and settings at the time you set the alert (group).
TimeframeToMinutesLibrary "TimeframeToMinutes"
The timeframeToMinutes() function returns the number of minutes in an arbitrary timeframe string.
timeframeToMinutes()
Returns the number of minutes in the supplied timeframe string, which is arbitrary, i.e. it doesn't have to be the timeframe of the current chart but can be taken from an input.
The sole advantage over the short and neat Pinecoders f_resInMinutes function from their excellent MTF Selection Framework (at ) is that this one doesn't use up a security() call.
To convert the other way, from minutes to timeframe.period format, I would use the f_resFromMinutes function from the Pinecoders' MTF Selection Framework, which does not use security().
ERROR-CHECKING: It has light error-checking to try to make sure the string is in the format timeframe.period, e.g. 15S, 1 (minute), 60 (1H), 1D, 1W, 1M.
It will throw an error for some non-standard timeframes such as 30 hours (1800 minutes). Above 1440 minutes, only whole numbers of days are allowed. This is to be consistent with the security() function.
But it will allow some non-standard timeframes such as 7 hours (420 minutes). Such timeframes must still be supplied in the standard timeframe.period format.
param _tf
The timeframe to convert to minutes. Must be in timeframe.period format.
returns
An integer representing the number of minutes that the timeframe period is equivalent to.
ColorExtensionLibrary "ColorExtension"
Color Extension methods.
hsl(hue, saturation, lightness, transparency) HSL color transform.
Parameters:
hue : float, hue color component, hue is a degree on the color wheel from 0 to 360. 0 is red, 120 is green, 240 is blue.
saturation : float, saturation color component, saturation is a percentage value, 0 means a shade of gray and 100 is the full color.
lightness : float, lightness color component, Lightness is also a percentage; 0 is black, 100 is white.
transparency : float, transparency color component, transparency is also a percentage; 0 is opaque, 100 is transparent.
Returns: color
rgb_to_hsl(red, green, blue) Convert RGB to HSL color values
Parameters:
red : float, red color component.
green : float, green color component.
blue : float, blue color component.
Returns: tuple with 3 float values, hue, saturation and lightness.
complement(primary) Complementary of selected color
Parameters:
primary : color, the primary
Returns: color.
invert(primary) Inverts selected color.
Parameters:
primary : color, the primary.
Returns: color.
is_cool(base) Color is cool or warm.
Parameters:
base : color, the color to check.
Returns: bool.
temperature(base) Color temperature.
Parameters:
base : color, the color to check.
Returns: bool.
is_high_key(base) Color is high key (orange yellow green).
Parameters:
base : color, the color to check.
Returns: bool.
mix(base, mix, rate) Mix two colors together.
Parameters:
base : color, the base color.
mix : color, the color to mix.
rate : float, default=0.5, the rate of mixture, range within 0.0 and 1.0.
Returns: color.
analog(primary) Selects 2 near spectrum colors (H +/- 45).
Parameters:
primary : color, the base color.
Returns: tuple with 2 colors.
triadic(primary) Selects 2 far spectrum colors (H +/- 120).
Parameters:
primary : color, the base color.
Returns: tuple with 2 colors.
tetradic(primary) Uses primary and the complementary color, + 60º to form a rectangular pattern on the color wheel.
Parameters:
primary : color, the base color.
Returns: tuple with 3 colors.
square(primary) Uses primary and generate 3 equally spaced (90º) colors.
Parameters:
primary : color, the base color.
Returns: tuple with 3 colors.
Multi timeframes RSI Screener & indicator by noop42Since my previous x4 multi timeframes Stochastic RSI script seems to have been appreciated, I decided to make a 2nd version of this tool which focuses on the RSI indicator only.
Default parameters
RSI length : 14
Timeframes: 5, 15, 60, 240
OB/OS zones : 70 & 30
Repaint mode: enabled
Display lines: enabled
Display screener: enabled
Convergence warnings: timeframes 1, 2 & 3
Details
Repaint mode : Disabling it makes the indicator wait for the current candle to close before to change its value
Display lines: Allows you to disable RSI lines drawings, in order to move the screener on your main chart for example.
Display screener: Allows you to disable the screener, in order to use RSI lines only
OB/OS convergences warnings : Allows you to select which timeframe(s) must be taken into consideration for convergence signals (Selected timeframes can be distinguished in the screener, followed by a * char in the timeframes column)
Note The Stochastic RSI version of this tool is available here
Baekdoo arrows (white : long term CCI trend changing signal)Hi forks,
I'm trader Baekdoosan who trading Equity from South Korea. This long term CCI trend changing signal will gives you good buy point for a long term trading.
As you know, CCI ( Commodity Channel Index ) is the indicator of how difference from MA(Moving Average). If CCI (period) value is 0 then it is the same value of the SMA (price, period). Indication of overselling or overbuying will be counted by -100 and 100 value of CCI . What I chose value is 240. which is almost a year of period. My signal will be plotted this long term CCI indicator cross over -100. But I don't want it to be marked in case of long term CCI value fluctuating from -101 to -99 which will be marked frequently. Thus I put candle counter of 60 days after cross under -100 then only I count for cross over -100. By this I have very good signal to mark on the chart. Please enjoy my signal and have good profit from it~! Gazua~!
Multi timeframe Stochastic RSI Screener by noop42Here is a custom x4 timeframes Stochastic RSI screener to add on your charts.
Options
Repaint mode : if enabled: values are updated in live, if disabled: values are updated once the concerned candle is closed
Default parameters
Timeframes: 1, 5, 15, 60
Repaint mode: enabled
Notes
Use the lowest timeframe configured on the screener to get real values
A classic x3 multi-timeframe Stochastic RSI indicator is also available
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.
Intraday FOREX london scalperThis forex System is only for ECN Broker Account.
Pairs: Major with spread < 0.0001 (EUR/USD).
Setup:
Wait for the market to make to 60 minute from the open.
If the market is near the intraday high be prepared to go short
If the market is near an intraday low for the same time period, then be prepared to go long.
Rules for entry
For sell setups: Enter on sell stop 1 pip from low of the last 15 min bar.
For buy setups: Enter in buy stop 1 pip from high of the last 15-minute bars.
Rules for exit
Take profit: Close out positions on 6 pips profit..
Stop Loss: Close out on 5 pips loss or if trade takes more than 1 minute.
St_cumulativeI decided to publish one of my "old" indicators on market sentiment, with possible reversal points. The indicator has 1 parameter-the period. It is based on the fact that the average between the maximum and minimum for the period is displayed, and then the difference between the average line and the maximum of the candle or the minimum (depending on the color of the candle) accumulates. If the indicator is in the positive zone and is colored green, then the trend is up, if it is in the positive zone, but white, then the upward trend may be completed, similarly with a fall, in the negative zone and red is a falling trend, in the negative zone and white-the fall may be completed. It is better to take periods to bind to natural periods If the schedule is 1 minute, then take a period of 60-equal to an hour, if the hour is 24 (day), if the day is 7 (week) or 30 (month)
Out Of The Boxthis study is designed to help user to identify level of current price movement, the theory behind this study is fibonnaci levels without further price projection. the indicator default setting is 60 days (length) with 5 days of forwarded displacement, which convert into a quarter year approximately and 1 week of forwarded offset.
JS Bull/Bear PowerI created this Indicator for all chart lovers.
This Indicator measures the wick parts of candles and sum it up. Wick part of candle is a sign of strength that's why it measures the 60 bars of candles wick. then sum it up and converted it in percentage. The output is indicated in the last 10 candles. that's how simple this indicator is but very useful to analyze the strength of every candles.
The upper numbers is the bear power.
The lower numbers is the bull power.
Happy Trading
Ticker SummaryTicker Summary provides at-a-glance summary information about a ticker near the current bar on the chart:
P/E ratio
Fwd P/E ratio
PEG ratio
Floating shares vs. total shares outstanding
% of trading volume that was short over the last 3 days
Average True Range (ATR) over last 14 days
There are a few less common items of information:
How many ATR multiples the ATR is extended over the last 10 bars. This gives an idea of how far the stock is currently extended.
"R-frequency", explained below.
An optional "ATR Reticule" is shown near the price. This is useful for traders that use ATR as a guideline for price targets and stop losses. On the left is the # of ATRs the stock is currently above the session open. On the right is the # of ATRs the stock is extended above the 10-bar moving average.
R-frequency: a measure of liquidity relevant to your own trading size. It is the frequency at which 1-R of your trading account is traded for a stock. Formula:
(1-R worth of shares) / (average dollar value traded per second), where:
"1-R worth of shares" is how many shares you would buy for a stop loss of -1 ATR, with max risk dollar value based on the Balance and Max Risk % indicator options.
"Average dollar value traded per second" is the 14-day average of (avg(high, low and close) * daily volume)
R-frequency of a second or less is very liquid. If the value is higher (for example, over 60 seconds) the stock is less liquid and you may have some trouble filling limit orders quickly.