Index Generator [By MUQWISHI]▋ INTRODUCTION :
The “Index Generator” simplifies the process of building a custom market index, allowing investors to enter a list of preferred holdings from global securities. It aims to serve as an approach for tracking performance, conducting research, and analyzing specific aspects of the global market. The output will include an index value, a table of holdings, and chart plotting, providing a deeper understanding of historical movement.
_______________________
▋ OVERVIEW:
The image can be taken as an example of building a custom index. I created this index and named it “My Oil & Gas Index”. The index comprises several global energy companies. Essentially, the indicator weights each company by collecting the number of shares and then computes the market capitalization before sorting them as seen in the table.
_______________________
▋ OUTPUTS:
The output can be divided into 3 sections:
1. Index Title (Name & Value).
2. Index Holdings.
3. Index Chart.
1. Index Title , displays the index name at the top, and at the bottom, it shows the index value, along with the daily change in points and percentage.
2. Index Holdings , displays list the holding securities inside a table that contains the ticker, price, daily change %, market cap, and weight %. Additionally, a tooltip appears when the user passes the cursor over a ticker's cell, showing brief information about the company, such as the company's name, exchange market, country, sector, and industry.
3. Index Chart , display a plot of the historical movement of the index in the form of a bar, candle, or line chart.
_______________________
▋ INDICATOR SETTINGS:
(1) Naming the index.
(2) Entering a currency. To unite all securities in one currency.
(3) Table location on the chart.
(4) Table’s cells size.
(5) Table’s colors.
(6) Sorting table. By securities’ (Market Cap, Change%, Price, or Ticker Alphabetical) order.
(7) Plotting formation (Candle, Bar, or Line)
(8) To show/hide any indicator’s components.
(9) There are 34 fields where user can fill them with symbols.
Please let me know if you have any questions.
Educational
Time Bound Trading SessionsTime Bound Trading Sessions allows to add time bound conditions to your trading sessions given a date range , a time range and/or days of the week .
This indicator can be very handy if you want to control your trading sessions along those three time boundaries, applying them together and/or separately.
Feel free to reuse this code in your own strategy, and leverage the inSession condition as needed.
Features
+ It allows for date range start and/or end to be set.
+ It allows for session time range to be set.
+ It allows for days of the week to be set.
+ It applies chart background color if we are not within the given time bound session parameters.
+ It includes turn on/off functionality.
Settings
Date Range
+ {Start} checkbox: turns on/off start date
+ {Start} date/time
+ {End} checkbox: turns on/off end date
+ {End} date/time
Time Range
+ {Session} checkbox: turns on/off session time range
+ {Session} time range
Days
+ {M} checkbox: turns on/off Mondays
+ {T} checkbox: turns on/off Tuesdays
+ {W} checkbox: turns on/off Wednesdays
+ {T} checkbox: turns on/off Thursdays
+ {F} checkbox: turns on/off Fridays
+ {S} checkbox: turns on/off Saturdays
+ {S} checkbox: turns on/off Sundays
Equity CurveAn equity curve is a graphical representation of the change in the value of a trading account over a time period. The equity curve is a direct reflection of a trading strategy's effectiveness. A consistently upward-trending equity curve indicates a successful strategy, while a flat or declining curve may signal the need for adjustment.
This indicator takes traders daily account values as a comma separated list, and creates an equity curve and simple moving average of the equity curve. This serves as a mirror reflecting the outcome of past actions and decisions, guiding traders in fine-tuning their strategies, managing risk more effectively, and ultimately striving towards a consistently profitable trading journey.
New equity values should be added to the end of the current list. A space or no space after the comma has no effect.
Importance of the Equity Curve
Strategy Evaluation: The equity curve is a direct reflection of a trading strategy's effectiveness over time. A consistently upward-trending equity curve indicates a successful strategy, while a flat or declining curve may signal the need for adjustment.
Risk Management: Monitoring the equity curve helps traders to see the impact of their risk management practices. Sudden drops in equity could highlight instances of excessive risk-taking or inadequate stop-loss settings.
Performance Benchmarks: Comparing the equity curve against benchmarks or desired performance goals allows traders to assess if they are meeting, exceeding, or falling short of their trading objectives.
Psychology: Trading is as much about psychology as it is about strategy. A visual representation of one's equity curve helps maintain discipline, encouraging adherence to a trading plan during downturns and preventing overconfidence during upswings.
Having this data visually allows traders to see which category of trader they fall into.
Unprofitable
Boom or Bust
Profitable
Statistical Data
The indicator not only plots the equity curve and moving average, but includes the option to display the highest value reached by the equity curve, the percentage difference from the peak, and performance over selected periods (All Time, YTD, QTD, MTD, WTD).
Historical Analysis
The Equity Curve Indicator is not just a tool for real-time monitoring of trading performance; it also serves as a powerful instrument for conducting historical analysis. By analyzing the equity curve in conjunction with historical market conditions, traders can identify patterns or triggers that resulted in significant gains or losses.
For example, the chart below shows the equity curve overlaid on periods of net new highs / lows. The equity curve experienced declines while the market was showing net new lows or choppy periods (represented by a red or white background), while most of the equity gains were made while net new highs were present (green background).
This retrospective analysis helps in understanding how different market conditions impact trading strategies and performance.
Trading the Equity Curve
All trading strategies produce an equity curve that has winning and losing periods. In the example above, the trader could introduce a simple rule to lighten up on long positions or move to cash during periods of net new lows.
Another simple rule could be introduced to stop trading if the equity curve falls below the moving average, until favorable market conditions return again.
This indicator is intended to be used on the daily timeframe.
Smart Money Setup 04 [TradingFinder] Three Drive (Harmonic) + OB🔵 Introduction
The "Three Drive" pattern is a well-known formation in technical analysis, recognized for its ability to signal potential trend reversals in price action. Within the realm of trading, particularly in the context of "Reversal Patterns," the Three Drive pattern holds significance as a reliable indicator of shifts in market sentiment.
🟣 Bullish 3 Drive
This pattern typically manifests at a price bottom, where a sequence of lower lows suggests a prevailing negative trend. However, within the structure of the Three Drive pattern, a notable occurrence unfolds.
The second low breaches the range of the first low, followed by the third low surpassing the range of the second low. These penetrations signify a diminishing selling pressure and an emerging buying interest.
Traders often await the confirmation of the third low surpassing the second low as an entry point, with price targets set at the highs formed within the Three Drive pattern.
🟣 Bearish 3 Drive
Conversely, the Bearish Three Drive pattern emerges at a price top, characterized by a sequence of higher highs indicating an upward trend. Yet, amidst this apparent bullish momentum, a shift occurs.
The second high breaks beyond the range of the first high, succeeded by the third high exceeding the range of the second high. These breaches signify a waning buying strength and a resurgence in selling pressure.
Entry into a trade is often executed after the confirmation of the third high surpassing the second high, with targets set at the lows formed within the Three Drive pattern.
Importance :
Understanding the Three Drive pattern's significance extends beyond mere technical analysis. It bears resemblance to other established patterns, such as the Harmonic Pattern and Ending Diagonal within the Elliott Wave Theory.
Recognizing these parallels aids traders in comprehending broader market dynamics and potential price movements.
🔵 Formation of 3 Drive in Order Block Zone
The convergence of the Three Drive pattern with the concept of the Order Block Zone introduces a nuanced layer to traders' analytical approach.
In "Price Action" methodology, Order Blocks represent areas on the price chart where significant market players, such as institutional traders, have executed notable orders.
These zones often act as barriers, with price encountering resistance or support upon reaching them.
When the Three Drive pattern forms within an Order Block Zone, it signifies a confluence of market dynamics.
The completion of the pattern within this zone suggests a potential reversal in the prevailing trend, augmented by the presence of significant institutional orders.
Traders incorporate these Order Blocks into their analysis to identify probable levels where price may change direction, enhancing the reliability of their trading decisions.
🔵 How to Use :
To effectively utilize the Three Drive pattern within the Order Block Zone, traders seek alignment between the completion of the pattern and the presence of significant Order Blocks.
This convergence enhances the reliability of the pattern's signals, increasing the likelihood of successful trade outcomes.
Bullish Three Drive in Demand Zone :
Bearish Three Drive in Supply Zone :
Settings :
You can set your desired "Pivot Period" via settings for the indicator to identify setups based on it.
Evolving RThe "Evolving R" script is a script that allows to calculate a dynamic reward-to-risk ratio at any given point of time during the trade. Its fundamentals are based on Tom Dante's concept of an evolving reward-to-risk. The script requires a user to input their preferred stop loss price and the target price for a specific asset, and calculates the ratio between two differences: (a) the absolute difference between the target price and the current price and (b) the absolute difference between the stop loss price and the current price.
The output of the script displays the ratio discussed as a value called "Evolving R" in the table. In order to use it successfully, the user of the script has to input:
(a) Stop loss price for the asset
(b) Target price for the asset
Theoretically, as long as the evolving R value holds above or equal to 0.25, the trade is worth holding. However, if the evolving R value drops below 0.25, the table turns red and signifies that such a trade possesses more risk than there is a reward remaining: this alerts the user to possibly take profits prematurely without risking their unrealized gains for a minor amount of additional gain.
The graphics of the script are represented by green and red areas: the green area indicates the area between the current price and the target price, while the red area shows the distance between the current price and the stop loss price. This visual representation allows users to understand the relative reward-to-risk ratio graphically in addition to the given evolving R value output.
The script is used for any type of trading: whether trend-trading or in a ranging market, it doesn't suggest a user which market conditions they should use.
NCI Trading Plan Direction - By LightNCI"NCI Trading Plan Direction" is a trading plan for traders who wants to keep track their overview of market direction across multiple timeframes and assets. REMINDER: THIS IS NOT AN AUTOMATION. You need to analyse yourself and then change the buy or sell on the table for your own monitor.
Features:
1. Multi-Timeframe Monitor: Easily monitor the directional bias between higher (HTF) and lower timeframes (LTF).
2. Customisable Asset Tracking: Monitor up to 10 assets simultaneously, with the flexibility to display only those relevant to your trading plan.
3. Dynamic Color Coding: Instantly identify market direction with your on colour-coded direction, distinguishing between bullish (Buy) and bearish (Sell) movements for quick decision-making.
4. User-Friendly Interface: A clean, intuitive design ensures all critical information is at your fingertips, seamlessly integrating into your chart for minimal distraction.
Key Levels SetKey Levels Set allows to set key levels as comma separated values, and to detect breaks to the downside and/or upside, taking into account potential gaps between bars.
This indicator can be very handy if you, like me, rely on some key levels that you identified as potential support/resistance from some technical analysis.
Features
+ It allows for key levels to be set as comma separated values.
+ It draws key levels on chart.
+ On close, it identifies highest key level that has been broken to the upside, if any.
+ On close, it identifies lowest key level that has been broken to the downside, if any.
+ In Cross mode, as bar is printing, it also detects highest/lowest key levels being broken to the upside/downside between bar high and low, if any.
+ It plots and labels breaks with current level and next level information.
+ It includes alerts from breaks on close.
+ It includes turn on/off functionality.
Settings
+ {Prices} checkbox: turns on/off entire functionality
+ {Prices} text field: comma separated values for key levels
+ {Breaks on} checkbox: turns on/off breaks detection functionality
+ {Breaks on} options: selects Close or Cross mode
Optimal Leverage IndicatorThe goal of this indicator is to calculate and visualize the optimal leverage and average leverage for a given security based on its historical price data. The optimal leverage is determined by analyzing the relationship between the annualized return and annualized volatility of the security over a specified lookback period.
The methodology can be broken down into the following steps:
Data Input:
The script takes two user inputs: the lookback period and the number of annual trading days.
The lookback period determines the number of historical data points used in the calculations.
The number of annual trading days is used to annualize the return and volatility metrics.
Daily Returns Calculation:
The script retrieves the closing prices of the security on a daily timeframe.
It calculates the daily returns by comparing the current close price with the previous close price.
Mean Return and Volatility Calculation:
The script calculates the mean daily return by taking the simple moving average (SMA) of the daily returns over the specified lookback period.
It also calculates the volatility by taking the standard deviation of the daily returns over the same lookback period.
Annualized Return and Volatility Calculation:
The mean daily return is annualized by compounding it over the number of annual trading days.
The daily volatility is annualized by multiplying it by the square root of the number of annual trading days.
Optimal Leverage Calculation:
The optimal leverage is calculated using the formula: Optimal Leverage = Annualized Return / (Annualized Volatility)^2
This formula assumes that the optimal leverage is proportional to the ratio of the annualized return to the square of the annualized volatility. This is based in this paper: papers.ssrn.com
Average Leverage Calculation:
The script calculates the average leverage by taking the simple moving average (SMA) of the optimal leverage over the specified lookback period.
This provides a smoothed representation of the optimal leverage over time.
The script plots two lines on the chart:
The optimal leverage line (blue) represents the calculated optimal leverage values over time.
The average leverage line (green) represents the average of the optimal leverage values over the specified lookback period.
The main idea behind this methodology is to determine the optimal leverage based on the historical risk-return characteristics of the security. By analyzing the relationship between the annualized return and volatility, the script aims to identify the leverage level that maximizes the return relative to the risk.
The average leverage line provides a smoothed representation of the optimal leverage over time.
Globbex Session IdTThis indicator allows you to visualize a specific period of time, marking the maximums and minimums they have had.
Additionally, it marks the change of day (NY Time).
The base configuration that the Indicator brings, shows the Globbex session, obtaining the maximum and minimum that it has had.
Marks the London/NY Session Intersection.
Settings
Inputs
Session
Globbex Session Idt
• From HH:MM
• To HH:MM
Globbex Session Check box
o Shows or Hide Session
Display Hour
• Mark - Number of hours after Globbex Session Ends
• We use it to shows the London/NY Session Intersection
Timezone Offset UTC – 4 NY
DIVIDERS
Daily Divider Check box
Style
Background Color checkbox
o Shows or Hide Session
o Can choose the background color
Globbex Low checkbox
o Shows or Hide Low Line
o Can choose the Low Line color
Globbex High checkbox
o Shows or Hide High Line
o Can choose the High Line color
Session LiquidityDescribes if markets are liquid enough for institutions to manipulate. Its often difficult to determine if markets will trend or chop, but by looking at how much volume we have at the open, we can determine of the session will be choppy or trendy, and take trades based on that.
Settings predefined for 1m timeframe on SPY. May work with other tickers, but I have not tested it out yet.
Designed for stocks(as of now, may update later)
Divergence Detector [TradingFinder] RSI + MACD + AO Oscillator 🔵 Introduction
🟣 Understanding Divergence
As mentioned, divergence occurs in technical analysis when a stock's price behaves contrary to indicators on the price chart. Divergence can signify either a reversal of the stock's trend or a continuation of the previous trend correction.
Divergences can act as reversal patterns or continuation patterns. Moreover, divergences can be utilized to identify potential support and resistance levels.
For instance, when an indicator is trending upwards and positive, but the price is declining and trending downwards, divergence occurs. Divergence in a stock indicates trader indecision in buying and selling and warns traders to reconsider their decisions regarding buying or holding the stock.
Divergence aids analysts in identifying critical price points. In indicator divergences, it serves as a potent signal in the realm of technical analysis.
🟣 Types of Divergence
1.Regular Divergence
o Positive Regular Divergence (RD+)
o Negative Regular Divergence (RD-)
2.Hidden Divergence
o Positive Hidden Divergence (HD+)
o Negative Hidden Divergence (HD-)
3.Time Divergence
Key Note : This indicator is specifically designed to identify "Regular Divergence" only. Therefore, the following explanation pertains to this type of divergence.
🔵 Regular Divergence/Convergence
Regular Divergence(Convergence) occurs due to conflicting behavior between the indicator and the price chart, typically at the end of a trend. Recognizing Regular Divergence suggests an anticipation of a trend reversal or a pattern resembling a reversal.
🟣 Positive Regular Divergence (RD+)
In contrast to negative divergence, positive Regular Divergence occurs at the end of a downtrend and between two price lows. It manifests when the price forms a new low on the price chart, but the indicator fails to recognize it.
Positive Regular Divergence indicates strong buying pressure and weak selling pressure. Following the identification of positive divergence on the chart, one can anticipate a price increase for the examined stock.
🟣 Negative Regular Divergence (RD-)
This type of Regular Divergence emerges between two price highs during an uptrend. A new high is formed on the price chart, but the indicator fails to acknowledge it. This scenario indicates negative Regular Divergence.
The likelihood of a subsequent market downturn is high. Negative divergence signifies strong selling pressure and weak buying pressure, suggesting an unfavorable future for the stock.
🔵 How to use
By utilizing the "Fractal Period" input, you can specify your desired periods for identifying divergences.
Additionally, through the "Divergence Detect Method" feature, you can choose which oscillators (MACD, RSI, or AO) to base divergence identification on.
Divergence in MACD Oscillator :
Divergence in the MACD indicator occurs when the price chart and the MACD line form a noticeable opposing pattern, meaning the price moves contrary to the MACD line. In this scenario, one expects a reversal in price direction.
Divergence in RSI Oscillator :
If divergence occurs during a downtrend on the price chart (two consecutive lows, with the second low being lower) and on the corresponding RSI point (two consecutive lows, with the second low being higher), it signifies positive Regular Divergence and implies a buying signal.
Conversely, if divergence occurs during an uptrend on the price chart (two consecutive highs, with the second high being higher) and on the corresponding RSI point (two consecutive highs, with the second high being lower), it indicates negative Regular Divergence, signaling a selling opportunity.
Divergence in AO Oscillator :
The AO indicator calculates histograms similar to the AO base. It calculates the difference between the simple moving averages of 5 and 34 periods based on the median of each bar. Then, it plots the bars based on the difference.
It then compares the histograms to detect peaks and troughs in the AO histograms and compares the identified peaks and troughs to the price. Whenever divergence is detected, it plots lines and arrows.
🔵 Table
The table contains information on the functional features of this oscillator that you can utilize. Four categories of information are presented in the table: "Exist," "Consecutive," "Divergence Quality," and "Change Phase Indicator."
Exist :
If divergence exists, you'll see "+" in this row.
Consecutive :
Divergences may occur consecutively. If same-type divergences form within short intervals, you can observe the count in this row.
Divergence Quality : Based on the number of consecutive divergences, their quality can be evaluated. If one divergence exists, its quality is considered "Normal." If two divergences exist, the quality is "Good," and if three or more divergences exist, the quality is considered "Strong."
Change Phase Indicator : If a phase change occurs between two oscillation peaks formed based on divergence, this change is identified and displayed in this row.
PositionCalculatorPositionCalculator is a simple position calculator that helps to calculate position size or lot size based on custom settings. The calculation result is presented as a table on the chart screen.
Settings description:
MAIN SECTION:
Risk level in percentage
Account size
Entry price
Stop price
Take Profit
FOREX SETTINGS are in addition to the main:
- Exchange rate (default value = 1) - is applied if account currency is to other base currency.
If account currency is the base currency in the pair, the exchange rate should be 1.
- Reverse exchange rate flag - is used for pairs that don't contain account currency.
For example, the account currency is USD, trade pair is GBP/AUD
in this case exchange rate should be defined for AUD/USD in the corresponding field and
"Reverse exchange rate" flag should be set.
- Lot size - is the size of the lot that is used for specific currency (Should be taken from Broker,
the default value is 100 000)
TABLE SECTION
- Dark mode flag - defines the color of the table text according to the user color mode
(black/white)
- Position of table - the result table can be presented in four different places (top_left,
top_right, bottom_left, bottom_right)
Smart Money Setup 03 [TradingFinder] Minor OB & Trend Proof🔵 Introduction
The "Smart Money Concept" transcends mere technical trading strategies; it embodies a comprehensive philosophy elucidating market dynamics. Central to this concept is the acknowledgment that influential market participants manipulate price actions, presenting challenges for retail traders.
As a "retail trader", aligning your strategy with the behavior of "Smart Money," primarily market makers, is paramount. Understanding their trading patterns, which revolve around supply, demand, and market structure, forms the cornerstone of your approach. Consequently, decisions to enter trades should be informed by these considerations.
🟣 Important Note
In this setup, pattern formation revolves around the robustness of the "Stop Hunt" targeting retail traders.
When this stop hunt occurs, if the price tests below the minor pivot or above the minor pivot, a "Minor Order Block" is formed.
Similarly, if the price tests below the major pivot or above the major pivot, a "Major Order Block" is formed.
Since the price hasn't successfully broken the major pivots before breaking the Top or Bottom, it can be inferred that the minor pivots formed within a leg of price movement exhibit a "Range" structure.
For a deeper comprehension of this setup, refer to the accompanying visual aids below.
Bullish Setup Details :
Bearish Setup Details :
🔵 How to Use
Upon integrating the indicator into your chart, exercise patience as you await the evolution of the trading setup.
Experiment with different trading positions by adjusting both the "Time Frame" and "Pivot Period". Typically, setups materializing over longer "Time Frames" and "Pivot Periods" carry heightened validity.
Bullish Setup Details on Chart :
Bearish Setup Details on Chart :
Within the settings, you possess the flexibility to modify the "Pivot Period" input to tailor the indicator to your preferences.
Three Drive [TradingFinder] 3 Drive Harmonic Pattern Indicator🔵 Introduction
The "Three Drive" pattern is one of the light "RTM" setups suitable for identifying price trend reversals. For this reason, this pattern is considered one of the "Reversal Patterns."
🟣 Bullish 3 Drive
At a price bottom, a formation occurs where the negative trend appears to continue, and lower lows are made.
However, the second low penetrates the range of the first low, and the third low penetrates the range of the second low, indicating a decrease in selling pressure and an increase in buying pressure.
Entry point is issued after the penetration of the third low to the second low, and targets are the highs formed in the "3 Drive."
🟣 Bearish 3 Drive
At a price top, a formation occurs where the positive trend appears to continue, and higher highs are made.
However, the second high penetrates the range of the first high, and the third high penetrates the range of the second high, indicating a decrease in buyers' strength and an increase in sellers' strength.
Entry point is issued after the penetration of the third high to the second high, and targets are the lows formed in the "3 Drive."
Importance :
This pattern bears a striking resemblance to the some of "Harmonic Pattern" and "Ending Diagonal" in the "Elliott Pattern".
🔵 How to Use
There is no need for further confirmation to use this pattern, and you can use it as soon as the pattern forms. However, to reduce errors, it is better to use this pattern when it forms within a "Supply and Demand" or "Support and Resistance" structure.
Bullish 3 Drive in Demand Zone :
Bearish 3 Drive in Supply Zone :
🔵 Settings
You can set your desired "Pivot Period" via settings for the indicator to identify setups based on it.
[KVA] ICT Dealing rangesNaive aproach of Dynamic Detection of Dealing Ranges:
The script dynamically identifies dealing ranges based on sequences of upward or downward price movements. It uses arrays to track the highest highs and lowest lows after detecting two consecutive up or down bars, a fundamental step towards understanding market structure and potential shifts in momentum.
ICT Concept: Order Blocks & Fair Value Gaps. This aspect can be linked to the identification of order blocks (bullish or bearish) and fair value gaps. Order blocks are essentially the last bearish or bullish candle before a significant price move, which this script could approximate by identifying the highs and lows of potential reversal zones.
Red and Green Ranges for Bullish and Bearish Movements:
The script separates these movements into red (bearish) and green (bullish) ranges, effectively categorizing potential areas of selling and buying pressure.
ICT Concept: Liquidity Pools. Red ranges could be indicative of areas where selling might occur, potentially leading to liquidity pools below these ranges. Conversely, green ranges might indicate potential buying pressure, with liquidity pools above. These areas are critical for ICT traders, as they often represent zones where price may return to "hunt" for liquidity.
Horizontal Lines for High and Low Points:
The indicator draws horizontal lines at the high and low points of these ranges, offering visual cues for significant levels.
ICT Concept: Breaker Blocks & Mitigation Sequences. The high and low points of these ranges can be seen as potential breaker blocks or areas for future mitigation sequences. In ICT terms, breaker blocks are areas where institutional orders have overwhelmed retail stop clusters, creating potential entry points for trend continuation or reversal. The high and low points marked by the indicator could serve as references for these sequences, where price might return to retest these levels.
Customizability and Historical Depth:
With inputs like rangePlot and maxBarsBack, the indicator allows for customization of the number of ranges to display and how far back in the chart history it looks to identify these ranges. This flexibility is crucial for tailoring the analysis to different trading strategies and timeframes.
ICT Concept: Market Structure Analysis. The ability to adjust the depth and number of ranges plotted caters to a detailed market structure analysis, an essential component of ICT methodology. Traders can adjust these parameters to better understand the distribution of buying and selling pressure over time and how actions have shaped price movements.
Statistics • Chi Square • P-value • SignificanceThe Statistics • Chi Square • P-value • Significance publication aims to provide a tool for combining different conditions and checking whether the outcome is significant using the Chi-Square Test and P-value.
🔶 USAGE
The basic principle is to compare two or more groups and check the results of a query test, such as asking men and women whether they want to see a romantic or non-romantic movie.
–––––––––––––––––––––––––––––––––––––––––––––
| | ROMANTIC | NON-ROMANTIC | ⬅︎ MOVIE |
–––––––––––––––––––––––––––––––––––––––––––––
| MEN | 2 | 8 | 10 |
–––––––––––––––––––––––––––––––––––––––––––––
| WOMEN | 7 | 3 | 10 |
–––––––––––––––––––––––––––––––––––––––––––––
|⬆︎ SEX | 10 | 10 | 20 |
–––––––––––––––––––––––––––––––––––––––––––––
We calculate the Chi-Square Formula, which is:
Χ² = Σ ( (Observed Value − Expected Value)² / Expected Value )
In this publication, this is:
chiSquare = 0.
for i = 0 to rows -1
for j = 0 to colums -1
observedValue = aBin.get(i).aFloat.get(j)
expectedValue = math.max(1e-12, aBin.get(i).aFloat.get(colums) * aBin.get(rows).aFloat.get(j) / sumT) //Division by 0 protection
chiSquare += math.pow(observedValue - expectedValue, 2) / expectedValue
Together with the 'Degree of Freedom', which is (rows − 1) × (columns − 1) , the P-value can be calculated.
In this case it is P-value: 0.02462
A P-value lower than 0.05 is considered to be significant. Statistically, women tend to choose a romantic movie more, while men prefer a non-romantic one.
Users have the option to choose a P-value, calculated from a standard table or through a math.ucla.edu - Javascript-based function (see references below).
Note that the population (10 men + 10 women = 20) is small, something to consider.
Either way, this principle is applied in the script, where conditions can be chosen like rsi, close, high, ...
🔹 CONDITION
Conditions are added to the left column ('CONDITION')
For example, previous rsi values (rsi ) between 0-100, divided in separate groups
🔹 CLOSE
Then, the movement of the last close is evaluated
UP when close is higher then previous close (close )
DOWN when close is lower then previous close
EQUAL when close is equal then previous close
It is also possible to use only 2 columns by adding EQUAL to UP or DOWN
UP
DOWN/EQUAL
or
UP/EQUAL
DOWN
In other words, when previous rsi value was between 80 and 90, this resulted in:
19 times a current close higher than previous close
14 times a current close lower than previous close
0 times a current close equal than previous close
However, the P-value tells us it is not statistical significant.
NOTE: Always keep in mind that past behaviour gives no certainty about future behaviour.
A vertical line is drawn at the beginning of the chosen population (max 4990)
Here, the results seem significant.
🔹 GROUPS
It is important to ensure that the groups are formed correctly. All possibilities should be present, and conditions should only be part of 1 group.
In the example above, the two top situations are acceptable; close against close can only be higher, lower or equal.
The two examples at the bottom, however, are very poorly constructed.
Several conditions can be placed in more than 1 group, and some conditions are not integrated into a group. Even if the results are significant, they are useless because of the group formation.
A population count is added as an aid to spot errors in group formation.
In this example, there is a discrepancy between the population and total count due to the absence of a condition.
The results when rsi was between 5-25 are not included, resulting in unreliable results.
🔹 PRACTICAL EXAMPLES
In this example, we have specific groups where the condition only applies to that group.
For example, the condition rsi > 55 and rsi <= 65 isn't true in another group.
Also, every possible rsi value (0 - 100) is present in 1 of the groups.
rsi > 15 and rsi <= 25 28 times UP, 19 times DOWN and 2 times EQUAL. P-value: 0.01171
When looking in detail and examining the area 15-25 RSI, we see this:
The population is now not representative (only checking for RSI between 15-25; all other RSI values are not included), so we can ignore the P-value in this case. It is merely to check in detail. In this case, the RSI values 23 and 24 seem promising.
NOTE: We should check what the close price did without any condition.
If, for example, the close price had risen 100 times out of 100, this would make things very relative.
In this case (at least two conditions need to be present), we set 1 condition at 'always true' and another at 'always false' so we'll get only the close values without any condition:
Changing the population or the conditions will change the P-value.
In the following example, the outcome is evaluated when:
close value from 1 bar back is higher than the close value from 2 bars back
close value from 1 bar back is lower/equal than the close value from 2 bars back
Or:
close value from 1 bar back is higher than the close value from 2 bars back
close value from 1 bar back is equal than the close value from 2 bars back
close value from 1 bar back is lower than the close value from 2 bars back
In both examples, all possibilities of close against close are included in the calculations. close can only by higher, equal or lower than close
Both examples have the results without a condition included (5 = 5 and 5 < 5) so one can compare the direction of current close.
🔶 NOTES
• Always keep in mind that:
Past behaviour gives no certainty about future behaviour.
Everything depends on time, cycles, events, fundamentals, technicals, ...
• This test only works for categorical data (data in categories), such as Gender {Men, Women} or color {Red, Yellow, Green, Blue} etc., but not numerical data such as height or weight. One might argue that such tests shouldn't use rsi, close, ... values.
• Consider what you're measuring
For example rsi of the current bar will always lead to a close higher than the previous close, since this is inherent to the rsi calculations.
• Be careful; often, there are na -values at the beginning of the series, which are not included in the calculations!
• Always keep in mind considering what the close price did without any condition
• The numbers must be large enough. Each entry must be five or more. In other words, it is vital to make the 'population' large enough.
• The code can be developed further, for example, by splitting UP, DOWN in close UP 1-2%, close UP 2-3%, close UP 3-4%, ...
• rsi can be supplemented with stochRSI, MFI, sma, ema, ...
🔶 SETTINGS
🔹 Population
• Choose the population size; in other words, how many bars you want to go back to. If fewer bars are available than set, this will be automatically adjusted.
🔹 Inputs
At least two conditions need to be chosen.
• Users can add up to 11 conditions, where each condition can contain two different conditions.
🔹 RSI
• Length
🔹 Levels
• Set the used levels as desired.
🔹 Levels
• P-value: P-value retrieved using a standard table method or a function.
• Used function, derived from Chi-Square Distribution Function; JavaScript
LogGamma(Z) =>
S = 1
+ 76.18009173 / Z
- 86.50532033 / (Z+1)
+ 24.01409822 / (Z+2)
- 1.231739516 / (Z+3)
+ 0.00120858003 / (Z+4)
- 0.00000536382 / (Z+5)
(Z-.5) * math.log(Z+4.5) - (Z+4.5) + math.log(S * 2.50662827465)
Gcf(float X, A) => // Good for X > A +1
A0=0., B0=1., A1=1., B1=X, AOLD=0., N=0
while (math.abs((A1-AOLD)/A1) > .00001)
AOLD := A1
N += 1
A0 := A1+(N-A)*A0
B0 := B1+(N-A)*B0
A1 := X*A0+N*A1
B1 := X*B0+N*B1
A0 := A0/B1
B0 := B0/B1
A1 := A1/B1
B1 := 1
Prob = math.exp(A * math.log(X) - X - LogGamma(A)) * A1
1 - Prob
Gser(X, A) => // Good for X < A +1
T9 = 1. / A
G = T9
I = 1
while (T9 > G* 0.00001)
T9 := T9 * X / (A + I)
G := G + T9
I += 1
G *= math.exp(A * math.log(X) - X - LogGamma(A))
Gammacdf(x, a) =>
GI = 0.
if (x<=0)
GI := 0
else if (x
Chisqcdf = Gammacdf(Z/2, DF/2)
Chisqcdf := math.round(Chisqcdf * 100000) / 100000
pValue = 1 - Chisqcdf
🔶 REFERENCES
mathsisfun.com, Chi-Square Test
Chi-Square Distribution Function
Smart Money Setup 02 [TradingFinder] Mitigated Major OB Proof🔵 Introduction
"Smart money" is money invested by knowledgeable individuals at the right time, and this investment can yield the highest returns.
The concept we focus on in this indicator is whether the market is in an uptrend or downtrend. The market briefly takes a weak and reversal trend with "Minor BoS" without being able to break the major pivot.
In the next step, it returns to its main trend with a strong bullish move and continues its trend with a "Major BoS". The "order block" behind this rapid and powerful movement can be a valid order block for trading.
To better understand this setup, please refer to the explanations in the two images below.
Bullish Setup Details :
Bearish Setup Details :
🔵 How to Use
After adding the indicator to the chart, you should wait for trading opportunities to form. By changing the "Time Frame" and "Period Pivot", you can see different trading positions. In general, the lower the "Time Frame" and "Period Pivot", the higher the likelihood of forming trading opportunities.
Bullish Setup Details on Chart :
Bearish Setup Details on Chart :
You can access "Period Pivot" via settings as an input.
Temporal Value Tracker: Inception-to-Present Inflation Lens!What we're looking at here is a chart that does more than just display the price of gold. It offers us a time-traveling perspective on value. The blue line, that's our nominal price—it's the straightforward market price of gold over time. But it's the red line that takes us on a deeper journey. This line adjusts the nominal price for inflation, showing us the real purchasing power of gold.
Now, when we talk about 'real value,' we're not just philosophizing. We're anchoring our prices to a point in time when the journey began—let's say when gold trading started on the markets, or any inception point we choose. By 'shadowing' certain years—say, from the 1970s when the gold standard was abandoned—we can adjust this chart to reflect what the inflation-adjusted price means since that key moment in history.
By doing so, we're effectively isolating our view to start from that pivotal year, giving us insight into how gold, or indeed any asset, has held up against the backdrop of economic changes, policy shifts, and the inevitable rise in the cost of living. If you're analyzing a stock index like the S&P 500, you might begin your inflation-adjusted view from the index's inception date, which allows you to measure the true growth of the market basket from the moment it started.
This adjustment isn't just academic. It influences how we perceive value and growth. Consider a period where the nominal price skyrockets. We might toast to our brilliance in investment! But if the inflation-adjusted line lags, what we're seeing is nominal growth without real gains. On the other hand, if our red line outpaces the blue even during stagnant market periods, we're witnessing real growth—our asset is outperforming the eroding effects of inflation.
Every asset class can be evaluated this way. Stocks, bonds, real estate—they all have their historical narratives, and inflation adjustment tells us if these stories are tales of genuine growth or illusions masked by inflation.
So, as informed traders and investors, we need to keep our eyes on this inflation-adjusted line. It's our measure against the silent thief that is inflation. It ensures we're not just keeping up with the Joneses of the market, but actually outpacing them, building real wealth over time
1995-Present - Inflation and Purchasing PowerGood day, everyone! Today, we're going to look at a chart that's a bit different from the usual price charts we analyse. This isn't just any chart; it's a lens into the past, adjusted for the reality of inflation—a concept we often hear about but seldom see directly applied to our trading charts.
What we have here is an 'Inflation Adjusted Price' indicator on TradingView, and it's doing something quite special. It's showing us the price of our asset, let's say the S&P 500, not just in today's dollars, but in the dollars of 1995. Why 1995, you ask? Well, it's the starting point we've chosen to measure how much actual buying power has changed since then.
So, every point on this red line we see represents what the S&P 500's value would be if we stripped away the effects of inflation. This is the price in terms of what your money could actually buy you back in 1995.
As traders and investors, we're always looking at prices going up and thinking, 'Great! My investment is growing!' But the real question we should ask is, 'Is my money growing in real terms? Can it buy me more than it did last year, or five, ten, or twenty-five years ago?'
This chart tells us exactly that. If the red line is above the actual price, it means that the S&P 500 has not just grown in nominal terms, but it has actually outpaced inflation. Your investment has grown in real terms; it can buy you more now than it could back in 1995.
On the flip side, if the red line is below the actual price, that's a sign that while the nominal price might be up, the real value, the purchasing power, hasn't grown as much or could even have fallen.
This view is crucial, especially for the long-term investors among us. It gives us a reality check on our investments and savings. Are we truly growing our wealth, or are we just keeping up with the cost of living? This indicator answers that.
Remember, the true measure of financial growth is not just the numbers on a chart. It's what you can do with those numbers—how much bread, or eggs, or yes, even houses, you can buy with your hard-earned money
BTC Purchasing Power 2009-20XX! Hello, today I'm going to show you something that shifts our perspective on Bitcoin's value, not just in nominal terms, but adjusted for the real buying power over the years. This Pine Script TAS developed for TradingView does exactly that by taking into account inflation rates from 2009 to the present.
As you know, inflation erodes the purchasing power of money. That $100 in 2009 does not buy you the same amount in goods or services today. The same concept applies to Bitcoin. While we often look at its price in terms of dollars, pounds, or euros, it's crucial to understand what that price really means in terms of purchasing power.
What this script does is adjust the price of Bitcoin for cumulative inflation since 2009, allowing us to see not just how the nominal price has changed, but how its value as a means of purchasing goods and services has evolved.
For example, if we see Bitcoin's price at $60,000 today, that number might seem high compared to its early years. However, when we adjust this price for inflation, we might find that in terms of 2009's purchasing power, the effective price might be somewhat lower. This adjusted price gives us a more accurate reflection of Bitcoin's true value over time.
This script plots two lines on the chart:
The Original BTC Price: This is the unadjusted price of Bitcoin as we typically see it.
BTC Purchasing Power: This line shows Bitcoin's price adjusted for inflation, reflecting how many goods or services Bitcoin could buy at that point in time compared to 2009.
By comparing these lines, we can observe periods where Bitcoin's purchasing power significantly increased, even if the nominal price was not at its peak. This can help us identify moments when Bitcoin was undervalued or overvalued in real terms.
This analysis is crucial for long-term investors and traders who want to understand Bitcoin's value beyond the surface-level price movements. It helps us appreciate Bitcoin's potential as a store of value, especially in contexts where traditional currencies are losing purchasing power due to inflation.
Remember, investing is not just about riding price waves; it's about understanding the underlying value. And that's precisely what this script helps us to uncover
Smart Money Setup 01 [TradingFinder]Double Order Blocks Proof🔵 Introduction
The Price Action, styled as the "Smart Money Concept" or "SMC," was introduced by Mr. David J. Crouch in 2000 and is one of the most modern technical styles in the financial world. In financial markets, Smart Money refers to capital controlled by major market players (central banks, funds, etc.), and these traders can accurately predict market trends and achieve the highest profits.
In the "Smart Money" style, various types of "order blocks" can be traded. This indicator uses a type of "order block" originating from "BoS" (Breakout of Structure). The most important feature of this indicator is the confirmation of two order blocks.
🟣 Important
For example, after the first "BoS" and the formation of the first Order Block, if a second "BoS" occurs before touching the price of the first Order Block and the formation of the second Order Block, a trading setup with 2 order blocks is formed, which confirms the dominant market trend.
For a better understanding of this subject, see the explanations in the following two images.
Bullish Setup Details :
Bearish Setup Details :
🔵 How to Use
After adding the indicator to the chart, you should wait for the formation of the trading setup. You can observe different trading positions by changing the "Time Frame" and "Pivot Period." Generally, the higher the "Time Frame" and "Pivot Period," the more valid the formed setup is.
Bullish Setup Details on Chart :
Bearish Setup Details on Chart :
You can access the "Pivot Period" input through the settings.
Morning & Evening Star [TradingFinder] Stock Indices Gap Candle🔵 Introduction
In "technical analysis", there are certain reversal patterns that alert us to a potential reversal of a stock's previous trajectory.
Two significant patterns in this regard are the "Morning Star" pattern and the "Evening Star" pattern, which are formed by a combination of three different candlesticks and are considered as reversal patterns.
Here, we will examine how to identify these patterns and how to respond to them.
🟣 Morning Star Pattern
This pattern forms at the end of a downtrend and indicates the beginning of an uptrend.
The pattern consists of three candlesticks in the following order :
1.A large bearish candlestick
2.A candlestick with a short body
3.A bullish candlestick
With the formation of the morning star pattern, it is expected that the stock price will change direction and continue to rise. Therefore, in such situations, it is advisable to enter a long position and follow the uptrend.
Signs of the morning star pattern :
•The first sign of this pattern is the presence of a small-bodied candlestick at the end of the trend, accompanied by a gap from the previous candlestick (a bearish candlestick with a large body). Therefore, the bodies of the first and second candlesticks do not overlap.
•The second candlestick indicates market confusion and uncertainty. The color of the middle candlestick is not significant.
•The third candlestick must be positive and have a higher price than the previous candlestick (i.e., the small-bodied candlestick).
•The closing price of the third candlestick must be higher than half of the first candlestick.
🟣 Evening Star Pattern
This pattern forms at the end of an uptrend and indicates the beginning of a downtrend.
The pattern consists of three candlesticks in the following order :
1.A large bullish candlestick
2.A candlestick with a short body
3.A bearish candlestick
With the formation of the evening star pattern, it is expected that the stock price will change direction and continue to fall. Therefore, in such situations where this pattern is identified, it is advisable to refrain from entering a long position.
If the stock is traded in a two-way market, it is possible to profit by taking a short position after the formation of the evening star pattern.
Signs of the evening star pattern :
•The first sign of this pattern is the presence of a small-bodied candlestick at the end of the trend, accompanied by a gap from the previous candlestick (a bullish candlestick with a large body). Therefore, the bodies of the first and second candlesticks do not overlap.
•The second candlestick indicates market confusion and uncertainty. The color of the middle candlestick is not significant.
•The third candlestick must be negative and have a lower price than the previous candlestick (i.e., the small-bodied candlestick).
•The closing price of the third candlestick must be lower than half of the first candlestick.
🔵 How to Use
The "Filter" and "Market" features are available in the settings section, allowing you to customize the output of the indicator according to your needs.
With the "Filter" feature, you can filter the "Morning Star" and "Evening Star" patterns as "strong" or "weak." The difference between strong and weak patterns lies in their "Candle Body."
In strong patterns, the candle bodies account for more than 80% of the total candle range, while in weak patterns, the bodies comprise between 60% to 80% of the candle range.
If the "Filter" feature is set to "On," only strong patterns will be displayed. If it's set to "Off," all patterns will be displayed. By default, it's set to "Off."
The "Market" feature allows you to include "gaps" in your pattern identification calculations. You can choose between "Forex" and "Stock" modes. In the Forex pattern, calculations are performed without considering gaps since there are fewer gaps in the Forex market.
If gap calculations were to be part of the pattern identification conditions, only a very small number of patterns would be identified. However, in the "Stock" mode, gaps are considered as part of the identification conditions.
FreedX Grid Backtest█ FreedX Grid Backtest is an open-source tool that offers accurate GRID calculations for GRID trading strategies. This advanced tool allows users to backtest GRID trading parameters with precision, accurately reflecting exchange functionalities. We are committed to enhancing trading strategies through precise backtesting solutions and address the issue of unreliable backtesting practices observed on GRID trading strategies. FreedX Grid Backtest is designed for optimal calculation speed and plotting efficiency, ensuring users to achieve fastest calculations during their analysis.
█ GRID TRADING STRATEGY SETTINGS
The core of the FreedX Grid Backtest tool lies in its ability to simulate grid trading strategies. Grid trading involves placing orders at regular intervals within a predefined price range, creating a grid of orders that capitalize on market volatility.
Features:
⚙️ Backtest Range:
→ Purpose: Allows users to specify the backtesting range of GRID strategy. Closes all positions at the end of this range.
→ How to Use: Drag the dates to fit the desired backtesting range.
⚙️ Investment & Compounding:
→ Purpose: Allows users to specify the total investment amount and select between fixed and compound investment strategies. Compounding adjusts trade quantities based on performance, enhancing the grid strategy's adaptability to market changes.
→ How to Use: Set the desired investment amount and choose between "Fixed" or "Compound" for the investment method.
⚙️ Leverage & Grid Levels:
→ Purpose: Leverage amplifies the investment amount, increasing potential returns (and risks). Users can define the number of grid levels, which determines how the investment is distributed across the grid.
→ How to Use: Input the desired leverage and number of grids. The tool automatically calculates the distribution of funds across each grid level.
⚙️ Distribution Type & Mode:
→ Purpose: Users can select the distribution type (Arithmetic or Geometric) to set how grid levels are determined. The mode (Neutral, Long, Short) dictates the direction of trades within the grid.
→ How to Use: Choose the distribution type and mode based on the desired trading strategy and market outlook.
⚙️ Enable LONG/SHORT Grids exclusively:
█ MANUAL LEVELS AND STOP TRIGGERS
Beyond automated settings, the tool offers manual adjustments for traders seeking finer control over their grid strategies.
Features:
⚙️ Manual Level Adjustment:
→ Purpose: Enables traders to manually set the top, reference, and bottom levels of the grid, offering precision control over the trading range.
→ How to Use: Activate manual levels and adjust the top, reference, and bottom levels as needed to define the grid's scope.
⚙️ Stop Triggers:
→ Purpose: Provides an option to set upper and lower price limits, acting as stop triggers to close or terminate trades. This feature safeguards investments against significant market movements outside the anticipated range.
→ How to Use: Enable stop triggers and specify the upper and lower limits. The tool will automatically manage positions based on these parameters.
---
This guide gives you a quick and clear overview of the FreedX Grid Backtest tool, explaining how you can use this cutting-edge tool to improve your trading strategies.