Exponentially Weighted Moving Average Oscillator [BackQuant]Exponentially Weighted Moving Average (EWMA)
The Exponentially Weighted Moving Average (EWMA) is a quantitative or statistical measure used to model or describe a time series. The EWMA is widely used in finance, the main applications being technical analysis and volatility modeling.
The moving average is designed as such that older observations are given lower weights. The weights fall exponentially as the data point gets older – hence the name exponentially weighted.
Applications of the EWMA
The EWMA is widely used in technical analysis. It may not be used directly, but it is used in conjunction with other indicators to generate trading signals. A well-known example is the Negative Volume Index (NVI), which is used in conjunction with its EWMA.
Why is it different from the In-Built TradingView EWMA
Adaptive Algorithms: If your strategy requires the alpha parameter to change adaptively based on certain conditions (for example, based on market volatility), a for loop can be used to adjust the weights dynamically within the loop as opposed to the fixed decay rate in the standard EWMA.
Customization: A for loop allows for more complex and nuanced calculations that may not be directly supported by built-in functions. For example, you might want to adjust the weights in a non-standard way that the typical EWMA calculation doesn't allow for.
Use of the Oscillator
This mainly comes from 3 main premises, this is something I like to do personally since it is easier to work with them in the context of my system. E.g. Using them to spot clear trends without noise on longer timeframes.
Clarity: Plotting the EWMA as an oscillator provides a clear visual representation of the momentum or trend strength. It allows traders to see overbought or oversold conditions relative to a normalized range.
Comparison: An oscillator can make it easier to compare different securities or timeframes on a similar scale, especially when normalized. This is because the oscillator values are typically bounded within a range (like -1 to 1 or 0 to 100), whereas the actual price series can vary significantly.
Focus on Change: When plotted as an oscillator, the focus is on the rate of change or the relative movement of the EWMA, not on the absolute price levels. This can help traders spot divergences or convergences that may not be as apparent when the EWMA is plotted directly on the price chart. This is also one reason there is a conditional plotting on the chart.
Trend Strength: When normalized, the distance of the oscillator from its midpoint can be interpreted as the strength of the trend, providing a quantitative measure that can be used to make systematic trading decisions.
Here are the backtests on the 1D Timeframe for
BITSTAMP:BTCUSD
BITSTAMP:ETHUSD
COINBASE:SOLUSD
When using this script the user is able to define a source and period, which by extension calculates the alpha. An option to colour the bars accord to trend.
This makes it super easy to use in a system.
I recommend using this as above the midline (0) for a positive trend and below the midline for negative trend.
Hence why I put a label on the last bar to ensure it is easier for traders to read.
Lastly, The decreasing colour relative to RoC, this also helps traders to understand the strength of the indicator and gain insight into when to potentially reduce position size.
This indicator is best used in the medium timeframe.
חפש סקריפטים עבור "backtest"
Live Economic Calendar by toodegrees⚠️ PLEASE READ ⚠️
Although this indicator is accurate in showcasing live and upcoming News Events, checking the original sources is always suggested. This indicator aims to save Time, but due to limitations it may not be 100% correct 100% of the Time.
Description:
The Live Economic Calendar indicator seamlessly integrates with external news sources to provide real-Time, upcoming, and past financial news directly on your Tradingview chart.
By having a clear understanding of when news are planned to be released, as well as their respective impact, analysts can prepare their weeks and days in advance. These injections of volatility can be harnessed by analysts to support their thesis, or may want to be avoided to ensure higher probability market conditions. Fundamentals and news releases transcend the boundaries of technical analysis, as their effects are difficult to predict or estimate.
Designed for both novice and experienced traders, the Live Economic Calendar indicator enhances your analysis by keeping you informed of the latest and upcoming market-moving news.
This is achieved with three different visual components:
News Table: A dedicated News Table shows the Day of the Week, Date, Time of the Day, Currency, Expected Impact, and News Name for each event (in chronological order). Once a news event has occurred, or the day is over, it will be greyed out – helping to focus on the next upcoming news events.
News Lines: Vertical lines plotted in the future help analysts monitor upcoming news events; vertical lines in the past help analysts spot and backtest previous news events that already occurred.
News Labels: Color-coded news labels will plot once the news events have occurred. This not only gives analysts a minimalistic visual cue, but also retains the information of which news were released at that Time in their tooltips.
Forex Factory Calendar News Feed:
The Forex Factory Data Feed includes news events from January 2007 to the present. The data is updated daily. Please see the Technical Description below for more information.
Forex Factory provides news for all major currencies and markets:
Australia (AUD)
Canada (CAD)
Switzerland (CHF)
China (CNY)
European Union (EUR)
United Kingdom (GBP)
Japan (JPY)
New Zealand (NZD)
United States of America (USD)
Further, there are four types of news impact, defined by respective color-coding which is retained to avoid confusion:
⚪ Holiday
🟡 Low Impact
🟠 Medium Impact
🔴 High Impact
News' Time of the day data is in 24H format, and 'All Day' news are marked at Daily candle open.
⚠️ Original Release Notes ⚠️
The original release of this indicator supports the Forex Factory News Calendar in EST (New York Time). Future updates will include multiple news sources, as well as supporting different Timezones.
Given Data limitations, the Daily chart can omit some data due to the market being close on some days. This will be fixed in the future once an efficient solution is implemented.
Key Features:
Impact-Based News Filtering: Filter news items based on their expected impact (holiday, low, medium, high) to focus on the most market-critical information.
Symbol-Specific News: Automatically filter news to display only what's relevant to the currency pair or trading symbol you are analyzing.
Custom Currency News: Want to see more than the news relevant to the current symbol? Toggle which markets' news you are most interested in.
Chart History: Keep your charts clean by displaying only the drawings of Today's news, or This Week's news.
Custom Lookback: Look further back in Time by choosing a custom number of Lookback Days, allowing you to backtest and keep in mind salient news events from the past.
Line and Label Customization: Both the News Lines and Labels are highly customizable (except the colors), allowing you to make the indicator yours.
Table History: Choose whether to focus on Today's news only, or the news for This Week.
Table Customization: The table colors and position are highly customizable, allowing you to make it fit your visual preference and your layouts' aesthetic.
"Wondering how it's done? 👇"
Technical Description:
This script utilizes Pine Seeds , a service integrated with TradingView for importing custom data. This stunning feature enables users to upload and access custom End Of Day (EOD) data, which can be updated as frequently as five times daily.
This data can be imported in one of two formats:
Single Value: integer or float
Candle Data: open, high, low, close, volume
Upon encountering Pine Seeds, I recognized its potential for importing financial news events. Given that Forex Factory is a primary source of financial news in my personal analysis, integrating it into my layouts seemed like an exciting opportunity. This integration is expected to provide significant value to users looking to integrate additional news feeds all in one place.
Development Challenges:
Format Limitations: News events must be converted into numerical values for import, due to the required Pine Seeds format.
Amount of Data: With all currencies considered, the system may encounter over 40 news events in a single day.
Data Availability: The reliance on End Of Day (EOD) data means that information for the current day is displayed with a delay, and accessing future data is not possible.
Solutions:
Encoding: Each news event is encoded as an integer in the "DCHHMMITYP" format.
D = day of the week
C = currency
HHMM = Time of day
I = news impact
TYP = event ID (see Event Library A and Event Library B )
To ensure data assignment for each candle across the open, high, low, close, and volume series, the value "999" is used as a placeholder:
Importing: Utilizing the encoding system, up to five news events per day can be imported for a singular Pine Seeds custom symbol.
By creating multiple custom Pine Seeds Symbols, efficient imports of a larger number of events is then easily achievable. Nine unique symbols have been established, accommodating up to 45 news events per day.
These symbols are searchable, and accessible as " TOODEGREES_FOREX_FACTORY_SLOT_N " where N ranges from 1 to 9.
The Pine Seeds data feed appears as follows:
Uploading Schedule: To ensure analysts are informed about current and upcoming week's news, events are uploaded one week in advance.
This approach is vital for preparing for potential market impacts across various asset classes and currencies, allowing visibility of an entire week's news ahead of Time.
Data Scraping:
Unfortunately Forex Factory doesn't offer an API to fetch their news feed.
Hence an ad hoc python scraper was developed to read and save news events from January 2007 till the present leveraging Selenium. The scraper algorithm is part of a larger script responsible for scraping data, formatting data, and creating all necessary datasets.
The pseudo-code for the python script is as follows:
Read and save news event data on Forex Factory
Format day of the week, currency, Time of the day, and impact data for the Encoding
Encode and save News Event IDs – Event ID dataset is created
Format news data for Pine Seeds (roll-back date by one week, assign news to open, high, low, close, and volume values)
Create Pine Seeds Datasets
This script is ran everyday at Futures market close (16:00 EST) to update the last part of the each dataset, ensuring accuracy, and taking into account last-minute news additions or revisions.
Once the data (next week's news) is imported by the Live Economic Calendar indicator, it's immediately decoded by leveraging the Forex Factory Decoding Library , and saved into an array.
Upon a new week open, the decoded data is used to plot news events on the chart and in the news table.
See the inner workings of these processes in the Forex Factory Utility Library .
Although these libraries are specifically built for this indicator, feel free to use them to create your own scripts. Looking forward to see what the Pine Script community comes up with!
Thank you for making it this far. Enjoy!
Ciao,
toodegrees
This tool is available ONLY on the TradingView platform.
Terms and Conditions
Our charting tools are provided for informational and educational purposes only and do not constitute financial, investment, or trading advice. Our charting tools are not designed to predict market movements or provide specific recommendations. Users should be aware that past performance is not indicative of future results and should not be relied upon for making financial decisions. By using our charting tools, the user agrees that Toodegrees and the Toodegrees Team are not responsible for any decisions made based on the information provided by these charting tools. The user assumes full responsibility and liability for any actions taken and the consequences thereof, including any loss of money or investments that may occur as a result of using these products. Hence, by using these charting tools, the user accepts and acknowledges that Toodegrees and the Toodegrees Team are not liable nor responsible for any unwanted outcome that arises from the development, or the use of these charting tools. Finally, the user indemnifies Toodegrees and the Toodegrees Team from any and all liability.
By continuing to use these charting tools, the user acknowledges and agrees to the Terms and Conditions outlined in this legal disclaimer.
Predictive Candles Variety Pack [SS]This indicator provides you with the ability to select from a variety of candle prediction methods.
It permits for:
👉 Traditional Linear Regression Candle Predictions
👉 Candle Predictions based on the underlying Stochastics
👉 Candle Predictions based on the underlying RSI
👉 Candle Predictions based on the underlying MFI
👉 Candle Predictions based on the EMA 9
👉 Candle Predictions based on ARIMA modelling
Which is best?
Each method serves its unique purpose.
Here are some general tips of which candles are better suited for what:
🎯Trend Following🎯
For Trend following, the EMA 9 would be an appropriate choice of candle as it helps you to identify the current trend and potential early pullbacks/reversals.
🎯Momentum Following🎯
Momentum following is best carried out with the Stochastics Candles.
🎯Pullback Determination🎯
Pullback Determination is best accomplished through the RSI candles, as the ranges compress or expand based on the current state of oversold/overboughtness.
🎯Detrended Range🎯
To see the detrended range of where the ticker should be falling, absent the trendy noise, it's best to use the ARIMA candles.
Other Features
👉 Other features include a Backtest option that can be toggled on or off and will backtest over the length of the assessment. I don't recommend leaving it on as it can be resource-heavy on Pinescript though.
👉 The ability to adjust the transparency of the candles if you want them to be more or less visible.
Troubleshooting Note
The ARIMA modeling version is extremely resource-heavy, as it has to fully develop an ARIMA model. I have tried to optimize it by reducing the lagged assessment to just 2 lags. If you are using a free or non-premium membership, you may need to reduce the length of the assessment.
And that's it! Pretty straightforward indicator.
Hope you enjoy it!
Euclidean Distance Predictive Candles [SS]Finally releasing this, its been in the works for the past 2 weeks and has undergone many iterations.
I am not sure if I am 100% happy with it yet, but I guess its best to release and get feedback to make improvements.
So this is the Euclidean distance predictive candle indicator and what it does is exactly what it sounds like, it uses Euclidean distance to identify similar candles and then plot the candles and range that immediately proceeded like candles.
While this is using a general machine learning/data science approach (Euclidean distance), I do not employ the KNN (Nearest Neighbors) algo into this. The reason being is it simply offered no predictive advantage than isolating for the last case. I tried it, I didn't like it, the results were not improve and, at times, acutally hindered so I ditched it. Perhaps it was my approach but using some other KNN indicators, I just don't really find them all that more advantageous to simply relying on the Law of Large Numbers and collecting more data rather than less data (which we will get into later in this explanation).
So using this indicator:
There is a lot of customizability here. And the reason is, not all settings are going to work the same for all tickers. To help you narrow down your parameters, I have included various backtest results that show you how the model is performing. You see in the AMZN chart above, with the current settings, it is performing optimally, with a cumulative range pass of 99% (meaning that, of all the cases, the indicator accurately predicted the next day high OR low range 99% of the time), and the ability to predict the candle slightly over 52%.
The recommended settings, from me, are as follows:
So these are generally my recommended settings.
Euclidian Tolerance: This will determine the parameters to look for similar candles. In general, the lower the tolerance, the greater the precision. I recommend keeping it between 0.5, for tickers with larger prices (like ES1! futures or NQ1!) or 0.05 for tickers with lower TPs, like SPY or QQQ.
If the ED Tolerance is too extreme that the indicator cannot find identical setups, it will alert you:
But in general, the more precise you can get it, the better.
Anchor Type: You will see the option to anchor by "Predicted Open" or by "Previous Close". I suggest sticking with anchoring by predicted open. All this means is, it is going to anchor your range, candle, high and low targets by the predicted open price. Anchoring by previous close will anchor by the close of yesterday. Both work okay, but in general the results from anchoring to predicted open have higher pass rates and more accurately depict the candle.
Euclidean Distance Measurement Type: You can choose to measure by candle body or from high to low wicks. I haven't played around with measuring from high to low wicks all that much, because candle body tends to do the job. But remember, ED is a neutral measurement. Which means, its not going to distinguish between a red or green candle, just the formation of the candle. Thus, I tend to recommend, pragmatically, not to necessarily rely on the candle being red or green, but one the formation of the candle (where are the wicks going, are there more bearish wicks or bullish wicks) etc. Examples will follow.
Range Prediction Type: You can filter the range prediction type by last instance (in which, it will pull the previous identical candle and plot the next candle that followed it, adjusted for the current ranges) or "Average of All Cases". So this is where we need to talk a little bit about the law of large numbers.
In general, in statistics, when you have a huge amount of random data, the law of large numbers stipulates that, within this randomness should be repeated events. This is why sometimes chart patterns work, sometimes they don't. When we filter by the average of all cases, we are relying on the law of large numbers. In general, if you are getting good Backtest readings from Last Instance, then you don't need to use this function. But it provides an alternative insight into potential candle formations next day. Its not a bad idea to compare between the two and look for similarities and differences.
So now that we have covered the boring details, let's get into how to use the indicator and some examples.
So the indicator is plotting the range and candle for the next day. As such, we are not looking at the current candle being plotted, but we are looking at the previous candle (see image below for example):
The green arrow shows the prediction for Friday, along with the corresponding result. The purple arrow shows the prediction for Monday which we have yet to realize.
So remember when you are using this, you need to look at the previous candle, and not the candle that it is currently plotting with realtime data, because it is plotting for the next candle.
If you are plotting by last instance, the indicator will tell you which day it is pulling its data from if you have opted to toggle on the demographic data:
You can see the green arrow pointing to the date where it is pulling from. This data serves as the example candle with the candle proceeding this date being the anchored candle (or the predicted candle).
Price Targets and Probability:
In the chart, you can see the green arrow pointing to the green portion of the table. In this table, it will give you the current TPs. These represent the current time target price, which means, the TPs shown here are for Friday. On Monday, the table will update with the TPs for Monday, etc. If you want to view the TPs in advance, you can view them from the actual candle itself.
Below the TPs, you see a bullish 7:6. It means, in a total of 13 cases, the next candle was bullish 7 times and bearish 6 times. Where do we see the number of cases? In the demographic table as well:
Auxiliary functions
Because you are using the previous candle, if you want to avoid confusion, you can have the indicator plot the price targets over the predicted candle, to anchor your attention so to speak. Simply select "Label" in the "Show Price Targets" section, which will look like this:
You can also ask the indicator to plot the demographic data of Higher High, Low, etc. information. What this does is simply looks at all the cases and plots how many times higher highs, lows, lower lows, highs etc. were made:
This will just count all of the cases identified and plot the number of times higher highs, lows, etc. were made.
Concluding Remarks
This is a kind of complex indicator and I can appreciate it may take some getting used to.
I will try to post a tutorial video at some point next week for it, so stay tuned for that.
But this isn't designed to make your life more complicated, just to help give you insights into potential outcomes for the next day or hour or 5 minute (it can be used on all timeframes).
If you find it helpful, great! If not, that's okay, too :-).
Please be aware, this is not my forte of indicators. I am not a data scientist or programmer. My background is in Epi and we don't use these types of data science approaches, so if you have any suggestions or critiques, feel free to share them below.
Otherwise, I hope you enjoy!
Take care everyone and safe trades!
Philpose's Binary Turbo 1.2Hello there,
I'm thrilled to introduce my very first TradingView indicator - "Philpose's Binary Turbo 1.0." This indicator isn't just another tool; it's my unique take on binary options trading, powered by the Relative Strength Index (RSI).
Differences from Other Indicators:
This indicator is designed for traders who prefer short-term trading, as it uses a 1-minute timeframe.
It assumes that RSI crossovers of overbought and oversold levels can be used to generate binary options signals.
Users should backtest and evaluate the indicator's performance in different market conditions and consider risk management strategies.
Custom Logic: This indicator implements a custom trading logic based on RSI crossovers of overbought and oversold levels. Many indicators on TradingView use standard indicators, but this script incorporates unique logic.
Signal Tracking: It tracks and displays the last buy and sell signals on the chart. This visual representation can be helpful for traders to see when signals were generated.
Streak Tracking: The script keeps track of winning and losing streaks, which can provide traders with insights into their trading performance over time.
Table Summary: It creates a table summarizing various statistics related to the signals generated, such as total signals, wins, losses, and streaks. This tabular representation can be useful for traders to assess the indicator's performance.
How to Use:
To use this indicator effectively, follow these steps:
Add the Indicator: Copy and paste the script into TradingView's Pine Script editor. Then, apply the indicator to the chart.
Customize Parameters: Adjust the RSI parameters (period, overbought, and oversold levels) and the minimum bars between signals according to your trading strategy and preferences.
Interpret Signals: Buy signals are generated when the RSI crosses above the oversold level, and sell signals occur when it crosses below the overbought level.
Analyze Streaks: Keep an eye on the win and loss streaks to assess the indicator's performance and your trading strategy.
Review Table: The table at the top-right corner of the chart provides a summary of important statistics related to signals, wins, losses, and streaks.
Markets and Conditions:
The script can be used in various financial markets, including stocks, forex, commodities, and indices. However, it's important to note that binary options trading has a distinct risk profile and is available on certain platforms. Therefore, you should ensure that your chosen binary options platform supports TradingView indicators and that you understand the specific conditions of binary options trading.
Conditions for Use:
This indicator is designed for traders who prefer short-term trading, as it uses a 1-minute timeframe.
It assumes that RSI crossovers of overbought and oversold levels can be used to generate binary options signals.
Users should backtest and evaluate the indicator's performance in different market conditions and consider risk management strategies.
Please exercise caution when using any trading indicator or strategy, especially in binary options trading, as it involves a high level of risk, and you may lose your entire investment. It's advisable to thoroughly test any strategy on a demo account before trading with real funds and to seek the advice of a qualified financial advisor if you are unsure about your trading decisions.
TTP SuperTrend ADXThis indicator uses the strength of the trend from ADX to decide how the SuperTrend (ST) should behave.
Motivation
ST is a great trend following indicator but it's not capable of adapting to the trend strength.
The ADX, Average Directional Index measures the strength of the trend and can be use to dynamically tweak the ST factor so that it's sensitivity can adapt to the trend strength.
Implementation
The indicator calculates a normalised value of the ADX based on the data available in the chart.
Based on these values ST will use different factors to increase or reduce the factor use by ST: expansion or compression.
ST expansion vs compression
Expanding the ST would mean that the stronger a trends get the ST factor will grow causing it to distance further from the price delaying the next ST trend flip.
Compressing the ST would mean that the stronger a trends get the ST factor will shrink causing it to get closer to the price speeding up the next ST trend flip.
Features
- Alerts for trend flip
- Alerts for trend status
- Backtestable stream
- SuperTrend color gets more intense with the strength of the trend
Doji TrenderDoji Trender searches multiple timeframes for candles where open and close are less than dojiPercent apart (default 0.025%), and plots the trends between them.
Experiment with dojiPercent to change the number of "dojis" detected. I will add doji sub-type indication if it appears to be meaningful.
By default, it plots the 5m (red), 15m (orange), 1h (yellow), 4h (green), and chart (cyan). If the chart timeframe is any of the configurable ones, the chart copy won't be drawn. (I might reverse that, so that cyan is always drawn.)
Since doji points are somewhat sparse, and the lookback is short (default 10), the EMA's make drastic corrections toward new indecision. (I'm not convinced the EMA's are useful and/or relevant.)
This works on any timeframe, but seems to work best on the 1D. (5m is somewhat irrelevant on the 1D, so there are tweaks to be made.)
Dojis from a timeframe are corrections to a doji trend from a higher timeframe.
Red corrects to orange, corrects to yellow, corrects to green.
If the chart timeframe is > 4h, the others will correct to cyan.
Otherwise, cyan will fit in-between the adjacent timeframes.
Multiple indecision candles within a short timespan forming sharp peaks indicate retests, backtests, rejections, and bounces off of support/resistance.
With a correct larger-timeframe channel, one would expect lower-timeframe indecision at/along typical levels.
Although the doji's have unpredictable wicks, the dots printed by this indicator do not. Matched with volume, they reveal the prices where the most violent battles between bulls and bears took place, and are likely to take place, again.
One could:
1) Put trends on the longest segments, then look for confluence along them, and/or near the intersections.
2) Use lower-timeframe doji trends to estimate the direction of the higher-timeframe doji trends, before they become detectable to Doji Trender. Confirm by looking for confluence where those trends intersect with horizontal support/resistance, this indicator, and/or others.
3) Notice that multiple legs on the same trend line are close to parallel, if not colinear.
4) Notice that many of the doji segments point toward (very-distant) future dojis.
5) Drop horizontal lines on the dots where we previously reversed, and find confluence in VRVP when we revisit them.
6) Create parallel (fib/whatever) channels that more-closely match MM's intent. The segments one uses to set the angle of the channel, and those used to align the channel, vertically, are not always the same:
a) Match the channel slope to as many doji slopes as possible, considering every trend.
b) Figure out where the channel actually belongs, re-considering every trend.
Any Screener (Multiple)I suppose it's time to publish something relatively useful :). Here's the first try, Any Screener.
This script is an advanced version of the Alphatrend - Screener that I've coded as a humble "thank you" to Kıvanç Özbilgiç (KivancOzbilgic), who always inspired me.
INTRODUCTION
I developed this version with a unique method because I couldn't find an example with the following features:
It presents the valid signal status of multiple indicators for 15 different symbols in the form of a report.
It indicates how many bars have passed after the signal has occurred.
It indicates the signal direction with dynamic colors and chars.
It can also be used for data (just indicator value) that is only intended to be displayed as text. (Default color is grey).
Long and short signals can optionally be ploted on the chart.
It includes advanced configuration settings.
USAGE OF PANEL
The screener panel is simple to use. On the far left, assets are listed. The names of the indicators appear at the top. In the column with the name of each indicator, the signals of that indicator appear as green or red. The green ones represent the long signals (uptrend) and the red ones represent the short signals (down trend). The numbers in square brackets indicate how many bars have passed after the last signal has occurred. (For example: According to the indicator at the top, when the green bullish triangle and 21 appeared on allign of BTCUSDT, Bitcoin switched to buy signal 21 bars ago. A tip : If the signal distance is 0, the signal occurred at the current bar. It is recommended to wait for the bar to close before entering the trade). Signal distance is an essential output for both manual and algorithmic trading. Users often require mentioned data the most during real time trading.
THE SCRIPT
There are two sections in the script; indicators and screener.
SECTION 1 : "INDICATORS"
In the indicator section, you'll find efficient details about switch methods, normalization, avoid pyramyding (in momentum oscillators) etc. On the other hand, I intended to present a "how to example" of a multiple screener, so it has to include more than one indicator.
OTT : Optimized Trend Tracker is developed by dear Anıl Özekşi, known as the "Old Fisherman" :). In my opinion, it is a pretty cool trend-following indicator that offers a mathematical elegance. This indicator aim to detect the current market trend direction, the indicator detect an up-trending market when the support line is superior to the OTT, and a down trending market when the support line is inferior to the OTT. It has three parameters; moving average type, length and percentage. In this version when the percentage parameter is set to 0.0, OTT turns into the selected moving average. And the signals are generated by the crossing of the closing price. It means, this screener is able to compile and present status of moving averages as well. Also VAR (VIDYA) and EVWMA has been re-designed, both moving averages no longer start at zero at the beginning of the chart (That was a big problem for backtests).
PSAR : J. Welles Wilder's Parabolic Stop And Reversal is an important trend following indicator. PSAR detects an up-trending market when below the market price and a down-trend when above. It can work in harmony with OTT according to the parameter combinations.
OSCILLATORS : Also optional three momentum oscillators have been added. MFI (Money Flow Index), RSI (Relative Strength Index) and STOCH (Stochastic %k). All three oscillators are widely used in markets and quite successful in explaining price movements by using different sources. Oscillators generate long and short signals based on oversold and overbought parameters.
VOLATILITY & TREND : There are three optional indicators. ADX (Average Directional Index), BBW-N (Normalized Bollinger Bandwidth) and REG-N (Normalized value of standard error of linear regression). These three indicators don't generate any long or short signals. Instead, they are used to measure the strength of trends and volatility. Therefore, only the numerical results (0-100) are displayed in screener panel and it is grey. (Note : The second length parameter of ADX has the same value with the first one. Bollinger Bandwith's multiplier is 2.0. REG-N is a variable that developed by Paul Kirshenbaum for Kirshenbaum Bands.)
SECTION 2 : "SCREENER"
The second section processes the main idea. This Screener model is based on generating an integer direction variable from boolean signals. The direction value serves multiple purposes: calculating the distance of signal, determining the color based on the direction, and creating "clean" data for the security function. The final step is to present the obtained data as text to the user.
HOW CAN I "SCREEN" MY CONDITIONS?
That's piece a cake, delete the Section 1 in the script :). If you change totally 11 variables according to your own strategy, you can create your new screener! The method is explained at lines 169-171.
SINCERELY THANKS
To allanster for patiently answering my primitive questions,
And to KivancOzbilgic for mind blowing suggestions (especially while we're drinking Raki) :)...
DISCLEIMER
This is just an indicator, nothing more. The script is for informational and educational purposes only. The use of the script does not constitute professional and/or financial advice. The responsibility for risks associated with the use of the script is solely owned by the user. Do not forget to manage your risk. And trade as safely as possible. Good luck!
Price Legs: Average Heights; 'Smart ATR'Price Legs: Average Heights; 'Smart ATR'. Consol Range Gauge
~~ Indicator to show small and large price legs (based on short and long input pivot lengths), and calculating the average heights of these price legs; counting legs from user-input start time ~~
//Premise: Wanted to use this as something like a 'Smart ATR': where the average/typical range of a distinct & dynamic price leg could be calculated based on a user-input time interval (as opposed to standard ATR, which is simply the average range over a consistent repeating period, with no regard to market structure). My instinct is that this would be most useful for consolidated periods & range trading: giving the trader an idea of what the typical size of a price leg might be in the current market state (hence in the title, Consol Range gauge)
//Features & User inputs:
-Start time: confirm input when loading indicator by clicking on the chart. Then drag the vertical line to change start time easily.
-Large Legs (toggle on/off) and user-input pivot lookback/lookforward length (larger => larger legs)
-Small Legs (toggle on/off) and user-input pivot lookback/lookforward length (smaller => smaller legs)
-Display Stats table: toggle on/off: simple view- shows the averages of large (up & down), small (up & down), and combined (for each).
-Extended stats table: toggle on/off option to show the averages of the last 3 legs of each category (up/down/large/small/combined)
-Toggle on/off Time & Price chart text labels of price legs (time in mins/hours/days; price in $ or pips; auto assigned based on asset)
-Table position: user choice.
//Notes & tips:
-Using custom start time along with replay mode, you can select any arbitrary chunk of price for the purpose of backtesting.
-Play around with the pivot lookback lengths to find price legs most suitable to the current market regime (consolidating/trending; high volatility/ low volatility)
-Single bar price legs will never be counted: they must be at least 2 bars from H>>L or L>>H.
//Credits: Thanks to @crypto_juju for the idea of applying statistics to this simple price leg indicator.
Simple View: showing only the full averages (counting from Start time):
View showing ONLY the large legs, with Time & Price labels toggled ON:
TTP VIX SpyTTP VIX Spy is an indicator that uses data from TVC:VIX to better time entries in the market.
The assumption used is that when the VIX is coming down from the top of its range then the risk on assets can move to the upside and when the VIX is is pushing higher there's a high likelihood or risk on assets going down.
This indicator observes the momentum of VIX using MACD. It offers two different signals both for longs and shorts: signal 1 and 2.
Signal 1 is activate when the begging of a new trend for the VIX is confirmed.
Signal 2 is activated when the VIX pulls back from an extreme value.
You can configure the parameters of the internal super trend and the look back for the slope applied to price and RSIs.
The indicator offers the following filter parameters:
- Price RSI slope: it filters signals that have RSI slope pointing in the opposite direction of the signal.
- Counter trend: it filters signals that are not counter trending super trend.
- Wide BBW: it filters signals that happen when there hasn't been high price volatility
- Price slope: it filters signals when the price is not pointing in the direction of the signal (buy: up, sell: down)
- VIX RSI filter: it filters VIX RSI values overextended. MACD can be in the right range, but sometimes RSI contradicts it. By default is OFF since it can cause false negatives.
- Working days only: it filters signals that occur in the weekend.
The colours below the price action show how the VIX momentum is changing. Transitions from red into pink and then green show how the fear is fading which tends to lead to lead to bullish moves, and the opposite when the transitions are from green to red.
Performance and initial thoughts.
I have tried VIX Spy on both BINANCE:BTCUSDT.P and BINANCE:ETHUSDT.P and it seems to offer a decent win ratio. As you can see I had to add many filter to remove bad entries and left toggles available to decide which ones you want to use.
I tried the signal in the 4H, 1H and 15min with mixed results. I tend to incline for the results in the 1H.
VIX signal offers a backtestable stream and alerts both for signals 1 and 2.
Supertrend - Optimised Exit We created a small script that will allow you to have a quick look into static SL/PT to choose from. This might save you time, replacing the manual search for optimal SL/PT.
We're checking signals of the strategy and computing its performance with a grid of SL/PT selected.
We used SuperTrend signals in this example, but it will be straightforward to integrate your signals.
In addition to total Return, we compute MAX Dd and Profit Factor. Other metrics can be implemented as well.
Thanks to @MUQWISHI for helping code it.
Disclaimer
Please remember that past performance may not indicate future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Options Price CalculatorIn the team, we continue to explore and expand the boundaries of TradingView.
For now, there is not much an options trader can do with options in TradingView.
We wanted to change that and created a simple option pricer.
You can set up in parameters a set of strikes, implied volatility, and days to expiry.
The indicators will take a risk-free rate from US01Y and the underlying price from your current chart.
It will compute prices and greeks for both put and call options.
Thanks to @MUQWISHI for helping code it.
Disclaimer
Please remember that past performance may not indicate future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Correlation AnalysisAs the name suggests, this indicator is a market correlation analysis tool.
It contains two main features:
- The Curve: represents the historic correlation coefficient between the current chart and the “Reference Market” input from the settings menu. It aims to give more depth to the current correlation values found in the second feature.
- The Screener: this second feature displays all correlation coefficient values between the (max) 20 markets inputs. You can use it to create several screeners for several market types (crypto, forex, metals, etc.) or even replicate your current portfolio of investments and gauge the correlation of its components.
Aside from these two previous features, you can visually plot the variation rate from one bar to another along with the covariance coefficient (both used in the correlation calculation). Finally, a simple “signal” moving average can be applied to the correlation coefficient .
I might add alerts to this script or even turn it into a strategy to do some backtesting. Do not hesitate to contact me or comment below if this is something you would be interested in or if you have any suggestions for improvement.
Enjoy!!
US Treasuries Yield CurveNews about the yield curve became pretty crucial for all the trades in the last year.
So in the team, we decided to implement a nice widget that will allow you to track the current yield curve in your chart directly.
It's possible to compare the current yield curve with past yield curves. You can choose to display the number of curves weeks, months, and years ago. So you can see the dynamics of the yield curve change.
When the Y2 > Y10 curve is considered invested, so you'll see an "Inverted" notification on the chart.
Thanks to @MUQWISHI for helping code it.
Disclaimer
Please remember that past performance may not indicate future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
MFE & MAE ToolThis is a simple implementation of the MFE/MAE Tool for TradingView.
It's a quite powerful tool and pretty useful in systematic trading, but I don't see many trader using it these days.
It's created for EMA cross, but you can easily change it to use your own signals.
What is MAE/MFE Tool
MAE stands for Maximum Adverse Excursion - Worst P&L during the trade
MFE stands for Maximum Favorable Excursion - Best P&L during the trade
The idea is pretty simple. We take only signals without any position management or exits and measure the best/worst P&L for the next X bars after the signal was.
The primary use case for it is to understand how good your signals are .
If you'll add complicated money management tools, exits, and SL/PT to your strategy, it brings quite a lot of noise. After that, it's pretty tricky to understand if your signals bring much information about future price movements. In other words, bad money management can ruin good signals, and you might discard the entire strategy without knowing that. So this is why I think it's important to check the quality of your signals separately.
Another simple way to use it is to estimate where to put SL/PT
In this example, we're computing MAE/MFE in percent. We're plotting it both on the chart and computing some statistics based on it. This is why it's pretty easy to get a quick understanding of what is your SL/PT should be.
MAE/MFE tool consists of a:
Chart - it displays a point for every signal. Long/Short trades can have different colors. On hover you'll see details for this signal.
Table with stats - we're computing basic metrics for these Signals like average/min/median/max MAE/MFE, number of trades, and how many trades hit selected SL and PT. Stats are also separated by the side so you can see performance separately for longs and shorts.
The indicator is highly customizable, you can configure:
Bars you want to use to compute MAE/MFE
Side selection
SL and R:R
Styling of the chart
Position and style of the table
Parameters for the EMA
EMA cross and its parameter were selected randomly, so don't estimate to see a great performance here.
MFE/MAE tool is a pretty powerful concept. At some point, I'll create an entire article in my blog with more examples and descriptions.
Thanks to @MUQWISHI for helping code it.
Disclaimer
Please remember that past performance may not indicate future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
High/Low VolumeIn this indicator, I show you a better way to define high/low values of volume (or any other indicator).
Quite often, I get requests from my clients that an indicator level should be “high” or that it should be above a certain absolute level.
The first request is hard to interpret mathematically, but traders can easily spot it on the chart. The second one is not flexible, and it might not make sense in another market regime.
To solve that, you can compute dynamic high/low levels that represent unexpected extreme values that are adaptable to recent conditions.
There are two pretty simple methods I’m using quite often in my scripts percentiles and sigma (standard deviations).
Percentile looks back at X bars and computes the value under which a certain % of data points are located. So, for example, if we’re computing 90%tile and we’re looking at 100 bars, we’ll get a value under which we have values of precisely 90 bars for this indicator. It’s a good idea to use something like 5%tile for low level and 95%tile for high level.
Sigma(σ) is related to standard deviation. If we assume that our data is normally distributed, then 68% of data points should be in the range of mean +-1σ, 95% → mean +-2σ. So we can assume that something above 2σ is a pretty rare and extreme event.
In this script, I give you an example of how to compute both on volume, but you can easily change this to another indicator.
The issue with volume is that it’s not normally distributed, and your low level will be quite often too low to detect any low levels. Ideally, we have to use a more sophisticated formula that fits volume distribution better.
In this indicator, you can set the following parameters:
Choose type: Percentile or Sigma
Lookback Period
High/Low Percentiles
Sigmas #
You can also receive alerts for high/low volume events.
Disclaimer
Please remember that past performance may not indicate future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Correlation Coefficient: Visible Range Dynamic Average R -Correlation Coefficient with Dynamic Average R (shows R average for the visible chart only, changes as you zoom in or out)
-Label: Vis-Avg-R = Visable Average R
-the Correlation Coefficient function for Pearson's R is taken from "BA🐷 CC" indicator by @balipour (highly recommended; more thorough treatment of R and other stats, but without the dynamic average)
-I wrote this primarily to add a dynamic Average R, showing correlation for arbitrary start times/end times; whether it be the last month, last year, of some specific period from the past (backtest mode)
-I have been using this to get an idea of correlation regimes over time between Bonds vs Stocks (ZB1! vs ES1!).
-As you see from the above, most of 2022 has seen an unusually strong positive correlation between Bonds and Stocks
~~inputs:
-lookback length for calculation of R
-Backtest mode (true by default): displays Average R for ONLY the visible range displayed on any part of chart history (LHS to RHS of screen only)
-source for both Ticker and compared Asset (close, open, high, low, ohlc4.. etc)
~~some other assets worth comparing:
Aussie vs Gold; Aussie vs ES; Btc vs ES; Copper vs ES
Volatility Adjusted MomentumIt's a script that computes volatility-adjusted momentum indicators.
The problem with the momentum indicator is that it's absolute and it's hard to interpret its value. For example, if you'll change the timeframe or instrument value of Momentum will be very different.
We tried to solve that by expressing momentum in volatility. This way you can easier spot overbought/oversold values.
You can choose to use Standard Deviation or ATR for adjustments.
Thanks to @MUQWISHI for helping me code it.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Fibonacci MAsIt's a pretty simple script. Idea is to compute MAs with the length of Fibonacci numbers and then compute an average of them all.
In the script, you can choose the type of MAs and how many Fibonacci numbers to use for it.
You can also adjust the length of these MAs manually and choose the color of every one of them.
Thanks to @MUQWISHI for helping me code it.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
MACD strategy + Trailstop indicatorWelcome traveler !
Here is my first indicator I made after 3 days of hardlearning pine code (beginner in coding).
I hope it will please you, if you have any suggestion to enhance this indicator, do not hesitate to give me your thoughts in the comments section or by Private message on trading View !
How does it works ?
It's a simple MACD strategy as describe here :
Uses of EMA 200 as a trend confirmer,
For sells :
When above Zero line (MACD) and under EMA200, we go on sell (background color is red)
For buys:
When under Zero line (MACD) and above EMA 200, we go on Buy (back ground color is green)
FILTERS !
I haded one filter to reduce noise on the indicator :
Signals aren't taken if one of the 14 last candles closed on the other side of the EMA 14.
What are the green and red lines ?
The green line is equivalent of a potential stop loss as a buyer side, same for the red one on seller side !
To make the space with the price bigger, please use "ATR multiplier" in the input options of the indicator while on your chart !
Is it timeframe specific ?
Hell no it is not timeframe specific ! You can try to use it on every timeframe !
As usual, I like to remind you that the best way to test an indicator is to go backtest it or to paper trade before using it on real market conditions !
If you find an idea of filter for a specific timeframe, do not hesitate to contact me ! I'll try to do my best to enhance this indicator as the time goes !
Is there repainting ?
There is no repainting on confirmation !
There's only a movement that I don't know how to ignore on the current open candle for the trail stop indicator I built, it should not be a problem if you place alerts to automatise your trading on the close of the candle, and not the high or low !
If you know how to resolve this problem with my code, I would be glad to get your tips to enhance the script ! :)
Example of the indicator in market (backtest, as said, no repaint on confirmation) :
Portfolio PerformanceThis indicators will help you to compute portfolio performance and display results with a stats table and a nice monthly chart.
In this script you can do following:
Compose portfolio with up to 15 instruments
Change Initial capital / date range / rebalancing period
Compare portfolio performance with a benchmark
Compute basic stats
Compute instruments contribution
Display monthly performance of portfolio and benchmark
Change style for almost everything you see on your chart
Hope it will be useful for you!
Thanks to @MUQWISHI for helping me coding it.
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
CDC ActionZone BF for ETHUSD-1D © PRoSkYNeT-EE
Based on improvements from "Kitti-Playbook Action Zone V.4.2.0.3 for Stock Market"
Based on improvements from "CDC Action Zone V3 2020 by piriya33"
Based on Triple MACD crossover between 9/15, 21/28, 15/28 for filter error signal (noise) from CDC ActionZone V3
MACDs generated from the execution of millions of times in the "Brute Force Algorithm" to backtest data from the past 5 years. ( 2017-08-21 to 2022-08-01 )
Released 2022-08-01
***** The indicator is used in the ETHUSD 1 Day period ONLY *****
Recommended Stop Loss : -4 % (execute stop Loss after candlestick has been closed)
Backtest Result ( Start $100 )
Winrate 63 % (Win:12, Loss:7, Total:19)
Live Days 1,806 days
B : Buy
S : Sell
SL : Stop Loss
2022-07-19 07 - 1,542 : B 6.971 ETH
2022-04-13 07 - 3,118 : S 8.98 % $10,750 12,7,19 63 %
2022-03-20 07 - 2,861 : B 3.448 ETH
2021-12-03 07 - 4,216 : SL -8.94 % $9,864 11,7,18 61 %
2021-11-30 07 - 4,630 : B 2.340 ETH
2021-11-18 07 - 3,997 : S 13.71 % $10,832 11,6,17 65 %
2021-10-05 07 - 3,515 : B 2.710 ETH
2021-09-20 07 - 2,977 : S 29.38 % $9,526 10,6,16 63 %
2021-07-28 07 - 2,301 : B 3.200 ETH
2021-05-20 07 - 2,769 : S 50.49 % $7,363 9,6,15 60 %
2021-03-30 07 - 1,840 : B 2.659 ETH
2021-03-22 07 - 1,681 : SL -8.29 % $4,893 8,6,14 57 %
2021-03-08 07 - 1,833 : B 2.911 ETH
2021-02-26 07 - 1,445 : S 279.27 % $5,335 8,5,13 62 %
2020-10-13 07 - 381 : B 3.692 ETH
2020-09-05 07 - 335 : S 38.43 % $1,407 7,5,12 58 %
2020-07-06 07 - 242 : B 4.199 ETH
2020-06-27 07 - 221 : S 28.49 % $1,016 6,5,11 55 %
2020-04-16 07 - 172 : B 4.598 ETH
2020-02-29 07 - 217 : S 47.62 % $791 5,5,10 50 %
2020-01-12 07 - 147 : B 3.644 ETH
2019-11-18 07 - 178 : S -2.73 % $536 4,5,9 44 %
2019-11-01 07 - 183 : B 3.010 ETH
2019-09-23 07 - 201 : SL -4.29 % $551 4,4,8 50 %
2019-09-18 07 - 210 : B 2.740 ETH
2019-07-12 07 - 275 : S 63.69 % $575 4,3,7 57 %
2019-05-03 07 - 168 : B 2.093 ETH
2019-04-28 07 - 158 : S 29.51 % $352 3,3,6 50 %
2019-02-15 07 - 122 : B 2.225 ETH
2019-01-10 07 - 125 : SL -6.02 % $271 2,3,5 40 %
2018-12-29 07 - 133 : B 2.172 ETH
2018-05-22 07 - 641 : S 5.95 % $289 2,2,4 50 %
2018-04-21 07 - 605 : B 0.451 ETH
2018-02-02 07 - 922 : S 197.42 % $273 1,2,3 33 %
2017-11-11 07 - 310 : B 0.296 ETH
2017-10-09 07 - 297 : SL -4.50 % $92 0,2,2 0 %
2017-10-07 07 - 311 : B 0.309 ETH
2017-08-22 07 - 310 : SL -4.02 % $96 0,1,1 0 %
2017-08-21 07 - 323 : B 0.310 ETH
Overlay Mini Plot(s) of Correlated Asset(s)Overlay a small plot of a correlated asset of your choosing. Shrink/expand, Set vertical and horizontal position, plot multiple mini-plots via duplicate indicators with varied settings.
Plots the last X bars of any asset; including the live candle currently painting
Useful for low time frame trading when you want to see correlated asset price movement right alongside the price movement you're watching.
Useful for quick and simple comparisons; when you don't want the clutter of split screen or multi-pane view.
Useful for backtesting.
Price scale agnostic; just plots the shape of the recent price action, with several optional labels: Asset+timeframe | Live Price | Highest price over X bars | Lowest price over X bars.
Works fine with all the assets i've tested it on.
~~User inputs~~
-number of bars to paint.
-horizontal offset: plot to right X bars or to left X bars
-vertical offset: shift up or down, shrink or expand; by using 2 'spacer' inputs
-color/transparancy of candles and price labels.
-width (pixels) of candle bodies.
-choose to display price labels or not
-choose to display asset label or not
~~Tips~~
--Add several of these indicators; changing the vertical 'Shift/Shrink' settings on each to visually separate them.
--In the above chart or EurUsd, there are three indicators =>> three mini-plots overlaid: DXY, EurGbp and GbpUsd. Using the following settings for Space Above:Space Below: DXY- 0.1:4.5 | EurGbp- 1.8:1.8 | GbpUsd- 4.5:0.1
--the more you add, the more you'll have to vertically shrink the plots
© twingall






















