MACD/RSI - editedThis strategy checks MACDcrossover and RSI crossover. When MACD crosses up or down the signal line, it checks if RSI is crossing back OverSold or OverBought lines, respectively, over the past few candles. The period can be changed by the parameter "RSI lookback".
The strategy seems to work better for reversal—still a work in progress.
Komut dosyalarını "博时黄金ETF联接C基金同类基金的最大回撤率、波动率、夏普比率对比数据" için ara
VIX Futures Spread StrategyThis script was an exercise in learning Pinescript and exploring the futures curve of the VIX in relation to SPY. Was deleted by TV, trying to republish it now with updated parameters for slippage and commission and a more detailed description.
"VIX Futures Spread Strategy" is a trading strategy that capitalizes on the spread between the 3-month VIX futures (VIX3M) and the spot VIX index. This strategy is based on the idea that the VIX futures spread can serve as a contrarian indicator of market sentiment, with extreme negative spreads potentially signaling oversold conditions and opportunities for long positions.
Ordinarily the VIX curve is in contango as futures contracts are priced at a premium to the current spot price and are used to hedge future uncertainty in the market. When the spot price of VIX spikes the curve can invert and enter backwardation; this strategy detects this condition and uses it as a trigger to open a long position in SPY. The spread going negative tends to correlate with excessive fear and uncertainty in the short term while expecting lower volatility in the long term, in this case 3 months out.
The strategy is designed to enter a long position when the VIX futures spread is negative and to exit the position when the spread rises above 3 -- when the curve is in contango again. The strategy employs a pyramiding approach, allowing up to 10 additional orders to be placed while the entry condition is met, with each order consisting of 10 contracts. This approach aims to maximize potential profits during periods of favorable market conditions.
In this strategy, the VIX futures spread is calculated as the difference between the 3-month VIX futures (VIX3M) and the spot VIX index. The spread is plotted as a histogram on the chart, with the zero line representing no spread, and horizontal lines at 0 and 3 indicating the entry and exit thresholds, respectively.
The strategy's backtesting settings use an initial capital of HKEX:10 ,000, a commission of 0.5% per trade, and a maximum of 10 pyramiding orders, and a slippage of 2 ticks.
Please note that this strategy is intended for educational purposes and should not be considered as financial advice. Before using this strategy in live trading, make sure to thoroughly test and optimize its parameters to suit your risk tolerance and specific trading conditions.
Put-Call Bias IndicatorThe Put-Call Bias Indicator provides a visual representation of the relative bias towards put options using CBOE data. This script calculates the Put/All ratio, displaying the difference as compared to an even 50% ratio as columns on the chart. A positive value indicates a higher proportion of puts being bought compared to the total number of options contracts.
The indicator uses weekly CBOE data to determine the Put/Call ratio, making it suitable for analyzing longer-term trends in options trading sentiment. The gray columns represent the bias towards puts, with the green horizontal line at 0 acting as a reference point to quickly identify the prevailing bias.
In addition to providing an overview of market sentiment, this indicator can also be used as a contrarian indicator. A high Put/All ratio may suggest that the market is overly bearish, potentially signaling a bullish reversal, while a low ratio may indicate an overly bullish market, potentially pointing to a bearish reversal. Please note that this indicator should be used in conjunction with other technical analysis tools and indicators for a comprehensive understanding of the market.
(This is a new version of an old script bc previous version was deleted by TradingView; republishing with a more verbose description)
Basic Polychromatic Momentum IndicatorBasic Polychromatic Momentum Indicator with alerts
PMI involves taking the difference between the current price and the price n periods ago, and then subtracting from it the difference between the current price and the price n periods ago, divided by n. This gives a smoothed version of the momentum indicator.
The user can also specify a smoothing factor using the "smoothing" input, which applies a simple moving average to the PMI. The resulting smoothed PMI is plotted on the chart in blue, with a dotted gray line at the zero level.
Polychromatic Momentum IndicatorPolychromatic Momentum is a generalized Momentum study considering a number of Momentum values controlled by the length input. The greatest weight is given to the most recent Momentum value, while the precedent values are given lesser weight. Each Momentum value is assigned weight equal to inverse square root of Momentum distance (number of bars prior to the current bar). Then the sum of the weighted Momentum values is divided by the sum of the square roots.
Multi-Time Period Chart[1] 3 overlays w/ Halfbacks These are 3 High-Low ranges that uses the code of TradingView's built-in Multi-Time Period Chart indicator as well as adds on optional midpoint (or "halfback") to the overlays. Finally, there are labels offset on the right margin that indicate the open price for each of those timeframes. One thing I adjusted is that range of each timeframe is omitted. This is because the original TV indicator's boxes have their right edge completely covering the wicks (Thus, the title for this indicator). This script has plenty of utility, but it designed specifically with the STRAT (Rob Smith) methodology in mind.
RSI and Stochastic Probability Based Price Target IndicatorHello,
Releasing this beta indicator. It is somewhat experimental but I have had some good success with it so I figured I would share it!
What is it?
This is an indicator that combines RSI and Stochastics with probability levels.
How it works?
This works by applying a regression based analysis on both Stochastics and RSI to attempt to predict a likely close price of the stock.
It also assess the normal distribution range the stock is trading in. With this information it does the following:
2 lines are plotted:
Yellow line: This is the stochastic line. This represents the smoothed version of the stochastic price prediction of the most likely close price.
White Line: This is the RSI line. It represents the smoothed version of the RSI price prediction of the most likely close price.
When the Yellow Line (Stochastic Line) crosses over the White Line (the RSI line), this is a bearish indication. It will signal a bearish cross (red arrow) to signal that some selling or pullback may follow.
IF this bearish cross happens while the stock is trading in a low probability upper zone (anything 13% or less), it will trigger a label to print with a pullback price. The pullback price is the "regression to the mean" assumption price. Its the current mean at the time of the bearish cross.
The inverse is true if it is a bullish cross. If the stock has a bullish cross and is trading in a low probability bearish range, it will print the price target for a regression back to the upward mean.
Additional information:
The indicator also provides a data table. This data table provides you with the current probability range (i.e. whether the stock is trading in the 68% probability zone or the outer 13, 2.1 or 0.1 probability zones), as well as the overall probability of a move up or down.
It also provides the next bull and bear targets. These are calculated based on the next probability zone located immediately above and below the current trading zone of the stock.
Smoothing vs Non-smoothed data:
For those who like to assess RSI and Stochastic for divergences, there is an option in the indicator to un-smooth the stochastic and RSI lines. Doing so looks like this:
Un-smoothing the RSI and stochastic will not affect the analysis or price targets. However it does add some noise to the chart and makes it slightly difficult to check for crosses. But whatever your preference is you can use.
Cross Indicators :
A bearish cross (stochastic crosses above RSI line) is signalled with a red arrow down shape.
A bullish cross (RSI crosses above stochastic line) is signalled with a green arrow up shape.
Labels vs Arrows:
The arrows are lax in their signalling. They will signal at any cross. Thus you are inclined to get false signals.
The labels are programmed to only trigger on high probability setups.
Please keep this in mind when using the indicator!
Warning and disclaimer:
As with all indicators, no indicator is 100% perfect.
This will not replace the need for solid analysis, risk management and planning.
This is also kind of beta in its approach. As such, there are no real rules on how it should be or can be applied rigorously. Thus, its important to exercise caution and not rely on this alone. Do your due diligence before using or applying this indicator to your trading regimen.
As it is kind of different, I am interested in hearing your feedback and experience using it. Let me know your feedback, experiences and suggestions below.
Also, because it does have a lot of moving parts, I have done a tutorial video on its use linked below:
Thanks for checking it out, safe trades everyone and take care!
Automated Option Price - Black-Scholes modelPlease make sure you are plotting this indicator on DAILY bars, not doing so will lead to unintended results. Also, make sure that you keep up to date the Risk-free interest rate, which you can consult (for U.S.) on ycharts.com.
This is an indicator that is meant to be used for Options Day Trading, but it can be useful for mid-term or leaps for I also enabled the possibility for user to input manually the Strike and Expiration date. I based the calculation on the Black-Scholes model. Variables included in the calculation are:
-Stock price (S): The current price of the underlying asset (e.g., a stock).
-Strike price (K): The predetermined price at which the option can be exercised.
-Time to expiration (T): The time remaining until the option expires, expressed as a fraction of a year.
-Volatility (σ): The annualized standard deviation of the stock's returns, which is a measure of the stock's price fluctuations.
-Risk-free interest rate (r): The annualized return on a risk-free investment, often approximated by the yield on a government bond.
The only variable I excluded from the original model was the Dividend yield (q).
U S E R I N P U T S:
1. AUTOMATIC calculations enabled:
i) Strike price (K):
Automatically calculate the strike price for both call and put options based on the stock's closing price. The logic follows a set of rules to determine the strike prices which will usually be Out-of-the-Money (OTM):
-If the stock's closing price is between 1 and 60, the call strike price is rounded up to the nearest whole number, while the put strike price is rounded down to the nearest whole number.
-If the stock's closing price is between 60 and 90, the call strike price is rounded up to the nearest whole number and increased by 1, while the put strike price is rounded down to the nearest whole number and decreased by 1.
-If the stock's closing price is between 90 and 120, the call strike price is rounded up to the nearest whole number and increased by 2, while the put strike price is rounded down to the nearest whole number and decreased by 2.
-If the stock's closing price is above 120, the call strike price is rounded up to the nearest multiple of 5, while the put strike price is rounded down to the nearest multiple of 5.
By applying these rules, I just tried to ensure that the automatically calculated strike prices are tailored to the stock's price range, allowing for more accurate option pricing calculations.
ii) Time to expiration (T):
The indicator will consider this week’s expiration contracts (Friday) only when the current day/bar = Monday. If Tuesday or older it will consider the expiration date of the next week’s Friday (because we are not Theta gamblers, right?).
If you are not comfortable with above for whatever reason, you can always…
2. Enter inputs MANUALLY
First make sure you UNTICK the boxes for automatic calculation.
i) Strike price (K) – Self-explanatory
ii) Time to expiration (T) – Just make sure that the horizon you are inputting matches with the next parameter (e.g. you would not input a Monthly risk-free interest rate for a Leap).
iii) Risk-free interest rate (r) – You can pull this data from the web. Here’s the link I used to define the value that this indicator was launched with:
ycharts.com
Don’t get obsessed with updating this daily if you are using this for day trading, you will notice that weekly may be more than enough.
V O L A T I L I T Y
Not option to manually input Volatility so I’ll explain how it is calculated in this script:
I considered two measures of volatility; one is derived calculating the annualized volatility using the standard deviation of daily returns and the second one is the ATR-based annualized volatility. I then used a ‘combined’ approach with the harmonic mean and the arithmetic mean of these results which can help account for the variability in the option prices calculated with different volatility estimates, which can be more robust when dealing with outliers or skewed data. I back tested with some samples of actual option prices and found that this approach is the one that got results closer to the actual bids.
T A B L E
Nomenclature to read rows is:
Option Strike Price | Type of Option (Put or Call) @ The current Close or at 50% level of bar | Estimated Price
*The Option expiration Date showed as dd-MMM as part of the headers.
Second and third row (color 1): These will show the calculated value for the Put/Call, assuming you are buying at the CURRENT price of the stock.
Third and Fifth row (color2): These will show the calculated value for the Put/Call, assuming you buy at the 50% level of the current bar (this is the value that the contract WOULD HAVE at the 50% level of the bar).
If you plot the indicator during market hours it will obviously update as price moves, this is an intended feature.
L I M I T A T I O N S
The Black-Scholes model, like many other models, has its limitations and will oftentimes provide inaccurate option prices in all market conditions. High volatility events, such as earnings announcements, can lead to significant price fluctuations that are not fully captured by the model.
The model assumes that the stock price follows a continuous random walk with constant volatility, but in reality, volatility can change over time, and stock prices can exhibit jumps, especially around significant events like earnings announcements. This can cause the model to underestimate the true option price in such situations.
Please make sure that you first back test on the symbols you trade to ensure the information presented by this indicator will suit your trading strategy. You will find that the delta between the proposed price of the indicator versus the actual price may differ significantly in some symbols while for others it will be very close. For instance, today (13APR23), the prices for AMD, DIS, AAPL (puts only), were very close to actual bids, whereas TSLA differ significantly (but then again, take a look at the calendar and this last symbol is having earnings next week which may add a premium to the contracts)… I am sure you will get your own conclusions and applicable use cases based on the data you test with.
As always, be wise and methodical on the investment or trading decisions you make!
Nadaraya-Watson OscillatorThis indicator is based on the work of @jdehorty and his amazing Nadaraya-Watson Kernel Envelope, which you can see here:
General Description
The Nadaraya-Watson Oscillator (NWO) will give the same information as the Nadaraya-Watson Envelope, but as an oscillator off the main chart, by plotting the relationship between price and the Kernel and its bands. This also means that we can now detect divergences between price and the NWO.
You can see the relationship between the two here:
You can think of this indicator as the kernel envelope version of a Bollinger Band %B. In ranging markets the bands are perfect for mean reversion trades, but in certain situations the break of one of the bands can signal the beggining of a strong trend and price will remain close to the bands for a long period and will only give small pullbacks. As with any indicator, confluence with price and other tools must be taken into account.
Main Features
As with @jdehorty 's Envelope, you can change the following settings:
Lookback Window.
Relative Weighting.
The initial bar for the regression.
ATR period for the bands.
Inner and Outer Multiples for the bands.
I also added the following:
A middle band around the Kernel to filter out false crossovers.
A Hull Moving Average to smoothen out the movements of the oscillator and give extra confirmation of turnover points.
Colors
Some special things to note regarding the coloring:
The zero line features a gradient that changes color every time the Kernel slope changes direction.
The Oscillator plot has a gradient coloring that gets stronger the closer it gets to each of the bands.
Every time the oscillator crosses over/under the outer bands the background will be highlighted.
Happy trading!
LNL Simple Hedging ToolLNL Simple Hedging Tool
Simple Hedging Tool was created specifically for swing traders who struggle with hedging. This tool helps to spot the ideal moments to put the hedges on (protection of the portfolio during "high risk" times). Simple Hedging Tool will not help you when day trading. It was designed for the daily charts. It is called simple because it is pretty much self-explanatory indicator. The candles are either blue or yellow. Meaning of the colors depend on the version you are using. This tool consist of two versions:
SPX Version:
This version was designed for indexes & overall market benchmarks. In contrast with the VIX version, the SPX version is little more sophisticated since it is based on key market internals. Blue arrows above the candles? More often than not this is signalizing that the key market internals are now approaching bearish signals which means it is the best time to hedge any bullish positions. On the contrary, the yellow arrows are the good reason to lighten up of the shorts & ease off the gas pedal on any bearish outlooks.
VIX Version:
Apart from the black swan events (big market crashes) Vix usually oscillates between the daily extremes. The VIX version is based on a simple bollinger band technique which is visualized with blue & yellow arrows. Whenever the yellow arrows & candles appear, it is good time to put the hedges on & perhaps lighten up on longs.
IMPORTANT DISCLAIMER:
The signals from this tool WILL NOT TELL YOU where to buy or sell! But rather when is a good time TO NOT buy or TO NOT sell. Once the signals appear it does not necessarily mean that the move is over & reversion willl happen immidiately. These signals can be flashing for days even weeks. They are not flashing for you to change the bias but rather tighten up your exposure in case your portfolio is mostly one sided.
Hope it helps.
ADD 2This is a modification to the original ADD script by Tom1trader
I added the option to choose the timeframe, moving average type and length.
Note from the original script:
"This is the NYSE Advancers - decliners which the SPX pretty much follows. You can chart it like any index (ADD -NYSE $ADV MINUS $DECL) but I find it more useful in a separate panel with colors for direction.
The level gives an idea of days move (example: plus or minus 500 is not much movement through the session) but I follow the direction as when more stocks advance (green) or decline (red) the index tends to track it pretty closely.
On SPX , SPY and correlates - very useful for intra-day trading (Scalping or 0DTE option trades) but not for higher time frames at all. If you chart the ADD in a chart and compare 5 minute to daily you will see what I mean."
Momentum Reversal [AngelAlgo]The Momentum Reversal Indicator is a technical analysis tool used to identify potential reversals and trends in financial markets. It does this by comparing the momentum of a market to its trend. The momentum is calculated by measuring the change in price over a specified time interval set by the "Period" input. The trend is then determined as the simple moving average of the momentum, with the length of the moving average determined by the "Trend length" input. When the momentum deviates significantly from the trend, it is considered a potential reversal signal. The user can choose to receive signals based on either "Contrarian" or "Trend" signals type, and also has the option to smooth the signals using the Hull Moving Average. The indicator is plotted as a histogram with trading signals indicated by triangle shapes (up for buys, down for sells). The histogram is also accompanied by a smoothed line representation of the indicator and dynamic threshold levels.
The color of the histogram bars is green if the momentum is positive, red if it's negative. The histogram can be smoothed using the Hull Moving Average (HMA) if the "Smoothed signals" input is set to true.
The indicator also plots the threshold levels, which are dynamically calculated as the simple moving average (SMA) of the absolute value of the histogram. The threshold levels are plotted as circles on the chart.
The signals are plotted as arrows on the chart, either triangle-up for buy signals, or triangle-down for sell signals. If "Contrarian" signals are selected, a triangle-up will appear when the histogram crosses below the lower threshold, and a triangle-down will appear when it crosses above the upper threshold. If "Trend" signals are selected, a triangle-up will appear when the histogram crosses above the upper threshold, and a triangle-down will appear when it crosses below the lower threshold. Trend signals work for trending markets, Contrarian signals are good for ranging markets.
SETTINGS
Period: This input allows you to set the period for the momentum calculation. The default value is 14.
Trend length: This input allows you to set the length of the trend-following moving average. The default value is 50.
Signals type : This input allows you to choose the type of signals you want to receive. You can choose between "Contrarian" and "Trend" signals. The default value is "Contrarian".
Smoothed signals: This input allows you to choose between the raw or smoothed signals. If set to true, the signals will be based on the smoothed histogram line, otherwise, they will be based on the raw histogram. The default value is true.
Weis Wave Volume - Simple labels and comparisonThis script is designed to identify and display the Weis Wave Volume on a chart. The Weis Wave Volume is a volume-based indicator that helps traders analyze market waves, identify trend reversals, and assess the strength of a trend. The script calculates wave volume based on user-defined input parameters, detects price waves, and displays the results as labels on the chart.
This version in particular is based on ideas from @the_MarketWhisperer and some other pieces of the script from @LucF.
The overall functionality of the script is to identify price waves and their corresponding volume. It does this by determining the trend direction and detecting trend reversals based on user-defined inputs such as the Trend reversal length and Price source for trend detection. The script also calculates and displays the cumulative volume of the current wave, the number of bars in the wave, the average volume in the wave, and consecutive increasing average volume bars in the same wave:
- An 'o' is printed to show that the volume of the current wave was 'O'ver/ above the count of the volume from preceding wave (regardless of it being up or down).
- An 'u' is printed to show that the volume of the current wave was 'U'nder/ below the count of the volume from preceding wave (regardless of it being up or down).
- Current wave will be between ' ' signaling that the wave is not confirmed yet.
- Actual values for the wave are available as tooltips. You decide how many bars to show the labels for, but for now and since I am a fan of clean charts, this is set to 50.
The user can adjust various inputs that affect the output of the script, such as Trend reversal length, Price source for trend detection, Labels for X last bars. Adjusting these inputs allows the trader to customize the script's behavior to better suit their trading style or specific market conditions. For example, by increasing the Trend reversal length, the script will require more consecutive bars in the opposite direction to confirm a trend reversal, potentially filtering out shorter-term price fluctuations. Similarly, adjusting the Price source for trend detection allows the user to base trend calculations on different price values, such as the high, low, or close of each bar.
In addition to the customizable inputs, the user can enable or disable the display of pivot markers and choose the colors for the up and down volume labels. This helps the trader to easily visualize and analyze the wave volume information on the chart.
In summary, this script offers traders a powerful tool for visualizing and analyzing the Weis Wave Volume on a chart. By identifying price waves, detecting trend reversals, and providing insights into the strength of a trend based on volume, the script can be a valuable addition to a trader's technical analysis toolbox. Please note this is not meant to provide any buy or sell signals, it should be rather used to complement your existing analysis.
Have fun and trade wisely ;)
Leveraged Share Conversion IndicatorHello everyone,
Releasing my leveraged share conversion indicator.
I noticed that the option traders have all the fun and resources but the share traders don't really have many resources in terms of adjusting or profits on leveraged and inverse shares. So, I decided to change that this this indicator!
What it does:
In a nut shell, the calculator converts one share to the price of another through the use of a regression based analysis.
There are multiple pre-stored libraries available in the indicator, including IWM, SPY, BTC and QQQ.
However, if the ticker you want to convert is not in one of the pre-defined libraries, you can select "Use Alternative Ticker" and indicate the stock you wish to convert.
Using Libraries:
If the conversion you want is available in one of the libraries, simply select the conversion you would like. For example, if you want to convert SPY to SPXU, select that conversion. The indicator will then launch up the conversion results which it will display in a dashboard to the right and will also display the plotted conversion on a chart (see imagine below:
In the dashboard, the indicator will show you:
a) The conversion result: This is the most likely price based on the analysis
b) The standard error: This is the degree of error within the conversion. This is the basis of the upper and lower bands. In statistics, we can add and subtract the standard error from the likely result to get the "Upper" and "Lower" Confidence levels of assessment. This is just a fancy way of saying the range in which our predicted result will fall. So, for example, in the image above it shows you the price of SPXU is assessed to be around 16$ based on SPY's price. The standard error range is 15-17. This means that, the majority of the time, based on this SPY close price, SPXU should fall between 15-17$ with the most likely result being the 16$ range.
Why is there error?
Because leveraged shares have an inherent decay in them. The degree of decay can be captured utilizing the standard error. So at any given time, the small changes in price fluctuations caused by the fact that the share is leveraged can be assessed and displayed using standard error measurements.
c) The current correlation: This is important! Because if the stocks are not strongly correlated, it tells you there is a problem. In general, a perfect correlation is 1 or -1 (perfectly negative correlation or inverse correlation) and a bad correlation is anything under 0.5 or -0.5. So, for an INVERSE leveraged share, you would expect the correlation to read a negative value. Ideally -1. Because the inverse share is doing the opposite of the underlying (if the underlying goes up, the inverse goes down and vice versa). For a non-inverse leveraged share, the correlation should read a positive value. As the underlying goes up, so too does the leveraged.
Manual Conversion using Library:
If you are using a pre-defined library but want to convert a manual close price, simply select "Enable manual conversion" at the bottom of the settings and then type in the manual close price. If you are converting SPY to SPXU, type in the manual close price of SPY to get the result in SPXU and vice versa.
Using an Alternative Ticker:
If the ticker you want is not available in a pre-defined library (i.e. UDOW, BOIL, APPU, TSLL, etc.), simply select "Use Alternative Ticker" in the settings menu. When you select this, make sure your chart is set to the dominant chart. The "Dominant chart" is the chart of the underlying. So, if you want TSLA to TSLL, be sure you have the TSLA chart open and then set your Alternative Ticker to TSLL or TSLQ.
The process of using an Alternative Ticker remains the same. If you wish to enter a manual close price, simply select "Enable Manual Conversion".
Special Considerations:
The indicator uses 1 hour candles. Thus, please leave your dominant chart set on the 1 hour time frame to avoid confusing the indicator.
The lookback period of the manual conversion is 10, 1 hour candles. As such, the results should not be used to make longer term predictions (i.e. anything over 6 months is pushing the capabilities of a manual conversion but fair game for the pre-defined library conversions which use more longer-term data).
You can technically use the indicator to make assessments between 2 separate equities. For example, the relationship between QQQ and ARKK, SPY and DIA, IWM and SPY, etc. If there is a good enough correlation, you can use it to make predictions of the opposing ticker. For example, if DIA goes to 340, what would SPY likely do? And vice versa.
As always, I have prepared a tutorial and getting started video for your reference:
As always, let me know your questions and requests/recommendations for the indicator below. This indicator is my final reference indicator in my 3 part reference indicator release. I will be going back over the feedback to make improvements based on the suggestions I have received. So please feel free to leave any suggestions here and I will take them into consideration for improvement!
Thank you for checking this out and as always, safe trades!
VWAP2D+Displays the current and previous days' VWAP. A useful tool for intraday VWAP traders or to optimize longer term entries or exits.
Features:
Shows levels exceeding the average deviation for the time of day as either warm or cool gradients.
Custom alerts including "Closing In Range" which uses the ATR to determine if the closing value in in the vicinity of the current day's VWAP.
Ultimate P&L IndicatorHello everyone,
Excited to release this P&L Indicator! Read below for more details.
What it does:
This is an indicator that permits you to track your active P&L live on Tradingview. As well, it provides some insight into DCAing your position by giving you live estimates of your revised DCA if you were to add to your position at various targets/price points.
Who is it for:
I developed it because I trade 100% off of Tradingview but my broker does not support Tradingview integration. So I wanted a way to track my position live on the Tradingview platform without having to constantly reference my broker. I also wanted to be able to set position specific alerts right on Tradingview.
How does it work:
It works by the user manually inputting their trade information, including their DCA, position size and the date and time of position entry. The indicator can provide real time and live DCA adjusted estimates if you were to add to your position at the current stock price, or you can manually calculcate your revised DCA at a specific price target.
The indicator also displays your current and past performance on your position for the duration of the position period:
Elements:
Capabilities:
The indicator is compatible with both futures and share trading.
Option trading is not directly available, however, you can get an idea for your option position P&L by following the 1 option contract = 100 share rule.
So if you have 5 option contracts that you bought at a ticker price of, say, 38$, your average cost or DCA would be 38 and your position size would be 500. This will not be 100% accurate, but will be close enough to give you a feel for your active P&L.
If you are trading futures, you will need to select "Futures Trading" and specify the TIck and Index costs. A cheat sheet has been provided in the tool tip for ES, Oil and MNQ. The default is set for ES1! mini futures at 0.25 ticks per 50$.
Important tips:
1. Select the date and time of your position (optional): This is optional but will provide you with the clearest and most accurate review of how your position has performed, including the highest and lowest (drawdown).
2. Select whether it is a share position or a futures position (this is required).
3. Select whether it is a long or short position (this is required).
4. Input your DCA and position size (this is required).
5. Most importantly, select the ticker your position is based in!
I have also prepared a quick start video which is linked below:
As always, please let me know your comments/questions and feedback for the indicator.
Thanks for checking it out and safe trades everyone!
[VWMA] Net Volume LibraryLibrary " Net Volume Library"
TODO: The underlying logic and function that calculates the net volume for the Net Volume indicator. Exposes the nv function and nvPoint fields for use.
nv(src, length, useVwma, offset, sigma, multHigh, multMed, multLow)
Parameters:
src : (float) The source price value
length : (int) The lookback length
useVwma : (bool) To use VWMA in the calculation or not
offset : (float) The ALMA offset value
sigma : (int) The ALMA sigma value
multHigh : (float) The multiplier high band
multMed : (float) The multiplier medium band
multLow : (float) The multiplier low band
Returns: Returns the calculated net volume for each band in an nvPoint object
nvPoint
Fields:
h2
h1
h
n
l
l1
l2
Gaps [Kioseff Trading]Hello!
This script "Gaps" is a continuation and improvement on a subset indicator included in the "Quartile Volume; Volume Aggregation; US Range Bars; Gaps)" script!
As advised by @thebearfib, the "Gaps" indicator is now standalone!
Features
Stat: Avg. Bars to Fill Up Gap
Stat: Avg. Bars to Fill Down Gap
Stat: Cumulative Up Gap % Increase
Stat: Cumulative Down Gap % Increase
Stat: Avg Up Gap % Increase
Stat: Avg Down Gap % Decrease
Nearest Unfilled Up Gaps and Down Gaps Displayed in Table
% Price Move Requirement, Including Dollar Amount, for Nearest Unfilled Gaps to Fill
Gaps Marked on Chart, Including Partially Filled Gaps and The % Amount a Partially Filled Gap Has Been Violated
Gaps Chart
The image above shows the data tables included in the indicator!
Settings
The image above shows various settings for the indicator!
The image above shows how partially filled gaps are marked using the default settings.
Exceeded price areas are shaded darker; however, by selecting the "No Partially Filled Gaps" option, the indicator will treat partially filled gaps differently.
The image above shows alternative behavior! Instead of the gap changing color it narrows in size.
The image above shows the indicator's behavior when selecting to show gap data in labels.
Therefore, when a gap is small and the box text is imperceptible, you can select to show the data in a label.
Additionally, you can select to display a "Gaps Chart".
The image above shows this feature enabled. The gaps chart shows the sequence of price gaps for the asset as candlesticks.
Thank you for checking this out; if you'd like other features included please let me know!
I11L - Risk Adjusted LeveragingThis trading system, called "I11L - Risk Adjusted Leveraging", is designed to manage trades based on the current market volatility relative to its historical average. The system calculates the target number of open trades based on the ATR (Average True Range) indicator and adjusts the leverage accordingly. The system opens and closes trades using a pyramiding approach, allowing multiple positions to be opened at the same time.
Here's a step-by-step explanation of the system:
1. Calculate the ATR with a 14-day period and normalize it by dividing it by the current closing price.
2. Calculate the 100-day simple moving average (SMA) of the normalized ATR.
3. Calculate the ratio of the normalized ATR to its 100-day SMA.
4. Determine the target leverage based on the inverse of the ratio (2 / ratio).
5. Calculate the target number of open trades by multiplying the target leverage by 5.
6. Plot the target number of open trades and the current number of open trades on the chart.
7. Check if there's an opportunity to buy (if the current number of open trades is less than the target) or close a trade (if the current number of open trades is more than the target plus 1).
8. If there's an opportunity to buy, open a long trade and add the trade's name to the openTrades array.
9. If there's an opportunity to close a trade and there are trades in the openTrades array, close the most recent trade by referencing the array and remove it from the array.
This system aims to capture trends in the market by dynamically adjusting the number of open trades and leverage based on the market's volatility. It uses an array to keep track of open trades, allowing for better control over the opening and closing of individual trades.
Vigilant Asset Allocation G4 Backtesting EngineThis script was based off of an idea that @CubanEmissary had so the description and some of the code that @CubanEmissary built on TradingView was used.
Vigilant Asset Allocation G4 (VAA G4) is a dual-momentum based investment strategy that aggressively monitors the market and reallocates portfolio funds based on the relative momentums of user-defined risk assets and safety assets. It was created by Wouter Keller and JW Keuning, based on their paper "Breadth Momentum and Vigilant Asset Allocation." In contrast to traditional dual momentum strategies, VAA G4 monitors the market itself through the two asset types. When all risk assets have positive momentum, the portfolio is allocated entirely into the risk asset with the strongest momentum At any other time, the portfolio is allocated entirely into the safety asset with the strongest momentum. The combination of breadth momentum with a very defensive reallocation trigger results in a strategy which captures alpha consistently.
The Strategy Rules:
1. Calculate each asset's momentum score on each monthly close:
momentumScore = (12*(currentMonthlyClose/lastMonthlyClose))+(4*(currentMonthlyClose/thirdLastMonthlyClose))+(2*(currentMonthlyClose/sixthLastMonthlyClose))+(currentMonthlyClose/twelvethLastMonthlyClose)-19
2. If all risk asset momentums are positive, allocate entire portfolio to the risk asset with the strongest momentum.
3. If any risk asset's momentum is negative, allocate entire portfolio to the safety asset with the strongest momentum.
4. Reevaluate at the end of each month.
Caveats:
1. It seems like TradingView only has limited price data for these tickers that are listed in the strategy. So it is best to start the strategy when they all have ample data (~ June 2nd, 2008)
2. This backtesting engine is basic and doesn't account for slippage and trading fees. So I implemented a basic "trading fee" input that will subtract a trading fee whenever the strategy makes a trade at the end of the month.
3. It is assumed in this engine that the trades will be made the exact second a new monthly bar opens up.
4. MUST USE ON MONTHLY CHART. It is hard-coded to work on monthly chart, if you open it on a daily chart , the Sharpe, Sortino, & CAGR calculations might not be right as well as the momentum score
Volume StrengthThe "Volume Strength" indicator
A technical analysis tool that helps traders evaluate the strength of the current market trend by measuring the cumulative volume over a specified period of time. It calculates the cumulative volume of a stock and divides it by the average cumulative volume over a specified period. This ratio is referred to as the "volume strength" and is plotted as a line on a chart. The indicator also provides overbought and oversold levels, which are horizontal lines on the chart that represent predetermined levels of overbought and oversold conditions.
The color of the volume strength line changes based on the current strength level. If the line is above the overbought level, it is colored red. If the line is below the oversold level, it is colored green. If the line is between the overbought and oversold levels, it is colored blue. The indicator also provides alerts for overbought and oversold conditions.
HOW TO USE:
1. Load the indicator onto the chart of the desired market. It works best in markets where volume data is available, such as stocks, futures, indices and cryptocurrencies. But you can also use it in the Forex market, where tick volume data will be used to calculate the indicator.
2. Adjust the length parameter to set the period for which the cumulative volume is calculated and the average cumulative volume is calculated.
3. Adjust the overbought and oversold levels as desired. These levels determine the horizontal lines that represent overbought and oversold conditions on the chart.
4. Observe the volume strength line and the overbought/oversold levels on the chart. If the volume strength line is red, the volume is considered overbought. If the line is green, the volume is considered oversold. If the line is blue, the volume is considered to be between the overbought and oversold levels. The indicator will provide alerts for overbought and oversold conditions. The indicator is an excellent tool for finding price-volume divergences.
SETTINGS:
Length: The period over which the cumulative volume is calculated and the average cumulative volume is calculated. The default is 14.
Overbought Level: The level at which the volume is considered overbought. The default is 1.2.
Oversold Level: The level at which the volume is considered oversold. The default is 0.8.
Please leave a comment & like :)
Volume+ (Time of Day)This volume indicator measures the volume for each bar at the time of day and displays the average and +1 standard deviation above that average.
The color intensity of the bar is increased when the volume exceeds +1 standard deviation.
See how on the chart that other than the early morning and late day volume, there are clearly key moments in the day at 7am, 10am, 10:30am, and 11am. See how on the second day, there were volume spikes before 10am, 10:30am and then more obviously just before 11am.
DataChartLibrary "DataChart"
Library to plot scatterplot or heatmaps for your own set of data samples
draw(this)
draw contents of the chart object
Parameters:
this : Chart object
Returns: current chart object
init(this)
Initialize Chart object.
Parameters:
this : Chart object to be initialized
Returns: current chart object
addSample(this, sample, trigger)
Add sample data to chart using Sample object
Parameters:
this : Chart object
sample : Sample object containing sample x and y values to be plotted
trigger : Samples are added to chart only if trigger is set to true. Default value is true
Returns: current chart object
addSample(this, x, y, trigger)
Add sample data to chart using x and y values
Parameters:
this : Chart object
x : x value of sample data
y : y value of sample data
trigger : Samples are added to chart only if trigger is set to true. Default value is true
Returns: current chart object
addPriceSample(this, priceSampleData, config)
Add price sample data - special type of sample designed to measure price displacements of events
Parameters:
this : Chart object
priceSampleData : PriceSampleData object containing event driven displacement data of x and y
config : PriceSampleConfig object containing configurations for deriving x and y from priceSampleData
Returns: current chart object
Sample
Sample data for chart
Fields:
xValue : x value of the sample data
yValue : y value of the sample data
ChartProperties
Properties of plotting chart
Fields:
title : Title of the chart
suffix : Suffix for values. It can be used to reference 10X or 4% etc. Used only if format is not format.percent
matrixSize : size of the matrix used for plotting
chartType : Can be either scatterplot or heatmap. Default is scatterplot
outliersStart : Indicates the percentile of data to filter out from the starting point to get rid of outliers
outliersEnd : Indicates the percentile of data to filter out from the ending point to get rid of outliers.
backgroundColor
plotColor : color of plots on the chart. Default is color.yellow. Only used for scatterplot type
heatmapColor : color of heatmaps on the chart. Default is color.red. Only used for heatmap type
borderColor : border color of the chart table. Default is color.yellow.
plotSize : size of scatter plots. Default is size.large
format : data representation format in tooltips. Use mintick.percent if measuring any data in terms of percent. Else, use format.mintick
showCounters : display counters which shows totals on each quadrants. These are single cell tables at the corners displaying number of occurences on each quadrant.
showTitle : display title at the top center. Uses the title string set in the properties
counterBackground : background color of counter table cells. Default is color.teal
counterTextColor : text color of counter table cells. Default is color.white
counterTextSize : size of counter table cells. Default is size.large
titleBackground : background color of chart title. Default is color.maroon
titleTextColor : text color of the chart title. Default is color.white
titleTextSize : text size of the title cell. Default is size.large
addOutliersToBorder : If set, instead of removing the outliers, it will be added to the border cells.
useCommonScale : Use common scale for both x and y. If not selected, different scales are calculated based on range of x and y values from samples. Default is set to false.
plotchar : scatter plot character. Default is set to ascii bullet.
ChartDrawing
Chart drawing objects collection
Fields:
properties : ChartProperties object which determines the type and characteristics of chart being plotted
titleTable : table containing title of the chart.
mainTable : table containing plots or heatmaps.
quadrantTables : Array of tables containing counters of all 4 quandrants
Chart
Chart type which contains all the information of chart being plotted
Fields:
properties : ChartProperties object which determines the type and characteristics of chart being plotted
samples : Array of Sample objects collected over period of time for plotting on chart.
displacements : Array containing displacement values. Both x and y values
displacementX : Array containing only X displacement values.
displacementY : Array containing only Y displacement values.
drawing : ChartDrawing object which contains all the drawing elements
PriceSampleConfig
Configs used for adding specific type of samples called PriceSamples
Fields:
duration : impact duration for which price displacement samples are calculated.
useAtrReference : Default is true. If set to true, price is measured in terms of Atr. Else is measured in terms of percentage of price.
atrLength : atrLength to be used for measuring the price based on ATR. Used only if useAtrReference is set to true.
PriceSampleData
Special type of sample called price sample. Can be used instead of basic Sample type
Fields:
trigger : consider sample only if trigger is set to true. Default is true.
source : Price source. Default is close
highSource : High price source. Default is high
lowSource : Low price source. Default is low
tr : True range value. Default is ta.tr