divergingchartpatternLibrary "divergingchartpattern"
Library having implementation of converging chart patterns
getPatternNameByType(patternType)
Returns pattern name based on type
Parameters:
patternType (int) : integer value representing pattern type
Returns: string name of the pattern
method find(this, sProperties, dProperties, patterns, ohlcArray)
find converging patterns for given zigzag
Namespace types: zg.Zigzag
Parameters:
this (Zigzag type from Trendoscope/ZigzagLite/2) : Current zigzag Object
sProperties (ScanProperties) : ScanProperties Object
dProperties (DrawingProperties type from Trendoscope/abstractchartpatterns/5) : DrawingProperties Object
patterns (array type from Trendoscope/abstractchartpatterns/5) : array of existing patterns to check for duplicates
ohlcArray (array type from Trendoscope/ohlc/1) : array of OHLC values for historical reference
Returns: string name of the pattern
ScanProperties
Object containing properties for pattern scanning
Fields:
baseProperties (ScanProperties type from Trendoscope/abstractchartpatterns/5) : Object of Base Scan Properties
convergingDistanceMultiplier (series float)
Search in scripts for "pattern"
ZigZag Library [TradingFinder]🔵 Introduction
The "Zig Zag" indicator is an analytical tool that emerges from pricing changes. Essentially, it connects consecutive high and low points in an oscillatory manner. This method helps decipher price changes and can also be useful in identifying traditional patterns.
By sifting through partial price changes, "Zig Zag" can effectively pinpoint price fluctuations within defined time intervals.
🔵 Key Features
1. Drawing the Zig Zag based on Pivot points :
The algorithm is based on pivots that operate consecutively and alternately (switch between high and low swing). In this way, zigzag lines are connected from a swing high to a swing low and from a swing low to a swing high.
Also, with a very low probability, it is possible to have both low pivots and high pivots in one candle. In these cases, the algorithm tries to make the best decision to make the most suitable choice.
You can control what period these decisions are based on through the "PiPe" parameter.
2.Naming and labeling each pivot based on its position as "Higher High" (HH), "Lower Low" (LL), "Higher Low" (HL), and "Lower High" (LH).
Additionally, classic patterns such as HH, LH, LL, and HL can be recognized. All traders analyzing financial markets using classic patterns and Elliot Waves can benefit from the "zigzag" indicator to facilitate their analysis.
" HH ": When the price is higher than the previous peak (Higher High).
" HL ": When the price is higher than the previous low (Higher Low).
" LH ": When the price is lower than the previous peak (Lower High).
" LL ": When the price is lower than the previous low (Lower Low).
🔵 How to Use
First, you can add the library to your code as shown in the example below.
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
Function "ZigZag" Parameters :
🟣 Logical Parameters
1. HIGH : You should place the "high" value here. High is a float variable.
2. LOW : You should place the "low" value here. Low is a float variable.
3. BAR_INDEX : You should place the "bar_index" value here. Bar_index is an integer variable.
4. PiPe : The desired pivot period for plotting Zig Zag is placed in this parameter. For example, if you intend to draw a Zig Zag with a Swing Period of 5, you should input 5.
PiPe is an integer variable.
Important :
Apart from the "PiPe" indicator, which is part of the customization capabilities of this indicator, you can create a multi-time frame mode for the indicator using 3 parameters "High", "Low" and "BAR_INDEX". In this way, instead of the data of the current time frame, use the data of other time frames.
Note that it is better to use the current time frame data, because using the multi-time frame mode is associated with challenges that may cause bugs in your code.
🟣 Setting Parameters
5. SHOW_LINE : It's a boolean variable. When true, the Zig Zag line is displayed, and when false, the Zig Zag line display is disabled.
6. STYLE_LINE : In this variable, you can determine the style of the Zig Zag line. You can input one of the 3 options: line.style_solid, line.style_dotted, line.style_dashed. STYLE_LINE is a constant string variable.
7. COLOR_LINE : This variable takes the input of the line color.
8. WIDTH_LINE : The input for this variable is a number from 1 to 3, which is used to adjust the thickness of the line that draws the Zig Zag. WIDTH_LINE is an integer variable.
9. SHOW_LABEL : It's a boolean variable. When true, labels are displayed, and when false, label display is disabled.
10. COLOR_LABEL : The color of the labels is set in this variable.
11. SIZE_LABEL : The size of the labels is set in this variable. You should input one of the following options: size.auto, size.tiny, size.small, size.normal, size.large, size.huge.
12. Show_Support : It's a boolean variable that, when true, plots the last support line, and when false, disables its plotting.
13. Show_Resistance : It's a boolean variable that, when true, plots the last resistance line, and when false, disables its plotting.
Suggestion :
You can use the following code snippet to import Zig Zag into your code for time efficiency.
//import Library
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
// Input and Setting
// Zig Zag Line
ShZ = input.bool(true , 'Show Zig Zag Line', group = 'Zig Zag') //Show Zig Zag
PPZ = input.int(5 ,'Pivot Period Zig Zag Line' , group = 'Zig Zag') //Pivot Period Zig Zag
ZLS = input.string(line.style_dashed , 'Zig Zag Line Style' , options = , group = 'Zig Zag' )
//Zig Zag Line Style
ZLC = input.color(color.rgb(0, 0, 0) , 'Zig Zag Line Color' , group = 'Zig Zag') //Zig Zag Line Color
ZLW = input.int(1 , 'Zig Zag Line Width' , group = 'Zig Zag')//Zig Zag Line Width
// Label
ShL = input.bool(true , 'Label', group = 'Label') //Show Label
LC = input.color(color.rgb(0, 0, 0) , 'Label Color' , group = 'Label')//Label Color
LS = input.string(size.tiny , 'Label size' , options = , group = 'Label' )//Label size
Show_Support= input.bool(false, 'Show Last Support',
tooltip = 'Last Support' , group = 'Support and Resistance')
Show_Resistance = input.bool(false, 'Show Last Resistance',
tooltip = 'Last Resistance' , group = 'Support and Resistance')
//Call Function
ZZ.ZigZag(high ,low ,bar_index ,PPZ , ShZ ,ZLS , ZLC, ZLW ,ShL , LC , LS , Show_Support , Show_Resistance )
Fibonacci Archer Box [ChartPrime]Fibonacci Archer Box (ChartPrime) is a full featured Fibonacci box indicator that automatically plots based on pivot points. This indicator plots retracement levels, time lines, fan lines, and angles. Each one of these features are fully customizable with the ability to disable individual features. A unique aspect to this implementation is the ability to set targets based on retracement levels and time zones. This is set to 0.618 by default but you can pick any Fibonacci zone you like. Also included are markings that show you when Fibonacci levels are met or exceeded. These moments are plotted on the chart as colored dots that can be enabled or disabled. Along with these markings are crosses that can be shown when targets are hit. Both of these markings are colored with the related Fibonacci level colors.
When there is a zig-zag, this indicator will test to see if the zig-zag meets the criteria set up by the user before plotting a new Fibonacci box. You can pick from either higher highs or lower highs for bearish patterns, and higher lows or lower lows for bullish patterns. Both patterns can be set to use both when finding new boxes if you want to make it more sensitive. You also have the option to filter based on minimum and maximum size. If the box isn't within the selected size range, it will simply be ignored. The pivot levels can be configured to use either candle wicks or candle bodies. By default this is configured to use candle wick with a lookforward of 5 and lookback of 10.
We have included alerts for Fibonacci level crosses, Fibonacci time crosses, and target hits. All alerts are found in the add alert section built into tradingview to make alert creation as easy as possible. Each alert is labeled with their correct names to make navigation simple.
W.D. Gann, a renowned figure in the world of trading and market analysis, is often questioned for his use of Fibonacci levels in his strategies. However, evidence points to the fact that Gann did not directly employ Fibonacci price levels in his work. Instead, Gann had his unique approach, dividing price ranges into thirds, eighths, and other fractions, which, although somewhat aligning with Fibonacci levels, are not exact matches. It is clear that Gann was familiar with Fibonacci and the golden ratio, as references to them appear in his recommended reading list and some of his writings. Despite this awareness, Gann chose not to incorporate Fibonacci levels explicitly in his methodologies, preferring instead to use his divisions of price and time. Notably, Gann's emphasis on the 50% level—a marker not associated with Fibonacci numbers—further illustrates his departure from Fibonacci usage. This level, despite its popularity among some Fibonacci enthusiasts, does not stem from Fibonacci's sequence. This is why we opted to call this indicator Fibonacci Archer Box instead of a Gann Box as we didn't feel like it was appropriate.
In summary, the Fibonacci Archer Box (ChartPrime) is a tool that incorporates Fibonacci retracements and projections with an automated pivot point-based plotting system. It allows for customization across various features including retracement levels, timelines, fan lines, and angles, and integrates visual cues for level crosses and target hits. While it acknowledges the methodologies of W.D. Gann, it distinctively utilizes Fibonacci techniques, providing a straightforward tool for market analysis. We hope you enjoy using this indicator as much as we enjoyed making it!
Enjoy
Candlestick Bias OscillatorCandlestick Bias Oscillator (CBO)
The Candlestick Bias Oscillator (CBO) with Signal Line is a pioneering indicator developed for the TradingView platform, designed to offer traders a nuanced analysis of market sentiment through the unique lens of candlestick patterns. This indicator stands out by merging traditional concepts of price action analysis with innovative mathematical computations, providing a fresh perspective on trend detection and potential market reversals.
Originality and Utility
At the core of the CBO's originality is its method of calculating the bias of candlesticks. Unlike conventional oscillators that may rely solely on closing prices or high-low ranges, the CBO incorporates both the body and wick of candlesticks into its analysis. This dual consideration allows for a more rounded understanding of market sentiment, capturing both the directional momentum and the strength of price rejections within a single oscillator.
Mathematical Foundations
1. Body Bias: The CBO calculates the body bias by assessing the relative position of the close to the open within the day's range, scaled to a -100 to 100 range. This calculation reflects the bullish or bearish sentiment of the market, based on the day's closing momentum.
Body Bias = (Close−Open)/(High−Low) x 100
Wick Bias: Similarly, the wick bias calculation takes into account the lengths of the upper and lower wicks, indicating rejection levels beyond the body's close. The balance between these wicks is scaled similarly to the body bias, offering insight into the market's indecision or rejection of certain price levels.
Wick Bias=(Lower Wick−Upper Wick)/(Total Wick Length) × 100
3. Overall Bias and Oscillator: By averaging the body and wick biases, the CBO yields an overall bias score, which is then smoothed over a user-defined period to create the oscillator. This oscillator provides a clear visual representation of the market's underlying sentiment, smoothed to filter out the noise.
4. Signal Line: A secondary smoothing of the oscillator creates the signal line, offering a trigger for potential trading signals when the oscillator crosses this line, indicative of a change in market momentum.
How to Use the CBO:
The CBO is versatile, suitable for various trading strategies, including scalping, swing trading, and long-term trend following. Traders can use the oscillator and signal line crossovers as indications for entry or exit points. The relative position of the oscillator to the zero line further provides insight into the prevailing market bias, enabling traders to align their strategies with the broader market sentiment.
Why It Adds Value:
The CBO's innovative approach to analyzing candlestick patterns fills a gap in the existing array of TradingView indicators. By providing a detailed analysis of both candle bodies and wicks, the CBO offers a more comprehensive view of market sentiment than traditional oscillators. This can be particularly useful for traders looking to gauge the strength of price movements and potential reversal points with greater precision.
Conclusion:
The Candle Bias Oscillator with Signal Line is not just another addition to the plethora of indicators on TradingView. It represents a significant advancement in the analysis of market sentiment, combining traditional concepts with a novel mathematical approach. By offering a deeper insight into the dynamics of candlestick patterns, the CBO equips traders with a powerful tool to navigate the complexities of the market with increased confidence.
Explore the unique insights provided by the CBO and integrate it into your trading strategy for a more informed and nuanced market analysis.
basechartpatternsLibrary "basechartpatterns"
Library having complete chart pattern implementation
getPatternNameById(id)
Returns pattern name by id
Parameters:
id (int) : pattern id
Returns: Pattern name
method find(points, properties, dProperties, ohlcArray)
Find patterns based on array of points
Namespace types: chart.point
Parameters:
points (chart.point ) : array of chart.point objects
properties (ScanProperties type from Trendoscope/abstractchartpatterns/1) : ScanProperties object
dProperties (DrawingProperties type from Trendoscope/abstractchartpatterns/1) : DrawingProperties object
ohlcArray (OHLC type from Trendoscope/ohlc/1)
Returns: Flag indicating if the pattern is valid, Current Pattern object
method find(this, properties, dProperties, patterns, ohlcArray)
Find patterns based on the currect zigzag object but will not store them in the pattern array.
Namespace types: zg.Zigzag
Parameters:
this (Zigzag type from Trendoscope/ZigzagLite/2) : Zigzag object containing pivots
properties (ScanProperties type from Trendoscope/abstractchartpatterns/1) : ScanProperties object
dProperties (DrawingProperties type from Trendoscope/abstractchartpatterns/1) : DrawingProperties object
patterns (Pattern type from Trendoscope/abstractchartpatterns/1) : Array of Pattern objects
ohlcArray (OHLC type from Trendoscope/ohlc/1)
Returns: Flag indicating if the pattern is valid, Current Pattern object
Consolidation FilterDescription:
Consolidation is a technical analysis term used to describe a assets's price movement within a given support and resistance range for a period of time. Consolidations happen either during trending market phases or before a new trend. Consolidation is generally interpreted as market indecisiveness and uncertainty as to which way the market will go next caused due to trader indecisiveness, which ends when the asset's price moves above or below the trading level. A consolidation level could be broken for several reasons, such as the release of materially important news or the triggering of a succession of limit orders.
Markets spend a great amount of time ranging and going sideways. It pays off to know how to identify and trade consolidations because they happen so frequently.
Periods of consolidation can be found in price charts for any time interval, and these periods can last for days, weeks, or months. Technical traders look for support and resistance levels in price charts and then use these levels to make buy and sell decisions. Typically, traders look for certain consolidation patterns: sideways ranges, downward or upward sloping ranges (also called flags), or triangular consolidations (triangles, wedges and pennants).
In contrast, this script offers an alternative, fairly straightforward but effective, way to pinpoint consolidation periods using a forecast oscillator method and simply highlighting relevant regions in the chart (with a yellow background).
In the settings menu you can select one of the three calculation methods, but all of them are based on the forecast oscillator. The indicator settings depend on the asset and on the timeframe. For example for the 2H timeframe BTSUSD preferred settings are period:10/method:2/threshold:0.2, and for the 15M timeframe BTSUSD the settings are period:10/method:2/threshold:0.02. Feel free to experiment with settings to suit your needs.
@tk · spectral█ OVERVIEW
This script is an indicator that helps traders to identify the price difference between spot and futures of the current crypto plotted into the chart. It works in both types of markets, when the chart is plotting the crypto in spot market, it will compare with its respective futures ticker and vice-versa. If the current asset isn't a crypt ticker, the indicator will not be plotted into the chart.
█ MOTIVATION
Since crypto's derivative market is based on spot market asset's price, to calculate the arbitrage mechanisms that attempts to balance the asset price, this indicator can help traders to identify some spot and futures price divergence that can create an anomaly of funding rate and can push it to an extreme negative — or positive — rate. So, easing to track the price difference between both markets will bring more evidences to identify an artificial price move, specially in crypto assets with low market cap.
█ CONCEPT
The trading concept to use this indicator is the concept of the arbitrage machamism created by exchanges that calculates the funding rate based on spot and futures price difference that will vary from exchange to exchange. This strategy don't works alone. It needs to be aligned together with others indicators like Exponential Moving Averages, Chart Patterns, Support and Resistance, and so on... Even more confluences that you have, bigger are your chances to increase the probability for a successful trade. So, don't use this indicator alone. Compose a trading strategy and use it to improve your analysis.
█ CUSTOMIZATION
This indicator allows the trader to customize the following settings:
GENERAL
Text size
Changes the font size of price difference table to improve accessibility.
Type: string
Options: `tiny`, `small`, `normal`, `large`.
Default: `small`
Position
Changes the position of price difference table.
Type: string
Options: `top_left`, `top_center`, `top_right`, `middle_left`, `middle_center`, `middle_right`, `bottom_left`, `bottom_center`, `bottom_right`.
Default: `bottom_right`
Pair Quote
The ticker quote symbol that will be used to base the ticker comparison from spot to futures (e.g. BTCUSDT which `USDT` is the quote. ETHBTC which `BTC` is the quote).
Type: string
Default: USDT
Spectrum Color
The color of the spectrum candles. Spectrum candles are the candles of the opposite market. If the current ticker is in the spot market, the spectrum candles will be the price of the futures market.
Type: color
Default: #434651
█ FUNCTIONS
The indicator contains the following functions:
stripStarts(src, str)
Strips a defined pattern from a string.
Parameters:
src: (string) Source string
str: (string) String pattern to be stripped from start of source string.
Returns: (string) Stripped string with matched regex pattern.
Custom Candlestick MarkingsThis indicator allows you to filter candlesticks based on their body (the real body) and wick lengths. Specifically, it marks candlesticks based on the following criteria:
For Bearish Candles:
1. The close price is lower than the open price (indicating a bearish candle).
2. The difference between the high and the maximum of open and close is less than or equal to the specified upper wick length.
3. The absolute difference between the close and open is greater than or equal to the specified body height.
For Bullish Candles:
1. The close price is higher than the open price (indicating a bullish candle).
2. The difference between the maximum of open and close and the low is less than or equal to the specified lower wick length.
3. The absolute difference between the close and open is greater than or equal to the specified body height.
These conditions are used to filter and mark candlesticks that meet the specified criteria, allowing you to visually identify them on the chart. This can be useful for technical analysis and identifying specific candlestick patterns or conditions based on body and wick lengths.
Certainly, this indicator can help in identifying trends more easily. Specifically, by applying certain criteria based on the length of candlestick bodies and wicks, it becomes easier to visually capture changes in market trends and specific patterns.
For instance, you can use this indicator to identify candlestick patterns that match specific body heights or wick lengths. This makes it easier to detect signs of trend reversals or trend changes, and it can assist in making trading decisions when combined with trendlines or support and resistance levels.
However, it's common to use this indicator in conjunction with other technical analysis tools and indicators. Confirming trends and pinpointing entry points often requires multiple sources of information and analysis. In investing and trading, thorough research and careful strategy are essential.
KeitoFX Dynamic Indicator Free vers.This script represents a versatile dynamic indicator called "KeitoFX Dynamic Indicator Free version." It is developed by the author "KeitoFX" and operates as a custom indicator overlaying on financial charts. The indicator utilizes a unique algorithm to dynamically identify bullish and bearish candlestick patterns with specific criteria.
Key Features:
- The indicator visually marks bullish and bearish candlestick patterns using triangle shapes, providing quick visual cues to traders.
- Bullish patterns are detected when the closing price is higher than the opening price and the high and low prices of the candlestick form a narrow range.
- Bearish patterns are identified when the closing price is lower than the opening price, and the high and low prices also form a narrow range.
The indicator incorporates flexible settings that users can customize to fit their trading preferences:
- Users can choose the table's placement, either at the "Top Right," "Middle Right," or "Bottom Right" of the chart.
- Customizable dimensions for the width and height of the table are available.
- Adjustable text size settings ranging from "Auto" to "Huge" are provided for the displayed text.
- A descriptive table containing trading rules and conditions is optionally displayed below the price chart.
Additional Information:
- The indicator's color scheme is harmonious, with shades of purple and neutral tones.
- The "Require FVG" setting influences the pattern detection's sensitivity.
- A dynamic standard deviation is calculated based on the selected displacement settings and historical candle ranges.
- A "FVG" condition enhances pattern accuracy.
- Bullish and bearish pattern detection includes overlapping with other predefined arrays to increase pattern significance.
Note:
This indicator is provided under the Mozilla Public License 2.0, as indicated by the source code comment at the beginning of the script. Users are encouraged to review and comply with the license terms when using this indicator in their trading activities.
Candles In Row (Expo)█ Overview
The Candles In Row (Expo) indicator is a powerful tool designed to track and visualize sequences of consecutive candlesticks in a price chart. Whether you're looking to gauge momentum or determine the prevailing trend, this indicator offers versatile functionality tailored to the needs of active traders. The Candles In Row indicator can be an integral part of a multi-timeframe trading strategy, allowing traders to understand market momentum, and set trading bias. By recognizing the patterns and likelihood of future price movements, traders can make more informed decisions and align their trades with the overall market direction.
█ How to use
The indicator enhances traders' understanding of the consecutive candle patterns, helping them to uncover trends and momentum. Consecutive candles in the same direction may indicate a strong trend. The Candles In Row indicator can be an essential tool for traders employing a multiple timeframes strategy.
Analyzing a Higher Timeframe:
Understanding Momentum: By analyzing consecutive green or red candles in a higher timeframe, traders can identify the prevailing momentum in the market. A series of green candles would suggest an upward trend, while a series of red candles would indicate a downward trend.
Predicting Next Candle: The indicator's predictive feature calculates the likelihood of the next candle being green or red based on historical patterns. This probability helps traders gauge the potential continuation of the trend.
Setting the Trading Bias: If the likelihood of the next candle being green is high, the trader may decide to focus on long (buy) opportunities. Conversely, if the likelihood of the next candle being red is high, the trader may look for short (sell) opportunities.
In this example, we are using the Heikin Ashi candles.
Moving to a Lower Timeframe:
Finding Entry Points: Once the trading bias is set based on the higher timeframe analysis, traders can switch to a lower timeframe to look for entry points in the direction of the bias. For example, if the higher timeframe suggests a high likelihood of a green candle, traders may look for buy opportunities in the lower timeframe.
Combining Timeframes for a Comprehensive Strategy:
Confirmation and Alignment: By analyzing the higher timeframe and confirming the direction in the lower timeframe, traders can ensure that they are trading in alignment with the broader trend.
Avoiding False Signals: By using a higher timeframe to set the trading bias and a lower timeframe to find entries, traders can avoid false signals and whipsaws that might be present in a single timeframe analysis.
█ Settings
Price Input Selection: Choose between regular open and close prices or Heikin Ashi candles as the basis for calculation.
Data Window Control: Decide between displaying the full data window or only the active data. You can also enable a counter that keeps track of the number of candles.
Alert Configuration: Set the desired number and color of consecutive candles that must occur in a row to trigger an alert.
Table Display Customization: Customize the location and size of the display table according to your preferences.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
CandlestickPatternsLibrary "CandlestickPatterns"
This library provides a wide range of candlestick patterns, and available for user to call each pattern individually. It's a comprehensive and common tool designed for traders seeking to raise their technical analysis, and it may help users identify key turning of price action in financial instruments. Credit to public technical “*All Candlestick Patterns*” indicator.
abandonedBaby(order, d1)
The "Abandoned Baby" candlestick pattern is a bullish/bearish pattern consists of three candles.
Parameters:
order (simple string) : (simple string) Pattern order type "bull" or "bear".
d1 (simple float) : (simple float) Previous candle's body percentage out of candle range. Optional argument, default is 5.
darkCloudCover(c1, n)
The "Dark Cloud Cover" is a bearish pattern consists of two candles.
Parameters:
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
doji(d0)
The "Doji" is neither bullish or bearish consists of one candles.
Parameters:
d0 (simple float) : (simple float) Current candle's body percentage out of candle range. Optional argument, default is 5.
dojiStar(order, c1, n, d0)
The "Doji Star" is a bullish/bearish pattern consists of two candles.
Parameters:
order (simple string) : (simple string) Pattern order type "bull" or "bear" .
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
d0 (simple float) : (simple float) Current candle's body percentage out of candle range. Optional argument, default is 5.
downsideTasukiGap(c2, c1, n)
The "Downside Tasuki Gap" is a bearish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
dragonflyDoji(d0)
The "Dragon Fly Doji" is a bullish pattern consists of one candle.
Parameters:
d0 (simple float) : (simple float) Current candle's body percentage out of candle range. Optional argument, default is 5.
engulfing(order, c1, c0, n)
The "Engulfing" is a bullish/bearish pattern consists of two candles.
Parameters:
order (simple string) : (simple string) Pattern order type "bull" or "bear".
c1 (simple bool) : (simple bool) Previous candle's body must be lower than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
eveningDojiStar(c2, c0, d1, n)
The "Evening Doji Star" is a bearish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
d1 (simple float) : (simple float) Previous candle's body percentage out of candle range. Optional argument, default is 5.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
eveningStar(c2, c1, c0, n)
The "Evening Star" is a bearish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be lower than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
fallingThreeMethods(c4, c3, c2, c1, c0, n)
The "Falling Three Methods" is a bearish pattern consists of five candles.
Parameters:
c4 (simple bool) : (simple bool) 5th candle ago body must be higher than average. Optional argument, default is true.
c3 (simple bool) : (simple bool) 4th candle ago body must be lower than average. Optional argument, default is true.
c2 (simple bool) : (simple bool) 3rd candle ago body must be lower than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) 2nd candle ago body must be lower than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
Returns: (bool)
fallingWindow()
The "Falling Window" is a bearish pattern consists of two candles.
gravestoneDoji(d0)
The "Gravestone Doji" is a bearish pattern consists of one candle.
Parameters:
d0 (simple float) : (simple float) Current candle's body percentage out of candle range. Optional argument, default is 5.
hammer(c0, n)
The "Hammer" is a bullish pattern consists of one candle.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
hangingMan(c0, n)
The "Hanging Man" is a bearish pattern consists of one candle.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
haramiCross(order, c1, n)
The "Harami Cross" candlestick pattern is a bullish/bearish pattern consists of two candles.
Parameters:
order (string) : (simple string) Pattern order type "bull" or "bear".
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
harami(order, c1, c0, n)
The "Harami" candlestick pattern is a bullish/bearish pattern consists of two candles.
Parameters:
order (string) : (simple string) Pattern order type "bull" or "bear"
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
invertedHammer(c0, n)
The "Inverted Hammer" is a bullish pattern consists of one candle.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
kicking(order, c1, c0, n)
The "Kicking" candlestick pattern is a bullish/bearish pattern consists of two candles.
Parameters:
order (string) : (simple string) Pattern order type "bull" or "bear"
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
longLowerShadow(l0)
The "Long Lower Shadow" candlestick pattern is a bullish pattern consists of one candles.
Parameters:
l0 (simple float) : (simple float) Current candle's lower wick min percentage out of candle range. Optional argument, default is 75.
longUpperShadow(u0)
The "Long Upper Shadow" candlestick pattern is a bearish pattern consists of one candles.
Parameters:
u0 (simple float) : (simple float) Current candle's upper wick min percentage out of candle range. Optional argument, default is 75.
marubozuBlack(c0, n)
The "Marubozu Black" candlestick pattern is a bearish pattern consists of one candles.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
marubozuWhite(c0, n)
The "Marubozu White" candlestick pattern is a bullish pattern consists of one candles.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
morningDojiStar(c2, d1, c0, n)
The "Morning Doji Star" candlestick pattern is a bullish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
d1 (simple float) : (simple float) Previous candle's body percentage out of candle range. Optional argument, default is 5.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
morningStar(c2, c1, c0, n)
The "Morning Star" candlestick pattern is a bullish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be lower than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Cuurent candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
onNeck(c1, c0, n)
The "On Neck" candlestick pattern is a bearish pattern consists of two candles.
Parameters:
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Cuurent candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
piercing(c1, n)
The "Piercing" candlestick pattern is a bullish pattern consists of two candles.
Parameters:
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
risingThreeMethods(c4, c3, c2, c1, c0, n)
The "Rising Three Methods" candlestick pattern is a bullish pattern consists of five candles.
Parameters:
c4 (simple bool) : (simple bool) 5th candle ago body must be higher than average. Optional argument, default is true.
c3 (simple bool) : (simple bool) 4th candle ago body must be Lower than average. Optional argument, default is true.
c2 (simple bool) : (simple bool) 3rd candle ago body must be Lower than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) 2nd candle ago body must be Lower than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
risingWindow()
The "Rising Window" candlestick pattern is a bullish pattern consists of two candle.
shootingStar(c0, n)
The "Shooting Star" candlestick pattern is a bearish pattern consists of one candle.
Parameters:
c0 (simple bool) : (simple bool) Current candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
spinningTopBlack(l0, u0)
The "Spinning Top Black" is neither bullish or bearish.
Parameters:
l0 (simple float) : (simple float) Current candle's lower wick min percentage out of candle range. Optional argument, default is 34.
u0 (simple float) : (simple float) Current candle's upper wick min percentage out of candle range. Optional argument, default is 34.
spinningTopWhite(l0, u0)
The "Spinning Top White" is neither bullish or bearish.
Parameters:
l0 (simple float) : (simple float) Current candle's lower wick min percentage out of candle range. Optional argument, default is 34.
u0 (simple float) : (simple float) Current candle's upper wick min percentage out of candle range. Optional argument, default is 34.
threeBlackCrows(c2, c1, c0, n)
The "Three Black Crows" candlestick pattern is a bearish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Cuurent candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
threeWhiteSoldiers(c2, c1, c0, n)
The "Three White Soldiers" candlestick pattern is a bullish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
c0 (simple bool) : (simple bool) Cuurent candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
triStar(order, d2, d1, d0)
The "Tri Star" candlestick pattern is a bullish/bearish pattern consists of three candles.
Parameters:
order (simple string) : (simple string) Pattern order type "bull" or "bear".
d2 (simple float) : (simple float) Before previous candle's body percentage out of candle range. Optional argument, default is 5.
d1 (simple float) : (simple float) Previous candle's body percentage out of candle range. Optional argument, default is 5.
d0 (simple float) : (simple float) Current candle's body percentage out of candle range. Optional argument, default is 5.
tweezerBottom(c1, n)
The "Tweezer Bottom" candlestick pattern is a bullish pattern consists of two candles.
Parameters:
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
tweezerTop(c1, n)
The "Tweezer Top" candlestick pattern is a bearish pattern consists of two candles.
Parameters:
c1 (simple bool) : (simple bool) Previous candle's body must be higher than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
upsideTasukiGap(c2, c1, n)
The "Tri Star" candlestick pattern is a bullish pattern consists of three candles.
Parameters:
c2 (simple bool) : (simple bool) Before Previous candle's body must be higher than average. Optional argument, default is true.
c1 (simple bool) : (simple bool) Previous candle's body must be lower than average. Optional argument, default is true.
n (simple int) : (simple int) Length of average candle's body. Optional argument, default is 14.
Percentile Calculation @xcod33This script calculates the current price percentile based on the highest and lowest price range in the last 52 weeks.
How to Use:
This script will provide the current price percentile relative to the 52-week price range on your chart. You can use it as an indicator to help identify where the current price stands relative to the historical price range in that period.
Targeted Market:
This script can be applied to various financial markets, including stocks, forex, indices, commodities, and others. It is not limited to a specific market and can be used across various trading instruments.
Market Conditions:
Here are some market conditions where this script can be useful:
1. Identifying Price Extremes: By looking at the current percentile, you can see if the price is near the highest or lowest extremes in the last 52 weeks. If the percentile is close to 0%, it means the price is near the lowest, while a percentile close to 100% indicates the price is near the highest.
Finding Consolidation Patterns: You can identify whether the price is within a certain range by looking at the percentile. If the percentile is around 50%, it indicates a relatively consistent price range.
2. Identifying Breakouts and Pullbacks: When the price is outside the historical range and the percentile approaches 100%, it indicates a breakout. When the price retraces back to the range and the percentile approaches 50%, it indicates a pullback.
3. However, keep in mind that this indicator only provides an additional perspective on the price relative to the 52-week range. It is not recommended to use this indicator as the sole basis for trading decisions. Always use further analysis and other indicators to confirm your trading signals.
Credit :
- M Rico Aditya Prayoga | Author
- Tri Okta Setiawan Marblo | Maker of formulas and ideas
Engulfing and Doji Scanner with SLThe Bullish Engulfing pattern occurs when the close is higher than the open, and scripts will look for this pattern by checking the difference in the close and open prices sufficiently in pips. Likewise, the Bearish Engulfing pattern occurs when the close is lower than the open, and scripts will look for this pattern by checking for sufficient difference in the open and close in pips.
The Doji pattern occurs when the absolute difference between the open and close prices is very small compared to the price range for that period. The script will look for these patterns by comparing the difference between the open and close prices by a certain percentage of the price range.
After the patterns are detected, the script will calculate the Stop Loss (SL) and Take Profit (TP) levels based on the parameters set. The SL level will be determined based on the lowest price range with certain adjustments, while the TP level is calculated using a 1:1 ratio to the SL distance.
This script will display arrows and Stop Loss and Take Profit labels on the chart to assist traders in identifying relevant patterns and levels. However, it is important to remember that these scripts only assist in the analysis of patterns and levels, and a more complete trading strategy and decision-making remains the responsibility of the trader.
ahpuhelperLibrary "ahpuhelper"
Helper Library for Auto Harmonic Patterns UltimateX. It is not meaningful for others. This is supposed to be private library. But, publishing it to make sure that I don't delete accidentally. Some functions may be useful for coders.
insert_open_trades_table_column(showOpenTrades, table_id, column, colors, values, intStatus, harmonicTrailingStartState, lblSizeOpenTrades)
add data to open trades table column
Parameters:
showOpenTrades : flag to show open trades table
table_id : Table Id
column : refers to pattern data
colors : backgroud and text color array
values : cell values
intStatus : status as integer
harmonicTrailingStartState : trailing Start state as per configs
lblSizeOpenTrades : text size
Returns: nextColumn
populate_closed_stats(ClosedStatsPosition, bullishCounts, bearishCounts, bullishRetouchCounts, bearishRetouchCounts, bullishSizeMatrix, bearishSizeMatrix, bullishRR, bearishRR, allPatternLabels, flags, rowMain, rowHeaders)
populate closed stats for harmonic patterns
Parameters:
ClosedStatsPosition : Table position for closed stats
bullishCounts : Matrix containing bullish trade stats
bearishCounts : Matrix containing bearish trade stats
bullishRetouchCounts : Matrix containing bullish trade stats for those which retouched entry
bearishRetouchCounts : Matrix containing bearish trade stats for those which retouched entry
bullishSizeMatrix : Matrix containing data about size of bullish patterns
bearishSizeMatrix : Matrix containing data about size of bearish patterns
bullishRR : Matrix containing Risk Reward data of bullish patterns
bearishRR : Matrix containing Risk Reward data of bearish patterns
allPatternLabels : array containing pattern labels
flags : display flags
rowMain : Pattern header data
rowHeaders : header grouping data
Returns: void
get_rr_details(patternTradeDetails, harmonicTrailingStartState, disableTrail, breakEvenTrail)
calculate and return risk reward based on targets and stops
Parameters:
patternTradeDetails : array containing stop, entry and targets
harmonicTrailingStartState : trailing point
disableTrail : If set, ignores trailing point
breakEvenTrail : If set, trailing does not go beyond breakeven.
Returns: nextColumn
Chervolinos-Wave-PM-ForecastThe Wave PM (Whistler Active Volatility Energy – Price Mass) indicator is an oscillator described in Mark Whistler's book, Volatility Illuminated.
The Wave PM is specifically designed to help read volatility cycles. When we visualize volatility cycles as a chart, we can get a clear view of the market volatility phases in multiple time frames. This indicator forms an arithmetic mean over 30 observed periods. Traders can thus get a better insight into "potential" volatility from up to pent-up energy, the different zones give strong help to predict future price developments.
Possible interpretation patterns:
You are at the end of a long uptrend and you want to know if the price is going to go down, if the indicator shows red and the value is above 25, it is likely to do so.
You're in a downtrend and there's a bit of a recovery phase, so you might be wondering if it's going to continue when the indicator shows green. It would go further with yellow, but with green it can be assumed that it is going down rapidly.
Special thanks to sourcey who programmed the 3D Wave-PM.
This variant of sourcey looks very nice, but was too confusing for me. In order to get a strong overview, forming an arithmetic mean is very useful.
I hope you and the Mods like my version
Best regards, Chervolino
SubCandleI created this script as POC to handle specific cases where not having tick data on historical bars create repainting. Happy to share if this serves purpose for other coders.
What is the function of this script?
Script plots a sub-candle which is remainder of candle after forming the latest peak.
Higher body of Sub-candle refers to strong retracement of price from its latest peak. Color of the sub-candle defines the direction of retracement.
Higher wick of Sub-candle refers to higher push in the direction of original candle. Meaning, after price reaching its peak, price retraced but could not hold.
Here is a screenshot with explanation to visualise the concept:
Settings
There is only one setting which is number of backtest bars. Lower timeframe resolution which is used for calculating the Sub-candle uses this number to automatically calculate maximum possible lower timeframe so that all the required backtest windows are covered without having any issue.
We need to keep in mind that max available lower timeframe bars is 100,000. Hence, with 5000 backtest bars, lower timeframe resolution can be about 20 (100000/5000) times lesser than that of regular chart timeframe. We need to also keep in mind that minimum resolution available as part of security_lower_tf is 1 minute. Hence, it is not advisable to use this script for chart timeframes less than 15 mins.
Application
I have been facing this issue in pattern recognition scripts where patterns are formed using high/low prices but entry and targets are calculated based on the opposite side (low/high). It becomes tricky during extreme bars to identify entry conditions based on just the opposite peak because, the candle might have originated from it before identifying the pattern and might have never reached same peak after forming the pattern. Due to lack of tick data on historical bars, we cannot use close price to measure such conditions. This leads to repaint and few unexpected results. I am intending to use this method to overcome the issue up-to some extent.
RSI Swing Trading Setup (2-Period)A simple script that adjusts the RSI visibly in order to better accommodate swing trading and certain swing trading setups/strategies.
--------------------------------------------------------------------------------------------------------------------------------------------------------
Best used in conjunction with "Linear Regression Channel by LonesomeTheBlue" with 2.2σ (std.dev) and Show Fib Levels.
^Click image for a redirect to that script.
--------------------------------------------------------------------------------------------------------------------------------------------------------
In certain price action patterns:
A bearish reversal from a previously bullish move can indicate tops of a rally if the RSI moves from 0-40 to 60 (1)
A bullish reversal from a previously bearish move can indicate bottoms of a pullback if the RSI moves from 60-100 to 40 (2)
(USE THE LINEAR REGRESSION CHANNEL TO VALIDIFY THE RETRACEMENTS)
--------------------------------------------------------------------------------------------------------------------------------------------------------
(1)
--------------------------------------------------------------------------------------------------------------------------------------------------------
(2)
--------------------------------------------------------------------------------------------------------------------------------------------------------
pandas_taLibrary "pandas_ta"
Level: 3
Background
Today is the first day of 2022 and happy new year every tradingviewers! May health and wealth go along with you all the time. I use this chance to publish my 1st PINE v5 lib : pandas_ta
This is not a piece of cake like thing, which cost me a lot of time and efforts to build this lib. Beyond 300 versions of this script was iterated in draft.
Function
Library "pandas_ta"
PINE v5 Counterpart of Pandas TA - A Technical Analysis Library in Python 3 at github.com
The Original Pandas Technical Analysis (Pandas TA) is an easy to use library that leverages the Pandas package with more than 130 Indicators and Utility functions and more than 60 TA Lib Candlestick Patterns.
I realized most of indicators except Candlestick Patterns because tradingview built-in Candlestick Patterns are even more powerful!
I use this to verify pandas_ta python version indicators for myself, but I realize that maybe many may need similar lib for pine v5 as well.
Function Brief Descriptions (Pls find details in script comments)
bton --> Binary to number
wcp --> Weighted Closing Price (WCP)
counter --> Condition counter
xbt --> Between
ebsw --> Even Better SineWave (EBSW)
ao --> Awesome Oscillator (AO)
apo --> Absolute Price Oscillator (APO)
xrf --> Dynamic shifted values
bias --> Bias (BIAS)
bop --> Balance of Power (BOP)
brar --> BRAR (BRAR)
cci --> Commodity Channel Index (CCI)
cfo --> Chande Forcast Oscillator (CFO)
cg --> Center of Gravity (CG)
cmo --> Chande Momentum Oscillator (CMO)
coppock --> Coppock Curve (COPC)
cti --> Correlation Trend Indicator (CTI)
dmi --> Directional Movement Index(DMI)
er --> Efficiency Ratio (ER)
eri --> Elder Ray Index (ERI)
fisher --> Fisher Transform (FISHT)
inertia --> Inertia (INERTIA)
kdj --> KDJ (KDJ)
kst --> 'Know Sure Thing' (KST)
macd --> Moving Average Convergence Divergence (MACD)
mom --> Momentum (MOM)
pgo --> Pretty Good Oscillator (PGO)
ppo --> Percentage Price Oscillator (PPO)
psl --> Psychological Line (PSL)
pvo --> Percentage Volume Oscillator (PVO)
qqe --> Quantitative Qualitative Estimation (QQE)
roc --> Rate of Change (ROC)
rsi --> Relative Strength Index (RSI)
rsx --> Relative Strength Xtra (rsx)
rvgi --> Relative Vigor Index (RVGI)
slope --> Slope
smi --> SMI Ergodic Indicator (SMI)
sqz* --> Squeeze (SQZ) * NOTE: code sufferred from very strange error, code was commented.
sqz_pro --> Squeeze PRO(SQZPRO)
xfl --> Condition filter
stc --> Schaff Trend Cycle (STC)
stoch --> Stochastic (STOCH)
stochrsi --> Stochastic RSI (STOCH RSI)
trix --> Trix (TRIX)
tsi --> True Strength Index (TSI)
uo --> Ultimate Oscillator (UO)
willr --> William's Percent R (WILLR)
alma --> Arnaud Legoux Moving Average (ALMA)
xll --> Dynamic rolling lowest values
dema --> Double Exponential Moving Average (DEMA)
ema --> Exponential Moving Average (EMA)
fwma --> Fibonacci's Weighted Moving Average (FWMA)
hilo --> Gann HiLo Activator(HiLo)
hma --> Hull Moving Average (HMA)
hwma --> HWMA (Holt-Winter Moving Average)
ichimoku --> Ichimoku Kinkō Hyō (ichimoku)
jma --> Jurik Moving Average Average (JMA)
kama --> Kaufman's Adaptive Moving Average (KAMA)
linreg --> Linear Regression Moving Average (linreg)
mgcd --> McGinley Dynamic Indicator
rma --> wildeR's Moving Average (RMA)
sinwma --> Sine Weighted Moving Average (SWMA)
ssf --> Ehler's Super Smoother Filter (SSF) © 2013
supertrend --> Supertrend (supertrend)
xsa --> X simple moving average
swma --> Symmetric Weighted Moving Average (SWMA)
t3 --> Tim Tillson's T3 Moving Average (T3)
tema --> Triple Exponential Moving Average (TEMA)
trima --> Triangular Moving Average (TRIMA)
vidya --> Variable Index Dynamic Average (VIDYA)
vwap --> Volume Weighted Average Price (VWAP)
vwma --> Volume Weighted Moving Average (VWMA)
wma --> Weighted Moving Average (WMA)
zlma --> Zero Lag Moving Average (ZLMA)
entropy --> Entropy (ENTP)
kurtosis --> Rolling Kurtosis
skew --> Rolling Skew
xev --> Condition all
zscore --> Rolling Z Score
adx --> Average Directional Movement (ADX)
aroon --> Aroon & Aroon Oscillator (AROON)
chop --> Choppiness Index (CHOP)
xex --> Condition any
cksp --> Chande Kroll Stop (CKSP)
dpo --> Detrend Price Oscillator (DPO)
long_run --> Long Run
psar --> Parabolic Stop and Reverse (psar)
short_run --> Short Run
vhf --> Vertical Horizontal Filter (VHF)
vortex --> Vortex
accbands --> Acceleration Bands (ACCBANDS)
atr --> Average True Range (ATR)
bbands --> Bollinger Bands (BBANDS)
donchian --> Donchian Channels (DC)
kc --> Keltner Channels (KC)
massi --> Mass Index (MASSI)
natr --> Normalized Average True Range (NATR)
pdist --> Price Distance (PDIST)
rvi --> Relative Volatility Index (RVI)
thermo --> Elders Thermometer (THERMO)
ui --> Ulcer Index (UI)
ad --> Accumulation/Distribution (AD)
cmf --> Chaikin Money Flow (CMF)
efi --> Elder's Force Index (EFI)
ecm --> Ease of Movement (EOM)
kvo --> Klinger Volume Oscillator (KVO)
mfi --> Money Flow Index (MFI)
nvi --> Negative Volume Index (NVI)
obv --> On Balance Volume (OBV)
pvi --> Positive Volume Index (PVI)
dvdi --> Dual Volume Divergence Index (DVDI)
xhh --> Dynamic rolling highest values
pvt --> Price-Volume Trend (PVT)
Remarks
I also incorporated func descriptions and func test script in commented mode, you can test the functino with the embedded test script and modify them as you wish.
This is a Level 3 free and open source indicator library.
Feedbacks are appreciated.
This is not the end of pandas_ta lib publication, but it is start point with pine v5 lib function and I will add more and more funcs into this lib for my own indicators.
Function Name List:
bton()
wcp()
count()
xbt()
ebsw()
ao()
apo()
xrf()
bias()
bop()
brar()
cci()
cfo()
cg()
cmo()
coppock()
cti()
dmi()
er()
eri()
fisher()
inertia()
kdj()
kst()
macd()
mom()
pgo()
ppo()
psl()
pvo()
qqe()
roc()
rsi()
rsx()
rvgi()
slope()
smi()
sqz_pro()
xfl()
stc()
stoch()
stochrsi()
trix()
tsi()
uo()
willr()
alma()
wcx()
xll()
dema()
ema()
fwma()
hilo()
hma()
hwma()
ichimoku()
jma()
kama()
linreg()
mgcd()
rma()
sinwma()
ssf()
supertrend()
xsa()
swma()
t3()
tema()
trima()
vidya()
vwap()
vwma()
wma()
zlma()
entropy()
kurtosis()
skew()
xev()
zscore()
adx()
aroon()
chop()
xex()
cksp()
dpo()
long_run()
psar()
short_run()
vhf()
vortex()
accbands()
atr()
bbands()
donchian()
kc()
massi()
natr()
pdist()
rvi()
thermo()
ui()
ad()
cmf()
efi()
ecm()
kvo()
mfi()
nvi()
obv()
pvi()
dvdi()
xhh()
pvt()
Harmonic Trading System Educational (Source Code)This indicator was intended as educational purpose only for Harmonic Patterns using XABCD Pattern Tool.
This indicator was build upon Harmonic Trading : Volume One and Harmonic Trading : Volume Three, written by Scott M Carney.
Harmonic Trading System consist of 3 important elements such as Trade Identification, Trade Execution and Trade Management, each of these element description can be hover at each label.
Harmonic Trading System
1. Trade Identification
This technique use historically proven and repetitive price patterns that focus on overbought and oversold signals generated by price action.
Understanding parameters is critical to define specific opportunities based on individual harmonic pattern including ratio is important.
2. Trade Execution
During harmonic pattern is complete, must focus actual trade within specific time period.
3. Trade Management
Specific Initial Price Objective (IPO) based on risk and opportunity.
Indikator ini bertujuan sebagai pendidikan sahaja untuk Harmonic Pattern menggunakan XABCD Pattern Tool.
Indikator ini dibina berdasarkan buku Harmonic Trading : Volume One dan Harmonic Trading : Volume Three, ditulis oleh Scott M Carney.
Harmonic Trading System mengandungi 3 element penting seperti Trade Identification, Trade Execution dan Trade Management, penerangan setiap elemen boleh didapati dengan meletak mouse pada label.
Harmonic Trading System
1. Trade Identification
Teknik ini menggunakan price patterns yang berulang dan sejarahnya terbukti yang fokus pada signal overbought dan oversold terhasil daripada price action.
Memahami parameter adalah penting untuk mengenalpasti peluang secara spesifik berdasarkan harmonic patern yang tertentu termasuk ratio adalah penting.
2. Trade Execution
Semasa harmonic pattern adalah lengkap, mestilah focus pada trade yang sebenar dalam jangka masa yang spesifik.
3. Trade Management
Initial Price Objective (IPO) secara spesifik berdasarkan risiko dan peluang.
Indicator features :
1. List XAB=CD patterns including ratio and reference page.
2. For desktop display only, not for mobile.
3. Hover to label to display tooltip (example Trade identification).
Kemampuan indikator :
1. Senarai XAB=CD pattern termasuk ratio and rujukan muka surat.
2. Untuk paparan desktop sahaja, bukan untuk mobile.
3. Letak mouse pada labell untuk memaparkan tooltip (example Trade identification).
FAQ
1. Credits / Kredit
Scott M Carney, Harmonic Trading : Volume One
Scott M Carney, Harmonic Trading : Volume Three
2. Pattern and Chapter involved / Pattern dan Bab terlibat
Bullish Harmonic Trade Management Model - Harmonic Trading: Volume One - Page 209
Bearish Harmonic Trade Management Model - Harmonic Trading: Volume One - Page 220
The Harmonic Trading Process - Harmonic Trading: Volume Three - Page 42 to 44
Bullish Phases of Trading - Harmonic Trading: Volume Three - Page 48
Bearish Phases of Trading - Harmonic Trading: Volume Three - Page 50
3. Code Usage / Penggunaan Kod
Free to use for personal usage but credits are most welcomed especially for credits to Scott M Carney.
Bebas untuk kegunaan peribadi tetapi kredit adalah amat dialu-alukan terutamanya kredit kepada Scott M Carney.
Bullish Harmonic Trading System
Bearish Harmonic Trading System
Financial Astrology Juno LongitudeJuno is the 4th largest object in terms of mass in the asteroid belt between Mars and Jupiter, this asteroid is not widely used by financial astrologers but as was demonstrated in our research with Ceres and Vesta, the objects in the asteroid belt seems to be very important for the trend forecast. The zodiacal energy of this objects cannot be ignored for an accurate analysis. Based in BTCUSD historical price data we calculated the daily trend (buy/sell) during the periods where Juno was transiting across different zodiac signs and we found some significant patterns:
INDEX:BTCUSD
Bullish zodiac signs
From 387 days located in Scorpio, price increased 62% of the days.
From 316 days located in Capricorn, price increased 64% of the days.
From 300 days located in Sagittarius, price increased 56% of the days.
From 435 days located in Libra, price increased 55% of the days.
Bearish zodiac signs
From 200 days located in Taurus, price decreased 56% of the days.
From 152 days located in Virgo, price decreased 58% of the days.
Note: The Juno longitude indicator is based on an ephemeris array that covers years 2010 to 2030, prior or after this years the data is not available, this daily ephemeris are based on UTC time so in order to align properly with the price bars times you should set UTC as your chart timezone.
Financial Astrology Saturn LongitudeSaturn energy strengthen the temperance, rectitude, constancy, greed, pessimism and precautionary. Under this influence the crowd will move with caution, slow and with strong and rigorous sense, analysing the environment in detail and deducting all the possible action outcomes based on the past experiences and utilising all the accesible wisdom. This cycle rules the land and real state, the state and institutions, officials, and regulations.
Due to the essential nature of this energy is expected that traders take more caution and reflexion in their investment decisions where Saturn transits through earth element (Taurus, Virgo, Capricorn) because the persons become more prudent and rigid. In water elements (Cancer, Scorpio and Pisces) traders will be reducing exposure to risky assets because the emotions are more unstable and the fear to loss results in risk aversion.
This cycle takes 29 years to complete so we don't have enough observations in the crypto-currencies sector to evaluate the potential effect of Saturn through all the zodiac signs but with the historical data available, there are some interesting patterns: the most bearish zodiac signs was Scorpio (water) and Capricorn (earth) and the most bullish was Sagittarius and Aquarius. This correlates well with other planet cycles where we have observed that air zodiac signs are usually bullish.
This indicator provides longitude since 2010 so will be limited in the zodiac signs that is possible to be analysed, however the periods of retrogradation and stationary speed phases could give interesting trading signals. We encourage you to analyse this cycles in different markets and share with us your observations, leave us a comment with your research outcomes. Happy research!
Note: The Saturn tropical longitude indicator is based on an ephemeris array that covers years 2010 to 2030, prior or after this years the longitude is not available, this daily ephemeris are based on UTC time so in order to align properly with the price bars times you should set UTC as your chart reference timezone.
SMT - Smart Money Thursday Boxes
The Smart Money Trading Thursday - is a very specific trading system. You only trade it on a Thursday.
The script/indicator will color Thursdays as two boxes. If you just want one color, use same color for
both boxes. The boxes is there to indicate London/New York sessions.
SETTINGS
In the setting you find a numeric value as 1700-0400:5
The "5" indicate Thursday. You can change that if you prefer to color another specific day.
For example "4" would indicate Wednesday. And you can change the hours to fit your
sessions and trading style.
You can also use the 2 boxes on different days. If you for example would like to color up
London for Wednesday and Thursday. Then set hours to fit London session and adjust the
:5 to 4 on the 1st box and 5 on the 2nd.
HOW TO USE IT?
The Smart Money works in a way retail trading does not. Smart Money has an objective
to locate retail patterns, where there will be a lot of stop loss volume to be grabbed.
So when a retail trader see a setup like a "Double Top / Bottom". The Institutional
will see $$$ of dumb money, ready to be taken. The best moves happen on a Thursday
but if you are a skilled trader, you can see the move also occur on Wednesday or Friday.
The first thing that will happen, is that the Smart Money Breaks out of session. Meaning
they will leave the current weeks high/low range. To start collect negative contracts
of the retail volume.
When you see that happen. And you see a breakout that consist of 4 in a row 1 hour
chart candles. Then you have your first rule meet.
#1 Thursday breakout of current weeks high/low. And the move is a clean 4 hour move
as 4x H1 candles. The move can start within range. But must end clearly outside.
Visual Example:
#2 Next, we await an engulf at peak or near peak. That is where Institutional
may have problem to match any more contracts, and since they used their own
money to make this move. They must now mitigate orders, and return back to
the original retail pattern as most retail traders are now stopped out.
(Normally this is a long/clear candle out of range. they rarely go lower
then retail traders entry in the 1st push. This to not save any souls :)
#3 Price returns back to where the breakout from the retail happens.
You can now take your profit as a Smart Money Trader. Trading with less risk,
you can take profit of the return of that latest 4x H1 candle move. (Order
Block)
CONCLUSION
The best trade is when you can combine a retail pattern, followed by a
breakout which holds 4x 1 hour candles in the outbreak direction.
2nd best is when you have the 4x H1 breakout and really no clear retail
pattern. Still is the same game. Just not as clear as the one above.
Study the steps in this image and you see what to look after:
Good Luck with your trading!
Regards,
The Hunter Trading Group
Candlestick ScannerThis is a large compilation of candlestick patterns that allows the user to detect up to 42 different bullish and bearish patterns.
This script is intended to be a Pine Editor version of the one I normally used on a different platform, so your feedback is more than welcome to help me improve it, as fine tuning is ongoing.
New patterns will be added in the next couple of days.
Happy trading!






















