Unbounded RSIIntroducing the concept of "Unbounded RSI".
Instead of indexing the average gain and average loss, over the time period of interest, we leave the average gain and loss unbounded. Instead we "bound" them by difference of each and smoothen out this difference in an envelope using exponential average. See code.
What this does to traditional RSI concept?
No concept of "overbought", "oversold"
No concept of "60-40", "70-30" bands and arguments over it
No concept of "Range Shifts"
...
How to use it?
I am generally a positional long trader. So I present my version. Of course, I expect each individual who decide to use this concept, to come up with their ideas, based on their style and temperament.
The points below, I apply on a Weekly Timeframe Chart.
Once, we see a long consolidation and price breakout, we should be able to see "Green" histogram bars. These appear, once we have the stock at least 20% up from the 52WL and the "Unbounded RSI" has turned positive. This can be a good time to "enter" into the scrip.
The height of the bars are significant, since they essentially show, that the "gap" between the avg. gain and avg. loss is widening, indicating momentum. Swing trading can thrive in these environments I guess.
Falling heights indicate that gaps to close, though, the "gap can still be green". This means, momentum is now falling. Swing traders and "quick buck makers", would ideally book profits here. If the color of the bars still remain "Green" it indicates that momentum has reduced but still the gains are "more" than loss on the timeperiod selected.
Once the histogram turns red, it means that the gain is now lower than loss. An increasing height underground, means this loss is widening. Generally, this will corelate with price action (not necessarily volume).
At this time, exits should be looked for, may be also check other factors/indicators to decide, but surely the momentum and the gain% over the timeperiod selected has now gone.
Note for Pine Coders:
The source code can easily be modified to develop this concept further.
For example:
Use different smoothing algorithms
Remove 52WL condition and introduce new additional conditions
Instead of price change of the stock for gain/loss calculations, we use the concept of Relative Strength (RS, not RSI) and measuere the gain/loss based on a benchmark index . I intend to work on this concept, soon.
You shall see a variable "unboundedRSI" which is actually a ratio of the Avg. Gain / Avg. Loss. This ratio is not plotted. It is kept there, for future use.
Many more
스크립트에서 "ha溢价率"에 대해 찾기
CCOMET_Scanner_LibraryLibrary "CCOMET_Scanner_Library"
- A Trader's Edge (ATE)_Library was created to assist in constructing CCOMET Scanners
Loc_tIDs_Col(_string, _firstLocation)
TickerIDs: You must form this single tickerID input string exactly as described in the scripts info panel (little gray 'i' that
is circled at the end of the settings in the settings/input panel that you can hover your cursor over this 'i' to read the
details of that particular input). IF the string is formed correctly then it will break up this single string parameter into
a total of 40 separate strings which will be all of the tickerIDs that the script is using in your CCOMET Scanner.
Locations: This function is used when there's a desire to print an assets ALERT LABELS. A set Location on the scale is assigned to each asset.
This is created so that if a lot of alerts are triggered, they will stay relatively visible and not overlap each other.
If you set your '_firstLocation' parameter as 1, since there are a max of 40 assets that can be scanned, the 1st asset's location
is assigned the value in the '_firstLocation' parameter, the 2nd asset's location is the (1st asset's location+1)...and so on.
Parameters:
_string (simple string) : (string)
A maximum of 40 Tickers (ALL joined as 1 string for the input parameter) that is formulated EXACTLY as described
within the tooltips of the TickerID inputs in my CCOMET Scanner scripts:
assets = input.text_area(tIDset1, title="TickerID (MUST READ TOOLTIP)", tooltip="Accepts 40 TICKERID's for each
copy of the script on the chart. TEXT FORMATTING RULES FOR TICKERID'S:
(1) To exclude the EXCHANGE NAME in the Labels, de-select the next input option.
(2) MUST have a space (' ') AFTER each TickerID.
(3) Capitalization in the Labels will match cap of these TickerID's.
(4) If your asset has a BaseCurrency & QuoteCurrency (ie. ADAUSDT ) BUT you ONLY want Labels
to show BaseCurrency(ie.'ADA'), include a FORWARD SLASH ('/') between the Base & Quote (ie.'ADA/USDT')", display=display.none)
_firstLocation (simple int) : (simple int)
Optional (starts at 1 if no parameter added).
Location that you want the first asset to print its label if is triggered to do so.
ie. loc2=loc1+1, loc3=loc2+1, etc.
Returns: Returns 40 output variables in the tuple (ie. between the ' ') with the TickerIDs, 40 variables for the locations for alert labels, and 40 Colors for labels/plots
TickeridForLabelsAndSecurity(_ticker, _includeExchange)
This function accepts the TickerID Name as its parameter and produces a single string that will be used in all of your labels.
Parameters:
_ticker (simple string) : (string)
For this parameter, input the varible named '_coin' from your 'f_main()' function for this parameter. It is the raw
Ticker ID name that will be processed.
_includeExchange (simple bool) : (bool)
Optional (if parameter not included in function it defaults to false ).
Used to determine if the Exchange name will be included in all labels/triggers/alerts.
Returns: ( )
Returns 2 output variables:
1st ('_securityTickerid') is to be used in the 'request.security()' function as this string will contain everything
TV needs to pull the correct assets data.
2nd ('lblTicker') is to be used in all of the labels in your CCOMET Scanner as it will only contain what you want your labels
to show as determined by how the tickerID is formulated in the CCOMET Scanner's input.
InvalID_LblSz(_barCnt, _close, _securityTickerid, _invalidArray, _tablePosition, _stackVertical, _lblSzRfrnce)
INVALID TICKERIDs: This is to add a table in the middle right of your chart that prints all the TickerID's that were either not formulated
correctly in the '_source' input or that is not a valid symbol and should be changed.
LABEL SIZES: This function sizes your Alert Trigger Labels according to the amount of Printed Bars the chart has printed within
a set time period, while also keeping in mind the smallest relative reference size you input in the 'lblSzRfrnceInput'
parameter of this function. A HIGHER % of Printed Bars(aka...more trades occurring for that asset on the exchange),
the LARGER the Name Label will print, potentially showing you the better opportunities on the exchange to avoid
exchange manipulation liquidations.
*** SHOULD NOT be used as size of labels that are your asset Name Labels next to each asset's Line Plot...
if your CCOMET Scanner includes these as you want these to be the same size for every asset so the larger ones dont cover the
smaller ones if the plots are all close to each other ***
Parameters:
_barCnt (float) : (float)
Get the 1st variable('barCnt') from the Security function's tuple and input it as this functions 1st input
parameter which will directly affect the size of the 2nd output variable ('alertTrigLabel') that is also outputted by this function.
_close (float) : (float)
Put your 'close' variable named '_close' from the security function here.
_securityTickerid (string) : (string)
Throughout the entire charts updates, if a '_close' value is never registered then the logic counts the asset as INVALID.
This will be the 1st TickerID variable (named _securityTickerid) outputted from the tuple of the TickeridForLabels()
function above this one.
_invalidArray (array) : (array string)
Input the array from the original script that houses all of the invalidArray strings.
_tablePosition (simple string) : (string)
Optional (if parameter not included, it defaults to position.middle_right). Location on the chart you want the table printed.
Possible strings include: position.top_center, position.top_left, position.top_right, position.middle_center,
position.middle_left, position.middle_right, position.bottom_center, position.bottom_left, position.bottom_right.
_stackVertical (simple bool) : (bool)
Optional (if parameter not included, it defaults to true). All of the assets that are counted as INVALID will be
created in a list. If you want this list to be prited as a column then input 'true' here, otherwise they will all be in a row.
_lblSzRfrnce (string) : (string)
Optional (if parameter not included, it defaults to size.small). This will be the size of the variable outputted
by this function named 'assetNameLabel' BUT also affects the size of the output variable 'alertTrigLabel' as it uses this parameter's size
as the smallest size for 'alertTrigLabel' then uses the '_barCnt' parameter to determine the next sizes up depending on the "_barCnt" value.
Returns: ( )
Returns 2 variables:
1st output variable ('AssetNameLabel') is assigned to the size of the 'lblSzRfrnceInput' parameter.
2nd output variable('alertTrigLabel') can be of variying sizes depending on the 'barCnt' parameter...BUT the smallest
size possible for the 2nd output variable ('alertTrigLabel') will be the size set in the 'lblSzRfrnceInput' parameter.
PrintedBarCount(_time, _barCntLength, _barCntPercentMin)
The Printed BarCount Filter looks back a User Defined amount of minutes and calculates the % of bars that have printed
out of the TOTAL amount of bars that COULD HAVE been printed within the same amount of time.
Parameters:
_time (int) : (int)
The time associated with the chart of the particular asset that is being screened at that point.
_barCntLength (int) : (int)
The amount of time (IN MINUTES) that you want the logic to look back at to calculate the % of bars that have actually
printed in the span of time you input into this parameter.
_barCntPercentMin (int) : (int)
The minimum % of Printed Bars of the asset being screened has to be GREATER than the value set in this parameter
for the output variable 'bc_gtg' to be true.
Returns: ( )
Returns 2 outputs:
1st is the % of Printed Bars that have printed within the within the span of time you input in the '_barCntLength' parameter.
2nd is true/false according to if the Printed BarCount % is above the threshold that you input into the '_barCntPercentMin' parameter.
Table to filter trades per dayThis script contains a block of code that allows users to filter the total number of trades, loss trades, win trades and win rate per day in a table. This makes it easier to compare which days were profitable and which were not.
Be aware that this script can only be used in strategy scripts. To use the script, open it and copy every line from "START" to "STOP". Then, paste these lines at the very bottom of the strategy script that you want to attach it to.
The user has the ability to adjust the position of the table and customize the size of the text displayed.
If the user sets "Check when the trade:" to "Opened", the script will monitor when the trade opens and add it to the table once it has been closed. If "Check when the trade:" is set to "Closed", the script will track when the trade is closed and add it to the table once it has been closed.
It is recommended to run the script on the "Exchange" setting for more accurate results, even though a "Set the timezone" option is available. This will prevent discrepancies caused by daylight saving time changes.
Please note that the code will only work properly if you choose a daily timeframe or lower.
Turtle Trader StrategyTurtle Trader Strategy :
Introduction :
This strategy is based on the well known « Turtle Trader Strategy », that has proven itself over the years. It sends long and short signals with pyramid orders of up to 5, meaning that the strategy can trigger up to 5 orders in the same direction. Good risk and money management.
It's important to note that the strategy combines 2 systems working together (S1 and S2). Let’s describe the specific features of this strategy.
1/ Position size :
Position size is very important for turtle traders to manage risk properly. This position sizing strategy adapts to market volatility and to account (gains and losses). It’s based on ATR (Average True Range) which can also be called « N ». Its length is per default 20.
ATR(20) = (previous_atr(20)*19 + actual_true_range)/20
The number of units to buy is :
Unit = 1% * account/(ATR(20)*dollar_per_point)
where account is the actual account value and dollar_per_point is the variation in dollar of the asset with a 1 point move.
Depending on your risk aversion, you can increase the percentage of your account, but turtle traders default to 1%. If you trade contracts, units must be rounded down by default.
There is also an additional rule to reduce the risk if the value of the account falls below the initial capital : in this case and only in this case, account in the unit formula must be replace by :
account = actual_account*actual_account/initial capital
2/ Open a position :
2 systems are working together :
System 1 : Entering a new 20 day breakout
System 2 : Entering a new 55 day breakout
A breakout is a new high or new low. If it’s a new high, we open long position and vice versa if it’s a new low we enter in short position.
We add an additional rule :
System 1 : Breakout is ignored if last long/short position was a winner
System 2 : All signals are taken
This additional rule allows the trader to be in the major trends if the system 1 signal has been skipped. If a signal for system 1 has been skipped, and next candle is also a new 20 day breakout, S1 doesn’t give a signal. We have to wait S2 signal or wait for a candle that doesn’t make a new breakout to reactivate S1.
3/ Pyramid orders :
Turtle Strategy allows us to add extra units to the position if the price moves in our favor. I've configured the strategy to allow up to 5 orders to be added in the same direction. So if the price varies from 0.5*ATR(20) , we add units with the position size formula. Note that the value of account will be replaced by "remaining_account", i.e. the cash remaining in our account after subtracting the value of open positions.
4/ Stop Loss :
We set a stop loss at 1.5*ATR(20) below the entry price for longs and above the entry price for shorts. If pyramid units are added, the stop is increased/decreased by 0.5*ATR(20). Note that if SL is configured for a loss of more than 10%, we set the SL to 10% for the first entry order to avoid big losses. This configuration does not work for pyramid orders as SL moves by 0.5*ATR(20).
5/ Exit signals :
System 1 :
Exit long on a 10 day low
Exit short on a 10 day high
System 2 :
Exit long on a 20 day low
Exit short on a 20 day high
6/ What types of orders are placed ?
To enter in a position, stop orders are placed meaning that we place orders that will be automatically triggered by the signal at the exact breakout price. Stop loss and exit signals are also stop orders. Pyramid orders are market orders which will be triggered at the opening of the next candle to avoid repainting.
PARAMETERS :
Risk % of capital : Percentage used in the position size formula. Default is 1%
ATR period : ATR length used to calculate ATR. Default is 20
Stop ATR : Parameters used to fix stop loss. Default is 1.5 meaning that stop loss will be set at : buy_price - 1.5*ATR(20) for long and buy_price + 1.5*ATR(20) for short. Turtle traders default is 2 but 1.5 is better for cryptocurrency as there is a huge volatility.
S1 Long : System 1 breakout length for long. Default is 20
S2 Long : System 2 breakout length for long. Default is 55
S1 Long Exit : System 1 breakout length to exit long. Default is 10
S2 Long Exit : System 2 breakout length to exit long. Default is 20
S1 Short : System 1 breakout length for short. Default is 15
S2 Short : System 2 breakout length for short. Default is 55
S1 Short Exit : System 1 breakout length to exit short. Default is 7
S2 Short Exit : System 2 breakout length to exit short. Default is 20
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Pyramiding : Number of orders that can be passed in the same direction. Default is 5.
Important : Turtle traders don't trade crypto. For this specific asset type, I modify some parameters such as SL and Short S1 in order to maximize return while limiting drawdown. This strategy is the most optimal on BINANCE:BTCUSD in 1D timeframe with the parameters set per default. If you want to use this strategy for a different crypto please adapt parameters.
NOTE :
It's important to note that the first entry order (long or short) will be the largest. Subsequent pyramid orders will have fewer units than the first order. We've set a maximum SL for the first order of 10%, meaning that you won't lose more than 10% of the value of your first order. However, it is possible to lose more on your pyramid orders, as the SL is increased/decreased by 0.5*ATR(20), which does not secure a loss of more than 10% on your pyramid orders. The risk remains well managed because the value of these orders is less than the value of the first order. Remain vigilant to this small detail and adjust your risk according to your risk aversion.
Enjoy the strategy and don’t forget to take the trade :)
Opening RangeThe opening range or first 30 minutes of trading during the day sets the tone and becomes an important reference through the rest of the day. Price will react as it reaches the high and low of the opening range.
Backtesting has shown that the strategies based on the opening range have merit and provide an edge in trading. By not being aware of these points of reference you put yourself at risk.
In addition to the opening range, the distance from the high or low of the opening range plus the width of the opening range forms another important reference point.
Opening Range Rules.
Price must break out of the opening range in order to have a trending day. As long as price is inside the opening range, expect the trade to be choppy.
Once price leaves the opening range the market can begin to trend. However, before it trends most times it will retest the boundary of the opening range. This is a critical point, and a better than average entry for a position to join the trend. However, if price closes back inside the opening range watch out. Re-entry to the opening range has a high probability of going to the middle of the opening range, and a better than average probability of crossing the entire opening range.
In the above chart we can see price broke below the opening range then returned to retest the opening range before beginning a downward trend that delivered 175 pts on NQ.
Upon re-entering the opening range price tried to break down again but ultimately traveled up until it hit the 50% mark of the opening range.
Once a trend has begun the first target is the green line which is 1 width of the opening range outside of the opening range.
Once price broke out of the opening range to the upside, it came back to retest the opening range high, before beginning an uptrend that delivered 120 pts on NQ.
Z-Score Forecaster[SS]Hello everyone,
I just released a neat library for Forecasting stock and equities. In it, it has a couple of novel approaches to forecasting (namely, a Moving Average forecaster and a Z-Score Forecaster). These were accomplished applying basic theories on Autoregression, ARIMA modelling and Z-Score to make new approaches to forecasting.
This is one of the novel approaches, the Z-Score forecaster.
How this function works is it identifies the current trend over the duration of the Z-Score assessment period. So, if the Z-Score is being assessed over the previous 75 candles, it will identify the trend over the previous 75 candles. It will then plot out the forecasted levels according to the trend, up to a maximum of the max Z-Score the ticker has reached within its period. At that point, it will show a likely trend reversal.
Here is an example:
This shows that SPY may go to 475.42 before reversing, as 475.42 is the highest z-score that has been achieved in the current trend.
When it is in an uptrend, the forecast line will be green, when in a downtrend, it will be red.
The forecasting line is accomplished through pinescript's new polyline feature.
In addition to the line, you can also have the indicator plot out a forecast table. The Z-Score Forecast table was formatted in a similar way to ARIMA, where it makes no bias about trend, it simply plots out both ends of the spectrum. So, if an uptrend were to continue, it will list the various uptrend targets along the way, vice versa for downtrends.
It will also display what Z-Score these targets would amount to. Here is an example:
Looking at SPY on the daily, we can see that a likely upside target would be around 484 at just over 2 Standard Deviations (Z-Score).
Its not liklely to go higher than that because then we are getting into 3 and 4 standard deviations.
Remember, everything generally should be within 1 and -1 standard deviations of the mean. So if we look at the table, we can see that would be between 466 and 430.
Customization
You can customize the Z-Score length and source. You can also toggle off and on alerts. The alerts will pop up when a ticker is trading at a previous maximum or previous minimum.
I have also added a manual feature to plot the Z-Score SMA, which is simply the SMA over the desired Z-Score lookback time.
And that's the indicator!
If you are interested in the library, you can access it here .
Thanks for checking this out and leave your questions below!
Volume Profile Histogram [SS]I usually (and by usually, I mean the past year xD) release a significant indicator as my Christmas gift to the community on Christmas Eve. Last year, it was the Z-Score buy and sell signal; this year, it's something a little more conventional. So here is this year’s gift—hope you like it! 🎁
Seems like everyone has their take on Volume Profiles (aka SVP or VSP). I decided to create one, and in true Steversteves fashion, you can expect to find all the goodies that come with most of my stuff, including a volume profile presented in a bell-curve/histogram style (chart above) and statistical frequency tables showing the cases by ranges:
And it wouldn't be a true Steversteves indicator without some kind of ATR thing:
So, what does it do?
At the end of the day, it is a form of an SVP indicator. However, it is meant to operate on a larger scale, sorting volume in a traditional bell-curve style. In addition to displaying volume, it breaks down buying vs. selling volume. Selling volume is classified as such when the open is greater than close, while buying is when close is greater than open. This breakdown allows you to see the distribution, by price range, of where selling and buying occur.
This permits the indicator to provide 2 Points of Control (POCs). A POC is defined as an area of high volume activity. Because buying and selling volumes are broken down into two, we can identify areas with high selling and areas with high buying. Sometimes they coincide, sometimes they differ.
If we look at SQQQ, for example:
We can see that the bearish point of control is one point below the bullish POC. This is interesting because it essentially shows where people may be "panic selling" or setting their stop-outs. If SQQQ drops below 18.8, then it's likely to trigger panic selling, as indicated by the histogram.
Conversely, we can observe that traders tend to position long between $18 and $24. The POC is noted in the stats table and also displayed on the chart. Bullish POC is shown in purple, bearish in yellow. These, of course, can be toggled off.
The Frequency Table:
The frequency table shows how many observations were obtained in each price range. The histogram illustrates the cumulative volume traded, while the frequency simply counts how many cases occurred over the lookback period.
ATR Range Analytics by Volume:
The indicator also has the ability to display range analytics by volume. When you toggle on the range analytics by volume option, a range chart will appear:
www.tradingview.com
The range chart goes from the minimum recorded volume to the maximum recorded volume in the period, showing the average range and direction associated with this volume. This is crucial to pay attention to because not all stocks behave the same way.
For example, in the chart above (AMD), we can see that low volume produces a general bearish bias, and high volume produces a general bullish bias. However, if we look at the range analytics for SPY:
Low volume has the inverse effect. Low volume is associated with a more bullish bias, and high volume indicates a more bearish bias. In the ATR chart, the threshold volume to transition from bullish bias to bearish bias is approximately > 78,607,268 traded shares.
The Stats Table:
The stats table can be toggled on or off. It simply displays the POCs and the time range for the VSP. The default time range is 1 trading year (252 days), assuming you are on the daily timeframe. However, you can use this on any timeframe.
The percentages displayed in the histogram is the cumulative percent of buying and selling volume independently. So when you see the percentage on the selling histogram, its the percent of cumulative selling only. Same for the buying.
And that's the indicator! I hope you enjoy it. Let me know your thoughts. I hope you all have safe holidays, a Merry Christmas for you North Americans, and a Happy Christmas for you UKers, and whatever else you celebrate/care about and do! Safe trades, everyone, and enjoy your holidays! 🎁🎄🎄🎄⭐⭐⭐ 🕎 🕎 🕎
PB wTF50What kind of traders/investors are we?
We are trend followers, always on the lookout for the next big move in the market. Our scripts are meticulously crafted for higher timeframes (daily, weekly, monthly) aiming to capture the large market trends.
What does this script do?
The Pb wTF50 script simplifies the complex world of investing by colour-coding bars to indicate the trend direction. Green bars signify a bullish trend, red indicates a bearish trend, and a combination of both signifies a sideways market. This visual representation ensures investors can quickly gauge the market's direction and act accordingly.
How is the PB wTF50 produced?
The PB wTF50 script employs the simple moving averages (SMAs) as its backbone. Bars positioned above both the SMAs turn green, indicating a bullish trend. Conversely, bars below these SMAs turn red, signalling a bearish trend.
What is the best timeframe to use the script?
The PB wTF50 script is designed for the weekly timeframe. This ensures that traders and investors are aligned with the long-term market trend, filtering out the noise of shorter timeframes.
What makes this script unique?
The challenges of identifying the onset, progression, and culmination of trends are well-known in the investing community. The PbF script addresses these challenges head-on.
The PB wTF50 is not a lagging indicator. It is aligned with price movement, which helps investors and traders focus on what the asset’s price is doing. The asset’s price is the primary indicator of its direction.
Lagging indicators can be used alongside the PB wTF50 to confirm the asset’s direction.
The PBwTF50 continues to remain green during extended periods of bullish pullbacks and red during extended periods of bearish pullbacks. This helps investors and traders hold positions during corrections in the market.
When interacting with OB/OS zones, investors and traders are positioned to align with the trend and ignore short-term fluctuations against the trend.
The PB wTF50 can be used to enter additional positions, also known as compounding, when an asset’s price has pulled back into an OS zone, but the trend filter has remained green in a bull trend/OB zone, but the trend filter has remained red in a bear trend.
In essence, the PB wTF50 script is a trend filter that gives investors and traders the ability to apply discretion with the start and end of long-term trends as they develop.
Analytics Trading DashboardThe Analytics Trading Dashboard is a tool designed to bring key information about a company into an easy-to-view dashboard. The indicator combines Company Info, Fundamental Data, Price & Volume Data, and Analyst Recommendations all into one table.
Let’s dive into the details by section:
Company Info:
Name – Company name.
Market Cap – Total dollar market value of the company’s outstanding shares of stock.
Float Shares / Shares Outstanding – Floating shares indicate the number of shares available for trading. Outstanding shares are any shares held by shareholders and company insiders.
Sector – The stock's sector.
Industry Group - The industry group the stock belongs to.
IPO Date – Date on which a security is first publicly traded.
Dividend – The latest dividend amount if the company pays one.
Fundamental Data:
EPS Due – The date the company is set to report earnings next.
EPS Est Next Qtr – The earnings per share estimate for the upcoming report.
EPS Est % Chg (Current Qtr) – The earnings growth as a percentage based on the reported earnings of the same quarter from the previous year.
EPS % Chg (Last Qtr) – The earnings growth of the last reported quarter as a percentage versus the same quarter from the previous year.
Last Qtr EPS Surprise – The amount reported earnings beat or missed estimates from the last reported quarter.
Last 3 Qtrs Avg. EPS Growth – The average percentage growth of the last 3 earnings reports.
# Qtrs of EPS Acceleration – The number of consecutive quarters that EPS has increased.
Last 3 Qtrs Avg. Rev Growth – The average percentage growth of the last 3 revenue numbers reported.
# Qtrs of Rev Acceleration – The number of consecutive quarters that revenue has increased.
Gross Margin – Measures gross profit compared to revenue as a percentage.
Debt/Equity Ratio – The ratio of debt to equity, or financial leverage.
Price and Volume Data:
52 Week High – The highest high of the last 52 weeks.
% Off 52 Week High – The percentage the current price has decreased from the 52-week high.
Price vs. Moving Average – The distance as a percentage that the current price is from the selected moving average.
Average Volume – The average number of shares traded based on the selected lookback period.
Average $ Volume – The average of the total value of shares traded based on the selected lookback period.
Pocket Pivots – The number of pocket pivots that have occurred in the selected lookback period.
Up/Down Volume Ratio - A 50-day ratio derived by dividing total volume on up days by the total volume on down days.
ATR – The average true range shown as a dollar value and percentage of current price.
ADR – The average daily range shown as a dollar value and percentage of current price.
Beta - Beta is a measure of its volatility relative to the overall market, indicating how much the stock's price is expected to fluctuate compared to the market average.
Analyst Ratings:
Strong Buy – The number of strong buy recommendations.
Buy – The number of buy recommendations.
Hold – The number of hold recommendations.
Sell – The number of sell recommendations.
Strong Sell – The number of strong sell recommendations.
The Analytics Trading Dashboard also comes with the flexibility to select your preferred moving average for price and volume analysis, as well as to choose the specific lookback period for calculating the Average True Range (ATR), Average Daily Range (ADR), and Pocket Pivots lookback period.
Machine Learning: STDEV Oscillator [YinYangAlgorithms]This Indicator aims to fill a gap within traditional Standard Deviation Analysis. Rather than its usual applications, this Indicator focuses on applying Standard Deviation within an Oscillator and likewise applying a Machine Learning approach to it. By doing so, we may hope to achieve an Adaptive Oscillator which can help display when the price is deviating from its standard movement. This Indicator may help display both when the price is Overbought or Underbought, and likewise, where the price may face Support and Resistance. The reason for this is that rather than simply plotting a Machine Learning Standard Deviation (STDEV), we instead create a High and a Low variant of STDEV, and then use its Highest and Lowest values calculated within another Deviation to create Deviation Zones. These zones may help to display these Support and Resistance locations; and likewise may help to show if the price is Overbought or Oversold based on its placement within these zones. This Oscillator may also help display Momentum when the High and/or Low STDEV crosses the midline (0). Lastly, this Oscillator may also be useful for seeing the spacing between the High and Low of the STDEV; large spacing may represent volatility within the STDEV which may be helpful for seeing when there is Momentum in the form of volatility.
Tutorial:
Above is an example of how this Indicator looks on BTC/USDT 1 Day. As you may see, when the price has parabolic movement, so does the STDEV. This is due to this price movement deviating from the mean of the data. Therefore when these parabolic movements occur, we create the Deviation Zones accordingly, in hopes that it may help to project future Support and Resistance locations as well as helping to display when the price is Overbought and Oversold.
If we zoom in a little bit, you may notice that the Support Zone (Blue) is smaller than the Resistance Zone (Orange). This is simply because during the last Bull Market there was more parabolic price deviation than there was during the Bear Market. You may see this if you refer to their values; the Resistance Zone goes to ~18k whereas the Support Zone is ~10.5k. This is completely normal and the way it is supposed to work. Due to the nature of how STDEV works, this Oscillator doesn’t use a 1:1 ratio and instead can develop and expand as exponential price action occurs.
The Neutral (0) line may also act as a Support and Resistance location. In the example above we can see how when the STDEV is below it, it acts as Resistance; and when it’s above it, it acts as Support.
This Neutral line may also provide us with insight as towards the momentum within the market and when it has shifted. When the STDEV is below the Neutral line, the market may be considered Bearish. When the STDEV is above the Neutral line, the market may be considered Bullish.
The Red Line represents the STDEV’s High and the Green Line represents the STDEV’s Low. When the STDEV’s High and Low get tight and close together, this may represent there is currently Low Volatility in the market. Low Volatility may cause consolidation to occur, however it also leaves room for expansion.
However, when the STDEV’s High and Low are quite spaced apart, this may represent High levels of Volatility in the market. This may mean the market is more prone to parabolic movements and expansion.
We will conclude our Tutorial here. Hopefully this has given you some insight into how applying Machine Learning to a High and Low STDEV then creating Deviation Zones based on it may help project when the Momentum of the Market is Bullish or Bearish; likewise when the price is Overbought or Oversold; and lastly where the price may face Support and Resistance in the form of STDEV.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
Historical Volatility StudyThe goal of this script it to provide you an idea to forecast the future momentum by looking at historical volatility.
This chart has basically three parts.
1. Three lines are there. The multi color line represents the historical annualized volatility in terms of minimum look back period . The white line represents the historical annualized volatility in terms of medium term look back period . The green line represents the historical annualized volatility in terms of longer term look back period .
2. The back ground color has three components. Green zone is the zone where overall volatility is on the lower side. Red zone is the zone where overall volatility is on the higher side. Purple zone means fluctuating volatility.
3. The multi color line has three colors. Red color means volatility moving towards extreme low. Yellow means it is moving towards extreme high. Purple means it is in normal course of action.
This tool can be used as a confirmation tool with other studies to aid you to make better decisions. For example- look at the diagram below.
Make your thorough study before making any trading decision. Thanks.
Breakout Detector (Previous MTF High Low Levels) [LuxAlgo]The Breakout Detector (Previous MTF High Low Levels) indicator highlights breakouts of previous high/low levels from a higher timeframe.
The indicator is able to: display take-profit/stop-loss levels based on a user selected Win/Loss ratio, detect false breakouts, and display a dashboard with various useful statistics.
Do note that previous high/low levels are subject to backpainting, that is they are drawn retrospectively in their corresponding location. Other elements in the script are not subject to backpainting.
🔶 USAGE
Breakouts occur when the price closes above a previous Higher Timeframe (HTF) High or below a previous HTF Low.
On the advent of a breakout, the closing price acts as an entry level at which a Take Profit (TP) and Stop Loss (SL) are placed. When a TP or SL level is reached, the SL/TP box border is highlighted.
When there is a breakout in the opposite direction of an active breakout, previous breakout levels stop being updated. Not reaching an SL/TP level will result in a partial loss/win,
which will result in the box being highlighted with a dotted border (default). This can also be set as a dashed or solid border.
Detection of False Breakouts (default on) can be helpful to avoid false positives, these can also be indicative of potential trend reversals.
This indicator contains visualization when a new HTF interval begins (thick vertical grey line) and a dashboard for reviewing the breakout results (both defaults enabled; and can be disabled).
As seen in the example above, the active, open breakout is colored green/red.
You can enable the setting ' Cancel TP/SL at the end of HTF ', which will stop updating previous TP/SL levels on the occurrence of a new HTF interval.
🔶 DETAILS
🔹 Principles
Every time a new timeframe period starts, the previous high and low are detected of the higher timeframe. On that bar only there won't be a breakout detection.
A breakout is confirmed when the close price breaks the previous HTF high/low
A breakout in the same direction as the active breakout is ignored.
A breakout in the opposite direction stops previous breakout levels from being updated.
Take Profit/Stop Loss, partially or not, will be highlighted in an easily interpretable manner.
🔹 Set Higher Timeframe
There are 2 options for choosing a higher timeframe:
• Choose a specific higher timeframe (in this example, Weekly higher TF on a 4h chart)
• Choose a multiple of the current timeframe (in this example, 75 minutes TF on a 15 min chart - 15 x 5)
Do mind, that when using this option, non-standard TFs can give less desired timeframe changes.
🔹 Setting Win/Loss Levels
The Stop Loss (SL) / Take Profit (TP) setting has 2 options:
W%:L% : A fixed percentage is chosen, for TP and SL.
W:L : In this case L (Loss-part) is set through Loss Settings , W (Win-part) is calculated by multiplying L , for example W : L = 2 : 1, W will be twice as large as the L .
🔹 Loss Settings
The last drawing at the right is still active (colored green/red)
The Loss part can be:
A multiple of the Average True Range (ATR) of the last 200 bars.
A multiple of the Range Cumulative Mean (RCM).
The Latest Swing (with Length setting)
Range Cumulative Mean is the sum of the Candle Range (high - low) divided by its bar index.
🔹 False Breakouts
A False Breakout is confirmed when the price of the bar immediately after the breakout bar returns above/below the breakout level.
🔹 Dashboard
🔶 ALERTS
This publication provides several alerts
Bullish/Bearish Breakout: A new Breakout.
Bullish/Bearish False Breakout: False Breakout detected, 1 bar after the Breakout.
Bullish/Bearish TP: When the TP/profit level has been reached.
Bullish/Bearish Fail: When the SL/stop-loss level has been reached.
Note that when a new Breakout causes the previous Breakout to stop being updated, only an alert is provided of the new Breakout.
🔶 SETTINGS
🔹 Set Higher Timeframe
Option : HTF/Mult
HTF : When HTF is chosen as Option , set the Higher Timeframe (higher than current TF)
Mult : When Mult is chosen as Option , set the multiple of current TF (for example 3, curr. TF 15min -> 45min)
🔹 Set Win/Loss Level
SL/TP : W:L or W%:L%: Set the Win/Loss Ratio (Take Profit/Stop Loss)
• W : L : Set the Ratio of Win (TP) against Loss (SL) . The L level is set at Loss Settings
• W% : L% : Set a fixed percentage of breakout price as SL/TP
🔹 Loss Settings
When W : L is chosen as SL/TP Option, this sets the Loss part (L)
Base :
• RCM : Range Cumulative Mean
• ATR : Average True Range of last 200 bars
• Last Swing : Last Swing Low when bullish breakout, last Swing High when bearish breakout
Multiple : x times RCM/ATR
Swing Length : Sets the 'left' period ('right' period is always 1)
Colours : colour of TP/SL box and border
Borders : Style border when breakout levels stop being updated, but TP/SL is not reached. (Default dotted dot , other option is dashed dsh or solid sol )
🔹 Extra
Show Timeframe Change : Show a grey vertical line when a new Higher Timeframe interval begins
Detect False Outbreak
Cancel TP/SL at end of HTF
🔹 Show Dashboard
Location: Location of the dashboard (Top Right or Bottom Right/Left)
Size: Text size (Tiny, Small, Normal)
See USAGE/DETAILS for more information
RSI & Backed-Weighted MA StrategyRSI & MA Strategy :
INTRODUCTION :
This strategy is based on two well-known indicators that work best together: the Relative Strength Index (RSI) and the Moving Average (MA). We're going to use the RSI as a trend-follower indicator, rather than a reversal indicator as most are used to. To the signals sent by the RSI, we'll add a condition on the chart's MA, filtering out irrelevant signals and considerably increasing our winning rate. This is a medium/long-term strategy. There's also a money management method enabling us to reinvest part of the profits or reduce the size of orders in the event of substantial losses.
RSI :
The RSI is one of the best-known and most widely used indicators in trading. Its purpose is to warn traders when an asset is overbought or oversold. It was designed to send reversal signals, but we're going to use it as a trend indicator by increasing its length to 20. The RSI formula is as follows :
RSI (n) = 100 - (100 / (1 + (H (n)/L (n))))
With n the length of the RSI, H(n) the average of days closing above the open and L(n) the average of days closing below the open.
MA :
The Moving Average is also widely used in technical analysis, to smooth out variations in an asset. The SMA formula is as follows :
SMA (n) = (P1 + P2 + ... + Pn) / n
where n is the length of the MA.
However, an SMA does not weight any of its terms, which means that the price 10 days ago has the same importance as the price 2 days ago or today's price... That's why in this strategy we use a RWMA, i.e. a back-weighted moving average. It weights old prices more heavily than new ones. This will enable us to limit the impact of short-term variations and focus on the trend that was dominating. The RWMA used weights :
The 4 most recent terms by : 100 / (4+(n-4)*1.30)
The other oldest terms by : weight_4_first_term*1.30
So the older terms are weighted 1.30 more than the more recent ones. The moving average thus traces a trend that accentuates past values and limits the noise of short-term variations.
PARAMETERS :
RSI Length : Lenght of RSI. Default is 20.
MA Type : Choice between a SMA or a RWMA which permits to minimize the impact of short term reversal. Default is RWMA.
MA Length : Length of the selected MA. Default is 19.
RSI Long Signal : Minimum value of RSI to send a LONG signal. Default is 60.
RSI Short signal : Maximum value of RSI to send a SHORT signal. Default is 40.
ROC MA Long Signal : Maximum value of Rate of Change MA to send a LONG signal. Default is 0.
ROC MA Short signal : Minimum value of Rate of Change MA to send a SHORT signal. Default is 0.
TP activation in multiple of ATR : Threshold value to trigger trailing stop Take Profit. This threshold is calculated as multiple of the ATR (Average True Range). Default value is 5 meaning that to trigger the trailing TP the price need to move 5*ATR in the right direction.
Trailing TP in percentage : Percentage value of trailing Take Profit. This Trailing TP follows the profit if it increases, remaining selected percentage below it, but stops if the profit decreases. Default is 3%.
Fixed Ratio : This is the amount of gain or loss at which the order quantity is changed. Default is 400, which means that for each $400 gain or loss, the order size is increased or decreased by a user-selected amount.
Increasing Order Amount : This is the amount to be added to or subtracted from orders when the fixed ratio is reached. The default is $200, which means that for every $400 gain, $200 is reinvested in the strategy. On the other hand, for every $400 loss, the order size is reduced by $200.
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Important : A bot has been used to test the different parameters and determine which ones maximize return while limiting drawdown. This strategy is the most optimal on BITSTAMP:ETHUSD with a timeframe set to 6h. Parameters are set as follows :
MA type: RWMA
MA Length: 19
RSI Long Signal: >60
RSI Short Signal : <40
ROC MA Long Signal : <0
ROC MA Short Signal : >0
TP Activation in multiple ATR : 5
Trailing TP in percentage : 3
ENTER RULES :
The principle is very simple:
If the asset is overbought after a bear market, we are LONG.
If the asset is oversold after a bull market, we are SHORT.
We have defined a bear market as follows : Rate of Change (20) RWMA < 0
We have defined a bull market as follows : Rate of Change (20) RWMA > 0
The Rate of Change is calculated using this formula : (RWMA/RWMA(20) - 1)*100
Overbought is defined as follows : RSI > 60
Oversold is defined as follows : RSI < 40
LONG CONDITION :
RSI > 60 and (RWMA/RWMA(20) - 1)*100 < -1
SHORT CONDITION :
RSI < 40 and (RWMA/RWMA(20) - 1)*100 > 1
EXIT RULES FOR WINNING TRADE :
We have a trailing TP allowing us to exit once the price has reached the "TP Activation in multiple ATR" parameter, i.e. 5*ATR by default in the profit direction. TP trailing is triggered at this point, not limiting our gains, and securing our profits at 3% below this trigger threshold.
Remember that the True Range is : maximum(H-L, H-C(1), C-L(1))
with C : Close, H : High, L : Low
The Average True Range is therefore the average of these TRs over a length defined by default in the strategy, i.e. 20.
RISK MANAGEMENT :
This strategy may incur losses. The method for limiting losses is to set a Stop Loss equal to 3*ATR. This means that if the price moves against our position and reaches three times the ATR, we exit with a loss.
Sometimes the ATR can result in a SL set below 10% of the trade value, which is not acceptable. In this case, we set the SL at 10%, limiting losses to a maximum of 10%.
MONEY MANAGEMENT :
The fixed ratio method was used to manage our gains and losses. For each gain of an amount equal to the value of the fixed ratio, we increase the order size by a value defined by the user in the "Increasing order amount" parameter. Similarly, each time we lose an amount equal to the value of the fixed ratio, we decrease the order size by the same user-defined value. This strategy increases both performance and drawdown.
Enjoy the strategy and don't forget to take the trade :)
Goldmine Wealth Builder - DKK/SKKGoldmine Wealth Builder
Version 1.0
Introduction to Long-Term Investment Strategies: DKK, SKK1 and SKK2
In the dynamic realm of long-term investing, the DKK, SKK1, and SKK2 strategies stand as valuable pillars. These strategies, meticulously designed to assist investors in building robust portfolios, combine the power of Super Trend, RSI (Relative Strength Index), Exponential Moving Averages (EMAs), and their crossovers. By providing clear alerts and buy signals on a daily time frame, they equip users with the tools needed to make well-informed investment decisions and navigate the complexities of the financial markets. These strategies offer a versatile and structured approach to both conservative and aggressive investment, catering to the diverse preferences and objectives of investors.
Each part of this strategy provides a unique perspective and approach to the accumulation of assets, making it a versatile and comprehensive method for investors seeking to optimize their portfolio performance. By diligently applying this multi-faceted approach, investors can make informed decisions and effectively capitalize on potential market opportunities.
DKK Strategy for ETFs and Funds:
The DKK system is a strategy designed for accumulating ETFs and Funds as long-term investments in your portfolio. It simplifies the process of identifying trend reversals and opportune moments to invest in listed ETFs and Funds, particularly during bull markets. Here's a detailed explanation of the DKK system:
Objective: The primary aim of the DKK system is to build a long-term investment portfolio by focusing on ETFs and Funds. It facilitates the identification of stocks that are in the process of reversing their trends, allowing investors to benefit from upward price movements in these financial instruments.
Stock Selection Criteria: The DKK system employs specific criteria for selecting ETFs and Funds:
• 200EMA (Exponential Moving Average): The system monitors whether the prices of ETFs and Funds are consistently below the 200-day Exponential Moving Average. This is considered an indicator of weakness, especially on a daily time frame.
• RSI (Relative Strength Index): The system looks for an RSI value of less than 40. An RSI below 40 is often seen as an indication of a weak or oversold condition in a financial instrument.
Alert Signal: Once the DKK system identifies ETFs and Funds meeting these criteria, it provides an alert signal:
• Red Upside Triangle Sign: This signal is automatically generated on the daily chart of ETFs and Funds. It serves as a clear indicator to investors that it's an opportune time to accumulate these financial instruments for long-term investment.
It's important to note that the DKK system is specifically designed for ETFs and Funds, so it should be applied to these types of investments. Additionally, it's recommended to track index ETFs and specific types of funds, such as REITs (Real Estate Investment Trusts) and INVITs (Infrastructure Investment Trusts), in line with the DKK system's approach. This strategy simplifies the process of identifying investment opportunities within this asset class, particularly during periods of market weakness.
SKK1 Strategy for Conservative Stock Investment:
The SKK 1 system is a stock investment strategy tailored for conservative investors seeking long-term portfolio growth with a focus on stability and prudent decision-making. This strategy is meticulously designed to identify pivotal market trends and stock price movements, allowing investors to make informed choices and capitalize on upward market trends while minimizing risk. Here's a comprehensive overview of the SKK 1 system, emphasizing its suitability for conservative investors:
Objective: The primary objective of the SKK 1 system is to accumulate stocks as long-term investments in your portfolio while prioritizing capital preservation. It offers a disciplined approach to pinpointing potential entry points for stocks, particularly during market corrections and trend reversals, thereby enabling you to actively participate in bullish market phases while adopting a conservative risk management stance.
Stock Selection Criteria: The SKK 1 system employs a stringent set of criteria to select stocks for investment:
• Correction Mode: It identifies stocks that have undergone a correction, signifying a decline in stock prices from their recent highs. This conservative approach emphasizes the importance of seeking stocks with a history of stability.
• 200EMA (Exponential Moving Average): The system diligently analyses daily stock price movements, specifically looking for stocks that have fallen to or below the 200-day Exponential Moving Average. This indicator suggests potential overselling and aligns with a conservative strategy of buying low.
Trend Reversal Confirmation: The SKK 1 system doesn't merely pinpoint stocks in correction mode; it takes an extra step to confirm a trend reversal. It employs the following indicators:
• Short-term Downtrends Reversal: This aspect focuses on identifying the reversal of short-term downtrends in stock prices, observed through the transition of the super trend indicator from the red zone to the green zone. This cautious approach ensures that the trend is genuinely shifting.
• Super Trend Zones: These zones are crucial for assessing whether a stock is in a bullish or bearish trend. The system consistently monitors these zones to confirm a potential trend reversal.
Alert & Buy Signals: When the SKK 1 system identifies stocks that have reached a potential bottom and are on the verge of a trend reversal, it issues vital alert signals, aiding conservative investors in prudent decision-making:
• Orange Upside Triangle Sign: This signal serves as a cautious heads-up, indicating that a stock may be poised for a trend reversal. It advises investors to prepare funds for potential investment without taking undue risks.
• Green Upside Triangle Sign: This is the confirmation of a trend reversal, signifying a robust buy signal. Conservative investors can confidently enter the market at this point, accumulating stocks for a long-term investment, secure in the knowledge that the trend is in their favor.
In summary, the SKK 1 system is a systematic and conservative approach to stock investing. It excels in identifying stocks experiencing corrections and ensures that investors act when there's a strong indication of a trend reversal, all while prioritizing capital preservation and risk management. This strategy empowers conservative investors to navigate the intricacies of the stock market with confidence, providing a calculated and stable path toward long-term portfolio growth.
Note: The SKK1 strategy, known for its conservative approach to stock investment, also provides an option to extend its methodology to ETFs and Funds for those investors who wish to accumulate assets more aggressively. By enabling this feature in the settings, you can harness the SKK1 strategy's careful criteria and signal indicators to accumulate aggressive investments in ETFs and Funds.
This flexible approach acknowledges that even within a conservative strategy, there may be opportunities for more assertive investments in assets like ETFs and Funds. By making use of this option, you can strike a balance between a conservative stance in your stock portfolio while exploring an aggressive approach in other asset classes. It offers the versatility to cater to a variety of investment preferences, ensuring that you can adapt your strategy to suit your financial goals and risk tolerance.
SKK 2 Strategy for Aggressive Stock Investment:
The SKK 2 strategy is designed for those who are determined not to miss significant opportunities within a continuous uptrend and seek a way to enter a trend that doesn't present entry signals through the SKK 1 strategy. While it offers a more aggressive entry approach, it is ideal for individuals willing to take calculated risks to potentially reap substantial long-term rewards. This strategy is particularly suitable for accumulating stocks for aggressive long-term investment. Here's a detailed description of the SKK 2 strategy:
Objective: The primary aim of the SKK 2 strategy is to provide an avenue for investors to identify short-term trend reversals and seize the opportunity to enter stocks during an uptrend, thereby capitalizing on a sustained bull run. It acknowledges that there may not always be clear entry signals through the SKK 1 strategy and offers a more aggressive alternative.
Stock Selection Criteria: The SKK 2 strategy utilizes a specific set of criteria for stock selection:
1. 50EMA (Exponential Moving Average): It targets stocks that are trading below the 50-day Exponential Moving Average. This signals a short-term reversal from the top and indicates that the stock is in a downtrend.
2. RSI (Relative Strength Index): The strategy considers stocks with an RSI of less than 40, which is an indicator of weakness in the stock.
Alert Signals: The SKK 2 strategy provides distinct alert signals that facilitate entry during an aggressive reversal:
• Red Downside Triangle Sign: This signal is triggered when the stock is below the 50EMA and has an RSI of less than 40. It serves as a clear warning of a short-term reversal from the top and a downtrend, displayed on the daily chart.
• Purple Upside Triangle Sign: This sign is generated when a reversal occurs through a bullish candle, and the RSI is greater than 40. It signifies the stock has bottomed out from a short-term downtrend and is now reversing. This purple upside triangle serves as an entry signal on the chart, presenting an attractive opportunity to accumulate stocks during a strong bullish phase, offering a chance to seize a potentially favorable long-term investment.
In essence, the SKK 2 strategy caters to aggressive investors who are willing to take calculated risks to enter stocks during a continuous uptrend. It focuses on identifying short-term reversals and provides well-defined signals for entry. While this strategy is more aggressive in nature, it has the potential to yield substantial rewards for those who are comfortable with a higher level of risk and are looking for opportunities to build a strong long-term portfolio.
Introduction to Strategy Signal Information Chart
This chart provides essential information on strategy signals for DKK, SKK1, and SKK2. By quickly identifying "Buy" and "Alert" signals for each strategy, investors can efficiently gauge market conditions and make informed decisions to optimize their investment portfolios.
In Conclusion
These investment strategies, whether conservative like DKK and SKK1 or more aggressive like SKK2, offer a range of options for investors to navigate the complex world of long-term investments. The combination of Super Trend, RSI, and EMAs with their crossovers provides clear signals on a daily time frame, empowering users to make well-informed decisions and potentially capitalize on market opportunities. Whether you're looking for stability or are ready to embrace more risk, these strategies have something to offer for building and growing your investment portfolio.
The only Indicator you need
Maybe even a bit more than you need.
Gives you the option to color the bars based on Trading Sessions (Asia, London and US).
Session timings are based on UTC-4, but can be changed individually as needed.
Helps keeping a clear view of what happened during the Sessions without having to stack multiple Session Indicators, or having the background of your chart looking like a rainbow.
Keeping it plain and simple.
Also has the Option for plotting previous Weeks High and Low on Chart.
Found this to be helpful in determining Price behaviour in these Areas.
Also has an option to color the chart background for different time periods.
Helps marking News Releases on the Chart and avoid entering a Trade before major releases.
Has 2 presets for 30min / 2h into US Session and 2 Custom Timeperiods. All can of course be changed as you see fit.
Colors and plotting can obviously be changed as usual.
I am thankful for further Input and Ideas!
ATR SpikeALWAYS TRADE THE DIRECTION OF THE TREND
This indicator is useful for 5-minute Bank Nifty intraday trading.
It compares the Open-Close value for a 5-minute bar with the current ATR value.
When a bar has higher than the ATR value then it means that the current bar has a higher Open-Close than the ATR.
This means that after a period of dull action, some action has taken place.
And more action will follow in the direction of the immediate trend.
It signals the start of momentum which I look for as a intraday trader.
Feel free to experiment and change values as it suits you.
I use it on Bank Nifty only on 5 minute timeframe with 14 period ATR.
Liquidation Estimates (Real-Time) [LuxAlgo]The Liquidation Estimates (Real-Time) experimental indicator attempts to highlight real-time long and short liquidations on all timeframes. Here with liquidations, we refer to the process of forcibly closing a trader's position in the market.
By analyzing liquidation data, traders can gauge market sentiment, identify potential support and resistance levels, identify potential trend reversals, and make informed decisions about entry and exit points.
🔶 USAGE
Liquidation refers to the process of forcibly closing a trader's position. It occurs when a trader's margin account can no longer support their open positions due to significant losses or a lack of sufficient margin to meet the maintenance requirements.
Liquidations can be categorized as either a long liquidation or a short liquidation. A long liquidation is a situation where long positions are being liquidated, while short liquidation is a situation where short positions are being liquidated.
The green bars indicate long liquidations – meaning the number of long positions liquidated in the market. Typically, long liquidations occur when there is a sudden drop in the asset price that is being traded. This is because traders who were bullish on the asset and had opened long positions on the same will now face losses since the market has moved against them.
Similarly, the red bars indicate short liquidations – meaning the number of short positions liquidated in the futures market. Short liquidations occur when there is a sudden spike in the price of the asset that is being traded. This is because traders who were bearish on the asset and had opened short positions will now face losses since the market has moved against them.
Liquidation patterns or clusters of liquidations could indicate potential trend reversals.
🔹 Dominance
Liquidation dominance (Difference) displays the difference between long and short liquidations, aiming to help identify the dominant side.
🔹 Total Liquidations
Total liquidations display the sum of long and short liquidations.
🔹 Cumulative Liquidations
Cumulative liquidations are essentially the cumulative sum of the difference between short and long liquidations aiming to confirm the trend and the strength of the trend.
🔶 DETAILS
It's important to note that liquidation data is not provided on the Trading View's platform or can not be fetched from anywhere else.
Yet we know that the liquidation data is closely tied in with trading volumes in the market and the movement in the underlying asset’s price. As a result, this script analyzes available data sources extracts the required information, and presents an educated estimate of the liquidation data.
The data presented does not reflect the actual individual quantitative value of the liquidation data, traders and analysts shall look to the changes over time and the correlation between liquidation data and price movements.
The script's output with the default option values has been visually checked/compared with the liquidation chart presented on coinglass.com.
🔶 SETTINGS
🔹Liquidations Input
Mode: defines the presentation of the liquidations chart. Details are given in the tooltip of the option.
Longs Reference Price: defines the base price in calculating long liquidations.
Shorts Reference Price: defines the base price in calculating short liquidations.
🔶 RELATED SCRIPTS
Liquidation-Levels
Liquidity-Sentiment-Profile
Buyside-Sellside-Liquidity
Harmonic PatternsHarmonic Patterns
Harmonic Pattern utilizes the recognition of specific structures that possess distinct and consecutive Fibonacci ratio alignments that quantify and validate harmonic patterns. These patterns calculate the Fibonacci aspects of these price structures to identify highly probable reversal points in the financial markets. This methodology assumes that harmonic patterns, like many patterns and cycles in life, continually repeat.
Input Parameters:
Zigzag Setup:
These group of parameters are used to identify the swing points. The script also draws the Zigzag line and swing labels based on these parameters.
Harmonic Pattern Setup:
Ignore XD leg calculations – Optionally one can choose to ignore the XD leg calculation.
Fixed value leg offset % - Fixed value leg parameters are such parameters where single value Fibonacci value is used. This makes pattern identification very rare. To overcome this one can input % value which would be used to derive the range of Fibonacci numbers for pattern identification. E.g. XD leg in Bat pattern has fixed leg of 88.6%, If we input 5% as fixed value leg offset % then instead of fixed value of 88.6%, script calculates range as 88.6% + 5% (Value 1) and 88.6% - 5% (Value 2) and uses the same for pattern identification.
The script plots a diamond shape label on the last candle of the chart. The label has been enabled with a tooltip which shows number of patterns of each type along with the time where latest pattern is located.
This script covers harmonic patterns listed in the table below. Each harmonic pattern has bullish and bearish variants. All these patterns have 4 legs known as XABCD.
The Patterns have been configured as specified in the table below. Refer to Figure 1 and Figure 2 to understand how to read and interpret the table.
Figure 1
Figure 2
Market Internals (TICK, ADD, VOLD, TRIN, VIX)OVERVIEW
This script allows you to perform data transformations on Market Internals, across exchanges, and specify signal parameters, to more easily identify sentiment extremes.
Notable transformations include:
1. Cumulative session values
2. Directional bull-bear Ratios and Percent Differences
3. Data Normalization
4. Noise Reduction
This kind of data interaction is very useful for understanding the relationship between two mutually exclusive metrics, which is the essence of Market Internals: Up vs. Down. Even so, they are not possible with symbol expressions alone. And the kind of symbol expression needed to produce baseline data that can be reliably transformed is opaque to most traders, made worse by the fact that prerequisite symbol expressions themselves are not uniform across symbols. It's very nuanced, and if this last bit was confusing … exactly.
All this to say, rather than forcing that burden onto you, I've baked the baseline symbol expressions into the indicator so: 1) the transform functions consistently ingest the baseline data in the correct format and 2) you don't have to spend time trying to figure it all out. Trading is hard. There's no need to make it harder.
INPUTS
Indicator
Allows you to specify the base Market Internal and Exchange data to use. The list of Market Internals is simplified to their fundamental representation (TICK, ADD, VOLD, TRIN, VIX, ABVD, TKCD), and the list of Exchange data is limited to the most common (NYSE, NASDAQ, All US Stocks). There are also options for basic exchange combinations (Sum or Average of NYSE & NASDAQ).
Mode
Short for "Plot Mode", this is where you specify the bars style (Candles, Bars, Line, Circles, Columns) and the source value (used for single value plots and plot color changes).
Scale
This is the first and second data transformation grouped together. The default is to show the origin data as it might appear on a chart. You can then specify if each bar should retain it's unique value (Bar Value) or be added to a running total (Cumulative). You can also specify if you would like the data to remain unaltered (Raw) or converted to a directional ratio (Ratio) or a percentage (Percent Diff). These options determine the scale of the plot.
Both Ratio and Percent Diff. convert a given symbol into a positive or negative number, where positive numbers are bullish and negative numbers are bearish.
Ratio will divide Bull values by Bear values, then further divide -1 by the quotient if it is less than 1. For example, if "0.5" was the quotient, the Ratio would be "-2".
Percent Diff. subtracts Bear values from Bull values, then divides that difference by the sum of Bull and Bear values multiplied by 100. If a Bull value was "3" and Bear value was "7", the difference would be "-4", the sum would be "10", and the Percent Diff. would be "-40", as the difference is both bearish and 40% of total.
Ratio Norm. Threshold
This is the third data transformation . While quotients can be less than 1, directional ratios are never less than 1. This can lead to barcode-like artifacts as plots transition between positive and negative values, visually suggesting the change is much larger than it actually is. Normalizing the data can resolve this artifact, but undermines the utility of ratios. If, however, only some of the data is normalized, the artifact can be resolved without jeopardizing its contextual usefulness.
The utility of ratios is how quickly they communicate proportional differences. For example, if one side is twice as big as the other, "2" communicates this efficiently. This necessarily means the numerical value of ratios is worth preserving. Also, below a certain threshold, the utility of ratios is diminished. For example, an equal distribution being represented as 0, 1, 1:1, 50/50, etc. are all equally useful. Thus, there is a threshold, above which we want values to be exact, and below which the utility of linear visual continuity is more important. This setting accounts for that threshold.
When this setting is enabled, a ratio will be normalized to 0 when 1:1, scaled linearly toward the specified threshold when greater than 1:1, and then retain its exact value when the threshold is crossed. For example, with a threshold of "2", 1:1 = 0, 1.5:1 = 1, 2:1 = 2, 3:1 = 3, etc.
With all this in mind, most traders will want to set the ratios threshold at a level where accuracy becomes more important than visual continuity. If this level is unknown, "2" is a good baseline.
Reset cumulative total with each new session
Cumulative totals can be retained indefinitely or be reset each session. When enabled, each session has its own cumulative total. When disabled, the cumulative total is maintained indefinitely.
Show Signal Ranges
Because everything in this script is designed to make identifying sentiment extremes easier, an obvious inclusion would be to not only display ranges that are considered extreme for each Market Internal, but to also change the color of the plot when it is within, or beyond, that range. That is exactly what this setting does.
Override Max & Min
While the min-max signal levels have reasonable defaults for each symbol and transformation type, the Override Max and Override Min options allow you to … (wait for it) … override the max … and min … signal levels. This may be useful should you find a different level to be more suitable for your exact configuration.
Reduce Noise
This is the fourth data transformation . While the previous Ratio Norm. Threshold linearly stretches values between a threshold and 0, this setting will exponentially squash values closer to 0 if below the lower signal level.
The purpose of this is to compress data below the signal range, then amplify it as it approaches the signal level. If we are trying to identify extremes (the signal), minimizing values that are not extreme (the noise) can help us visually focus on what matters.
Always keep both signal zones visible
Some traders like to zoom in close to the bars. Others prefer to keep a wider focus. For those that like to zoom in, if both signals were always visible, the bar values can appear squashed and difficult to discern. For those that keep a wider focus, if both signals were not always visible, it's possible to lose context if a signal zone is vertically beyond the pane. This setting allows you to decide which scenario is best for you.
Plot Colors
These define the default color, within signal color, and beyond signal color for Bullish and Bearish directions.
Plot colors should be relative to zero
When enabled, the plot will inherit Bullish colors when above zero and Bearish colors when below zero. When disabled and Directional Colors are enabled (below), the plot will inherit the default Bullish color when rising, and the default Bearish color when falling. Otherwise, the plot will use the default Bullish color for all directions.
Directional colors
When the plot colors should be relative to zero (above), this changes the opacity of a bars color if moving toward zero, where "100" percent is the full value of the original color and "0" is transparent. When the plot colors are NOT relative to zero, the plot will inherit Bullish colors when rising and Bearish colors when falling.
Differentiate RTH from ETH
Market Internal data is typically only available during regular trading hours. When this setting is enabled, the background color of the indicator will change as a reminder that data is not available outside regular trading hours (RTH), if the chart is showing electronic trading hours (ETH).
Show zero line
Similar to always keeping signal zones visible (further up), some traders prefer zooming in while others prefer a wider context. This setting allows you to specify the visibility of the zero line to best suit your trading style.
Linear Regression
Polynomial regressions are great for capturing non-linear patterns in data. TradingView offers a "linear regression curve", which this script is using as a substitute. If you're unfamiliar with either term, think of this like a better moving average.
Symbol
While the Market Internal symbol will display in the status line of the indicator, the status line can be small and require more than a quick glance to read properly. Enabling this setting allows you to specify if / where / how the symbol should display on the indicator to make distinguishing between Market Internals more efficient.
Speaking of symbols, this indicator is designed for, and limited to, the following …
TICK - The TICK subtracts the total number of stocks making a downtick from the total number of stocks making an uptick.
ADD - The Advance Decline Difference subtracts the total number of stocks below yesterdays close from the total number of stocks above yesterdays close.
VOLD - The Volume Difference subtracts the total declining volume from the total advancing volume.
TRIN - The Arms Index (aka. Trading Index) divides the ratio of Advancing Stocks / Volume by the ratio of Declining Stocks / Volume. Given the inverse correlation of this index to market movement, when transforming it to a Ratio or Percent Diff., its values are inverted to preserve the bull-bear sentiment of the transformations.
VIX - The CBOE Volatility Index is derived from SPX index option prices, generating a 30-day forward projection of volatility. Given the inverse correlation of this index to market movement, when transforming it to a Ratio or Percent Diff., its values are inverted and normalized to the sessions first bar to preserve the bull-bear sentiment of the transformations. Note: If you do not have a Cboe CGIF subscription , VIX data will be delayed and plot unexpectedly.
ABVD - The Above VWAP Difference is an unofficial index measuring all stocks above VWAP as a percent difference. For the purposes of this indicator (and brevity), TradingViews PCTABOVEVWAP has has been shortened to simply be ABVD.
TKCD - The Tick Cumulative Difference is an unofficial index that subtracts the total number of market downticks from the total number of market upticks. Where "the TICK" (further up) is a measurement of stocks ticking up and down, TKCD is a measurement of the ticks themselves. For the purposes of this indicator (and brevity), TradingViews UPTKS and DNTKS symbols have been shorted to simply be TKCD.
INSPIRATION
I recently made an indicator automatically identifying / drawing daily percentage levels , based on 4 assumptions. One of these assumptions is about trend days. While trend days do not represent the majority of days, they can have big moves worth understanding, for both capitalization and risk mitigation.
To this end, I discovered:
• Article by Linda Bradford Raschke about Capturing Trend Days.
• Video of Garrett Drinon about Trend Day Trading.
• Videos of Ryan Trost about How To Use ADD and TICK.
• Article by Jason Ruchel about Overview of Key Market Internals.
• Including links to resources outside of TradingView violates the House Rules, but they're not hard to find, if interested.
These discoveries inspired me adopt the underlying symbols in my own trading. I also found myself wanting to make using them easier, the net result being this script.
While coding everything, I also discovered a few symbols I believe warrant serious consideration. Specifically the Percent Above VWAP symbols and the Up Ticks / Down Ticks symbols (referenced as ABVD and TKCD in this indicator, for brevity). I found transforming ABVD or TKCD into a Ratio or Percent Diff. to be an incredibly useful and worthy inclusion.
ABVD is a Market Breadth cousin to Brian Shannon's work, and TKCD is like the 3rd dimension of the TICKs geometry. Enjoy.
Educational Inidicators - Ichimoku CloudThis indicator is part of the Indicator Educational Series, intended to help newer traders understand and interact with various indicators. The goal is to allow users to gain a stronger understanding of an indicator's underlying philosophy, and visually see how changes to an indicator's parameters affects the trades suggested by that indicator.
The scripts in this series are all open source, with the code broken up into logical section and notated so beginner users can also understand some PineScript fundamentals.
Please understand that no indicator presented in and of itself constitutes a complete trading strategy. Rather, this series is to help users determine which indicators make sense to them, and which ones to combine to create their own trading strategy. All material presented is purely for educational purposes.
Presented here is the Ichimoku Cloud.
The Ichimoku Cloud was developed by Goichi Hosada, and first published in the late 1960s. It is used by traders to understand price momentum, and help forecast future price movements.
The indicator at its core can be understood from four component parts:
The Conversion Line - An average of the highest and lowest price in a given window. Typically, this is a "fast" average, and as such, this line has the lowest period
The Base Line - An average of the highest and lowest price in a given window. This is a "slower" average than the Conversion Line, and as such should have a larger period than the Conversion Line
Leading Span A - The average of the Conversion Line and the Base Line
[*}Leading Span B - An average of the highest and lowest price in a given window. This is the "slowest" average of all three, and as such should have the largest period
When plotted, the Conversion Line (orange by default), Base Line (purple by default), Leading Span A (blue by default), and Leading Span B (red by defaults) are all drawn on the chart along with the price candles. The area between the Leading Span A and Leading Span B lines are also shaded depending on which of the two lines is greater: whenever Leading Span A is greater the area is shaded positively (blue by default), whenever Leading Span B is greater the area is shaded negatively (red by defaults).
One interesting feature of the Ichimoku Cloud is that it drawn a certain number of candles forward. What this means is that where the cloud is drawn on the chart is reflective of prices that have occurred a number of candles in the past. This is done intentionally to help traders see how the current price is moving in relation to historical price movements on the asset.
See below for how the indicators look in their default colors on the chart
These indicators can then be used to start analyzing the price movement, and making trade decisions.
The first inference we can make is the momentum of the price. Since the lines are drawn from averages of varying speeds, the shaded area between the Leading Span lines can tell us whether the momentum is bullish (up) or bearish (down).
Whenever Leading Span A, the faster of the two lines, is above Leading Span B, that means that price is moving upward faster than it typically has, ergo we are in Bullish Momentum. On the chart, this is indicated in two ways:
The area is shaded positively (blue by default)
A green upward triangle is added to the chart to indicate where the momentum first turned Bullish
Whenever Leading Span A is below Leading Span B, that means that price is moving downward faster than it typically has, ergo we are in Bearish Momentum. On the chart, this is indicated in two ways:
The area is shaded negatively (red by default)
A red downward triangle is added to the chart to indicate where the momentum first turned Bearish
The next inference we can make is possible trading points. When we're in a period of momentum, as determined above, we know that price is going up or down, depending on the momentum we're in. We can then use the Conversion Line, Base Line, and the Price itself to confirm a good trade price.
When the asset is in Bullish Momentum, and the Conversion Line, our fastest average, is above the Base Line, our mid speed average, we know that the price is coming up quickly in the short term. When the Base Line and current Price are also above the cloud, then we have triple confirmation that price is going up, and we should enter a Long position. On the chart, this point is indicated with a green flag.
When the asset is in Bearish Momentum, and the Conversion Line is below the Base Line, we know that the price is going down quickly in the short term. When the Base Line and current Price are also below the cloud, then we have triple confirmation that price is going down, and we should enter a Short position. On the chart, this point is indicated with a red flag.
The script presented here also allows users to customize the various parameters of the Ichimoku Cloud, and visually see how analysis is affected by these changes. This is designed to allow users to modify parameters as they see fit, within certain constraints, to find the best set for them. The lines, cloud, and chart indicators will all update automatically with the users' inputs.
Machine Learning: MFI Heat Map [YinYangAlgorithms]Overview:
MFI Heat Maps are a visually appealing way to display the values of 29 different MFIs at the same time while being able to make sense of it. Each plot within the Indicator represents a different MFI value. The higher you get up, the longer the length that was used for this MFI. This Indicator also features the use of Machine Learning to help balance the MFI levels. It doesn’t solely rely upon Machine Learning but instead incorporates a growing length MFI averaged with the Machine Learning MFI at any given index.
For instance, say we are calculating the 10th plot from the bottom, the MFI would be an average of:
MFI(source, 11)
Machine Learning MFI at Index of 10
We do it this way as they both help smooth each other out without relying solely on just one calculation method.
Due to plot limitations, you are capped at 28 Plot Amounts within this indicator, but that is still quite a bit of information you can glean from a Heat Map.
The Machine Learning used in this indicator is of the K-Nearest Neighbor (KNN). It uses a Fast and Slow MFI calculation then sorts through them over Machine Learning Length and calculates the differences between them. It then slices off KNN length to create our Max/Min Distances allotted. It adds the average between Fast and Slow MFIs to a Viable Distances array if their distances are within the KNN Min/Max distance. It then averages all distances in the Viable Distances array and returns the result.
The result of the KNN Function is saved to another ML Data array whose length is that of Plot Amount (Heat Map Size). This way each Index of the ML Data array can be indexed according to the Heat Map Size.
The Average of the ML Data array is the MFI line (white) that you’ll see plotted on the Indicator. There is also the SMA of the MFI Average (orange) which is likewise plotted. These plots allow you to visualize where the ML MFI is sitting and can potentially be useful for seeing when the MFI Average and SMA cross over and under each other.
We’ve heard many people talk highly of RSI, but sadly not too many even refer to MFI. MFI oftentimes may be overlooked, especially with new traders who may not even know what it is. Essentially MFI is an RSI but it also incorporates Volume into its calculations, which in our opinion leads to a more accurate reading; afterall, what is price movement without Volume.
Tutorial:
You may be thinking, this Indicator looks appealing to the eye, but how do I benefit from it trading wise?
Before we get into our visual examples, let's talk briefly about what makes Heat Maps in general a useful tool for trading. Heat Maps give us the ability to visualize and understand lots of data while removing the clutter. We can understand the data of 29 different MFIs without having to look at and decipher 29 different MFI plots. When you overlay too many MFI lines on top of each other, they can be very difficult to read and oftentimes end up actually hindering your Technical Analysis. For this reason, we have a simple solution to this problem; Heat Maps. This MFI Heat Map allows you to easily know (in a relative %) what the MFI level is for varying lengths. For Instance, the First (bottom) plot indexes an MFI of (K(0) (loop of Plot Amount) + Smoothing Length (default 1)) = 1. Since this is indexing (usually) a very low length, it will change much quicker. Whereas the Last (top) plot indexes an MFI of (K(27) (loop of Plot Amount) + Smoothing Length (default 1)) = 28. This is indexing a much higher length of MFI which results in the MFI the higher you go up in the Heat Map to move much slower.
Heat Maps give us the ability to see changes happening over multiple MFIs at the same time, which can be very useful for seeing shifts in MFI / Momentum. Remember, MFI incorporates Volume, so even if the price goes up a lot, if there was low volume, the MFI won’t move as much as an RSI would. However, likewise, if there is high volume but low price movement, the MFI will move slightly more than the RSI.
Heat Maps change color based on their MFI level. If the MFI is >= 90 it is HOT (red), if the MFI <= 9 it is COLD (teal, think of ICE). Green represents an MFI of 50-59 and Dark Blue represents an MFI of 40-49. Green and Dark blue are the most common colors as all the others are more ‘Extreme’ MFI levels.
Okay, time to get to the Examples :
Since there is so much going on in Heat Maps, we’ve decided to focus this tutorial to this specific area and talk about individual locations before talking about it as a whole.
If you refer to the example above where there are 2 white circles; these white circles are highlighting a key location you’ll be wanting to identify within your Heat Maps, many things are happening here:
The MFI crossed over the SMA (bullish).
The Heat Map started changing from mid/dark Blue (30-50 MFI) to Green (50-59 MFI) around the midline (the 50% dashed like).
The Lower levels of the Heat Map are turning Yellow/Orange/Red (60-100 MFI).
The Upper Levels of the Heat Map are still Light Blue - Green (10-50 MFI).
The 4 Key points above, all point towards potential Bullish Momentum changes. You’re likely wondering, but why? Let's discuss about each one in more specific detail:
1. The MFI crossed over the SMA (bullish): What this tells us is that the current MFI Average is now greater than its average over the last (default) 16 bars. This means there's been a large amount of Money Flow (Price and Volume) recently (subjectively based on the last (default) 16 average). This is one of the leading Bullish / Bearish signals you will see within this Indicator. You can enable Signals within the Settings and/or even add Alerts for when these crossings occur.
2. The Heat Map started changing from mid/dark Blue (30-50 MFI) to Green (50-59 MFI) around the midline (the 50% dashed like): This shows us that the index’s in the mid (if using all 28 heat map plots it would be at 14) has already received some of this momentum change. If you look at the second white circle (right), you’ll also notice the higher MFI plot indexes are also green. This is because since their length is long they still have some momentum and strength from the first white circle (left). Just because the first white circle failed in its bullish push, doesn’t mean it didn’t achieve momentum that would later on help to push the price up.
3. The Lower levels of the Heat Map are turning Yellow/Orange/Red (60-100 MFI): It occurred somewhat in the left white circle, but mainly in the right white circle. This shows us the MFI is very high on the lower lengths, this may lead to the current, middle and higher length MFIs following suit soon. Remember it has to work its way up, the higher levels can’t go red unless the lower levels go red first and the higher levels can also lag quite a bit behind and take awhile to catch up, this is normal, expected and meant to happen. Vice versa is also true with getting higher levels to go cold (light teal (think of ICE)).
4. The Upper Levels of the Heat Map are still Light Blue - Green (10-50 MFI): You might think at first that this is a bad thing, but it's not! Remember you want to be Fearful when others are Greedy and Greedy when others are Fearful! You don’t want to buy when the higher levels have a high MFI, you want to buy when you see the momentum pushing up in the lower MFI levels (getting yellow/orange/red in the low levels) while it is still Cold in the higher levels (BLUE OR GREEN, nothing higher than green as it is already slightly too high). There will be many times that it is Yellow or possibly Orange in the high levels and the bullish push still happens, but this is much more risky! The key to trading is to minimize risks while maximizing potential.
Hopefully now you’re getting an idea of how to spot potential bullish momentum changes, but what about bearish momentum changes? Technically they are the exact opposite, so we don’t need to go into as much detail, but lets still take a look at a few examples:
In the example above we marked the 3 times where it was displaying overly bullish characteristics. We marked the bullish momentum occurring with arrows. If you look closely at the start of the arrow to where it finishes, you’ll notice how the heat (HOT)(RED) works its way up from the lower levels to the higher levels. We then see the MFI to SMA cross under. In all 3 of these examples the heat made it all the way to the top of the chart. These are all very bearish signals that represent a bearish momentum movement that may occur soon.
Also, please note, the level the MFI is at DOES matter! That line isn’t there simply for you to see when there are crosses over and under. The MFI is considered to be Overbought when it is greater than 70 (the upper white dashed line, it is just formatted to be on a different scale cause there are 28 plots, but it represents 70). The MFI is considered to be Oversold when it is less than 30 (the lower white dashed line).
If we look to the left a little here where a big drop in price occurred shortly after our MFI and SMA crossed, would we have been able to identify it using the Heat Maps? Likely, No. There was some color change in the lower levels a few bars prior that went yellow/orange/red but before this cross happened they all went back to Dark Blue. In the middle section when the cross happened it was only Green and Yellow and in the upper section we are Blue. This would be a very risky trade to go on as the only real Bearish Indication was the MFI to SMA cross under. Remember, you want to reduce risk, you don’t want to simply trade on everytime the MFI and SMA cross each other or you’ll be getting yourself into many risky trades based on false signals.
Based on what you’ve learned above, can you see the signs that are indicating where this white circle may have potential for a bullish momentum change?
Now that we are more zoomed in, you may also be noticing there are colors to the price bars. This can be disabled in the settings, but just so you know what they mean, let’s zoom in a little more and talk about it.
We’ve condensed the Indicator a bit so you can see the bars better here. The colors that are displayed on these bars are the Heat Map value for your MFI (the white line in the Indicator). This way you can better see when the Price is Hot and Cold. As you may see while looking, the colors generally go from cold to hot when bullish momentum is happening and hot to cold when bearish momentum is happening. We don’t recommend solely looking at the bars as indicators to MFI momentum change, as seeing the Heat Map will give you much more data; however it can be nice to see the Heat Map projected on the bars rather than trying to eyeball it yourself or hover over each bar specifically to see their levels.
We will conclude our Tutorial here. Hopefully this has given you some insight to how useful Heat Maps can be and why it works well with a Machine Learning (KNN) Model applied to the MFI.
PLEASE NOTE: You can adjust the line width for the Heat Map within the settings. If you condense the Indicator a lot or have a small screen, likely use a length of 1-2. If you have it stretched out or a large screen, a length of 2-3 will work nice. You just don’t want to have the lines overlapping or it defeats the purpose of a Heat Map. Also, the bigger the linewidth, generally you’ll want to increase the Transparency within the Settings also as it can get quite bright and hurt your eyes over time.
Settings:
MFI:
Show MFI and SMA Crossing Signals: MFI and SMA Crossing is one of the leading Bullish and Bearish Signals in this Indicator. You can also add alerts for these signals.
Plot Amount: How many plots are used in this Heat Map. (2 - 28).
Source: The Source to use in all MFI calculations.
Smooth Initial MFI Length: How much to smooth the Fast and Slow MFI calculation by. 1 = No smoothing.
MFI SMA Length: What length we smooth the MFI Average over to get our MFI SMA.
Machine Learning:
Average MFI data by adding a lookback to the Source: While populating our Heat Map with the MFI's, should use use the Source each MFI Length increase or should we also lookback a Source each MFI Length Increase.
KNN Distance Requirement: To be a valid KNN, it needs to abide by a Distance calculation. Generally only Max is used, but you can change it if it suits your trading style better.
Machine Learning Length: How much ML data should we store? The longer the length generally the smoother the result; which may not be as accurate for something like a Heat Map, so keeping this relatively low may lead to more accurate results.
KNN Length: How many KNN are used in the slice to calculate max/min distance allowed.
Fast Length: Fast MFI length used in KNN to calculate distances by comparing its distance with the Slow MFI Length.
Slow Length: Slow MFI length used in KNN to calculate distances by comparing its distance with the Fast MFI Length.
Smoothing Length: When populating our Heat Map, at what length do we start our MFI calculations with (A Higher value with result in a slower and more smoothed MFI / Heat Map).
Colors:
Change Bar Color: Change bar colors to MFI Avg Color.
Heat Map Transparency: If there isn't any transparency it can be a little hard on the eyes. The Greater the Line Width, generally the more transparency you'll want for your eyes.
Line Width: Set how wide the Heat Map lines are
MFI 90-100 Color: Color when the MFI is between these levels.
MFI 80-89 Color: Color when the MFI is between these levels.
MFI 70-79 Color: Color when the MFI is between these levels.
MFI 60-69 Color: Color when the MFI is between these levels.
MFI 50-59 Color: Color when the MFI is between these levels.
MFI 40-49 Color: Color when the MFI is between these levels.
MFI 30-39 Color: Color when the MFI is between these levels.
MFI 20-29 Color: Color when the MFI is between these levels.
MFI 10-19 Color: Color when the MFI is between these levels.
MFI 0-100 Color: Color when the MFI is between these levels.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
Quadratic & Linear Time Series Regression [SS]Hey everyone,
Releasing the Quadratic/Linear Time Series regression indicator.
About the indicator:
Most of you will be familiar with the conventional linear regression trend boxes (see below):
This is an awesome feature in Tradingview and there are quite a few indicators that follow this same principle.
However, because of the exponential and cyclical nature of stocks, linear regression tends to not be the best fit for stock time series data. From my experience, stocks tend to fit better with quadratic (or curvlinear) regression, which there really isn't a lot of resources for.
To put it into perspective, let's take SPX on the 1 month timeframe and plot a linear regression trend from 1930 till now:
You can see that its not really a great fit because of the exponential growth that SPX has endured since the 1930s. However, if we take a quadratic approach to the time series data, this is what we get:
This is a quadratic time series version, extended by up to 3 standard deviations. You can see that it is a bit more fitting.
Quadratic regression can also be helpful for looking at cycle patterns. For example, if we wanted to plot out how the S&P has performed from its COVID crash till now, this is how it would look using a linear regression approach:
But this is how it would look using the quadratic approach:
So which is better?
Both linear regression and quadratic regression are pivotal and important tools for traders. Sometimes, linear regression is more appropriate and others quadratic regression is more appropriate.
In general, if you are long dating your analysis and you want to see the trajectory of a ticker further back (over the course of say, 10 or 15 years), quadratic regression is likely going to be better for most stocks.
If you are looking for short term trades and short term trend assessments, linear regression is going to be the most appropriate.
The indicator will do both and it will fit the linear regression model to the data, which is different from other linreg indicators. Most will only find the start of the strongest trend and draw from there, this will fit the model to whatever period of time you wish, it just may not be that significant.
But, to keep it easy, the indicator will actually tell you which model will work better for the data you are selecting. You can see it in the example in the main chart, and here:
Here we see that the indicator indicates a better fit on the quadratic model.
And SPY during its recent uptrend:
For that, let's take a look at the Quadratic Vs the Linear, to see how they compare:
Quadratic:
Linear:
Functions:
You will see that you have 2 optional tables. The statistics table which shows you:
The R Squared to assess for Variance.
The Correlation to assess for the strength of the trend.
The Confidence interval which is set at a default of 1.96 but can be toggled to adjust for the confidence reading in the settings menu. (The confidence interval gives us a range of values that is likely to contain the true value of the coefficient with a certain level of confidence).
The strongest relationship (quadratic or linear).
Then there is the range table, which shows you the anticipated price ranges based on the distance in standard deviations from the mean.
The range table will also display to you how often a ticker has spent in each corresponding range, whether that be within the anticipated range, within 1 SD, 2 SD or 3 SD.
You can select up to 3 additional standard deviations to plot on the chart and you can manually select the 3 standard deviations you want to plot. Whether that be 1, 2, 3, or 1.5, 2.5 or 3.5, or any combination, you just enter the standard deviations in the settings menu and the indicator will adjust the price targets and plotted bands according to your preferences. It will also count the amount of time the ticker spent in that range based on your own selected standard deviation inputs.
Tips on Use:
This works best on the larger timeframes (1 hour and up), with RTH enabled.
The max lookback is 5,000 candles.
If you want to ascertain a longer term trend (over years to months), its best to adjust your chart timeframe to the weekly and/or monthly perspective.
And that's the indicator! Hopefully you all find it helpful.
Let me know your questions and suggestions below!
Safe trades to all!
YinYang RSI Volume Trend StrategyThere are many strategies that use RSI or Volume but very few that take advantage of how useful and important the two of them combined are. This strategy uses the Highs and Lows with Volume and RSI weighted calculations on top of them. You may be wondering how much of an impact Volume and RSI can have on the prices; the answer is a lot and we will discuss those with plenty of examples below, but first…
How does this strategy work?
It’s simple really, when the purchase source crosses above the inner low band (red) it creates a Buy or Long. This long has a Trailing Stop Loss band (the outer low band that's also red) that can be adjusted in the Settings. The Stop Loss is based on a % of the inner low band’s price and by default it is 0.1% lower than the inner band’s price. This Stop Loss is not only a stop loss but it can also act as a Purchase Available location.
You can get back into a trade after a stop loss / take profit has been hit when your Reset Purchase Availability After condition has been met. This can either be at Stop Loss, Entry or None.
It is advised to allow it to reset in case the stop loss was a fake out but the call was right. Sometimes it may trigger stop loss multiple times in a row, but you don’t lose much on stop loss and you gain lots when the call is right.
The Take Profit location is the basis line (white). Take Profit occurs when the Exit Source (close, open, high, low or other) crosses the basis line and then on a different bar the Exit Source crosses back over the basis line. For example, if it was a Long and the bar’s Exit Source closed above the basis line, and then 2 bars later its Exit Source closed below the basis line, Take Profit would occur. You can disable Take Profit in Settings, but it is very useful as many times the price will cross the Basis and then correct back rather than making it all the way to the opposing zone.
Longs:
If for instance your Long doesn’t need to Take Profit and instead reaches the top zone, it will close the position when it crosses above the inner top line (green).
Please note you can change the Exit Source too which is what source (close, open, high, low) it uses to end the trades.
The Shorts work the same way as the Long but just opposite, they start when the purchase source crosses under the inner upper band (green).
Shorts:
Shorts take profit when it crosses under the basis line and then crosses back.
Shorts will Stop loss when their outer upper band (green) is crossed with the Exit Source.
Short trades are completed and closed when its Exit Source crosses under the inner low red band.
So, now that you understand how the strategy works, let’s discuss why this strategy works and how it is profitable.
First we will discuss Volume as we deem it plays a much bigger role overall and in our strategy:
As I’m sure many of you know, Volume plays a huge factor in how much something moves, but it also plays a role in the strength of the movement. For instance, let’s look at two scenarios:
Bitcoin’s price goes up $1000 in 1 Day but the Volume was only 10 million
Bitcoin’s price goes up $200 in 1 Day but the Volume was 40 million
If you were to only look at the price, you’d say #1 was more important because the price moved x5 the amount as #2, but once you factor in the volume, you know this is not true. The reason why Volume plays such a huge role in Price movement is because it shows there is a large Limit Order battle going on. It means that both Bears and Bulls believe that price is a good time to Buy and Sell. This creates a strong Support and Resistance price point in this location. If we look at scenario #2, when there is high volume, especially if it is drastically larger than the average volume Bitcoin was displaying recently, what can we decipher from this? Well, the biggest take away is that the Bull’s won the battle, and that likely when that happens we will see bullish movement continuing to happen as most of the Bears Limit Orders have been fulfilled. Whereas with #2, when large price movement happens and Bitcoin goes up $1000 with low volume what can we deduce? The main takeaway is that Bull’s pressured the price up with Market Orders where they purchased the best available price, also what this means is there were very few people who were wanting to sell. This generally dictates that Whale Limit orders for Sells/Shorts are much higher up and theres room for movement, but it also means there is likely a whale that is ready to dump and crash it back down.
You may be wondering, what did this example have to do with YinYang RSI Volume Trend Strategy? Well the reason we’ve discussed this is because we use Volume multiple times to apply multiplications in our calculations to add large weight to the price when there is lots of volume (this is applied both positively and negatively). For instance, if the price drops a little and there is high volume, our strategy will move its bounds MUCH lower than the price actually dropped, and if there was low volume but the price dropped A LOT, our strategy will only move its bounds a little. We believe this reflects higher levels of price accuracy than just price alone based on the examples described above.
Don’t believe us?
Here is with Volume NOT factored in (VWMA = SMA and we remove our Volume Filter calculation):
Which produced -$2880 Profit
Here is with our Volume factored in:
Which produced $553,000 (55.3%)
As you can see, we wen’t from $-2800 profit with volume not factored to $553,000 with volume factored. That's quite a big difference! (Please note previous success does not predict future success we are simply displaying the $ amounts as example).
Now how about RSI and why does it matter in this strategy?
As I’m sure most of you are aware, RSI is one of the leading indicators used in trading. For this reason we figured it would only make sense to incorporate it into our calculations. We fiddled with RSI for quite awhile and sometimes what logically seems to be the right way to use it isn’t. Now, because of this, our RSI calculation is a little odd, but basically what we’re doing is we calculate the RSI, then turn it into a percentage (between 0-1) that can easily be multiplied to the price point we need. The price point we use is the difference between our high purchase zone and our low purchase zone. This allows us to see how much price movement there is between zones. We multiply our zone size with our RSI multiplication and we get the amount we will add +/- to our basis line (white line). This officially creates the NEW high and low purchase zones that we are actually using and displaying in our trades.
If you found that confusing, here are some examples to why it is an important calculation for this strategy:
Before RSI factored in:
Which produced 27.8% Profit
After RSI factored in:
Which produced 553% Profit
As you can see, the RSI makes not only the purchase zones more accurate, but it also greatly increases the profit the strategy is able to make. It also helps ensure an relatively linear profit slope so you know it is reliable with its trades.
This strategy can work on pretty much anything, but you should tweak the values a bit for each pair you are trading it with for best results.
We hope you can find some use out of this simple but effective strategy, if you have any questions, comments or concerns please let us know.
HAPPY TRADING!






















