TASC 2021.10 - Cycle/Trend AnalyticsPresented here is code for the "Cycle/Trend Analytics" indicator originally conceived by John Ehlers. This is another one of TradingView's first code releases published in the October 2021 issue of Trader's Tips by Technical Analysis of Stocks & Commodities (TASC) magazine.
This indicator, referred to as "CTA" in later explanations, has a companion indicator that is discussed in the article entitled MAD Moving Average Difference , authored by John Ehlers. He's providing an innovative double dose of indicator code for the month of October 2021.
Modes of Operation
CTA has two modes defined as "trend" and "cycle". Ehlers' intention from what can be gathered from the article is to portray "the strength of the trend" in trend mode on real data. Cycle mode exhibits the response of the bank of calculations when a hypothetical sine wave is utilized as price. When cycle mode is chosen, two other lines will be displayed that are not shown in trend mode. A more detailed explanation of the indicator's technical functionality and intention can be found in the original Cycle/Trend Analytics And The MAD Indicator article, which requires a subscription.
Computational Functionality
The CTA indicator only has one adjustment in the indicator "Settings" for choice of modes. The default mode of operation is "trend". Trend mode applies raw price data to the bank of plots, while the cycle mode employs a sinusoidal oscillator set to a cycle period of 30 bars. These are passed to multiple SMAs, which are then subtracted from the original source data. The result is a fascinating display of plots embellished with vivid array of gradient color on real data or the hypothetical sine wave.
Related Information
• SMA
• color.rgb()
Join TradingView
Pesquisar nos scripts por "Cycle"
[blackcat] L2 Ehlers Inverse Fisher Cyber CycleLevel: 2
Background
John F. Ehlers introuced the Inverse Fisher Transform of Cyber Cycle in May, 2004.
Function
"The Inverse Fisher Transform ," describes the calculation and use of the inverse Fisher transform by Dr . Ehlers in 2004. The transform is applied to any indicator with a known probability distribution function, but this script offers a sample transforms: Cyber Cycle . I have created inputs for the trigger levels for entry and exit so that the user may adjust these levels as desired.
In his article, Dr . Ehlers states the inverse Fisher transform can work with any oscillator, and that values between -1 and 1 are more suited for the transform calculations. Here is one version of the inverse Fisher transform of Cyber Cycle . This version takes the highest and lowest value of the Cyber Cycle and normalizes the scale to a range of -1 to 1. John Ehlers shows how to use the inverse Fisher transform ( IFT ) to compress oscillator-type indicators to give clear trading indications of when to buy or sell. The IFT is a nonlinear transformation that changes the probability distribution, so for example, unbounded indicators can be transformed into bounded indicators with a high probability of being either +1 or -1.
Key Signal
ICycle--> Inverse Fisher Transform of Cyber Cycle fast line
Trigger--> Inverse Fisher Transform of Cyber Cycle slow line
Pros and Cons
100% John F. Ehlers definition translation, even variable names are the same. This help readers who would like to use pine to read his book.
Remarks
The 69th script for Blackcat1402 John F. Ehlers Week publication.
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
Narrow Bandpass FilterIn technical analysis most bandpass filters like the MACD, TRIX, AO, or COG will have a non-symmetrical frequency response, in fact, this one is generally right-skewed. As such these oscillators will not fully remove lower and higher frequency components from the input signal, the following indicator is a bandpass filter with a more symmetrical frequency response with the possibility to have a narrow bandwidth, this allows the indicator to potentially isolate sinusoids from the input signal.
Indicator & Settings
The filter is calculated via convolution, if we take into account that the frequency response of a filter is the Fourier transform of its weighting function we can deduce that we can get a narrow response by using a sinusoid sin(2𝛑nf) as the weighting function, with the peak of the frequency response being equal to f , this makes the filter quite easy to control by the user, as this one can choose the frequency to be isolated. The length of the weighting function controls the bandwidth of the frequency response, with a higher length returning an ever-smaller frequency response width.
In the indicator settings the "Cycle Period" determine the period of the sinusoid used as a weighting function, while "Bandwidth" determine the filter passband width, with higher values returning a narrower passband, this setting also determine the length of the convolution, because the sum of the weights must add to 0 we know that the length of the convolution must be a multiple of "Cycle Period", so the length of the convolution is equal to "Cycle Period × Bandwidth".
Finally, the windowing option determines if a window is applied to the weighting function, a weighting function allow to remove ripples in the filter frequency response
Above both indicators have a Cycle period of 100 and a Bandwidth of 4, we can see that the indicator with no windowing don't fully remove the trend component in the price, this is due to the presence of ripples allowing lower frequency components to pass, this is not the case for the windowed version.
In theory, an ultra-narrow passband would allow to fully isolate pure sinusoids, below the cycle period of interest is 20
using a bandwidth equal to 10 allow to retain that sinusoid, however, note that this sinusoid is subject to phase shift and that it might not be a dominant frequency in the price.
Adaptive Zero Lag EMA Strategy [Ehlers + Ric]Behold! A strategy that makes use of Ehlers research into the field of signal processing and wins so consistently, on multiple time frames AND on multiple currency pairs.
The Adaptive Zero Lag EMA (AZLEMA) is based on an informative report by Ehlers and Ric .
I've modified it by using Cosine IFM, a method by Ehlers on determining the dominant cycle period without using fast-Fourier transforms
Instead, we use some basic differential equations that are simplified to approximate the cycle period over a 100 bar sample size.
The settings for this strategy allow you to scalp or swing trade! High versatility!
Since this strategy is frequency based, you can run it on any timeframe (M1 is untested) and even have the option of using adaptive settings for a best-fit.
>Settings
Source : Choose the value for calculations (close, open, high + low / 2, etc...)
Period : Choose the dominant cycle for the ZLEMA (typically under 100)
Adaptive? : Allow the strategy to continuously update the Period for you (disables Period setting)
Gain Limit : Higher = faster response. Lower = smoother response. See for more information.
Threshold : Provides a bit more control over entering a trade. Lower = less selective. Higher = More selective. (range from 0 to 1)
SL Points : Stop Poss level in points (10 points = 1 pip)
TP Points : Take Profit level in points
Risk : Percent of current balance to risk on each trade (0.01 = 1%)
www.mesasoftware.com
www.jamesgoulding.com(Measuring%20Cycles).doc
Schaff Trend Cycle 1.1 with signal codingThis is an edit of Lazy Bear's Schaff Trend Cycle original description here. I've added in the syntax so that you can generate an alert when it crosses the threshold in either direction. Just tick the box to show threshold crosses.
More background on the indicator is here.
www.investopedia.com
Other common settings are fast 23 slow 53 or 10/30, 3/10. I have also set it to 9/20 for test purposes. They have different pluses and minuses on different timeframes.
Bog™ Cycle DetectorThe Cycle Detector is a tool that can be used to dial in the Bog if you are having difficulty. Think of it like training wheels. You can measure the average cycle length and average the Bog in according to the formula explained below. You want to set the Bog length to half the average length of the Cycle Detector and the channel length to 1/4 of the average length of the Cycle Detector.
THIS INDICATOR DOES NOT GIVE BUY OR SELL SIGNALS. THIS INDICATOR IS ONLY USED TO DIAL IN THE SETTINGS OF THE BOG ONLY
Example for the chart above:
Average cycle length is ~26. This is too slow. We use half of this cycle (13) for the length of the indicator, then we take half of the length cycle (which is 13) and then we take roughly half of this which is 7. This 7 will be our input for the channel length.
This gives us the settings, 7, 13, and 2. The smoothing length can always be variable to produce the clearest signals.
Dealing with Chop:
On occasion, when trends are changing, you may find micro bumps or trends. You can either divide these or combine them into the larger trend. In the chart below, there are two possible ways to process the data. Either two smaller triangles could be considered, or one larger triangle could be generated. With time you with have a good idea of how to best interpret these residual signals.
Ehlers Adaptive Cyber Cycle Indicator [LazyBear]Another famous Ehlers indicator.
This is the adaptive version of Ehlers' Cyber Cycle (CC) (already published, check "More info" below). Idea behind making something "adaptive" is to calculate it using dynamic cycle period inputs instead of static setting. In adaptive cyber cycle, Ehlers uses the dominant cycle period as the length in computation of alpha.
According to Ehlers this should be more responsive than the non-adaptive version. Buy and sell signals should often occur one bar earlier than for the non-adaptive version.
I have the usual options in place. Check out plain CC for comparison.
More info:
- Cyber Cycle Indicator:
- Cybernetic Analysis for Stocks and Futures (Ehlers)
List of my public indicators: bit.ly
List of my app-store indicators: blog.tradingview.com
Predictive Time & AlertsPredictive Time Engine (ICT Macros)
Summary
The Predictive Time Engine is a visual tool designed specifically for traders who utilize Time & Price based methodologies, particularly those inspired by ICT (Inner Circle Trader) concepts.
The primary purpose of this indicator is to visualize the critical "time windows" where market liquidity is most likely to be significantly manipulated or distributed. Instead of only appearing in real-time, this indicator is predictive: at the beginning of each day, it will automatically calculate and draw all selected macro sessions for the day ahead, serving as your daily time roadmap.
With this tool, you will no longer miss these crucial moments and can be better prepared to anticipate price action.
Key Features
Predictive Visualization: Automatically projects and draws all macro time windows for the current trading day, giving you a forward-looking view of where the action is likely to occur.
ICT Macro Time Filter: Based on the "Hourly-Macros" concept, which are specific 20-minute periods within each hour (e.g., 09:50 - 10:10) where the price delivery algorithm (IPDA) is often active. You can select and enable each macro window you wish to monitor.
Full Customization: You have complete control over how the information is displayed. Choose between:
Outline: A clean, transparent box frame.
Background: A solid, colored background for the time zone.
Vertical Lines (Dotted, Dashed, Solid): Marks the beginning of each macro session with a vertical line in your chosen style.
Real-time Alerts: Set up notifications in TradingView to get an alert precisely when the price enters one of your selected Macro Time windows.
Automatic Management: Drawings from previous days are automatically cleared to keep your chart clean and focused on the current day's schedule.
The Concept Behind the Indicator
This indicator is inspired by the concept that the market moves in fractal Time Cycles, from yearly down to 90-minute periods. Each of these time cycles often follows a pattern of AMD (Accumulation, Manipulation, Distribution).
Accumulation: A phase of order gathering.
Manipulation: Price is often driven in the opposite direction of its true intent to sweep liquidity (stop losses).
Distribution: The true price move towards a liquidity target (Draw On Liquidity).
The Macro Time windows marked by this indicator are often the stage where the Manipulation phase or the beginning of the Distribution phase occurs. By knowing when these times are approaching, traders can be on high alert and look for confirming trade setups in the most potent areas and times.
How to Use
Configure Sessions: Open the indicator's Settings.
In the "1. General Settings" tab, ensure the Timezone matches your chart's local time (Default: "America/New_York").
In the "2. Active Macro Sessions" tab, check the box for each macro time window you want to monitor.
Choose Display Style: In "General Settings", select your preferred "Display Style" (Outline, Background, or various Line types). You can also change the color.
Set Up Alerts (Optional):
Click the "Alert" clock icon in the TradingView toolbar.
In the "Condition" section, select this indicator: Predictive Time Engine.
From the dropdown below it, ensure "Sesi Makro Dimulai" (Macro Session Start) is selected.
Set your desired notification options and click "Create".
Chart Interpretation: Use the marked time zones as high-alert areas. Pay close attention to how price reacts when entering or leaving these zones to find potential entry opportunities that align with your trading strategy.
Disclaimer: This tool is provided for educational and analytical purposes only. It is not financial advice. All trading decisions are solely your responsibility. Conduct your own research and manage your risk appropriately.
Fourier Weighted Moving Average-(FWMA)Fourier Weighted Moving Average (FWMA)
About Fourier and His Theory
Joseph Fourier (1768–1830) was a French mathematician and physicist best known for his work on heat transfer and periodic functions. His most significant contribution to science is what we now call Fourier Analysis.
What Is Fourier's Theory?
Fourier’s theory states that:
Any repeating (periodic) signal or pattern can be broken down into a sum of simple sine and cosine waves.
This idea became the foundation of signal processing, modern physics, and data smoothing techniques — including those used in financial markets.
Key Concepts of Fourier’s Theory
1. Decomposition of Signals
Complex waveforms can be expressed as combinations of basic sine waves with different frequencies and amplitudes.
2. Frequency Domain View
Instead of viewing data in time (or price), you can analyze its frequency — how often certain movements repeat.
3. Smoothing and Filtering
By focusing only on certain frequencies (e.g., slower or longer cycles), Fourier methods allow you to filter out short-term noise and focus on the trend.
4. Applications in Finance
In trading, Fourier principles help design indicators that:
* Remove short-term market noise
* Emphasize dominant cycles
* Provide cleaner trend direction
Why It Matters for This Indicator
The Fourier Weighted Moving Average (FWMA) used in this indicator applies a custom weight derived from a sin² function, inspired by Fourier’s work on wave behavior. This gives more influence to the mid-section of the price data, making the average line smoother and more stable than traditional methods like SMA or EMA.
Unlike basic moving averages, the FWMA reacts to price changes more fluidly while reducing whipsaws, which is especially useful for trend-following strategies.
Input Settings and Controls
This section outlines all configurable fields and buttons available in the indicator, grouped for clarity:
Main Settings
* Source
Defines the price source used in the FWMA calculation. Options typically include close, open, hl2, etc.
* FWMA – 1 (Length)
Sets the period for the first Fourier Weighted Moving Average. Shorter lengths produce faster, more sensitive lines.
* FWMA – 2 (Length)
Sets the period for the second FWMA, typically used as a slower or long-term trend filter.
* Weight Epsilon
A small constant added to the weight formula to prevent division by zero and improve numeric stability in the FWMA formula.
Slope Sensitivity
* Slope Sensitivity (Bars)
This field defines the number of bars used to calculate the slope of each FWMA. The slope determines whether the line is rising or falling and is used to change the line color accordingly.
* Enable Slope Coloring (Toggle)
When enabled, both FWMA lines change color based on their slope:
* Positive slope = trend up color
* Negative slope = trend down color
If disabled, lines are shown in a neutral (gray) color.
Ribbon Settings (Group: Ribbon)
* Enable Ribbon for FWMA-2 (Toggle)
Turns the ribbon feature on or off. When enabled, the script plots two additional lines slightly above and below FWMA-2.
* Ribbon Thickness
Controls the line width of the ribbon above and below FWMA-2. Values from 1 to 100 are allowed, giving full control over ribbon visual prominence.
SP 500 PE Ratio (Loose Date Match)📈 **S&P 500 PE Ratio (from Excel Data)**
This custom indicator visualizes the historical S&P 500 Price-to-Earnings (PE) Ratio loaded from Excel. Each data point represents a snapshot of the market valuation at a specific time, typically on an annual or quarterly basis.
🔹 **What it does:**
- Plots the PE ratio values on the chart aligned with historical dates
- Uses stepwise or linear rendering to account for missing trading days
- Helps identify valuation cycles and extremes (e.g., overvalued vs undervalued)
🔍 **Use case:**
- Long-term market analysis
- Compare PE trends with price performance
- Spot long-term entry/exit zones based on valuation
🛠️ Future plans:
- Add value zone highlighting (e.g., PE > 30 = red, PE < 15 = green)
- Support for dynamic datasets (via Google Sheets or Notion)
Category: `Breadth indicators`, `Cycles`
💡 Source: Manually imported data (can be replaced with any custom macro data series)
RP - Realized Price for Bitcoin (BTC) [Logue]Realized Price (RP) - The RP is summation of the value of each BTC when it last moved divided by the total number of BTC in circulation. This gives an estimation of the average "purchase" price of BTC on the bitcoin network based on when it was last transacted. This indicator tells us if the average network participant is in a state of profit or loss. This indicator is normally used to detect BTC bottoms, but an extension can be used to detect when the bitcoin network is "highly" overvalued. Because the "strength" of the BTC tops has decreased over the cycles, a logarithmic function for the extension was created by fitting past cycles as log extension = slope * time + intercept. This indicator triggers when the BTC price is above the realized price extension. For the bottoms, the RP is shifted downwards at a default value of 80%. The slope, intercept, and RP bottom shift can all be modified in the script.
Fisher Cycle Adaptive, Fisher Transform [loxx]Fisher Cycle Adaptive, Fisher Transform
Things to know
-Experimental, not to be used in trading
Calculation
-Uses a measurement where the dominant, raw Fisher Transform position is measured and then used as the length input for the next bar
-This is based on raw recursive look backs, not based on any sine wave or signal processing measure of cycle dominance
How to use
-Change from Fixed to Fisher Cycle, adjust the wave cycle percent look back %
Features
-Bar coloring
-Thresholds
FFTLibraryLibrary "FFTLibrary" contains a function for performing Fast Fourier Transform (FFT) along with a few helper functions. In general, FFT is defined for complex inputs and outputs. The real and imaginary parts of formally complex data are treated as separate arrays (denoted as x and y). For real-valued data, the array of imaginary parts should be filled with zeros.
FFT function
fft(x, y, dir) : Computes the one-dimensional discrete Fourier transform using an in-place complex-to-complex FFT algorithm . Note: The transform also produces a mirror copy of the frequency components, which correspond to the signal's negative frequencies.
Parameters:
x : float array, real part of the data, array size must be a power of 2
y : float array, imaginary part of the data, array size must be the same as x ; for real-valued input, y must be an array of zeros
dir : string, options = , defines the direction of the transform: forward" (time-to-frequency) or inverse (frequency-to-time)
Returns: x, y : tuple (float array, float array), real and imaginary parts of the transformed data (original x and y are changed on output)
Helper functions
fftPower(x, y) : Helper function that computes the power of each frequency component (in other words, Fourier amplitudes squared).
Parameters:
x : float array, real part of the Fourier amplitudes
y : float array, imaginary part of the Fourier amplitudes
Returns: power : float array of the same length as x and y , Fourier amplitudes squared
fftFreq(N) : Helper function that returns the FFT sample frequencies defined in cycles per timeframe unit. For example, if the timeframe is 5m, the frequencies are in cycles/(5 minutes).
Parameters:
N : int, window length (number of points in the transformed dataset)
Returns: freq : float array of N, contains the sample frequencies (with zero at the start).
[blackcat] L2 Ehlers Correlation CycleLevel: 2
Background
John F. Ehlers introuced Correlation Cycle indicator in Jun, 2020.
Function
In his article “Correlation As A Cycle Indicator” in Jun, 2020, John Ehlers introduces a companion to the trend indicator he presented in his article. This new indicator is designed to help traders navigate cycling markets. The new cycle indicator can help the trader get into trades earlier and have better insight into prevailing market conditions. While his correlation trend indicator measures the price correlation with a rising slope, the new correlation cycle indicator (CCY) measures the correlation with a sine wave.The new system trades only when the market state is 1 or -1, indicating trend regime. It goes out of the market when the market state is 0.
Key Signal
State --> +1 for long and -1 for short
Pros and Cons
100% John F. Ehlers definition translation, even variable names are the same. This help readers who would like to use pine to read his book.
Remarks
The 96th script for Blackcat1402 John F. Ehlers Week publication.
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
[blackcat] L2 Ehlers Sine Wave Coupled Eight Planetary CycleLevel: 2
Background
Have you considered that factors outside the Earth will be related to macro market trends? Let’s discuss the relationship between the planetary movement in the Galaxy and the market movement on Earth today! Although I said that, you may have laughed out in front of the screen, but the calculations in this script are entirely based on astronomical data and mathematical relationships.
Your next question may be why you compare the movements of the eight planets and the laws of the market on the earth together? My answer comes from a Cybernetic Sine Wave indicator proposed by Dr. John F. Ehlers.
Function
L2 Ehlers Sine Wave Coupled Eight Planetary Cycle first converts the astronomical data of the eight major planets into planetary aspects/phases through mathematical relationships. Planetary aspects/phases can provide the historical and current relative positions of each planet in the mathematical triangle relationship. We can use a simple mathematical sine formula to constrain the planet's trajectory between -1 and 1, which is what we often call a sine wave.
The relationship between the sine wave and the market can be extracted from the theory of John F. Ehlers. In Ehlers' theory, market price can be modeled by the trend and cycle modes. And in his works, there are many indicators of how to completely remove the trend in the market price and only leave the cycle mode data. The Cybernetic Sine Wave indicator is exactly the cycle mode data after the market trend is stripped, and expressed in the form of a sine wave.
If you can read to here with patience, you must also be aware of the premise that the trajectories of the eight planets and the laws of the earth market can be coupled: the trajectory of the sine wave mode. Therefore, this indicator is a tool for comparing and analyzing the two in the same chart. I hope you like it.
Finally, in order to benchmark the trajectories of the eight planets and the specific market on the earth, a starting point in time is particularly important. This is the base date of the market index to be analyzed. It is the year, month, and day data specified by the index, which needs to be input by the user when analyzing a specific stock index. For example, the base date of the S&P 500 index is January 3, 1928. This date needs to be entered into the indicator to analyze the SPX500.
Key Signal
Mercury_trail ---> smoothed Mercury orbit sine wave
Venus_trail ---> smoothed Venus orbit sine wave
Earth_trail ---> smoothed Earth orbit sine wave
Earth_mirror ---> smoothed Earth mirrored orbit sine wave
Mars_trail ---> smoothed Mars orbit sine wave
Jupiter_trail ---> smoothed Jupiter orbit sine wave
Saturn_trail ---> smoothed Saturn orbit sine wave
Uranus_trail ---> smoothed Uranus orbit sine wave
Neptune_trail ---> smoothed Neptune orbit sine wave
Aspect 0, 45, 90, 225, 270 deg ---> key planet aspects
ehlersine ---> Ehlers Cybernetic Sine Wave
ehlerslsine ---> Ehlers Cybernetic Lead Sine Wave
Pros and Cons
This is a technical indicator that I have come up with on a whim, and the laws of planetary operation and the operation of the Earth market are still being explored. Hope that interested friends will share your new discoveries.
Remarks
To celebrate I released the 50th technical indicator script on TV!
Courtesy of @sal157011 John Ehlers "Cybernetic Sine Wave" indicator, I converted it from pine v2 to pine v4 in this script.
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
Envelope BTMStudi cicli? Questo fa per te, le bande che altro non sono due medie mobili, tengono il prezzo alle due estremità (in alto e in basso).
Questo ti farà semplicemente analizzare e tenere traccia i cicli dello strumento in questione.
Do you study cycles? This is for you, the bands, formed by two moving averages, keep the price between the two ends (top and bottom).
This will simply cause you to analyze and track the cycles of price in question.
Schaff Trend Cycle w/ MACD HistogramWhat Is Schaff Trend Cycle? (Reference from Investopedia)
The Schaff Trend Cycle (STC) is a charting indicator that is commonly used to identify market trends and provide buy and sell signals to traders. Developed in 1999 by noted currency trader Doug Schaff, STC is a type of oscillator and is based on the assumption that, regardless of time frame, currency trends accelerate and decelerate in cyclical patterns.
How STC Works
Many traders are familiar with moving average convergence/divergence (MACD) charting tool, which is an indicator that is used to forecast price action and is notorious for lagging due to its slow responsive signal line . By contrast, STC’s signal line enables it to detect trends sooner. In fact, it typically identifies up and downtrends long before MACD indicator.
While STC is computed using the same exponential moving averages as MACD, it adds a novel cycle component to improve accuracy and reliability. While MACD is simply computed using a series of moving average, the cycle aspect of STC is based on time (e.g. number of days).
It should also be noted that, although STC was developed primarily for fast currency markets, it may be effectively employed across all markets, just like MACD. It can be applied to intraday charts, such as five minutes or one hour charts, as well as daily, weekly, or monthly time frames.
What's included the indicator?
Zero MACD lag algorithm (can be enabled/disabled)
MACD Histogram (has a different calculation to show the trend clearly. Can revert to original algo but will not truly reflect the current trend.)
Histogram peaks
STC pivots
How to use this indicator?
Use the STC overbought/oversold to determine trend strength.
Use the MACD zeroline crossover to determine the trend if bull/bear
For risky trades:
Long or cover when STC shows a bullish pivot. Exit or short on STC bear pivots
For conservative trades:
Long when MACD histogram crosses above midline. Exit or short on STC bear pivots
Settings:
Default is Fast - 5, Slow - 20. You can turn it up to Fast - 10, Slow - 30.
You can enable or disable certain features if you dont like to see them.
BurgerCrypto.com: MA based band for bitcoin cycle highs&lowsWarning: This script works only on a daily chart and only works for bitcoin charts with a long history. Best to be used on the BLX chart as it goes back to July 2010.
This script shows you the Moving Average with the length of a full bitcoin cycle, in which a cycle is defined as a period between two reward halvings; i.e. 210.000 blocks.
After data analysis in Python, I found that the average inter arrival time is a bit lower than the often communicated 10minutes; it's 9.46minutes, which makes the 210.000 block interval equal to 1379days.
The 1379d Moving Average seems to serve well as a support for the price of bitcoin over time and it's 4th 2^n multiple did a good job in catching the cycle tops.
If you like this indicator, please leave some claps for the Medium article in which I introduced this indicator:
medium.com
ALMA Hurst Cycles V2 - Potential Pivot Points Chandelier VersionAlternative version to this script
Uses the calculation for creating chandelier stops as a basis for the bands. Seems to be more consistent especially over higher TFs. Still needs to be tuned for a good price fit.
AV BTC Pi Cycle OscillatorPi Cycle Oscillator
The oscillator version of the Pi Cycle Top Indicator. While I have found great differences in scales being used for the oscillator across various sources. The shape of the oscillator line is on the other hand the same across the board. With 2 specific versions. Either using the 111 Day SMA or the 2*350 SMA for division.
We allow for both versions. It is possible to select the formula for calculation on the input tab.
Either using (111 SMA - 2*350 SMA) / 111 SMA (default) or (111 SMA - 2*350 SMA) / 2*350 SMA .
We multiply the result by -100 so that overbought conditions fall at the top of the indicator chart and oversold at the bottom. Everyone has their own idea of the value range. This is no different.
For both formulas around 0 is overbought zone, while -200 and -70 are oversold areas. Thresholds are configurable in the input tab. I made an arbitrary choice for the thresholds.
If you want to see overbought and oversold areas on the price chart: Enable the Overbought and oversold Overlay area in the style tab. It is disabled by default.
Additionally: Pi Cycle Tops are marked with a red circle. ATH tops are marked with yellow diamonds. Grey lines marks halving days.
AV BTC Pi Cycle Top (with ATH) OverlayPi Cycle Top Indicator
Created by Phillip Swift . It works by comparing the 111-day SMA (blue) and the 350-day SMA. The value of the 350-day SMA is multiplied by 2 and referred to as 2*350 SMA (purple). Note: The number of days is not multiplied; the 350-day SMA is not doubled to calculate a 700-day SMA.
These two moving averages were selected because 350 / 111 ≈ 3.153, an approximation of the number Pi.
When the 111-day SMA (blue) crosses over the 2*350 SMA (purple), it signals a market cycle peak. Historically, this has worked extremely well. However, with the growth of BTC Futures and ETFs, this indicator might lose its edge.
A label and a red circle signal crossover. The indicator also marks all ATH (All-Time High) bars with yellow diamonds. The ATH line is hidden by default but can be enabled in the style tab. Additionally, halving days are marked with grey vertical lines and labels. Feel free to hide certain elements in the style tab.
For marking overbought and oversold areas, I believe looking at the Pi Cycle Oscillator is a better choice. For this reason, this indicator does not highlight overbought or oversold areas; it only marks market tops.
Adaptive, Zero lag Schaff Trend Cycle Backtest (Simple) [Loxx]Simple backtest for "Adaptive, Zero lag Schaff Trend Cycle" found here:
What this backtest includes:
-Customization of inputs for Schaff Trend Cycle calculation
-Take profit 1 (TP1), and Stop-loss (SL), calculated using standard RMA-smoothed true range
-Activation of TP1 after entry candle closes
-Zero-cross entry signal plots
-Longs and shorts
-Continuation longs and shorts
Happy trading!
Turnover Cycle MATurnover Cycle indicator
Turnover Cycle indicates how many days the market capitalization will be completed traded once.
The MA and EMA based on the Turnover Cycle would help you to observe the average market holding shares' price position.
If you buy the share when the price is lower than the average market holding shares' price position, that will dramatically increase your chances of returns.
!!!!! Due to the financial data has a limited period, the latest 500 bars is the true value.
Please don't refer to any value on the bar before 500.
Please enjoy.
Hurst Cycle Channel Clone %BA %B of lazy bears Hurst Cycle Channel Clone
Remember to thank him for his great scripts.
With this you can easily see when the close is above,below or in the short or medium cycle channel.