Pairs strategyHello, Tradingview community,
I am been playing with this idea that nowadays trading instruments are interconnected and when one goes too far "out of order" it should return to the mean.
So, here's a relatively simple idea.
This is a LONG-ONLY strategy.
Buy when your traded instrument's last bar closes down, and the comparing instrument closes up.
Sell when close is higher than the previous bar's high.
Best results I found with medium timeframes: 45min, 120min, 180min.
Also, feel free to test non-typical timeframes such as 59min, 119min, 179min, etc.
My reasoning for medium timeframes would be, that they are big enough to avoid "market noise"
of smaller timeframes + commissions & slippage is less negligible, and small enough to avoid exposure of higher timeframes, although, I haven't tested D timeframe and above.
The best results, I found were with instruments that aren't directly correlated. I mostly tested equities and equity futures, so for equity indexes, equity index futures, or large-cap stocks, NASDAQ:SMH , NASDAQ:NVDA , EURUSD, and Crude Oil would be a good candidate for comparing symbols.
When testing either futures or stocks, please adjust the commission for each asset, for stocks I use % equity, so it compounds over time, whereas, for futures, I use 1 contract all the time.
Here's NASDAQ:MSFT on 119min chart
Here's AMEX:SPY on 59min chart using NASDAQ:NVDA as comparison
Here's CME_MINI:ES1! on 179min chart using NYMEX:CL1! as comparison
To change comparison symbol just insert your symbol between the brackets on both fields down here.
SymbolClose = request.security("YOUR SYMBOL HERE", timeframe.period, close)
SymbolOpen = request.security("YOUR SYMBOL HERE", timeframe.period, open)
Since I am still relatively new to testing, hence, I am publishing this idea, so you can point out some crucial things I may have missed.
Thanks,
Enjoy the strategy!
Statistics
Threshold counterOVERVIEW
The "Threshold Counter" is a tool for quantifying occurrences of closing prices of an asset that align with specified criteria and is a flexible and visual approach to studying price action.
A user-definable target threshold can be set and a comparator (<, =, >, and so on) can be selected. The indicator counts values on the main chart meeting these conditions, over a user-defined `lookback` period.
KEY FEATURES
User definable threshold: target value with optional upper bound can be specified
Versatile Comparisons: Choose from "=", ">=", ">", "<=", "<", "between", and "between (inclusive)" for diverse analysis.
Historical Analysis: Assess occurrences over a customisable period.
Visual Representation: Displays instances graphically on the chart with customisable colours.
Summary: Provides a summary label for a quick understanding of the analysed data.
USE-CASES
Pattern Recognition: Identify patterns or trends based on user-defined price criteria.
Threshold Analysis: Quantify occurrences of prices crossing or staying within a specified range.
Strategy Testing: Evaluate historical performance of strategies relying on specific price conditions.
Behavioural Insights: Gain insights into price behaviour by counting occurrences of interest.
The "Threshold Counter" indicator offers a flexible and visual approach to studying price action, which may aid in making decisions based on historical data.
IMPORTANT CONSIDERATIONS
Period selection: The effectiveness of the analysis may be influenced by the choice of the lookback period. Consider an appropriate duration based on the strategy or pattern being analysed.
Comparator Selection: Comparison operator selection will obviously affect the results. There are two range operators of `between` and `between (inclusive)`. The latter will add closing prices that exactly meet the threshold and upper bound. The former does not.
Visualisation: Interpretation of the visual representation is colour-coded.
Red is threshold condition is not met.
Green is threshold condition is met.
Aqua is outside of the lookback period.
User Discretion: This script relies on historical data and should be used with caution. Past performance is not indicative of future results.
Supplementary Analysis: Trading decisions should not rely solely on this script. Users should exercise judgment and consider market conditions.
Kimchi Premium / Korean Premium ALL TICKERSKimchi Premium
Due to the isolated nature of Korean crypto markets, Koreans pay a hefty premium on most cryptos. (Usually ranging from 3% to 5%). This is colloquially known as the " Kimchi Premium ".
Uses
The extend of this premium can be used to gauge Korean sentiment towards certain tickers. Most of the insane alt coin rallies that are started by Korean degens are missed by foreign traders entirely. This script seeks to fix that.
Notes
This script automatically detects your current ticker and compares the USDT pair to the KRW pair after adjusting for exchange rate.
Works on all USDT, USDC, BUSD, FDUSD, USD, USDT.P, USDC.P or KRW pairs. Will obviously throw an error if your ticker has no KRW pairing.
VIX Statistical Sentiment Index [Nasan]** THIS IS ONLY FOR US STOCK MARKET**
The indicator analyzes market sentiment by computing the Rate of Change (ROC) for the VIX and S&P 500, visualizing the data as histograms with conditional coloring. It measures the correlation between the VIX, the specific stock, and the S&P 500, displaying the results on the chart. The reliability measure combines these correlations, offering an overall assessment of data robustness. One can use this information to gauge the inverse relationship between VIX and S&P 500, the alignment of the specific stock with the market, and the overall reliability of the correlations for informed decision-making based on the inverse relationship of VIX and price movement.
**WHEN THE VIX ROC IS ABOVE ZERO (RED COLOR) AND RASING ONE CAN EXPECT THE PRICE TO MOVE DOWNWARDS, WHEN THE VIX ROC IS BELOW ZERO (GREEN)AND DECREASING ONE CAN EXPECT THE PRICE TO MOVE UPWARDS"
Understanding the VIX Concept:
The VIX, or Volatility Index, is a widely used indicator in finance that measures the market's expectation of volatility over the next 30 days. Here are key points about the VIX:
Fear Gauge:
Often referred to as the "fear gauge," the VIX tends to rise during periods of market uncertainty or fear and fall during calmer market conditions.
Inverse Relationship with Market:
The VIX typically has an inverse relationship with the stock market. When the stock market experiences a sell-off, the VIX tends to rise, indicating increased expected volatility.
Implied Volatility:
The VIX is derived from the prices of options on the S&P 500. It represents the market's expectations for future volatility and is often referred to as "implied volatility."
Contrarian Indicator:
Extremely high VIX levels may indicate oversold conditions, suggesting a potential market rebound. Conversely, very low VIX levels may signal complacency and a potential reversal.
VIX vs. SPX Correlation:
This correlation measures the strength and direction of the relationship between the VIX (Volatility Index) and the S&P 500 (SPX).
A negative correlation indicates an inverse relationship. When the VIX goes up, the SPX tends to go down, and vice versa.
The correlation value closer to -1 suggests a stronger inverse relationship between VIX and SPX.
Stock vs. SPX Correlation:
This correlation measures the strength and direction of the relationship between the closing price of the stock (retrieved using src1) and the S&P 500 (SPX).
This correlation helps assess how closely the stock's price movements align with the broader market represented by the S&P 500.
A positive correlation suggests that the stock tends to move in the same direction as the S&P 500, while a negative correlation indicates an opposite movement.
Reliability Measure:
Combines the squared values of the VIX vs. SPX and Stock vs. SPX correlations and takes the square root to create a reliability measure.
This measure provides an overall assessment of how reliable the correlation information is in guiding decision-making.
Interpretation:
A higher reliability measure implies that the correlations between VIX and SPX, as well as between the stock and SPX, are more robust and consistent.
One can use this reliability measure to gauge the confidence they can place in the correlations when making decisions about the specific stock based on VIX data and its correlation with the broader market.
Mean Reversion Watchlist [Z score]Hi Traders !
What is the Z score:
The Z score measures a values variability factor from the mean, this value is denoted by z and is interpreted as the number of standard deviations from the mean.
The Z score is often applied to the normal distribution to “standardize” the values; this makes comparison of normally distributed random variables with different units possible.
This popular reversal based indicator makes an assumption that the sample distribution (in this case the sample of price values) is normal, this allows for the interpretation that values with an extremely high or low percentile or “Z” value will likely be reversal zones.
This is because in the population data (the true distribution) which is known, anomaly values are very rare, therefore if price were to take a z score factor of 3 this would mean that price lies 3 standard deviations from the mean in the positive direction and is in the ≈99% percentile of all values. We would take this as a sign of a negative reversal as it is very unlikely to observe a consecutive equal to or more extreme than this percentile or Z value.
The z score normalization equation is given by
In Pine Script the Z score can be computed very easily using the below code.
// Z score custom function
Zscore(source, lookback) =>
sma = ta.sma(source, lookback)
stdev = ta.stdev(source, lookback, true)
zscore = (source - sma) / stdev
zscore
The Indicator:
This indicator plots the Z score for up to 20 different assets ( Note the maximum is 40 however the utility of 40 plots in one indicator is not much, there is a diminishing marginal return of the number of plots ).
Z score threshold levels can also be specified, the interpretation is the same as stated above.
The timeframe can also be fixed, by toggling the “Time frame lock” user input under the “TIME FRAME LOCK” user input group ( Note this indicator does not repain t).
Bitcoin Price to Volume per $1 FeeTransaction value to transaction fee:
The Bitcoin network's efficiency, usability and volume scalability has been improving over time and this can be measured by dividing the average transaction volume by the transaction fee.
The indicator give us:
Price to volume per $1 fee = BTC price / (avg tx value / avg tx fee)
A low ratio of "Price to volume per $1 fee" indicates that the Bitcoin network is being used for high volumes in comparison to the Bitcoin price, which means that the network is cost-effective compared to the price. On the other hand, a high "Price to volume per $1 fee" suggests that the average transaction size is smaller than the price of Bitcoin, which means that the network is less cost-effective compared to the Bitcoin price.
Note that the dynamics of transaction fees may change over time as new use cases emerge in the Bitcoin chain. These use cases include L2s such as Stacks, where DeFi applications can run, and Bitcoin Ordinals.
It's worth mentioning that Bitcoin is not only a cost-effective way of transferring value, but also highly energy efficient. Despite receiving criticism for its energy consumption, when we compare its energy usage to other industries (such as banking and gold) and correlate it with the transaction volumes, we can easily conclude that Bitcoin's energy efficiency is remarkable when compared to other methods of transferring value.
Back Week For BacktestIt is Backtest Calculator For Essential and Plus plan holders, the length of available intraday data is calculated as follows: from now to 6 weeks back multiplied by timeframe(in minutes), i.e. you can go 6 weeks back on the 1-minute chart, 12 weeks back on the 2-minute chart, 30 weeks back on the 5-minute chart, 90 weeks back on the 15-minute chart and so on. The higher timeframe is selected, the more intraday data is available.
This show creates a weekday label based on the data in the plans allowed by TradingView. This show creates a weekday label based on the data in the plans allowed by TradingView. How much data is available for Bar Replay? According to the article, we can replay 6 weeks backwards for a 1-minute chart. This indicator is a label that shows how far we can go back, consisting of multiplying each minute by 6 between 1 minute and 60 minutes.
1 minute => 6 week backtest
2 minutes => 12 week backtest
.....
15 minutes => 90 week backtest
...
59 minutes => 354 week backtest
Session Breakout Scalper Trading BotHi Traders !
Introduction:
I have recently been exploring the world of automated algorithmic trading (as I prefer more objective trading strategies over subjective technical analysis (TA)) and would like to share one of my automation compatible (PineConnecter compatible) scripts “Session Breakout Scalper”.
The strategy is really simple and is based on time conditional breakouts although has more ”relatively” advanced optional features such as the regime indicators (Regime Filters) that attempt to filter out noise by adding more confluence states and the ATR multiple SL that takes into account volatility to mitigate the down side risk of the trade.
What is Algorthmic Trading:
Firstly what is algorithmic trading? Algorithmic trading also known as algo-trading, is a method of using computer programs (in this case pine script) to execute trades based on predetermined rules and instructions (this trading strategy). It's like having a robot trader who follows a strict set of commands to buy and sell assets automatically, without any human intervention.
Important Note:
For Algorithmic trading the strategy will require you having an essential TV subscription at the minimum (so that you can set alerts) plus a PineConnecter subscription (scroll down to the .”How does the strategy send signals” headings to read more)
The Strategy Explained:
Is the Time input true ? (this can be changed by toggling times under the “TRADE MEDIAN TIMES” group for user inputs).
Given the above is true the strategy waits x bars after the session and then calculates the highest high (HH) to lowest low (LL) range. For this box to form, the user defined amount of bars must print after the session. The box is symmetrical meaning the HH and LL are calculated over a lookback that is equal to the sum of user defined bars before and after the session (+ 1).
The Strategy then simultaneously defines the HH as the buy level (green line) and the LL as the sell level (red line). note the strategy will set stop orders at these levels respectively.
Enter a buy if price action crosses above the HH, and then cancel the sell order type (The opposite is true for a stop order).
If the momentum based regime filters are true the strategy will check for the regime / regimes to be true, if the regime if false the strategy will exit the current trade, as the regime filter has predicted a slowing / reversal of momentum.
The image below shows the strategy executing these trading rules ( Regime filters, "Trades on chart", "Signal & Label" and "Quantity" have been omitted. "Strategy label plots" has been switched to true)
Other Strategy Rules:
If a new session (time session which is user defined) is true (blue vertical line) and the strategy is currently still in a trade it will exit that trade immediately.
It is possible to also set a range of percentage gain per day that the strategy will try to acquire, if at any point the strategy’s profit is within the percentage range then the position / trade will be exited immediately (This can be changed in the “PERCENT DAY GAIN” group for user inputs)
Stops and Targets:
The strategy has either static (fixed) or variable SL options. TP however is only static. The “STRAT TP & TP” group of user inputs is responsible for the SL and TP values (quoted in pips). Note once the ATR stop is set to true the SL values in the above group no longer have any affect on the SL as expected.
What are the Regime Filters:
The Larry Williams Large Trade Index (LWLTI): The Larry Williams Large Trade Index (LWTI) is a momentum-based technical indicator developed by iconic trader Larry Williams. It identifies potential entries and exits for trades by gauging market sentiment, particularly the buying and selling pressure from large market players. Here's a breakdown of the LWTI:
LWLTI components and their interpretation:
Oscillator: It oscillates between 0 and 100, with 50 acting as the neutral line.
Sentiment Meter: Values above 75 suggest a bearish market dominated by large selling, while readings below 25 indicate a bullish market with strong buying from large players.
Trend Confirmation: Crossing above 75 during an uptrend and below 25 during a downtrend confirms the trend's continuation.
The Andean Oscillator (AO) : The Andean Oscillator is a trend and momentum based indicator designed to measure the degree of variations within individual uptrends and downtrends in the prices.
Regime Filter States:
In trading, a regime filter is a tool used to identify the current state or "regime" of the market.
These Regime filters are integrated within the trading strategy to attempt to lower risk (equity volatility and/or draw down). The regime filters have different states for each market order type (buy and sell). When the regime filters are set to true, if these regime states fail to be true the trade is exited immediately.
For Buy Trades:
LWLTI positive momentum state: Quotient of the lagged trailing difference and the ATR > 50
AO positive momentum state: Bull line > Bear line (signal line is omitted)
For Sell Trades:
LWLTI negative momentum stat: Quotient of the lagged trailing difference and the ATR < 50
AO negative momentum state: Bull line < Bear line (signal line is omitted)
How does the Strategy Send Signals:
The strategy triggers a TV alert (you will neet to set a alert first), TV then sends a HTTP request to the automation software (PineConnecter) which receives the request and then communicates to an MT4/5 EA to automate the trading strategy.
For the strategy to send signals you must have the following
At least a TV essential subscription
This Script added to your chart
A PineConnecter account, which is paid and not free. This will provide you with the expert advisor that executes trades based on these strategies signals.
For more detailed information on the automation process I would recommend you read the PineConnecter documentation and FAQ page.
Dashboard:
This Dashboard (top right by defualt) lists some simple trading statistics and also shows when a trade is live.
Important Notice:
- USE THIS STRATEGY AT YOUR OWN RISK AND ALWAYS DO YOUR OWN RESEARCH & MANUAL BACKTESTING !
- THE STRATEGY WILL NOT EXHIBIT THE BACKTEST PERFORMANCE SEEN BELOW IN ALL MARKETS !
Distribution Histogram [SS]This is the frequency histogram indicator. It does just that—creates a frequency histogram distribution based on your desired lookback period. It then uses Pine's new Polyline function to plot a normal curve of the expected results for a normal distribution. This allows you to see quite a few things:
🎯 Firstly, it allows you to see where the accumulation rests in terms of a bell curve. The histogram represents a bell curve, and you can visually observe what the curve would look like.
🎯 Secondly, it will assess the normal distribution and the degree of skewness based on the curve itself. The indicator imports the SPTS statistics library to assess the distribution using Kurtosis and Skewness. However, it also adds functionality in this regard by making a qualitative assessment of the data. For example, if there are heavy left tails or heavier right tails present in the histogram, the indicator will alert you that a heavier left or right tail has been observed.
🎯 Thirdly, it provides you with the kurtosis and skewness of the dataset.
🎯 Fourthly, it provides the mean, median, and mode of the dataset, as well as the maximum and minimum values within the dataset.
🎯 Lastly, it provides you with the ability to toggle on tips/explanations of the curve itself. Simply toggle on "Show Distribution Explanation" in the settings menu:
How is the indicator helpful for trading?
If you are a mean reversion trader, this helps you identify the areas and price ranges of high and low accumulation. It also allows you to ascertain the probability by looking at the standard deviation of the bell curve. Remember, the majority of values should fall between -1 and 1 standard deviation of the mean (68%).
If it is revealed that the distribution has a heavier right or left tail, you will know that the stock is more likely to experience sudden drops and shifts in the curve in one direction or the other. Heavier left tails will tend to shift to the values on the far left, and vice versa for right tails.
Customization
You can turn off and on the following:
👉 The normal curve,
👉 The standard deviation levels, and
👉 The distribution explanations and tips.
Conclusion: And that is the indicator! Hope you enjoy it!
ICT Handle CounterThe "Handle Counter" is a unique TradingView script designed for ease and effectiveness in tracking price movements. It's particularly useful for traders who follow ICT methodologies. Users manually input their trade entry price, and the script then dynamically calculates and displays the number of Handles, or price changes, in a clear box above the latest candle on the chart. This real-time updating feature provides traders with crucial, current data on price movement, aiding in informed decision-making and a better understanding of market dynamics.
The "Handle Counter" script operates in the following way:
User Input: It starts by allowing you to input your trade's entry price. This is the price level from which the script will measure price movement.
Handles Calculation: The script calculates "Handles," which represent the price difference from your entry point to the current market price. This is done using a mathematical formula that finds the absolute value of this difference.
Display Mechanism: The calculated Handles are then displayed in a box, which is positioned above the latest candle on your trading chart. This box updates in real-time, giving you an ongoing view of how many Handles (price changes) have occurred since your entry point.
This script is designed to be straightforward and easy to use, providing clear, real-time information.
How to use:
Add the Indicator.
Open the Menu by clicking on the 'Settings' icon.
Navigate to the 'Inputs' tab and enter your entry price.
Click 'OK.' The indicator should immediately place a box above the latest candle, showing the current handles.
Additional Settings
Change Color of the Box
Change Color of the Font
VaR Market Sentiment by TenozenHello there! I am excited to share with you my new trading concept implemented in the "VaR Market Sentiment" indicator. But before that, let me explain what VaR is. VaR, or Value at Risk, is an indicator that helps you identify the worst-case scenario of a market movement based on a percentile/confidence level. This means that it calculates the worst moves, whether it's a buy or sell, based on the timeframe you're using.
Now, let's discuss how VaR Market Sentiment works. It uses a historical VaR to calculate the worst move either if the market goes up or down based on a percentile/confidence level. The default setting is the 95th percentile, which means that the market is unlikely to hit your SL level within the day if you're using a daily timeframe, etc.
To determine the strength of a candle, it subtracts the value of both sides based on the returns of the current timeframe with the VaR value (Bullish VaR - Bullish Returns, Bearish VaR - Bearish Returns). If the result is above the mean, the current candle is potentially weak. Conversely, if the result is below the mean, the current candle is potentially strong. The deviation shows critical sentiments, where if the market is above the deviation, it means that the current candle is really weak. If it's below the deviation, it means that the current candle is really strong.
It's important to note that this indicator needs other supporting indicators such as trend-following or mean reversion indicators based on your trading style. Also, as a follow-up to my previous concept, I called out that the market has what's called "power." And for now, I conclude that VaR Market Sentiment is the "power."
I'm going to share more helpful indicators in the future! I hope this indicator will be helpful for you guys! Ciao!
Yearly Return [%] - VisualizedCalculates the % Return from the first trading candle of any given year, and shows the % Return at that year end.
FX Forecasting Model [TrendX_]FX Forecasting Model indicator is a forecasting tool that takes advantages of macroeconomic analysis and market surveillance to predict Exchange rate movement.
*** Customize the macro data for home country (base currency) and foreign country
USAGE
This consists of 4 editable options align with 4 Forecasting Models
TrendX Model)
TrendX Model is a type of multiple linear regression, which is a statistical method that estimates the relationship between the currency exchange rate and various macroeconomic indicators.
*** Remember the 1st thing to do is to customize the macro data for home country (base currency) and foreign country, before take any further steps.
Purchasing Power Parity (PPP Model)
The PPP model is a conceptual model of currency exchange. The model illustrates how the exchange rate between two countries’ currencies is influenced by the variations in the prices of goods and services in those countries, which depend on the inflation rate. The activity of buying and selling goods and services internationally will shift the exchange rate to balance the prices in both countries.
Interest Rate Parity (IRP Model)
Interest Rate Parity (IRP) model is a theoretical model that relates the interest rates and the exchange rates of two countries. According to IRP, the difference between the forward and spot exchange rates of two currencies should be equal to the difference between their interest rates. IRP helps traders to determine the fair value of a currency pair and compare it with the market value. If the market value deviates from the fair value, then there is a potential for arbitrage or hedging.
Combined Forecast Model (Mixed Model)
Since each model has its own advantages, many people are interested in the concept of using a mix of forecasts to get better results than any single forecast. Mix Model is a method that uses different proportions of the forecasts from three models: TrendX, PPP and IRP models. The default proportion is 0.2 for TrendX, and 0.4 for both PPP and IRP. You can change these proportions according to your liking.
CONCLUSION
FX Forecasting Model Indicator is very practical for FOREX traders who wants to make informed and rational decisions based on Macroeconomic Analysis. It can help find arbitrage opportunity in currency exchange market. Accordingly, it can also be helpful for traders to use alongside other forms of Technical Analysis.
DISCLAIMER
The results achieved in the past are not all reliable sources of what will happen in the future. There are many factors and uncertainties that can affect the outcome of any endeavor, and no one can guarantee or predict with certainty what will occur.
Therefore, you should always exercise caution and judgment when making decisions based on past performance.
Normalized Fisher Transformed VolumeGreetings Traders,
I am thrilled to introduce a game-changing tool that I've passionately developed to enhance your trading precision – the Normalized Fisher Transformed Volume indicator. Let's dive into the specifics and explore how this tool can empower you in the markets.
Unlocking Trading Precision:
Normalization and Transformation:
Normalize raw volume data to ensure a consistent scale for analysis.
The Fisher Transformation converts normalized volume data into a Gaussian distribution, providing enhanced insights into trend dynamics.
Flexible Modes for Tailored Strategies:
Choose from three distinct modes:
Volume T3 (MA) + Heatmap: Identify trends with T3 Moving Average and visualize volume strength with Heatmap.
Volume Percent Rank: Evaluate the position of current volume relative to historical data.
Volume T3 (MA) Percent Rank: Combine T3 Moving Average with percentile ranking for a comprehensive analysis.
Heatmap Visualization for Quick Insights:
Heatmap Zones and Lines visually represent volume strength relative to historical data.
Customize threshold multipliers and color options for precise Heatmap interpretation.
T3 Moving Average Integration:
Smoothed representation of volume trends with the T3 Moving Average enhances trend identification.
Percent Rank Analysis for Context:
Gauge the position of normalized volume within historical context using Percent Rank analysis.
User-Friendly Customization:
Easily adjust parameters such as length, T3 Moving Average length, Heatmap standard deviation length, and threshold multipliers.
Intuitive interface with colored bars and customizable background options for personalized analysis.
How to Use Effectively:
Mode Selection:
Identify your preferred trading strategy and select the mode that aligns with your approach.
Parameter Adjustment:
Fine-tune the indicator by adjusting parameters to match your preferred trading style.
Interpret Heatmap and T3 Analysis:
Leverage Heatmap and T3 Moving Average analysis to spot potential trend reversals, overbought/oversold conditions, and market sentiment shifts.
Conclusion:
The Normalized Fisher Transformed Volume indicator is not just a tool; it's your key to unlocking precision in trading. Crafted by Simwai, this indicator offers unique insights tailored to your specific trading needs. Dive in, explore its features, experiment with parameters, and let it guide you to more informed and precise trading decisions.
Trade wisely and prosper,
simwai
commonThe "Pineify/common" library presents a specialized toolkit crafted to empower traders and script developers with state-of-the-art time manipulation functions on the TradingView platform. It is instead a foundational utility aimed at enriching your script's ability to process and interpret time-based data with unparalleled precision.
Key Features
String Splitter:
The 'str_split_into_two' function is a universal string handler that separates any given input into two distinct strings based on a specified delimiter. This function is especially useful in parsing time strings or any scenario where a string needs to be divided into logical parts efficiently.
Example:
= str_split_into_two("a:b", ":")
// a = "a"
// b = "b"
Time Parser:
With 'time_to_hour_minute', users can effortlessly convert a time string into numerical hours and minutes. This function is pivotal for those who need to exact specific time series data or wish to schedule their trades down to the minute.
Example:
= time_to_hour_minute("02:30")
// time_hour = 2
// time_minute = 30
Unix Time Converter
The 'time_range_to_unix_time' function transcends traditional boundaries by converting a given time range into Unix timestamp format. This integration of date, time, and timezone, accounts for a comprehensive approach, allowing scripts to make timed decisions, perform historical analyses, and account for international markets across different time zones.
Example:
// Support 'hhmm-hhmm' and 'hh:mm-hh:mm'
= time_range_to_unix_time("09:30-12:00")
Summary:
Each function is meticulously designed to minimize complexity and maximize versatility. Whether you are a programmer seeking to streamline your code, or a trader requiring precise timing for your strategies, our library provides the logical framework that aligns with your needs.
The "Pineify/common" library is the bridge between high-level time concepts and actionable trading insights. It serves a multitude of purposes – from crafting elegant time-based triggers to dissecting complex string data. Embrace the power of precision with "Pineify/common" and elevate your TradingView scripting experience to new heights.
Price Volume Harmony Indicator [Nasan]The indicator "Price Volume Harmony Indicator " (abbreviated as PVHI) combines relative volume intensity (RVI) and relative price change (PC) to identify potential synergy or divergence between price and volume movements. Let's break down the key components and discuss how to interpret the output:
Relative Volume Intensity (RVI):
It calculates the mean volume intensity using simple moving averages (SMA) of different periods (5, 8, 13, and 144).
It then computes point volume intensity based on the current volume compared to the previous bar's volume.
The final RVI is a combination of mean and point volume intensities.
Relative Price Change (PC):
It calculates the median absolute deviation (MAD) and the price change relative to MAD for three different lengths (5, 8, and 13).
The average relative PC is a weighted combination of the three PC values.
Normalization:
RVI and PC are normalized using Z-scores (standard scores) to bring them to the same scale. This enables easier comparison.
Histogram Plotting:
The RVI and PC are plotted as histograms below the main price chart. Green color bars represent RVI, and blue color bars indicate PC. The RVI bars are light green when the RVI values are decreasing compared to previous bar. Similarly, when PC bars are light blue it indicates that the PC values are decreasing compared to previous bars.
There is a zero line +/- 0.5 SD lines movements above and below the SD lines are practically
significant.
Interpretation :
(1) Strong Bullish Movement :
This is when both the green bars (RVI) and blue bars (PC) increases and are on the same side above zero .
(2) Strong Bearish Movement :
This is when the green bars (RVI) increases and blue bars (PC) decreases. The green bars above zero but blue bars below zero.
(3) Weak Bullish Movement :
This is when the green bars (RVI) decreases and are below zero but the blue bars (PC) increases and are above zero .
(2) Weak Bearish Movement :
This is when both the green bars (RVI) and blue bars (PC) decreases. The green bars and blue bars are below zero.
This output is slightly hard to read but with practice can be read easily.
Nasan Rate of Change (ROC)**NOTE: FOR COMPARISON TRADITIONAL ROC IS PLOTTED WITH THE SAME ROC LENGTH OF 9. IT IS NOT PART OF THE INDICATOR"
The Nasan ROC indicator is smoothed version of the of the traditional ROC indicator. The Nasna ROC uses a triple pass moving average differencing strategy. A cumulative sum of the deviations obtained from the moving average differencing provides a smooth "noise free" trend and this cumulative sum of deviations is used for calculating ROC.
Let's break down the components and understand the indicator we discussed earlier:
Sequential Triple Pass Filter:
Three filters with lengths specified by length1, length2, and length3 are applied to the closing prices (close).
The filters involve calculating the cumulative sum of the differences between the closing prices and their respective moving averages.
The idea is to detrend the data and accumulate the deviations from the average over time, emphasizing longer-term trends.
Calculation of Rate of Change (ROC) of Cumulative Sum:
The Rate of Change (ROC) of the cumulative sum (rocCumulativeSum) is calculated using the ta.roc function with a specified length (rocLength).
ROC measures the percentage change in the cumulative sum over a specified period.
The ROC histogram provides insights into the momentum of the detrended series. Positive values suggest increasing momentum, while negative values suggest decreasing momentum.
Pay attention to the color of the histogram bars.
The histogram bars are colored green if the current ROC value is greater than or equal to the previous ROC value, and red otherwise.
This coloring is based on the concept that a positive ROC suggests upward momentum, while a negative ROC suggests downward momentum.
Volatility - Volume Impact:
The Average True Range (ATR) is calculated with a period of 14.
Volume strength is calculated as a factor (VCF) that considers the ratio of the simple moving average (SMA) of the current volume to the SMA of the volume over a longer period (144).
This volume factor (VCF) is then multiplied by ATR, creating a synergy with volatility and volume.
Visualization with Background Color Gradient:
A background color gradient is applied to the chart based on the calculated volume strength (f1).
The gradient color ranges from black (indicating low ATR and volume strength) to purple (indicating high ATR and volume strength). A low value indicates a ranging market with no significant price movements and it is safter to avoid signals generated from ROC histogram in these region.
Synergy of ROC and Volume Strength:
Observe how the ROC signals align with the background color gradient. For example, confirm whether positive ROC aligns with periods of high ATR and volume strength.
This synergy can provide confirmation or divergence signals, adding another layer of analysis.
COSTAR Strategy [SS]A little late posting this but here it is, as promised!
This is the companion to the COSTAR indicator.
What it does:
It creates a co-integration paired relationship with a separate, cointegrated ticker. It then plots out the expected range based on the value of the cointegrated pair. When the current ticker is below the value of its co-integrated partner, it becomes a "Buy" and should be longed. When it becomes overvalued in comparison, it becomes a "Sell" and should be shorted.
The example above is with BA and USO, which have a strong inverse relationship.
How it works:
I made the strategy version a bit more intuitive. Instead of you selecting the parameters for your model, it will autoselect the ideal parameters based on your desired co-integrated pair. You simply enter the ticker you want to compare against, and it will sort through the values at various lags to find significance and stationarity. It will then create a model and plot the model out for you on your chart, as you can see above.
The premise of the strategy:
The premise of the strategy is as stated before. You long when the ticker is undervalued in comparison to its co-integrated pair, and short when it is overvalued. The conditions for entry are simply a co-integrated pair being over the expected range (short) or below the expected range (long).
The condition to exit is a "re-integration", or a crossover of the expected value of the ticker (the centreline).
What if it can't find a relationship?
In some instances, the indicator will not be able to determine a co-integrated relationship, owning to a lack of stationarity between the data. When this happens, you will get the following error:
The indicator provides you with prompts, such as switching the timeframe or trying an alternative ticker. In the case displayed above, if we simply switch to the 1 hour timeframe, we have a viable model with great backtest results:
You can toggle in the settings menu the various parameters, such as timeframe, fills and displays.
And that is the strategy in a nutshell, be sure to check out its partner indicator, COSTAR, for more information on the premise of using co-integrated models for trading. And let me know your questions below!
Safe trades everyone!
Interest Rate and GDP Dashboard by toodegreesDescription:
The Interest Rate and GDP Dashboard is a powerful tool designed to provide traders with valuable insights into Interest Rate and Gross Domestic Product (GDP) of the largest Central Banks.
Interest Rates are closely monitored from all around the world, and play a massive role in Interbank Institutional Trading. Although mainly used by Forex traders, it's important for all types of analysts to understand risk-on and risk-off environments in respective currencies, or other asset classes, based on a global financial landscape.
Forex Pair Dashboard ( FOREXCOM:EURUSD ):
Non-Forex Pair Dashboard ( CME_MINI:ES1! ):
This tool displays the Live Interest Rates (as well as latest Interest Rate Change) and GDP, of the following countries/regions:
Australia
Canada
Europe
Japan
New Zealand
Switzerland
United Kingdom
United States
Further, analysts will be able to see Interest Rate Change labels directly on chart, to monitor Time and price relationship following rate hikes or rate cuts. The labels will display according to the impact of the Interest Rate Change on the current asset on chart, and their tooltips will display the %Change:
Analysts can also choose to mark Interest Rate Changes with vertical lines, to aid in marking changes in sentiment or global financial environment:
The real power and value provided by this tool is its tailored Interest Rate (and GDP) Differential feature for Forex markets, based on the Interest Rate Differential concept as taught by the Inner Circle Trader (ICT).
Using Interest Rate Differentials as a further Long Term Bias factor was introduced by ICT in conjunction with other higher Timeframe principles like Seasonal Tendency, Commitment of Traders, and Open Interest. This fusion ensures a holistic approach to dissecting specific Forex pairs, and the involvement of Institutional traders.
Key Features:
Dynamically calculates and organizes the dashboard to display the interest rate differential of the chart's forex pair, or displays all if outside of forex markets.
Pinpoint historical interest rate changes with precision using vertical lines and/or dynamic labels with tooltips.
Other Features:
Toggle Options: Customize your viewing experience by toggling the display of previous rate changes, enabling or disabling GDP visibility, and tailoring the size and location of the dashboard.
Fine-tune Visuals: Adjust the size and style of the previous interest rate labels and lines to suit your preferences, offering a personalized touch to your analytical workspace.
Usage Guidance:
Add the Interest Rate and GDP Dashboard to your Tradingview chart.
Tailor your experience by customizing the table and style to be in line with your analytical preferences, ensuring a visually engaging and personalized chart.
Observe where and when key Interest Rate decisions impact the macro trend or market environment.
Leverage this invaluable information to shape your Higher Timeframe narrative in confluence with other tools.
Volume Outlier Signal Detector (Based on IQR)This indicator can detect outliers in trading volume using the 1.5 IQR rule or the outlier formula.
The outlier formula designates outliers based on upper and lower boundaries. Any value that is 1.5 times the Interquartile Range (IQR) greater than the third quartile is designated as an outlier.
The indicator computes the Q3 (75th percentile) and Q1 (25th percentile) of a given volume dataset. The IQR is then calculated by subtracting the Q1 volume from the Q3 volume.
To identify volume outliers, the indicator uses the formula:
Q3 Volume + IQR Multiplier(1.5) * IQR
If the trading volume surpasses the volume outlier, the indicator will display either a green or red column.
A green column indicates that the current bar volume is higher than the volume outlier, and simultaneously, the current bar close is higher than the previous bar's close. Vice versa for the red column.
Moving averages are an optional parameter that can be added to filter out instances where the indicator shows a green or red column. If this option is enabled, the indicator will not display a green column if the price is not above the moving average, and vice versa for red columns.
Several settings can be customized to personalize this indicator, such as setting the moving average filter to higher timeframes. The MA type can also be switched, and IQR settings can be adjusted to fit different markets.
This indicator only works with TradingView charts with volume data.
***Disclaimer:
Before using this indicator for actual trading, make sure to conduct a back test to ensure the strategy is not a losing one in the long run. Apply proper risk management techniques, such as position sizing and using stop loss.
Modified Box Plots
Box Plot Concept: The script creates a modified box plot where the central box represents the range within 1 standard deviation from the midpoint (hl2), which is the average of the high and low prices. The whiskers extend to cover a range of 3 standard deviations, providing a visualization of the overall price distribution.
Color Scheme: The color of the modified box plot is determined based on comparisons between the current midpoint (g) and the +/- 1 SD values of the previous candle (i and j ). If g > i , the color is green; if g < j , it's red; otherwise, it's yellow. This color scheme allows users to quickly assess the relationship between the current market conditions and recent price movements. if the mid point price is above/below +/- 1 SD values of the previous candle the price movement is considered as significant.
Plotcandle Function: The plotcandle function is employed to visualize the modified box plot. The color of the box is dynamically determined by the candleColor variable, which reflects the current market state based on the color scheme. The wicks, represented by lines extending from the box, are colored in white.
Explanation of Box and Wicks:
Box (Open and Close): In this modified box plot, the box does not represent traditional open and close prices. Instead, it signifies a range within 1 standard deviation of the midpoint (hl2), providing insight into the typical price variation around the average of the high and low.
Wicks (High and Low): The wicks extend from the box to cover a range of 3 standard deviations from the midpoint (hl2). They do not correspond to the actual high and low prices but serve as a visualization of potential outliers in the price distribution. The actual high and low prices are also plotted as green and red dots when the actual high and low prices fall outside the +/- 3SD wicks (whiskers) and also indicate the prices does not fit the distribution based on the recent price volatility.
In summary, this modified box plot offers a unique perspective on price distribution by considering standard deviations from the midpoint. The color scheme aids in quickly assessing market conditions, and the wicks provide insights into the potential presence of outliers. It's essential to understand that the box and wicks do not represent traditional open, close, high, and low prices but offer a different way to visualize and interpret intraday price movements.
Step by step explanation
Here's the step-by-step explanation:
a = ta.highest(high, 7): Calculates the highest high in the last 7 bars.
b = ta.lowest(low, 7): Calculates the lowest low in the last 7 bars.
c = ta.stdev(hl2, 7): Calculates the standard deviation of the average of high and low prices (hl2) over the last 7 bars.
d = (a - b) / c: Computes a scaling factor d based on the highest, lowest, and standard deviation. This factor is used to scale the intraday range in the next steps.
e = (high - low): Calculates the intraday range of the candle.
f = e / d: Estimates the standard deviation (f) of the intraday candle price using the scaling factor d.
g = hl2: Defines the intraday midpoint of the candle, which is the average of high and low prices.
i = g + 1 * f, j = g - 1 * f, k = g + 3 * f, l = g - 3 * f: Calculate values representing coverage of +1 SD, -1 SD, +3 SD, and -3 SD from the intraday midpoint.
The script utilizes historical high, low, and standard deviation values to dynamically estimate the standard deviation of the intraday candle, providing a measure of volatility for the current price range. This estimation is then used to construct a modified box plot around the intraday midpoint.
In addition I have included a 7 period hull moving average just to see the overall trend direction.
Conclusion:
The "Nasan Modified Box Plots" indicator on TradingView is a dynamic visualization tool that provides insights into the distribution of price ranges over a specified period. It adapts to changing market conditions by incorporating historical data in the calculation of a scaling factor (d). The indicator constructs a modified box plot, where the size of the box and the whiskers is determined by recent volatility
Tips,Notes,RulesEasy Annotation:
Quickly create custom annotations during your trading sessions to capture important ideas, strategies and observations as you go.
User-friendly Interface:
The indicator offers an intuitive interface, ensuring a smooth experience for adding notes to your chart.
Custom Appearance:
Personalize your annotations according to your preferences.
Adjust the text size to make your notes easily readable and tailored to your visual preferences.
Choose from a variety of colors to make your annotations visually distinct and recognizable.
Align your text according to your preferences to create a visually appealing graphic.
Flexible Positioning:
Place your annotations at the top, middle, or bottom of the chart, providing flexibility without obstructing your view of the price action.
Clear View of Price Action:
Make sure your personalized notes don't interfere with your analysis of market movements.
Tracking Trading Rules:
Use the indicator to record your trading rules, ensuring that you follow your established strategies consistently.
Implement and follow your risk management plans, helping you maintain control over your transactions.
Capture and examine the psychological cues that influence your decisions, promoting greater discipline in your approach to trading.
Improved Trading Experience:
The Trading Notes indicator integrates seamlessly into your trading workflow, allowing you to focus on market analysis and decision-making.
Develop a complete record of your trading sessions, facilitating post-analysis and continuous improvement.
CAPM Calculator [TrendX_]CAPM calculator is a powerful tool that helps find the cost of equity, which is the minimum return that shareholders require to invest in a company.
With the CAPM calculator, you can assess how well your trading strategy performs compared to the market. The goal of your strategy is to earn higher returns than what you would get by investing in the market with the same level of risk. This is called the risk-adjusted cost of capital, and it represents the minimum return that you should accept for your investment.
USAGE
A simple way to measure this is to compare the Compound annual growth rate (CAGR) of the trading strategy with the “Compound CAPM”, which is the CAGR of investing in the market with the same beta as the strategy.
If the trading strategy has a higher CAGR than the “Compound CAPM”, it means that it has outperformed the market on a risk-adjusted basis.
This is a sign of an effective trading strategy.
DISCLAIMER
The results achieved in the past are not all reliable sources of what will happen in the future. There are many factors and uncertainties that can affect the outcome of any endeavor, and no one can guarantee or predict with certainty what will occur.
Therefore, you should always exercise caution and judgment when making decisions based on past performance.