Muqwishi Volumetric CandleIntroduction
Have you ever heard that each candle represents a battle between bulls (buyer) and bears (seller)? If you know the answer, apparently you understand what the price action means. What if I ask you, how much was bloody in each battle between bulls and bears?!. This indicator may give a clear picture of how to identify the candle’s strength by implementing the Standard Deviation on volume and reshape the candle.
The Muqwishi Volumetric Candles indicator works to weigh each candle instantaneously and updates its color level from lightness to darkness based on the rate of the volumetric standard deviation.
Here’s how the idea started with the conceptual design, then improved till achieved to the implemented design of a structured candle.
The conceptual design mentioned for reviewing how the idea started. However, I want you to understand the “implemented design” in which the indicator has been built to address it. As I stated structurally for the implemented design section, wick and border are identified by the user through “Chart Properties” unlike core and body is measured by the indicator.
The candle’s body is ”Dynamic” that colored based on the amount of volume standard deviation in which the low volume standard deviation is a lighter candle’s color and the high volume standard deviation is a darker candle’s color. The core is “Static” color represents zero volume standard deviation which the volume at the average level. In the case where the core is darker than the body means the volume standard deviation is lower than the average volume level, and when the core is lighter than the body mean the volume standard deviation is higher than the average volume level, and when the core’s color has the same body’s color means the volume is in the average level. The image is the best guide to understand the idea.
Rarely seeing a volume standard deviation below -2σ, even though the volume is apparently dead. However, it’s possible to see more than 3.9σ, and mostly it has the same effect as 3.9σ. Personally, any candle above 1.5σ is taking my attention, and more than 2σ I look around seeking for reasons to not take a trade.
§§ Note, if you have misunderstood the standard deviation concept, there are many great sources to understand it such as Wikipedia, YouTube,... etc. In a basic example, How much is your height relative to the height of average people in your city!!?. Similarly, how much is the amount of volume relative to the average volume of a number series of previous bars?!.
Indicator Overview
Before I get into this section, this is NOT meant to be an educational or recommendation. Just showing you how I use this indicator based on an experience.
The chart above has been remarked as an example of how I apply it. Again, it’s a personal preference, and it doesn’t mean this’s an efficient way.
Indicator Setting
➤ Ensure to visualize the indicator to the front for recognition of the candle’s core.
For more information check the image: drive.google.com
➤ Indicator’s title.
Generates two outputs. The first one is the coordinate location for the char “Core”, don’t pay attention to it. The second one colored in blue is referring to the measurement of the volume standard deviation as your cursor point move at any candle on the chart. For more information check the image: drive.google.com
➤ Indicator’s inputs.
■ Length: Number of previous bars covered in the calculation. Prefer between 14-20.
■ Long Candle Color: Choose a color for bullish candles.
■ Short Candle Color: Choose a color for bearish candles.
■ Color Mode: Kinda color style.
● Lightness: From lightness to darkness colored as low volume SD to high volume SD.
● Saturation: From narrow range to wide range colored as low volume SD to high volume SD.
■ Reverse Mode: Yes → Darkness to Lightness colored as low SD to high SD.
■ Show Core: No → Hide cores.
Summarize
■ Users should have a fundamental knowledge of Standard Deviation.
■ The candle’s body is dynamic colored. Got light as low volume standard deviation, and Dark as high volume standard deviation occurred.
■ The Candle’s core is static colored. Represents the average volume which Standard Deviation equals zero.
■ This’s not a trading signal. It works to visualize the level of transactions made per candle.
Final Comments
■ My goal was to achieve the conceptual design, but there’re many obstacles that go beyond the coding ability.
■ Let me know if you have any questions, comments, and any improvements to the project.
■ I hope every time you found this indicator useful and scaled up your trading skills, please present support through PayPal that linked in the signature box below. That will help to get me excited and post many ideas.
■ Trade Safe. ✌
Buscar en scripts para "ha溢价率"
Modified Smoothed Heiken AshiThis code is based on Smoothed HA candle which will work on all chart types
condition for BUY:
1. When close crosses Smoothed HA
2.Close should be in side upper band
3.BBW must be greater than the average
vice versa for sell
this code takes data from HA chart so that it can be applied on all chart type.
Bollinger band and Bollinger band width conditions added for removal of unwanted signals
Alert added so that you can apply alert and check it in real time performance
thanks to The Secret Mindset You tube channel from where I got the idea to convert this into a pine script indicator
smooth HA taken from "Smoothed Heiken Ashi Candles v1" at //@jackvmk
|AG| VWAP ANALYSIS|AG| VWAP ANALYSIS
The volume-weighted average price (VWAP) is a trading benchmark used by traders that gives the average price security has traded throughout the day, based on both volume and price.
It is important because it provides traders with insight into both the trend and value of the security.
VWAP is calculated by adding up the $ traded for every transaction (price multiplied by the number of shares traded) and then dividing by the total shares traded.
A detailed formula and calculations could be found here:
-> fanf2.user.srcf.net
Actually, TradingView has an option for Anchored Vwap is a really good implementation for specific analysis.
The following script takes into account the #Time_Period_Change and plots the VWAP calculation.
The #Time_Period Available for this script are:
-> Day
-> Week
-> Monthly
-> Quarter
-> Year
1. The option that we have is the SOURCE:
-> HLC3 (High, Low, Close)/3 is the right way to calculate VWAP.
-> But I included other traditional options:
-> open, high, low, close, hl2, hlc3, ohlc4
2. The option of Turn ON/OFF VWAP
-> Timeframe selection:
-> All, 1. Day, 2. Week, 3. Month, 4. Quarter, 5. Year, 6. >=Weekly, 7. >=Montlhy
-> With this, we could select the time for plotting the VWAP. And some cool features such as >= that we are going to plot different Timeframes VWAP calculations.
-> Vwap Label:
-> We could select if show labels or not
3. The option of Turn ON/OFF Previous VWAP Level
-> VWAP of one selected Time Period is going to end with a final price this level most of the time is retested and gives us a good opportunity for entry into one trade.
Or could be used as Stop Loss.
-> Timeframe selection:
-> 1. Day, 2. Week, 3. Month, 4. Quarter, 5. Year, 6. >=Weekly, 7. >=Montlhy, 8. >=Daily
-> Factor
-> The factor options lead as increment the extension of the previous time period.
-> Example: D is the normal time period and with factor, we change from 1D to 2D in order to extend previous levels of VWAP.
->The Factor option is only available in 1. Day and 2. Week. With a Min Value of 1 and a Maximum Value of 50.
-> Labels:
-> We could select if show labels or not
4. The option of Turn ON/OFF Standard Deviation Bands
-> Label:
-> We could select if show labels or not
-> Timeframe selection:
-> 1. Day, 2. Week, 3. Month, 4. Quarter, 5. Year
5. The option of Turn ON/OFF Previous Standard Deviation
-> Timeframe selection:
-> None, 1. Day, 2. Week, 3. Month, 4. Quarter, 5. Year, 6. >=Weekly, 7. >=Montlhy, 8. Quarter & Year
-> STDEV LEVEL
-> Since there are different options for Standard Deviation I included 4 options
-> 1
-> 2
-> 3
-> User Selection
-> In this option we could select any NUMBER for STVDEV 0.25 of step.
-> Label:
-> We could select if show labels or not
6. The Lockback Setting
-> This Script also includes an option to only plot a certain amount of days back.
The main reason in order to have a more clear chart.
-> We could select between:
-> PLOT ALL
-> CUSTOM
-> If we select Custom Then we could select the Number of Days Back that is going to be plotted.
7. Color Theme
Here we select the color (Visual Desing)
-> Color Theme
-> Text Color
-> Here I use the recent input.color option added for TradingView making the color selection really simple
8. Time Period Highlighter
-> In this option, we could select one time period in order to plot one tiny background and identify the change in the time period.
-> Timeframe selection:
-> 1. Day, 2. Week, 3. Month, 4. Quarter, 5. Year
9. Label Offset
-> Finally, this option leads us to change the position of the labels into the X-axis by default 20.
This script has many options the combinations and the possibilities of making different analyses are bast.
Here some examples of what we could make:
DEFAULT SETTING:
PREVIOUS VWAP FOR TIME PERIOD >= WEEK
(work good as S&D levels)
PREVIOUS VWAP Week WITH A FACTOR OF 4
STANDARD DEVIATION BANDS - DAY
STANDARD DEVIATION BANDS - WEEK
STANDARD DEVIATION BANDS - MONTH
STANDARD DEVIATION BANDS - QUARTER
STANDARD DEVIATION BANDS - YEAR
PREVIOUS STANDARD DEVIATION - DAY SDTV 3
PREVIOUS STANDARD DEVIATION - WEEK SDTV 3
USING STANDARD DEVIATION BANDS - WEEK
WITH LOCKBACK -> PLOT ALL
WITH CUSTOM 30 DAYS
I think the options possibilities of analysis using #VWAP are truly awesome.
I like the relationship that one previous VWAP has with Standard Pivot Points.
Good Luck,
Anderson,
Trend ChannelMarket engineers can use channels to find out when a market has entered an undervalued or overvalued zone. Purchases and sales take place in these zones. Professionals use trending channels to find out when the market has overtaken itself and where it is likely to reverse.
Upper channel line = EMA + EMA x channel coefficient
Lower channel line = EMA - EMA x channel coefficient
The topline reflects the bulls' strength in raising prices above the average value consensus. This line marks the normal limit of optimism in the market.
The bottom line of the channel reflects the strength of the bears pushing prices below the average consensus of values. This line marks the normal limit of pessimism in the market.
The coefficient is used to correct the distance to the moving average until the channel contains 95% of all prices. Only the tips and the lowest bottoms are allowed to protrude. For these peaks and curves and sideways trends, I have added two more switchable lines to the border lines, with a distance of 23.6% (light blue).
The larger the time frame, the wider the channel.
If you buy near a rising moving average, you take profits near the upper line of the channel.
If you are short near a falling moving average, you should close out near the bottom of the channel.
If the moving average is essentially flat, then you should be long on the bottom of the channel and short on the top of the channel. You realize profits when the prices have returned to their moving average to normal.
Interesting for day traders:
Adjust the moving average so that it has the same slope as the quotes on the hourly chart. With the coefficient you set the distance between the border lines. Perhaps adding the 23.6% lines will help, where the sideways trends are starting. Set the resolution to "1 hour". If you want to trade with these settings in short time units, e.g. in the 3 minute chart or in the 1 minute chart, then you now have target marks and indications in which direction the prices will possibly move when the prices have reached the moving average or one of the border lines.
The text contains excerpts from "Come into my Trading Room" by Dr. Alexander Elder.
The indicator has an additional exponential moving average with adjustable period, adjustable shift and adjustable source for the narrow range of quotations and final determination of direction.
The chart shows how the trend channel and the Fibonacc trading indicator can complement each other.
The text contains excerpts from "Come into my Trading Room" by Dr. Alexander Elder.
Markttechniker können Kanäle verwenden um heraus zu finden, wann ein Markt eine unterbewertete oder überbewertete Zone erreicht hat. An diesen Zonen finden Käufe und Verkäufe statt. Profis benutzen Trendkanäle um herauszufinden, wann der Markt sich selbst überholt hat und wo er wahrscheinlich eine Umkehrbewegung vollziehen wird.
Obere Kanallinie = EMA + EMA x Kanalkoeffizient
Untere Kanallinie = EMA - EMA x Kanalkoeffizient
Die Oberlinie reflektiert die Kraft der Bullen, mit der sie die Kurse über den durchschnittlichen Wertekonsens anheben. Diese Linie kennzeichnet die normale Grenze des Optimismus im Markt.
Die untere Linie des Kanals reflektiert die Kraft der Bären, mit der sie die Kurse unter den durchschnittlichen Wertekonsens drücken. Diese Linie kennzeichnet die normale Grenze des Pessimismus im Markt.
Mit dem Koeffizienten wird der Abstand zum gleitenden Durchschnitt so lange korrigiert, bis der Kanal 95% aller Kurse enthält. Lediglich die Spitzen und die niedrigsten Böden dürfen herausragen. Für diese Spitzen und Bögen und Seitwärtstrends habe ich zu den Grenzlinien zwei weitere zuschaltbare Linien, mit einem Abstand von 23,6%, hinzugefügt (hellblau).
Je größer der Zeitrahmen ist, um so breiter ist der Kanal.
Wenn Sie in der Nähe eines ansteigenden gleitenden Durchschnitts kaufen, nehmen Sie die Gewinne in der Nähe der oberen Grenzlinie des Kanals mit.
Wenn Sie in der Nähe eines fallenden gleitenden Durchschnitts leerverkaufen, sollten Sie in der Nähe der unteren Grenzlinie des Kanals glattstellen.
Wenn der gleitende Durchschnitt im Wesentlichen flach ist, dann sollten Sie an der unteren Kanalbegrenzung eine Long-Position und an der oberen Kanalbegrenzung eine Short-Position einnehmen. Gewinne realisieren Sie jeweils, wenn die Kurse zu ihrem gleitenden Durchschnitt, zur Normalität zurückgekehrt sind.
Für Daytrader interessant:
Stellen Sie den gleitenden Durchschnitt so ein, dass er die gleiche Steigung wie die Notierungen im Stunden-Chart hat. Mit dem Koeffizienten Stellen Sie den Abstand der Grenzlinien ein. Vielleicht hilft die Zuschaltung der 23,6%-Linien, wo die Seitwärtstrends anstoßen. Stellen Sie die Auflösung auf „1 Stunde“. Wenn Sie mit diesen Einstellungen in niedrigen Zeiteinheiten traden wollen, z.B. im 3 Minuten-Chart oder im 1 Minuten-Chart, dann haben Sie jetzt Zielmarken und Hinweise in welche Richtung die Notierungen möglicherweise laufen werden, wenn die Notierungen den gleitenden Durchschnitt oder eine der Grenzlinien erreicht haben.
Der Text enthält Auszüge aus „Come into my Trading Room“ von Dr. Alexander Elder.
Der Indikator besitzt zur engen Umfang der Notierungen und endgültigen Richtungsbestimmung einen zusätzlichen exponentiellen gleitenden Durchschnitt mit einstellbarer Periode, einstellbarer Verschiebung und einstellbarer Quelle.
Der Chart zeigt wie sich Trendkanal und Fibonacc-Trading-Indikator ergänzen könne.
Der Text enthält Auszüge aus „Come into my Trading Room“ von Dr . Alexander Elder.
Excellent ADXThe Average Directional movement indeX (ADX) is an indicator that helps you determine the trend direction, pivot points, and much more else! But it looks not so easy as other famous indicators. It seems strange or even terrible, but don't be afraid. Let's understand how it works and get its power into your analysis tactics.
In the beginning, imagine a drunk man goes through a ladder: step by step. Up, up, down, up, down, down, up...
How can we understand which direction he goes? Exactly! We can count the number of steps in each direction. In the above example, in the upward – 4, in the downward – 3. So, it looks like he goes in an upward direction.
The ADX indicator counts the same steps, but for price. The size of each step equals 1 ATR for "DI Length" candles. On the indicator chart, we have the green and red lines. The green line represents a number of steps upward. The red line shows one downward. When the red line upper green, then the price goes below, then the trend is directed down. Later the green line comes above the red one, and then the trend changes the direction to upward. Wow? After that, you can easy detect the trend direction on the market!
But it is still not the end. On the chart, we also have the fat blue line. This is the ADX line, and it represents the power of the trend. It is calculated from a distance between the green and red curves. The ADX line value grows if the distance is increased. If the movement is really powerful, then a number of steps into a direction much more prominent than one in an opposed direction. Then the blue line grows faster. But if the growth has stopped and the blue line turns back or already had changed self-direction, then it is a signal that the trend has ended too. It's an excellent sign to close the position (but not always). Easy? Not quite. Thresholds help you there. The indicator has two additional parameters: upper and lower thresholds to evaluate the trend-over signal strength. An u-turn of the ADX line above the upper threshold sends a strong signal. If one occurs between both thresholds, it is a bit weak signal. But if the blue line goes below the lower threshold, it looks like there is no trend, and the price goes side. We can also say that the price goes side when the ADX value gradually falls down.
The Excellent ADX indicator helps you catch pivot/pullback signals based on green, red, and blue lines. Each such signal is highlighted as a green (buy) or red (sell) dot on the plot. The size of the dot represents the strength of the signal. You can also check the position of green and red lines from each other to determine the trend direction and the place where it has been changed. The Excellent ADX indicator helps you there too. It highlights the trend direction by the background-color, so you'll never miss it! The Excellent ADX good compliance with the Price Channel indicator built for the same length. You can use them together to be on a trend wave always!
SVIEWThis is momentum based indicator
Input
1. Two EMA
2. Stochastic
Thought process
1. Difference between fast and slow ema has a oscillating nature.
2. Stochastic %k %d crossover gives early signals
3. early entry gives low risk high reward setup
Calculation
1. A= EMA (fast) - EMA (slow)
2. B =Stochastic(%K)-Stochastic(%D)
When A is increasing and B is positive, bar is green
When A is decreasing and B is negative, bar is red
Else, bar is black
Use
This is an early entry signal system. When used with Channel trading system, it gives high probability, low risk high reward setups
Example
When price has breached below -2 Keltner channel, and impulse candle turns green, go long (or sell put options )
29 minutes ago
Release Notes:
This is combination of
1. Ema diff
2. stochastic
3. Keltner channel
4. Bollinger bands
5. bunch of EMAs
Thought process
1. Difference between fast and slow ema has a oscillating nature.
2. Stochastic %k %d crossover gives early signals
3. early entry gives low risk high reward setup
Calculation
1. A= EMA (fast) - EMA (slow)
2. B =Stochastic(%K)-Stochastic(%D)
When A is increasing and B is positive, bar is green
When A is decreasing and B is negative, bar is red
Else, bar is black
Use
This is an early entry signal system. When used with Channel trading system, it gives high probability, low risk high reward setups
Example
When price has breached below -2 Keltner channel, and impulse candle turns green, go long (or sell put options )
Fibonacci-Trading-Indikator_3Daily (weekly, monthly) profits with the Fibonacci trading indicator_3
Quotes move in Fibonacci ratios in liquid markets. With this indicator you receive information for daily trades or for position trades based on a week or on a monthly basis, in which area you should ideally enter the market and where the minimum achievable price target is. This price target is 61.8% of yesterday's trading range, or the trading range of the previous week, or the trading range of the previous month, depending on the time frame for which the indicator should calculate the minimum achievable high / low. This is also where you realize your profit.
For this calculation, the following entries must be made in the properties window of the indicator:
• Preselection uptrend / downtrend.
• Time frame (day, week, ...) of the price bar for the possible high / low to be determined.
• Trading range of the previous day, or the previous week, or the previous month.
• Current lowest low of the selected time frame when trading has started and prices are rising.
• Current highest high of the selected time frame when trading has started and prices are falling.
Important areas for trading are:
• The entry range 0% - 23.6% for long or short.
• The target price level 61.8%.
Choose a suitable time frame to detect the direction of movement while the quotes are still moving in the entry area. The camelback indicator can be of great help. Also test the resolution setting of the camelback indicator. With a resolution of 1 hour in the 6 or 12 minute chart, you get a perspective for the broader direction. Movement patterns of corrections or consolidations, if they last more than a day or a week, also give clues to the coming direction of movement for the trade. So look back to see what happened yesterday, a week ago, or a month ago. Pay attention to the market anatomy, find out how the market works, count the price bars in consolidations and trends.
After entering the values the indicator will show the Fibonacci expansion price levels for the possible high or low for the selected time frame. Buy / sell within the entry range between 0% and 23.6% as the market moves towards the last long / or short entry point. This is the course range up to the 23.6% course level. The 61.8% price level is the minimum expected price target. We assume that the current bar will reach at least 61.8% of the trading range of the previous day, week or month. Depending on the set time frame. You should therefore realize the profits you have made with 50% of the position when the prices have reached the 61.8% level. With a suitable trailing stop you can be stopped with the rest of the position, but do not risk more than 50% of the profits.
With the quarter or year preselection and the corresponding entries, the minimum expected quarterly high / quarterly low or annual high / annual low can be determined.
The Fibonacci price levels can be shown and hidden. In the chart click on the gear wheel for “Chart Settings”. In the “Scaling” menu, the price levels can be displayed with the preselection “Label for indicator names” and “Label for last indicator value”. Slide the chart to the right to find possible support and resistance at the price levels that could provide confirmation of the target.
In the event of input errors or missing entries for a time frame, the indicator is hidden.
Pay attention to your trade management to avoid losses.
The new Fibonacci Trading Indicator_3 has the following additions and changes:
Area code for the quarter time frame has been added.
The entry area received a 23.6% and a 50% subdivision. Two envelope lines above the 23.6% entry level in the case of an upward trend and below the 23.6% entry level in the case of a downtrend, with a width of 23.6% and 14.6% of the entry level, are intended to indicate that the closing price is higher the quotations have broken out of the entry-level area.
A volatility stop for upward and downward trends can be activated.
A factor is added to the fluctuation range of each price bar for the stop. Then a moving average is calculated with an adjustable period. The period setting should be set between 5 and 10. The result can be smoothed adjustable.
Presetting:
Periods = 10
Factor = 1.4
Smoothing = 7
With the assumption that the market entry in an upward trend occurs when the prices break out above a bar high, the result of the stop calculation is subtracted from the bar high. In the case of a downward trend, the result of the stop calculation is added to the price bar low.
When entering the market, set the factor to 2.4. If inside bars follow a trend movement, the stop should be brought closer. Try the factor setting 0.4 or less. The smallest adjustable factor is 0.1.
For the entry into an established trend, as described in an idea contribution by me, there are two switchable moving averages. The application for the (MA_H) takes place on high and for the (MA_L) adjustable on high, low, shot, h + 1/2 etc. Period and offset (shift) are adjustable. With this idea, the entry into the market occurs between a 618% correction (the Fibonacci entry point) and the DEP (average entry point). The DEP in this case is the MA_H with period = 4 and an offset = 1 in the case of a downward trend, or the MA_L with the same setting and application to lows in an upward trend.
Also test the MA_L in trends with the settings (period, offset) 3.3 or 5, 3 or 7.5 and applying it to closing prices for a close encompassing of the highs / lows.
Tägliche (wöchentliche, monatliche) Gewinne mit dem Fibonacci-Trading Indikator_3
Kursnotierungen bewegen sich in liquiden Märkten in Fibonacci-Verhältnisse. Mit diesem Indikator erhalten Sie für Tagesgeschäfte, oder für Positionstrades auf Basis einer Woche, oder auf Basis eines Monats Informationen, in welchem Bereich Sie idealerweise in den Markt einsteigen sollten und wo das mindeste erreichbare Kursziel liegt. Dieses Kursziel liegt bei 61,8% der gestrigen Handelspanne, oder der Handelspanne der Vorwoche, oder der Handelspanne des Vormonats, also abhängig davon für welchen Zeitrahmen der Indikator das mindeste erreichbare Hoch/Tief berechnen soll. Dort realisieren Sie auch Ihren Gewinn.
Für diese Berechnung sind folgende Eingaben im Eigenschaftenfenster des Indikators einzustellen:
• Vorwahl Aufwärtstrend/ Abwärtstrend.
• Zeitrahmen (Tag, Woche, …) des Kursbalkens für das zu ermittelnde mögliche Hoch/ Tief.
• Handelspanne des vorherigen Tages, oder der vorherigen Woche, oder des vorherigen Monats.
• Aktuell tiefstes Tief des vorgewählten Zeitrahmens, wenn der Handel begonnen hat und die Notierungen steigen.
• Aktuell höchstes Hoch des vorgewählten Zeitrahmens, wenn der Handel begonnen hat und die Notierungen fallen.
Wichtige Bereiche für das Trading sind:
• Der Einstiegsbereich 0% - 23,6% für long oder short.
• Der Kursziellevel 61,8%.
Wählen Sie für die Erkennung der Bewegungsrichtung einen geeigneten Zeitrahmen, während sich die Notierungen noch im Einstiegsbereich bewegen. Der Camelback-Indikator kann eine gute Hilfe sein. Testen Sie auch die Auflösung-Einstellung des Camelback-Indikators. Mit der Auflösung 1 Stunde Im 6- oder 12 Minuten-Chart erhalten Sie einen Blickwinkel für die große Richtung. Auch Bewegungsmuster von Korrekturen oder Konsolidierungen, wenn sie mehr als einen Tag oder eine Woche andauern geben Hinweise auf die kommende Bewegungsrichtung für den Trade. Schauen Sie also zurück um zu prüfen, was sich gestern, vor einer Woche oder vor einem Monat abgespielt hat. Achten sie auf die Marktanatomie, finden Sie heraus wie der Markt funktioniert, zählen Sie Kursstäbe in Konsolidierungen und Trends.
Nach Eingabe der Werte zeigt der Indikator die Fibonacci-Ausweitungskurslevels für das mögliche Hoch oder Tief für den ausgewählten Zeitrahmen. Kaufen/ verkaufen Sie innerhalb des Einstiegsbereichs zwischen 0% und 23,6%, während sich der Markt in Richtung des letzten long-/ oder short-Einstiegspunktes bewegt. Das ist der Kursbereich bis zum 23,6%- Kurslevel. Der 61,8%-Kurslevel ist das mindeste erwartbare Kursziel. Wir gehen davon aus, dass der aktuelle Kursbalken mindestens 61,8% der Handelsspanne des vorherigen Tages, der vorherigen Woche oder des vorherigen Monats erreichen wird. Abhängig vom eingestellten Zeitrahmen. Realisieren Sie deshalb die angelaufenen Gewinne mit 50% der Position, wenn die Notierungen den 61,8% - Level erreicht haben. Mit einem geeigneten Trailing-Stopp lassen Sie sich mit der restlichen Position ausstoppen, riskieren Sie dafür aber nicht mehr als 50 % der angelaufenen Gewinne.
Mit der Vorwahl Quartal oder Jahr und den entsprechenden Eingaben kann auch das mindeste erwartbare Quartalshoch/ Quartalstief bzw. Jahreshoch/ Jahrestief ermittelt werden.
Die Fibonacci-Kurslevels lassen sich ein- und ausblenden. Klicken Sie im Chart auf das Zahnrad für „Chart Einstellungen“. Im Menü „Skalierungen“ kann mit der Vorwahl „Label für Indikatornahmen“ und „Label für letzten Indikatorwert“ die Kurslevels angezeigt werden. Schieben Sie den Chart nach rechts um mögliche Unterstützungen und Widerstände an den Kurslevels zu finden, die Bestätigung für das Ziel geben könnten.
Bei Eingabefehlern oder fehlenden Eingaben zu einem Zeitrahmen wird der Indikator ausgeblendet.
Achten Sie zur Vermeidung von Verlusten auf ihr Handelsmanagement.
Der neue Fibonacci-Trading-Indikator_3 besitz folgende Zusätze und Änderungen:
Vorwahl für den Zeitrahmen Quartal wurde hinzugefügt.
Der Einstiegsbereich erhielt eine 23,6% und eine 50% Unterteilung. Zwei Umschlagslinien über dem 23,6%-Einstiegslevel bei einem Aufwärtstrend, bzw. unter dem 23,6%-Einstiegslevel bei einem Abwärtstrend, mit der Breite 23,6% und 14,6% vom Einstiegsbereich, sollen bei höherem Schlusskurs signalisieren, dass die Notierungen aus dem Einstiegsbereich ausgebrochen sind.
Ein Volatilitätsstopp jeweils für Aufwärts- und Abwärtstrend kann zugeschaltet werden.
Für den Stopp wird die Schwankungsbreite jedes Kursbalkens wird mit einem Faktor beaufschlagt. Danach erfolgt die Berechnung eines gleitenden Durchschnitts mit einstellbarer Periode. Die Periodeneinstellung sollte zwischen 5 und 10 eingestellt werden. Das Ergebnis kann einstellbar geglättet werden.
Voreinstellung:
Perioden = 10
Faktor = 1,4
Glättung = 7
Mit der Annahme, dass der Markteinstieg in einem Aufwärtstrend bei Ausbruch der Notierungen über ein Kursbalkenhoch erfolgt, wird das Ergebnis der Stoppberechnung vom Kursbalkenhoch subtrahiert. Bei einem Abwärtstrend wird das Ergebnis der Stoppberechnung zum Kursbalkentief addiert.
Stellen Sie bei Markteintritt den Faktor auf 2,4. Folgen nach einer Trendbewegung Innenstäbe sollte der Stopp näher herangeführt werden. Probieren Sie die Faktoreinstellung 0,4 oder kleiner. Der kleinste einstellbare Faktor ist 0,1.
Für den Einstieg in einen etablierten Trend, wie in einem Ideenbeitrag von mir beschrieben, gibt es zwei zuschaltbare gleitende Durchschnitte. Die Anwendung für den (MA_H) erfolgt auf Hochs und für den (MA_L) einstellbar auf Hoch, Tief, Schuss, h+l/2 usw.. Periode und Offset (Verschiebung) sind einstellbar. Bei dieser Idee erfolgt der Einstieg in den Markt zwischen einer 618%-Korrektur (dem Fibonacci-Einstiegspunkt) und dem DEP (Durchschnittlicher Einstiegspunkt). Der DEP ist in diesem Fall der MA_H mit Periode = 4 und einem Offset = 1, bei einem Abwärtstrend, oder der MA_L mit identischer Einstellung und Anwendung auf Tiefs in einem Aufwärtstrend.
Testen Sie den MA_L auch in Trends mit den Einstellungen (Periode, Offset) 3,3 oder 5, 3 oder 7,5 und Anwendung auf Schlusskurse für eine enge Umfassung der Hochs/ Tiefs.
Polynomial Regression Bands + Channel [DW]This is an experimental study designed to calculate polynomial regression for any order polynomial that TV is able to support.
This study aims to educate users on polynomial curve fitting, and the derivation process of Least Squares Moving Averages (LSMAs).
I also designed this study with the intent of showcasing some of the capabilities and potential applications of TV's fantastic new array functions.
Polynomial regression is a form of regression analysis in which the relationship between the independent variable x and the dependent variable y is modeled as a polynomial of nth degree (order).
For clarification, linear regression can also be described as a first order polynomial regression. The process of deriving linear, quadratic, cubic, and higher order polynomial relationships is all the same.
In addition, although deriving a polynomial regression equation results in a nonlinear output, the process of solving for polynomials by least squares is actually a special case of multiple linear regression.
So, just like in multiple linear regression, polynomial regression can be solved in essentially the same way through a system of linear equations.
In this study, you are first given the option to smooth the input data using the 2 pole Super Smoother Filter from John Ehlers.
I chose this specific filter because I find it provides superior smoothing with low lag and fairly clean cutoff. You can, of course, implement your own filter functions to see how they compare if you feel like experimenting.
Filtering noise prior to regression calculation can be useful for providing a more stable estimation since least squares regression can be rather sensitive to noise.
This is especially true on lower sampling lengths and higher degree polynomials since the regression output becomes more "overfit" to the sample data.
Next, data arrays are populated for the x-axis and y-axis values. These are the main datasets utilized in the rest of the calculations.
To keep the calculations more numerically stable for higher periods and orders, the x array is filled with integers 1 through the sampling period rather than using current bar numbers.
This process can be thought of as shifting the origin of the x-axis as new data emerges.
This keeps the axis values significantly lower than the 10k+ bar values, thus maintaining more numerical stability at higher orders and sample lengths.
The data arrays are then used to create a pseudo 2D matrix of x power sums, and a vector of x power*y sums.
These matrices are a representation the system of equations that need to be solved in order to find the regression coefficients.
Below, you'll see some examples of the pattern of equations used to solve for our coefficients represented in augmented matrix form.
For example, the augmented matrix for the system equations required to solve a second order (quadratic) polynomial regression by least squares is formed like this:
(∑x^0 ∑x^1 ∑x^2 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 | ∑(x^2)y)
The augmented matrix for the third order (cubic) system is formed like this:
(∑x^0 ∑x^1 ∑x^2 ∑x^3 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 ∑x^4 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 ∑x^5 | ∑(x^2)y)
(∑x^3 ∑x^4 ∑x^5 ∑x^6 | ∑(x^3)y)
This pattern continues for any n ordered polynomial regression, in which the coefficient matrix is a n + 1 wide square matrix with the last term being ∑x^2n, and the last term of the result vector being ∑(x^n)y.
Thanks to this pattern, it's rather convenient to solve the for our regression coefficients of any nth degree polynomial by a number of different methods.
In this script, I utilize a process known as LU Decomposition to solve for the regression coefficients.
Lower-upper (LU) Decomposition is a neat form of matrix manipulation that expresses a 2D matrix as the product of lower and upper triangular matrices.
This decomposition method is incredibly handy for solving systems of equations, calculating determinants, and inverting matrices.
For a linear system Ax=b, where A is our coefficient matrix, x is our vector of unknowns, and b is our vector of results, LU Decomposition turns our system into LUx=b.
We can then factor this into two separate matrix equations and solve the system using these two simple steps:
1. Solve Ly=b for y, where y is a new vector of unknowns that satisfies the equation, using forward substitution.
2. Solve Ux=y for x using backward substitution. This gives us the values of our original unknowns - in this case, the coefficients for our regression equation.
After solving for the regression coefficients, the values are then plugged into our regression equation:
Y = a0 + a1*x + a1*x^2 + ... + an*x^n, where a() is the ()th coefficient in ascending order and n is the polynomial degree.
From here, an array of curve values for the period based on the current equation is populated, and standard deviation is added to and subtracted from the equation to calculate the channel high and low levels.
The calculated curve values can also be shifted to the left or right using the "Regression Offset" input
Changing the offset parameter will move the curve left for negative values, and right for positive values.
This offset parameter shifts the curve points within our window while using the same equation, allowing you to use offset datapoints on the regression curve to calculate the LSMA and bands.
The curve and channel's appearance is optionally approximated using Pine's v4 line tools to draw segments.
Since there is a limitation on how many lines can be displayed per script, each curve consists of 10 segments with lengths determined by a user defined step size. In total, there are 30 lines displayed at once when active.
By default, the step size is 10, meaning each segment is 10 bars long. This is because the default sampling period is 100, so this step size will show the approximate curve for the entire period.
When adjusting your sampling period, be sure to adjust your step size accordingly when curve drawing is active if you want to see the full approximate curve for the period.
Note that when you have a larger step size, you will see more seemingly "sharp" turning points on the polynomial curve, especially on higher degree polynomials.
The polynomial functions that are calculated are continuous and differentiable across all points. The perceived sharpness is simply due to our limitation on available lines to draw them.
The approximate channel drawings also come equipped with style inputs, so you can control the type, color, and width of the regression, channel high, and channel low curves.
I also included an input to determine if the curves are updated continuously, or only upon the closing of a bar for reduced runtime demands. More about why this is important in the notes below.
For additional reference, I also included the option to display the current regression equation.
This allows you to easily track the polynomial function you're using, and to confirm that the polynomial is properly supported within Pine.
There are some cases that aren't supported properly due to Pine's limitations. More about this in the notes on the bottom.
In addition, I included a line of text beneath the equation to indicate how many bars left or right the calculated curve data is currently shifted.
The display label comes equipped with style editing inputs, so you can control the size, background color, and text color of the equation display.
The Polynomial LSMA, high band, and low band in this script are generated by tracking the current endpoints of the regression, channel high, and channel low curves respectively.
The output of these bands is similar in nature to Bollinger Bands, but with an obviously different derivation process.
By displaying the LSMA and bands in tandem with the polynomial channel, it's easy to visualize how LSMAs are derived, and how the process that goes into them is drastically different from a typical moving average.
The main difference between LSMA and other MAs is that LSMA is showing the value of the regression curve on the current bar, which is the result of a modelled relationship between x and the expected value of y.
With other MA / filter types, they are typically just averaging or frequency filtering the samples. This is an important distinction in interpretation. However, both can be applied similarly when trading.
An important distinction with the LSMA in this script is that since we can model higher degree polynomial relationships, the LSMA here is not limited to only linear as it is in TV's built in LSMA.
Bar colors are also included in this script. The color scheme is based on disparity between source and the LSMA.
This script is a great study for educating yourself on the process that goes into polynomial regression, as well as one of the many processes computers utilize to solve systems of equations.
Also, the Polynomial LSMA and bands are great components to try implementing into your own analysis setup.
I hope you all enjoy it!
--------------------------------------------------------
NOTES:
- Even though the algorithm used in this script can be implemented to find any order polynomial relationship, TV has a limit on the significant figures for its floating point outputs.
This means that as you increase your sampling period and / or polynomial order, some higher order coefficients will be output as 0 due to floating point round-off.
There is currently no viable workaround for this issue since there isn't a way to calculate more significant figures than the limit.
However, in my humble opinion, fitting a polynomial higher than cubic to most time series data is "overkill" due to bias-variance tradeoff.
Although, this tradeoff is also dependent on the sampling period. Keep that in mind. A good rule of thumb is to aim for a nice "middle ground" between bias and variance.
If TV ever chooses to expand its significant figure limits, then it will be possible to accurately calculate even higher order polynomials and periods if you feel the desire to do so.
To test if your polynomial is properly supported within Pine's constraints, check the equation label.
If you see a coefficient value of 0 in front of any of the x values, reduce your period and / or polynomial order.
- Although this algorithm has less computational complexity than most other linear system solving methods, this script itself can still be rather demanding on runtime resources - especially when drawing the curves.
In the event you find your current configuration is throwing back an error saying that the calculation takes too long, there are a few things you can try:
-> Refresh your chart or hide and unhide the indicator.
The runtime environment on TV is very dynamic and the allocation of available memory varies with collective server usage.
By refreshing, you can often get it to process since you're basically just waiting for your allotment to increase. This method works well in a lot of cases.
-> Change the curve update frequency to "Close Only".
If you've tried refreshing multiple times and still have the error, your configuration may simply be too demanding of resources.
v4 drawing objects, most notably lines, can be highly taxing on the servers. That's why Pine has a limit on how many can be displayed in the first place.
By limiting the curve updates to only bar closes, this will significantly reduce the runtime needs of the lines since they will only be calculated once per bar.
Note that doing this will only limit the visual output of the curve segments. It has no impact on regression calculation, equation display, or LSMA and band displays.
-> Uncheck the display boxes for the drawing objects.
If you still have troubles after trying the above options, then simply stop displaying the curve - unless it's important to you.
As I mentioned, v4 drawing objects can be rather resource intensive. So a simple fix that often works when other things fail is to just stop them from being displayed.
-> Reduce sampling period, polynomial order, or curve drawing step size.
If you're having runtime errors and don't want to sacrifice the curve drawings, then you'll need to reduce the calculation complexity.
If you're using a large sampling period, or high order polynomial, the operational complexity becomes significantly higher than lower periods and orders.
When you have larger step sizes, more historical referencing is used for x-axis locations, which does have an impact as well.
By reducing these parameters, the runtime issue will often be solved.
Another important detail to note with this is that you may have configurations that work just fine in real time, but struggle to load properly in replay mode.
This is because the replay framework also requires its own allotment of runtime, so that must be taken into consideration as well.
- Please note that the line and label objects are reprinted as new data emerges. That's simply the nature of drawing objects vs standard plots.
I do not recommend or endorse basing your trading decisions based on the drawn curve. That component is merely to serve as a visual reference of the current polynomial relationship.
No repainting occurs with the Polynomial LSMA and bands though. Once the bar is closed, that bar's calculated values are set.
So when using the LSMA and bands for trading purposes, you can rest easy knowing that history won't change on you when you come back to view them.
- For those who intend on utilizing or modifying the functions and calculations in this script for their own scripts, I included debug dialogues in the script for all of the arrays to make the process easier.
To use the debugs, see the "Debugs" section at the bottom. All dialogues are commented out by default.
The debugs are displayed using label objects. By default, I have them all located to the right of current price.
If you wish to display multiple debugs at once, it will be up to you to decide on display locations at your leisure.
When using the debugs, I recommend commenting out the other drawing objects (or even all plots) in the script to prevent runtime issues and overlapping displays.
STRATEGY TESTER ENGINE - ON CHART DISPLAY - PLUG & PLAYSo i had this idea while ago when @alexgrover published a script and dropped a nugget in between which replicates the result of strategy tester on chart as an indicator.
So it seemed fair to use one of his strategy to display the results.
This strategy tester can now be used in replay mode like an indicator and you can see what happen at a particular section of the chart which was is not possible in default strategy tester results of TV.
Please read how each result is calculated so you will know what you are using.
This engine shows most common results of strategy tester in a single screen, which are as follows:
1. Starting Capital
2. Current Profit Percentage
3. Max Profit Percentage
4. Gross Profit
5. Gross Loss
6. Total Closed Trades
7. Total Trades Won
8. Total Trades Lost
9. Percentage Profitable
10. Profit Factor
11. Current Drawdown
12. Max Drawdown
13. Liquidation
So elaborating on what is what:
1. Starting Capital - This stays 0, which signifies your starting balance as 0%. It is set to 0 so we can compare all other results without any change in variables. If set to 100, then all the results will be increased by 100. Some users might find it useful to set it to 100, then they can change code on line 41 from to and it should show starting balance as 100%.
2. Current Profit Percentage - This shows your current profit adjusted to current price of the candle, not like TV which shows after candle is close. There is a comment on the line 38 which can be removed and your can see unrealized profit as well in this section. Please note that this will affect Draw-down calculations later in this section.
3. Max Profit Percentage - This will show you your max profit achieved during your strategy run, which was not possible yet to see via strategy tester. So, now you can see how much profit was achieved by your strategy during the run and you can compare it with chart to see what happens during bull-run or bear-run, so you can further optimize your strategy to best suit your desired results.
4. Gross Profit - This is total percentage of profit your strategy achieved during entire run as if you never had any losses.
5. Gross Loss - This is total percentage of loss your strategy achieved during entire run as if you never had any profits.
6. Total Closed Trades - This is total number of trades that your strategy has executed so far.
7. Total Trades Won - This is the total number of trades that your strategy has executed that resulted in positive increase in equity.
8. Totals Trades Lost - This is the total number of trades that your strategy has executed that resulted in decrease in equity.
9. Percentage Profitable - This is the ratio between your current total winning trades divided by total closed trades, and finally multiplied by 100 to get percentage results.
10. Profit Factor - This is the ratio between Gross Profit and Gross Loss, so if profit factor is 2, then it indicates that you are set to gain 2 times per your risk per trade on average when total trades are executed.
11. Current Drawdown - This is important section and i want you to read this carefully. Here draw-down is calculated very differently than what TV shows. TV has access to candle data and calculates draw-down accordingly as per number of trades closed, but here DD is calculated as difference between max profit achieved and current profit. This way you can see how much percentage you are down from max peak of equity at current point in time. You can do back-test of the data and see when peak was achieved and how much your strategy did a draw-down candle by candle.
12. Max Drawdown - This is also calculated differently same as above, current draw-down. Here you can see how much max DD your strategy did from a peak profit of equity. This is not set as max profit percentage is set because you will see single number on display, while idea is to keep it custom. I will explain.
So lets say, your max DD on TV is 30%. Here this is of no use to see Max DD , as some people might want to see what was there max DD 1000 candles back or 10 candle back. So this will show you your max DD from the data you select. TV shows 25000 candle data in a chart if you go back, you can set the counter to 24999 and it will show you max DD as shown on TV, but if you want custom section to show max DD , it is now possible which was not possible before.
Also, now let's say you put DD as 24999 and open a chart of an asset that was listed 1 week ago, now on 1H chart max DD will never show up until you reach 24999 candle in data history, but with this you can now enter a manual number and see the data.
13. Liquidation - This is an interesting feature, so now when your equity balance is less than 0 and your draw-down goes to -100, it will show you where and at what point in time you got liquidated by adding a red background color in the entire section. This is the most fun part of this script, while you can only see max DD on TV.
------------------------------------------------------------------------------
How to Use -
1 word, plug and play. Yes. Actual codes start from line 33.
select overlay=false or remove it from the title in your strategy on first line,
Just copy the codes from line 33 to 103,
then go to end section of your strategy and paste the entire code from line 33 to line 103,
see if you have any duplicate variable, edit it,
Add to chart.
What you see above is very contracted view. Here is how it looks when zoomed in.
imgur.com
----------------------------------------------------------------------------------
Feel free to edit and share and use. If you use it in your scripts, drop me tag. Cheers.
MACD-X, More Than MACD by DGTMoving Average Convergence Divergence – MACD
The most popular indicator used in technical analysis, the moving average convergence divergence (MACD), created by Gerald Appel. MACD is a trend-following momentum indicator, designed to reveal changes in the strength, direction, momentum, and duration of a trend in a financial instrument’s price
Historical evolution of MACD,
- Gerald Appel created the MACD line,
- Thomas Aspray added the histogram feature to MACD
- Giorgos E. Siligardos created a leader of MACD
MACD employs two Moving Averages of varying lengths (which are lagging indicators) to identify trend direction and duration. Then, MACD takes the difference in values between those two Moving Averages (MACD Line) and an EMA of those Moving Averages (Signal Line) and plots that difference between the two lines as a histogram which oscillates above and below a center Zero Line. The histogram is used as a good indication of a security's momentum.
Mathematically expressed as;
macd = ma(source, fast_length) – ma(source, slow_length)
signal = ma(macd, signal_length)
histogram = macd – signal
where exponential moving average (ema) is in common use as a moving average (ma)
fast_length = 12
slow_length = 26
signal_length = 9
The MACD indicator is typically good for identifying three types of basic signals ;
Signal Line Crossovers
A Signal Line Crossover is the most common signal produced by the MACD. On the occasions where the MACD Line crosses above or below the Signal Line, that can signify a potentially strong move. The standard interpretation of such an event is a recommendation to buy if the MACD line crosses up through the Signal Line (a "bullish" crossover), or to sell if it crosses down through the Signal Line (a "bearish" crossover). These events are taken as indications that the trend in the financial instrument is about to accelerate in the direction of the crossover.
Zero Line Crossovers
Zero Line Crossovers occur when the MACD Line crossed the Zero Line and either becomes positive (above 0) or negative (below 0). A change from positive to negative MACD is interpreted as "bearish", and from negative to positive as "bullish". Zero crossovers provide evidence of a change in the direction of a trend but less confirmation of its momentum than a signal line crossover
Divergence
Divergence is another signal created by the MACD. Simply, divergence occurs when the MACD and actual price are not in agreement. A "positive divergence" or "bullish divergence" occurs when the price makes a new low but the MACD does not confirm with a new low of its own. A "negative divergence" or "bearish divergence" occurs when the price makes a new high but the MACD does not confirm with a new high of its own. A divergence with respect to price may occur on the MACD line and/or the MACD Histogram
Moving Average Crossovers , another hidden signal that MACD Indicator identifies
Many traders will watch for a short-term moving average to cross above a longer-term moving average and use this to signal increasing upward momentum. This bullish crossover suggests that the price has recently been rising at a faster rate than it has in the past, so it is a common technical buy sign. Conversely, a short-term moving average crossing below a longer-term average is used to illustrate that the asset's price has been moving downward at a faster rate and that it may be a good time to sell.
Moving Average Crossovers in reality is Zero Line Crossovers, the value of the MACD indicator is equal to zero each time the two moving averages cross over each other. For easy interpretation by trades, Zero Line Crossovers are simply described as positive or negative MACD
False signals
Like any forecasting algorithm, the MACD can generate false signals. A false positive, for example, would be a bullish crossover followed by a sudden decline in a financial instrument. A false negative would be a situation where there is bearish crossover, yet the financial instrument accelerated suddenly upwards
What is “MACD-X” and Why it is “More Than MACD”
In its simples form, MACD-X implements variety of different calculation techniques applied to obtain MACD Line, ability to use of variety of different sources , including Volume related sources, and can be plotted along with MACD in the same window and all those features are available and presented within a single indicator, MACD-X
Different calculation techniques lead to different values for MACD Line, as will further discuss below, and as a consequence the signal line and the histogram values will differentiate accordingly. Mathematical calculation of both signal line and the histogram remain the same.
Main features of MACD-X ;
1- Introduces different proven techniques applied on MACD calculation , such as MACD-Histogram, MACD-Leader and MACD-Source, besides the traditional MACD (MACD-TRADITIONAL)
• MACD-Traditional , by Gerald Appel
It is the MACD that we know, stated as traditional just to avoid confusion with other techniques used with this study
• MACD-Histogram , by Thomas Aspray
The MACD-Histogram measures the distance between MACD and its signal line (the 9-day EMA of MACD). Aspray developed the MACD-Histogram to anticipate signal line crossovers in MACD. Because MACD uses moving averages and moving averages lag price, signal line crossovers can come late and affect the reward-to-risk ratio of a trade. Bullish or bearish divergences in the MACD-Histogram can alert chartists to an imminent signal line crossover in MACD
The MACD-Histogram represents the difference between MACD and its 9-day EMA, the signal line. Mathematically,
macdx = macd - ma(macd, signal_length)
Aspray's contribution served as a way to anticipate (and therefore cut down on lag) possible MACD crossovers which are a fundamental part of the indicator.
Here come a question, what if repeat the same calculations once more (macdh2 = macdh - ma(macdh, signal_length), will it be even better, this question will remain to be tested
• MACD-Leader , by Giorgos E. Siligardos, PhD
MACD Leader has the ability to lead MACD at critical situations. Almost all smoothing methods encounter in technical analysis are based on a relative-weighted sum of past prices, and the Leader is no exception. The concealed weights of MACD Leader are such that more relative weight is used in the more recent prices than the respective weights used by the components of MACD. In effect, the Leader expresses more changes in average price dynamics for the recent price movement than MACD, thus eventually leading MACD, especially when significant trend changes are about to take place.
Siligardos creates two less-laggard moving averages indicators in its formula using the same periods as follows
Indicator1 = ma(source, fast_length) + ma(source - ma(source, fast_length), fast_length)
Indicator2 = ma(source, slow_length) + ma(source - ma(source, slow_length), slow_length)
and then take the difference:
Indicator1 - Indicator2
The result is a new MACD Leader indicator
macdx = macd + ma(source - fast_ma, fast_length) - ma(source - slow_ma, slow_length)
• MACD-Source , a custom experimental interpretation of mine ,
MACD Source, presents an application of MACD that evaluates Source/MA Ratio, relatively with less lag, as a basis for MACD Line, also can be expressed as source convergence/divergence to its moving average. Among the various techniques for removing the lag between price and moving average (MA) of the price, one in particular stands out: the addition to the moving average of a portion of the difference between the price and MA. MACD Source, is based on signal length mean of the difference between Source and average value of shot length and long length moving average of the source (Source/MA Ratio), where the source is actual value and hence no lag and relatively less lag with the average value of moving average of the source . Mathematically expressed as,
macdx = ma(source - avg( ma(source, fast_length), ma(source, slow_length) ), signal_length)
MACD Source provides relatively early crossovers comparing to MACD and better momentum direction indications, assuming the lengths are set to same values
For further details, you are invited to check the following two studies, where the first seeds were sown of the MACD-Source idea
Price Distance to its Moving Averages study, adapts the idea of “Prices high above the moving average (MA) or low below it are likely to be remedied in the future by a reverse price movement", presented in an article by Denis Alajbeg, Zoran Bubas and Dina Vasic published in International Journal of Economics, Commerce and Management
First MACD like interpretation comes with the second study named as “ P-MACD ”, where P stands for price, P-MACD study attempts to display relationship between Price and its 20 and 200-period moving average. Calculations with P-MACD were based on price distance (convergence/divergence) to its 200-period moving average, and moving average convergence/divergence of 20-period moving average to 200-period moving average of price.
Now as explained above, MACD Source is a one adapted with traditional MACD, where Source stands for Price, Volume Indicator etc, any source applicable with MACD concept
2- Allows usage of variety of different sources, including Volume related indicators
The most common usage of Source for MACD calculation is close value of the financial instruments price. As an experimental approach, this study will allow source to be selected as one of the following series;
• Current Close Price (close)
• Average of High, Low, and Close Price (hlc3)
• On Balance Volume (obv)
• Accumulation Distribution (accdist)
• Price Volume Trend (pvt)
Where,
-Current Close Price and Average of High, Low, and Close Price are price actions of the financial instrument
- Accumulation Distribution is a volume based indicator designed to measure underlying supply and demand
- On Balance Volume (OBV) , is a momentum indicator that measures positive and negative volume flow
- Price Volume Trend (PVT) is a momentum based indicator used to measure money flow
3- Can be plotted along with MACD in the same window using the same scaling
Default setting of MACD-X will display MACD-Source with Current Close Price as a source and traditional MACD can be plotted eighter as a companion of MACD-X or can be selected to be plotted alone.
Applying both will add ability to compare, or use as a confirmation of one other
In case, traditional MACD Is plotted along with MACD-X to avoid misinterpreting, the lines plotted, the area between MACD-X Line and Signal-X Line is highlighted automatically, even if the highlight option not selected. Otherwise highlight will be applied only if that option selected
4- 4C Histogram
Histogram is plotted with four colors to emphasize the momentum and direction
5- Customizable
Additional to ability of selecting Calculation Method, Source, plotting along with MACD, there are few other option that allows users to customize the MACD-X indicator
Lengths are configurable, default values are set as 12, 26, 9 respectively for fast, slow and smoothing length. Setting lengths to 8,21,5 respectively Is worth checking, slower length moving averages will lead to less lag and earlier reaction to price actions but yet requires a caution and back testing before applying
Highlight the area between MACD-X Line and Signal-X Line, with colors emphasising the direction
Label can be added to display Calculation Method, Source and Length settings, the aim of this label is to server only as a reminder to trades to be aware of settings while they are occupied with charts, analysis etc.
Here comes another question, which is of more importance having the reminder or having the indicators with multi timeframe feature? Build-in Multi Time Frame features of Pine is not supported when labels and lines introduced in the script, there are other methods but brings complexity. To be studied further, this version will be with labels for time being.
Epilogue
MACD-X is an alternative variant of MACD, the insight/signals provided by MACD are also applicable to MACD-X with early and clear warnings for the changes in the trend.
If MACD is essential to your analysis, then it is my guess that after using the MACD-X for a while and familiarizing yourself with its unique character and personality, you will make it an inseparable companion to other indicators in your charts.
The various signals generated by MACD/MACD-X are easily interpreted and very few indicators in technical analysis have proved to be more reliable than the MACD, and this relatively simple indicator can quickly be incorporated into any short-term trading strategy
Disclaimer : Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
The script is for informational and educational purposes only. Use of the script does not constitutes professional and/or financial advice. You alone the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
Trend trader StrategyFirst I would like to thank to @JustUncleL since this strategy started from one of his scalper strategies
This strategy can be adapted to all time charts .
First it has the session where we want to trade, for this example I choosed the EURUSD so I only take in consideration london/neywork session.
Its made from 3 EMA :
normal
slow
ultra slow
It has has the capacity to use HA candles into consideration if its needed.
At the same time we have a price channel made from faster MAs, that act like a bollinger band .
Together with all of them, we establish which trend we have if its uptrend or downtrend
Then we check the candles if they are below or above the MA , and based on the condition if they crossed recently we can suggest if its a buy or a long condition
At the same time we have 2 options of stop conditions:
Through a trailing stop made from ATR or % based
And second, a SL/TP made from pip points or % based.
For this example I used % based.
Let me know what you think about it, and if you found some nice settings for it. So far I only adapted to EURUSD 1 min time.
Exertion MeterHello traders, today I wanted to present you something special. I present you the Exertion Meter!
Created from scratch, this idea is based on a theory of mine called "Exertion".
Exertion occurs when price moves beyond the previous bar's range thus it has "exerted itself".
The idea is that when price moves a lot, it exerts a lot of energy which eventually leads to calmer motion, usually in the direction price has exerted itself.
Now, when price has exerted itself a lot in a particular direction, it's telling you that it will likely continue in that direction.
Once this happens, it will gradually calm down until price begins the cycle again, exerting itself in either the same or opposite direction.
This theory is similar to the theory of expansion & contraction phases.
This indicator attempts to show you where price has exerted itself by giving you a two lines cross signal.
The default settings are recommended, but experimentation is encouraged to fit your own personal system.
Both settings control the standard deviation line ( aka . Upper Bollinger Band ).
Enjoy, and hit the follow button to get easy access to all my indicators and to follow my latest publications!
Relative Strength Market PickerModified to code from @modhelius and added colors and histogram for easy reading...thanks to him...
What is Relative Strength?
Relative strength is a ratio of a stock price performance to a market average (index) performance. It is used in technical analysis.
It is not to be confused with relative strength index.
To calculate the relative strength of a particular stock, divide the percentage change over some time period by the percentage change of a particular index over the same time period.
How to read this indicator for trading and decesion making?
There are four colors
Aqua: Shows the bullish momentum against the index of your choosing
Navy blue: Show the bearish momentum is weakning at the time period
Fuschsia : Shows the bullish gaining strength and about to cross zero line
Red: Shows the bearish momentum is strong.
Other indicators to be used along with this are
1. Pivot points
2. Moving Average of highs and lows -- 17 period
To take long calls --- There has to be high closing candle above the 17 period moving average of highs and there has to be bullish momentum and ideally with the pivot point as a support
To take short calls -- There has to low closing candle below the 17 period moving average of lows and there has to be bearish momentum and ideally with the pivot point as a resistance.
Stochastic Heat MapA series of 28 stochastic oscillators plotted horizontally and stacked vertically from bottom to top as the oscillator background.
Each oscillator has been interpreted and the value has been used to colour the lines in.
Lower lines are shorter term stochastics and higher lines are longer term stochastics.
The average of the 28 stochastics has been taken and then used to plot the fast oscillator line, which also has a slow oscillator line to follow.
The oscillator line can be used to colour in the candles.
Inputs:
MA: multiple smoothing methods
Theme: multiple colours
Increment: stochastic length start and increments
Smooth Fast: smooth fast length
Smooth Slow: smooth slow length
Paint Bars: colour candles
Waves: toggle method to weight/increment stochastics
Heat map shows momentum extremes:
GRAB or TrendStrength Bars with Highlights[Salty]GRAB or TrendStrength Bars with Propulsion Dots and Highlights for Squeeze Pro, CCI-Arrows, and SlowStoch
This indicator shows GRAB or TrendStrength candles and allows several moving averages to be displayed at the same time.
It has arrows and diamonds above or below the candles to show CCI values above 100 or below -100 with the arrow pointing in the direction of the momentum.
Diamonds indicate slightly weaker momentum than arrows, but still consider strong.
It has background coloring that is light green to show bullish trends and light red to show bearish trends that are derived from slow stochastics.
In general Darker colors are used for down moves and lighter colors are use to show up moves. Also, red indicates bearish, and green indicates bullish throughout.
It has yellow background to show squeezes with additional Squeeze Pro information shown at the bottom of the chart in the form of letters and momentum arrows.
L = Low compression squeeze, S = Normal Squeeze, and H = High Compression Squeeze.
It has a set of propulsion dots for each Moving Average. The trend is consider bullish when green colored dots print, and bearish when red dots print.
3 ATR Keltner channels are printed. The first two show the values used by the squeeze by default
2 Bolinger Bands are displayed based on the values used by the Squeeze by default.
1 VWAP line may be displayed.
TIP: overlaying the TICK symbol is great for confirming a bias where positive values are bullish and negative values are bearish.
Z Score Enhanced Time Segmented Volume (Multi MA)**THIS VERSION HAS BEEN STANDARDIZED WITH A Z SCORE CALCULATION AND ALLOWS THE USER TO SELECT WHICH MOVING AVERAGE THEY WOULD LIKE TO UTILIZE FOR THE SIGNAL LINE**
Chart shows the Non-Standardized Enhanced Time Segmented Volume (Multi MA) with default settings on top and the Standardized version with default settings on the bottom.
Time Segmented Volume was developed by Worden Brothers, Inc to be a leading indicator by comparing various time segments of both price and volume . Essentialy it is designed to measure the amount of money flowing in and out of an instrument.
Time Segmented Volume was originally ported to TradingView by user @liw0 and later corrected by user @vitelot. I never quite understood how to read Time Segmented Volume until I ran across a version by user @storma where they indicated when price would be long or short, but that code also utilized the incorrect calculation from user @liw0.
In an effort to make Time Segmented Volume more accessible and easier to read, I have re-coded it here. The calculations are based on the code from @vitelot and I have added direction indicators below the chart.
If the histogram (TSV) is greater than zero and greater than the moving average, price should be moving long and there will be a green box below the chart.
If TSV falls below the moving average while still being greater than zero, the trend may be exhausting and has been coded to read Price Action Long - FAILURE with a black x below the chart.
If the histogram (TSV) is less than zero and less than the moving average, price should be moving short and there will be a red box below the chart.
If TSV rises above the moving average while still being less than zero, the trend may be exhausting and has been coded to read Price Action Short - FAILURE with a black x below the chart.
At times, the moving average may be above zero while TSV is below zero or vice versa. In these situations the chart will indicate long or short based on whether or not TSV is greater or less than zero. It is possible a new trend may be forming as the moving average obviously lags, but also possible price is consolidating with little volume and causing TSV to oscillate close to zero.
**Z Score // Standardized Option **
Thist Standardized code implements all of the above but also allows the user to select a threshold level that should not need to be adjusted for each instrument (since the output is standardized).
If the TSV value meets the long and short signal requirements above and TSV is greater than the threshold values a green or red box will print ABOVE the oscillator. The histogram will also change color based on which threshold TSV has met.
This calculation allows us to compare current volatility to the mean (moving average) of the population (Z-Length). The closer the TSV Z-Score is to the mean, the closer it will be to the Zero Line and therefore price is likely consolidating and choppy. The farther TSV Z-Score is from the mean, the more likely price is trending.
The MA Mode determines the Moving Average used to calculate TSV itself. The Z-Score is ALWAYS calculated with a simple moving average (as that is the standard calculation for Z-Score).
The Threshold Levels are the levels at which TSV Z-Score will change from gray to yellow, orange, green ( bullish ), or red ( bearish ).
Statistically speaking, confidence levels in relation to Z-Score are noted below. The built in Threshold Levels are the positive and negative values for 90%, 95%, and 99%. This would indicate when volatility is greater than these values they are out of the ordinary from the standard range. You may wish to adjust these levels for TSV Z-Score to be more responsive to your trading needs
80% :: 1.28
85% :: 1.44
90% :: 1.64
95% :: 1.96
99% :: 2.58
The Z Length is the period for which the Z Score is calculated
More information regarding Time Segmented Volume can be found here: www.worden.com
Original code ported by @liw0
Corrected by @vitelot
Updated/Enhancements by @eylwithsteph with inspiration from @storma
Multiple MA Options Credits to @Fractured and @lejmer
Bits and Pieces from @AlexGrover, @Montyjus, and @Jiehonglim
As always, trade at your own risk.
Combo Backtest 123 Reversal & Ease of Movement (EOM) This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
This indicator gauges the magnitude of price and volume movement.
The indicator returns both positive and negative values where a
positive value means the market has moved up from yesterday's value
and a negative value means the market has moved down. A large positive
or large negative value indicates a large move in price and/or lighter
volume. A small positive or small negative value indicates a small move
in price and/or heavier volume.
A positive or negative numeric value. A positive value means the market
has moved up from yesterday's value, whereas, a negative value means the
market has moved down.
WARNING:
- For purpose educate only
- This script to change bars colors.
Combo Strategy 123 Reversal & Ease of Movement (EOM) This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
This indicator gauges the magnitude of price and volume movement.
The indicator returns both positive and negative values where a
positive value means the market has moved up from yesterday's value
and a negative value means the market has moved down. A large positive
or large negative value indicates a large move in price and/or lighter
volume. A small positive or small negative value indicates a small move
in price and/or heavier volume.
A positive or negative numeric value. A positive value means the market
has moved up from yesterday's value, whereas, a negative value means the
market has moved down.
WARNING:
- For purpose educate only
- This script to change bars colors.
LUBEThis is a chart meant for 30m BTCUSD but could be used for many other assets, and there are inputs to play with.
I decided on the strange title "LUBE" because I was measuring how many of the previous 500 bars had the current price level already been in. I wanted to discover when the price was in a new zone or an area that it hadn't spent much time in recently... the LUBE zone.
Think of the blue line as showing you the current level friction. If the blue line is high, price is quagmired and not moving quickly. Price could trend sideways for a while before breaking out. A high blue line is a high traffic zone for trading. When the blue line dips low, it's encountering a price zone the asset has not been observed in recently, and this could mean price could break out and move more freely and quickly when it does. We get a trade entry signal if the blue line dips below the bottom white line. The bottom white line is currently set to -10. Think about the lowest the blue line has been recently as 0, and the highest as 100. It is set by default (for BTCUSD 30m chart) to -10 meaning the blue line has to dip a little (-10%) below the lowest it has experienced recently to initiate a trade. This is the LUBE zone. The bottom white line shows that level. Again this is a level lower than the lowest amount of friction experienced in price action for the last 100 bars, but offset by 5 bars showing where that level was at 5 bars ago. We want to dip below that to initiate a trade.
The direction to trade in is determined by a very quick moving weighted moving average (variable name is "fir") to see if the recent trend is up or down. To end a trade, an arbitrary number between 0 and 100 is picked telling us when we are experiencing enough friction again to end the trade. I have it preset to 50 (think of it as 50/100 or half way between the white bars. At a 50% friction level it's time to get out of the trade.
Some shortcomings are missing the bulk of big moves, and experiencing whipsaws where price action zips up and then comes straight back down. Overall the backtest looks sweet enough to use on 2x leverage, experiencing a 17.78% max drawdown at the time of publishing. I wouldn't push the leverage any higher.
To get alerts change the word "strategy" to "study" and delete lines 60-67.
Bot traders using alerts: beware the alert conditions. If a trade goes directly from long to short (which happens rarely), without closing a trade first, it might not act properly. If you use bots to trade, for "LONG" please close any old trades first before putting in instructions to open a leveraged long. To go "SHORT" please remember to close any old trade first as well, and things *should* work out just fine.
Good luck, have fun, and feel free to mess up and butcher this code to your own liking. I'm not responsible if anything bad that happens to you if you use this trading system, or for any bugs you may encounter.
Filter Amplitude Response Estimator - A Simple CalculationIn digital signal processing knowing how a system interact with the frequency content of an input signal is extremely important, the mathematical tool that give you this information is called "frequency response". The frequency response regroup two elements, the amplitude response, and the phase response. The amplitude response tells you how the system modify the amplitude of the frequency components in the input signal, the phase response tells you how the system modify the phase of the frequency components in the signal, each being a function of the frequency.
The today proposed tool aim to give a low resolution representation of the amplitude response of any filter.
What Is The Amplitude Response Of A Filter ?
Remember that filters allow to interact with the frequency content of a signal by amplifying, attenuating and/or removing certain frequency components in the input signal, the amplitude (also called magnitude) response of a filter let you know exactly how your filter change the amplitude of the frequency components in the input signal, another way to see the amplitude response is as a tool that tell you what is the peak amplitude of a filter using a sinusoid of a certain frequency as input signal.
For example if the amplitude response of a filter give you a value of 0.9 at frequency 0.5, it means that the filter peak amplitude using a sinusoid of frequency 0.5 is equal to 0.9.
There are several ways to calculate the frequency response of a filter, when our filter is a FIR filter (the filter impulse response is finite), the frequency response of the filter is the absolute value of the discrete Fourier transform (DFT) of the filter impulse response.
If you are curious about this process, know that the DFT of a N samples signal return N values, so if our FIR filter coefficients are composed of only 5 values we would get a frequency response of 5 values...which would not be useful, this is why we "pad" our coefficients with zeros, that is we add zeros to the start and end of our series of coefficients, this process is called "zero-padding", so if our series of coefficients is: (1,2,3,4,5), applying zero padding would give (0,0...1,2,3,4,5,...0,0) while keeping a certain symmetry. This is related to the concept of resolution, a low resolution amplitude response would be composed of a low number of values and would not be useful, this is why we use zero-padding to add more values thus increasing the resolution.
Making a Fourier transform in Pinescript is not doable, as you need the complex number i for computing a DFT, but thats not even the only problem, a DFT would not be that useful anyway (as the processes to make it useful in a trading context would be way too complex) . So how can we calculate a filter amplitude response without using a DFT ? The simple answer is by taking the peak amplitude of a filter using a sinusoid of a certain frequency as input, this is what the proposed tool do.
Using The Tool
The proposed tool give you a 50 point amplitude response from frequency 0.005 to 0.25 by default. the setting "Range Divisor" allow you to see the amplitude response by using a different range of frequency, for example if the range divisor is equal to 2 the filter amplitude response will be evaluated from frequency 0.0025 to 0.125.
In the script, filt hold the filter you want to see the frequency response, by default a simple moving average.
The position of the frequency response is defined by the "Show Amplitude Response At Bar Number" setting, if you want the frequency response to start at bar number 5000 then enter 5000, by default 10000. If you are not a premium set the number at 4000 and it should work.
amplitude response of a simple moving average of period 14, res = 2.
By default the amplitude response use an amplitude scale, a value of 1 represent an unchanged amplitude. You can use Dbfs (decibel full scale) instead by checking the "To Decibels (Full Scale)" setting.
Dbfs amplitude response, a value of 0 represent an unchanged amplitude.
Some Amplitude Responses
In order to prove the accuracy of the proposed tool we can compare the amplitude response given by the proposed tool with the mathematical function of the amplitude response of a simple moving average, that is:
abs(sin(pi*f*length)/(length*sin(pi*f)))
In cyan the amplitude response given by the proposed tool and in blue the above function. Below are the amplitude responses of some moving averages with period 14.
Amplitude response of an EMA, the EMA is a IIR filter, therefore the amplitude response can't be made by taking the DFT of the impulse response (as this ones has infinite length), however our tool can give its frequency response.
Amplitude response of the Hull MA, as you can see some frequencies are amplified, this is common with low-lag filters.
Gaussian moving average (ALMA), with offset = 0.5 and sigma = 6.
Simple moving average high-pass filter amplitude response
Center of gravity bandpass filter amplitude response
Center of gravity bandreject filter.
IMPORTANT!: The amplitude response of adaptive moving averages is not stationary and might change over time.
Conclusion
A tool giving the amplitude response of any filter has been presented, of course this method is not efficient at all and has a low resolution of 50 points (the common resolution is of 512 points) and is difficult to work with, but has the merit to work on Tradingview and can give the frequency response of IIR filters, if you really need to see the frequency response of a filter then i recommend you to use the function freqz from the scipy package.
I still hope you will enjoy using this tool to have a look at the amplitude responses of your favorite moving averages.
I'am aware of the current situation, however i'am somehow feeling left out from the pinescript community, let me know via PM if i have done something to you and i'll do my best to fix any problems i might have caused (or i might be being parano xD)
Why is it ok to backtest on TradingView from now on!TradingView backtester has bad reputation. For a good reason - it was producing wrong results, and it was clear at first sight how bad they were.
But this has changed. Along with many other improvements in its PineScript coding capabilities, TradingView fixed important bug, which was the main reason for miscalculations. TradingView didn't really speak out about this fix, so let me try :)
Have a look at this short code of a swing trading strategy (PLEASE DON'T FOCUS ON BACKTEST RESULTS ATTACHED HERE - THEY DO NOT MATTER). Sometimes entry condition happens together with closing condition for the already ongoing trade. Example: the condition to close Long entry is the same as a condition to enter Short. And when these two aligned, not only a Long was closed and Short was entered (as intended), but also a second Short was entered, too!!! What's even worse, that second short was not controlled with closing conditions inside strategy.exit() function and it very often lead to losses exceeding whatever was declared in "loss=" parameter. This could not have worked well...
But HOORAY!!! - it has been fixed and won't happen anymore. So together with other improvements - TradingView's backtester and PineScript is now ok to work with on standard candlesticks :)
Yep, no need to code strategies and backtest them on other platforms anymore.
----------------
Having said the above, there are still some pitfalls remaining, which you need to be aware of and avoid:
Don't backtest on HeikenAshi, Renko, Kagi candlesticks. They were not invented with backtesting in mind. There are still using wrong price levels for entries and therefore producing always too good backtesting results. Only standard candlesticks are reliable to backtest on.
Don't use Trailing Stop in your code. TradingView operates only on closed candlesticks, not on tick data and because of that, backtester will always assume price has first reached its favourable extreme (so 'high' when you are in Long trade and 'low' when you are in Short trade) before it starts to pull back. Which is rarely the truth in reality. Therefore strategies using Trailing Stop are also producing too good backtesting results. It is especially well visible on higher timeframe strategies - for some reason your strategy manages to make gains on those huge, fat candlesticks :) But that's not reality.
"when=" inside strategy.exit() does not work as you would intuitively expect. If you want to have logical condition to close your trade (for example - crossover(rsi(close,14),20)) you need to place it inside strategy.close() function. And leave StopLoss + TakeProfit conditions inside strategy.exit() function. Just as in attached code.
If you're working with pyramiding, add "process_orders_on_close=ANY" to your strategy() script header. Default setting ("=FIFO") will first close the trade, which was opened first, not the one which was hit by Stop-Loss condidtion.
----------------
That's it, I guess :) If you are noticing other issues with backtester and would like to share, let everyone know in comments. If the issue is indeed a bug, there is a chance TradingView dev team will hear your voice and take it into account when working on other improvements. Just like they heard about the bug I described above.
P.S. I know for a fact that more improvements in the backtesting area are coming. Some will change the game even for non-coding traders. If you want to be notified quickly and with my comment - gimme "follow".
Dekidaka-Ashi - Candles And Volume Teaming Up (Again)The introduction of candlestick methods for market price data visualization might be one of the most important events in the history of technical analysis, as it totally changed the way to see a trading chart. Candlestick charts are extremely efficient, as they allow the trader to visualize the opening, high, low and closing price (OHLC) each at the same time, something impossible with a traditional line chart. Candlesticks are also cleaner than bars charts and make a more efficient use of space. Japanese peoples are always better than everyone at an incredible amount of stuff, look at what they made, the candlesticks/renko/kagi/heikin-ashi charts, the Ichimoku, manga, ecchi...
However classical candlesticks only include historical market price data, and won't include other type of data such as volume, which is considered by many investors a key information toward effective financial forecasting as volume is an indicator of trading activity. In order to tackle to this problem solutions where proposed, the most common one being to adapt the width of the candle based on the amount of volume, this method is the most commonly accepted one when it comes to visualizing both volume and OHLC data using candlesticks.
Now why proposing an additional tool for volume data visualization ? Because the classical width approach don't provide usable data regarding volume (as the width is directly related to the volume data). Therefore a new trading tool based on candlesticks that allow the trader to gain access to information about the volume is proposed. The approach is based on rescaling the volume directly to the price without the direct use of user settings. We will also see that this tool allow to create support and resistances as well as providing signals based on a breakout methodology.
Dekidaka-Ashi - Kakatte Koi Yo!
"Dekidaka" (出来高) mean "Volume" in a financial context, while "Ashi" (足) mean "leg" or "bar". In general methods based on candlesticks will have "Ashi" in their name.
Now that the name of the indicator has been explained lets see how it works, the indicator should be overlayed directly to a candlestick chart. The proposed method don't alter the shape of the candlesticks and allow to visualize any information given by the candles. As you can see on the figure below the candle body of the proposed tool only return the border of the candle, this allow to show the high/low wick of the candle.
The body size of the candle is based on two things : the absolute close/open difference, and the volume, if the absolute close/open difference is high and the volume is high then the body of the candle will be clearly visible, if the volume is high but the absolute close/open difference is low, then the body will be less visible. This approach is used because of the rescaling method used, the volume is divided by the sum between the current volume value and the precedent volume value, this rescale the volume in a (0,1) range, this result is multiplied by the absolute close/open difference and added/subtracted to the high/low price. The original approach was based on normalization using the rolling maximum, but this approach would have led to repainting.
You have access to certain settings that can help you obtain a better visualization, the first one being the body size setting, with higher values increasing the body amplitude.
In green body with size 2, in red with size 1. The smooth parameter will smooth the volume data before being used, this allow to create more visible bodies.
Here smooth = 100.
Making Bands From The Dekidaka-Ashi
This tool is made so it output two rescaled volume values, with the highest value being denoted as "Dekidaka-high" and the lowest one as "Dekidaka-low". In order to get bands we must use two moving averages, one using the Dekidaka-high as input and the other one using Dekidaka-low, the body size parameter should be fairly high, therefore i will hide the tool as it could cause trouble visualizing the bands.
Bands with both MA's of period 20 and the body size equal to 20. Larger periods of the MA's will require a larger amount of body size.
Breakout Signals
There is a wide variety of signals that can be made from candles, ones i personally like comes from the HA candles. The proposed tool is no exception and can produce a wide variety of signals. The signals generated are basic ones based on a breakout methodology, here is each signal with their associated label :
Strong Bullish signal "⇈" : The high price cross the Dekidaka-high and the closing price is greater than the opening price
Strong Bearish signal "⇊" : The low price cross the Dekidaka-low and the closing price is lower than the opening price
Weak Bullish signal "↑" : The high price cross the Dekidaka-high and the closing price is lower than the opening price
Weak Bearish signal "↓" : The low price cross the Dekidaka-low and the closing price is greater than the opening price
Uncertain "↕" : The high price cross the Dekidaka-high and the low price cross the the Dekidaka-low
In order to see the signals on the chart check the "Show signals" option. Note that such signals are not based on an advanced study, and even if they are based on a breakout methodology we can see that volatile movement rarely produce signals, therefore signals mostly occur during low volume/volatility periods, which isn't necessarily a great thing.
Conclusion
A trading tool based on candlesticks that aim to include volume information has been presented and a brief methodology has been introduced. A study of the signals generated is required, however i'am not confident at all on their accuracy, i could work on that in the future. We have also seen how to make bands from the tool.
Candlesticks remain a beautiful charting technique that can provide an enormous amount of information to the trader, and even if the accuracy of patterns based on candlesticks is subject to debates, we can all agree that candlesticks will remain the most widely used type of financial chart.
On a side note i mostly use a dark color for a bullish candle, and a light gray for a bearish candle, with the border color being of the same color as the bullish candle. This is in my opinion the best setup for a candlestick chart, as candles using the traditional green/red can kill the eyes and because this setup allow to apply a wide variety of colors to the plot of overlayed indicators without the fear of causing conflict with the candles color.
Thanks for reading ! :3 Nya
A Word
This morning i received some hateful messages on twitter, the users behind them certainly coming from tradingview, so lets be clear, i know i'am not the most liked person in this community, i know that perfectly, but no one merit to be receive hateful messages. I'am not responsible for the losses of peoples using my indicators, nor is tradingview, using technical indicators does not guarantee long term returns, your ability to be profitable will mostly be based on the quality and quantity of knowledge you have.
Right Sided Ricker Moving Average And The Gaussian DerivativesIn general gaussian related indicators are built by using the gaussian function in one way or another, for example a gaussian filter is built by using a truncated gaussian function as filter kernel (kernel refer to the set weights) and has many great properties, note that i say truncated because the gaussian function is not supposed to be finite. In general the gaussian function is represented by a symmetrical bell shaped curve, however the gaussian function is parametric, and the user might adjust the position of the peak as well as the width of the curve, an indicator using this parametric approach is the Arnaud Legoux moving average (ALMA) who posses a length parameter controlling the filter length, a peak parameter controlling the position of the peak of the gaussian function as well as a width parameter, those parameters can increase/decrease the lag and smoothness of the moving average output.
However what about the derivatives of the gaussian function ? We don't talk much about them and thats a pity because they are extremely interesting and have many great properties as well, therefore in this post i'll present a low lag moving average based on the modification of the 2nd order derivative of the gaussian function, i believe this post will be extremely informative and i hope you will enjoy reading it, if you are not a math person you can skip the introduction on gaussian derivatives and their properties used as filter kernel.
Gaussian Derivatives And The Ricker Wavelet
The notion of derivative is continuous, so we will stick with the term discrete derivative instead, which just refer to the rate of change in the function, we have a change function in pinescript, and we will be using it to show an approximation of the gaussian function derivatives.
Earlier i used the term 2nd order derivative, here the derivative order refer to the order of differentiation, that is the number of time we apply the change function. For example the 0 (zeroth) order derivative mean no differentiation, the 1st order derivative mean we use differentiation 1 time, that is change(f) , 2nd order mean we use differentiation 2 times, that is change(change(f)) , derivates based on multiple differentiation are called "higher derivative". It will be easier to show a graphic :
Here we can see a normal gaussian function in blue, its scaled 1st order derivative in orange, and its scaled 2nd derivative in green, note that i use scaled because i used multiplication in order for you to see each curve, else it would have been less easy to observe them. The number of time a gaussian function derivative cross 0 is based on the order of differentiation, that is 2nd order = the function crossing 0 two times.
Now we can explain what is the Ricker wavelet, the Ricker wavelet is just the normalized 2nd order derivative of a gaussian function with inverted sign, and unlike the gaussian function the only thing you can change is the width parameter. The formula of the Ricker wavelet is show'n here en.wikipedia.org , where sigma is the width parameter.
The Ricker wavelet has this look :
Because she is shaped like a sombrero the Ricker wavelet is also called "mexican hat wavelet", now what would happen if we used a Ricker wavelet as filter kernel ? The response is that we would end-up with a bandpass filter, in fact the derivatives of the gaussian function would all give the kernel of a bandpass filter, with higher order derivatives making the frequency response of the filter approximate a symmetrical gaussian function, if i recall a filter using the first order derivative of a gaussian function would give a frequency response that is left skewed, this skewness is removed when using higher order derivatives.
The Indicator
I didn't wanted to make a bandpass filter, as lately i'am more interested in low-lag filters, so how can we use the Ricker wavelet to make a low-lag low-pass filter ? The response is by taking the right side of the Ricker wavelet, and since values of the wavelets are negatives near the border we know that the filter passband is non-monotonic, that is we know that the filter will have low-lag as frequencies in the passband will be amplified.
So taking the right side of the Ricker wavelet only mean that t has to be greater than 0 and linearly increasing, thats easy, however the width parameter can be tricky to use, this was already the case with ALMA, so how can we work with it ? First it can be seen that values of width needs to be adjusted based on the filter length.
In red width = 14, in green width = 5. We can see that an higher values of width would give really low weights, when the number of negative weights is too important the filter can have a negative group delay thus becoming predictive, this simply mean that the overshoots/undershoots will be crazy wild and that a great fit will be impossible.
Here two moving averages using the previous described kernels, they don't fit the price well at all ! In order to fix this we can simply define width as a function of the filter length, therefore the parameter "Percentage Width" was introduced, and simply set the width of the Ricker wavelet as p percent of the filter length. Lower values of percent width reduce the lag of the moving average, but lets see precisely how this parameter influence the filter output :
Here the filter length is equal to 100, and the percent width is equal to 60, the fit is quite great, lower values of percent width will increase overshoots, in fact the filter become predictive once the percent width is equal or lower to 50.
Here the percent width is equal to 50. Higher values of percent width reduce the overshoots, and a value of 100 return a filter with no overshoots that is suited to act as a lagging moving average.
Above percent width is set to 100. In order to make use of the predictive side of the filter, it would be great to introduce a forecast option, however this require to find the best forecast horizon period based on length and width, this is no easy task.
Finally lets estimate a least squares moving average with the proposed moving average, you know me...a percent width set to 63 will return a relatively good estimate of the LSMA.
LSMA in green and the proposed moving in red with percent width = 63 and both length = 100.
Conclusion
A new low-lag moving average using a right sided Ricker wavelet as filter kernel has been introduced, we have also seen some properties of gaussian derivatives. You can see that lately i published more moving averages where the user can adjust certain properties of the filter kernel such as curve width for example, if you like those moving averages you can check the Parametric Corrective Linear Moving Averages indicator published last month :
I don't exclude working with pure forms of gaussian derivatives in the future, as i didn't published much oscillators lately.
Thx for reading !