probability_of_touchBased on historical data (rather than theory), calculates the probability of a price level being "touched" within a given time frame. A "touch" means that price exceeded that level at some point. The parameters are:
- level: the "level" to be touched. it can be a number of points, percentage points, or standard deviations away from the mark price. a positive level is above the mark price, and a negative level is below the mark price.
- type: determines the meaning of the "level" parameter. "price" means price points (i.e. the numbers you see on the chart). "percentage" is expressed as a whole number, not a fraction. "stdev" means number of standard deviations, which is computed from recent realized volatlity.
- mark: the point from which the "level" is measured.
- length: the number of days within which the level must be touched.
- window: the number of days used to compute realized volatility. this parameter is only used when "type" is "stdev".
- debug: displays a fuchsia "X" over periods that touched the level. note that only a limited number of labels can be drawn.
- start: only include data after this time in the calculation.
- end: only include data before this time in the calculation.
Example: You want to know how many times Apple stock fell $1 from its closing price the next day, between 2020-02-26 and today. Use the following parameters:
level: -1
type: price
mark: close
length: 1
window:
debug:
start: 2020-02-26
end:
How does the script work? On every bar, the script looks back "length" days and sees if any day exceeded the "mark" price from "length" days ago, plus the limit. The probability is the ratio of such periods wherein price exceeded the limit to the total number of periods.
在脚本中搜索"荣晟环保2020年5月股价走势"
CDC ActionZone Multi-TF,Mult-Ticker with alert() [P-O-Concept]This is proof-of-concept for using single screen displaying triggering signal of multiple stock/crypto
This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
1. Original CDC Action Zone v3 2020 by © piriya33
Source of original indicator :
2. Table concept/part of code is pulled from Portfolio Tracker
***************************************************************************
CDC Action Zone is based on a simple EMA crossover between EMA12 and EMA26
The zones are defined by the relative position of price in relation to the two EMA lines
Different zones can be use to activate / deactivate other trading strategies
The strategy can also be used on its own with acceptable result, buy on the first green candle
and sell on the first red candle
***************************************************************************
Hint Color Meaning :
Green = FastMA > SlowMA and Price is above FastMA
Blue = FastMA < SlowMA and Price is above both MA
LightBlue = FastMA < SlowMA and Price is between both MA
Red = FastMA < SlowMA and Price is below FastMA
Orange = FastMA > SlowMA and Price is below both MA
Yellow = FastMA > SlowMA and Price is between both MA
Blue/LightBlue/Orange/Yellow should be used with another indicator (such as divergent or so)
Cautions:
- This indicator is not meant to be used as "Signal" or "Trading System"
- This indicator provide a quick-glimpse to multiple ticker in same screen. You'll still have to see indications using original CDC Action Zone (If you're using with CDC System), or combining with another indicator (For shorter tf or scalping, or short/long cover)
- Up to 10 Tickers / Timeframe + Current ticker
Alert Creation Guideline
If this indicator will be used as alert. The timeframe for ticker should be set to "same as" the chart you're using, ie, to set alert on 4h, it should be created in 4h-timeframe (Alert is fired on bar close, using 1D-TABLE in 4H-CHART may trigger alert up to 6 times. else if using in 4H-TABLE in 1D-CHART the alert may not trigger at all)
Considering using ohlc4, hlc3, hl2 for market with no session
PS. Send me a message if you see any bug. (especially if using JSON, I have no chance to test with multiple alert at same tick.)
WEEKLY BTC TRADING SCRYPTWeekly BTC Trading Scrypt(WBTS)
This script is only suggested for cryptocurrencies and weekly buying strategy which is long term.Using it in another markets(e.g forex,stock,e.t.c) is not suggested. The thing makes it different than other strategies we try to understand bull and bear seasons and buying selected crypto currency as using formula if weekly closing value crossover eight weeks simple moving avarage buy,else if selected crypto currency's weekly closing value crossunder eight weeks simple avarage sell. Eight week moving avarage is also uses weekly closing prices but for being able to use this strategy ,trading pair must have more than eight candles in weekly chart otherwise the 8 weeks simple moving avarage value cannot be calculated and script does not work.
This script has a chart called WBTS and it has following features:
Strategy group consist of 3 inputs:
1)Source: Close by default. Our whole strategy uses close values. You can change it but not suggested.
2)Loss Ratio: Because of the cases like the circumstances that manipulates market or high volatility , sometimes graphic show wrong buying signals and this ratio saves user from big money looses(Note : This ratio will always work when selling condition occurs to make user take his profit or prevent him to loss more money because of a wrong positive comes from the indicator.)
3)Reward Ratio : When selling condition happens it will exit user with more profit(if price is already higher than buying point) otherwise it will dimunish loss a bit(if user is below of buying point) or prevents looses(if user is in buying point when selling condition happened.
MA group consist of 2 inputs:
COLOR:Specifies color of the moving avarage.It is equal to #FF3232by hex color code by default.
LINE WIDTH: Specifies linewidth of the moving avarage. It is 2 by default.
GRAPHIC group consist of 2 inputs:
COLOR: It specifies the color of the line which consist of weekly closing prices. It is equal to #6666FF hex color code by default.
LINE WIDTH: Specifies linewidth of the line which consist of weekly closing prices. It is 2 by default.
STRATEGY EXECUTION YEAR: It will show the orders,profits and looses done by script after the input year giving in it.It is 2020 by default.
The last feature is strategy equity,it is not in one of these groups. User should click on settings button on the WBTS indicator than chose Style section and there is a deactivated check box near in the plot section if user activate it, the equity line will show in indicator's graph.
Logic of This Strategy:The story of this strategy began when I studied BTC's price movement from 2020 to today with 8 weeks simple moving avarage (it takes weekly closes as source) and weekly clossing values. I understood that there was a perfect interest between bull and bear market and following conditions:
buy_condition=crossover(weekly_closing_values,8_week_simple_moving_avarage)
sell_condition=crossover(weekly_closing_values,8_week_simple_moving_avarage)
and I tried same thing on the same and bigger time frames("for example i studied how the strategy works from the beginning to today with bitcoin and what is our final equity") with bitcoin and other cryptocurrencies and this made me saw better the relation between giving conditions and general market psychology, however I also witnessed some wrong positives coming by script and used a risk reward ratio to save user and set risk reward ratio 1/3 after a research.
For both conditions(buy_condition and sell_condition),when they are realised,script will alert users and an order will be triggered.
Before finishing the description,from settings/properties/ user can set initial capital,base currency,order size and type,but it is 100000 for initial_amount and 1 contract for order size by default.
In backtesting I used the options like the following example :
Initial capital=1000
Base_curreny=USD
Order size=40 USD
Properties place must set different by every single user according to his or her capital and order size must not be higher than his total money because this script is not the best or a good script for derivatives. It is only written for long term-crypto spot trading and I strongly recommend to users that margin may cause bad results and please do not use it with any margin or any market different than crypto market.
Thank you very much for reading)
SPX Excess CAPE YieldHere we are looking at the Excess CAPE yield for the SPX500 over the last 100+ years
"A higher CAPE meant a lower subsequent 10-year return, and vice versa. The R-squared was a phenomenally high 0.9 — the CAPE on its own was enough to explain 90% of stocks’ subsequent performance over a decade. The standard deviation was 1.37% — in other words, two-thirds of the time the prediction was within 1.37 percentage points of the eventual outcome: this over a quarter-century that included an equity bubble, a credit bubble, two epic bear markets, and a decade-long bull market."
assets.bwbx.io
In December of 2020 Dr. Robert Shiller the Yale Nobel Laurate suggested that an improvement on CAPE could be made by taking its inverse (the CAPE earnings yield) and subtracting the us10 year treasury yield.
"His model plainly suggests that stocks will do badly over the next 10 years, and that bonds will do even worse. This was the way Shiller put it in a research piece for Barclays Plc in October, (which can be found on SSRN Below):
In summary, investors expect a certain return in equities as compensation for investing in a riskier asset class, and as interest rates have declined, the relative expected return for equities has increased dramatically. We believe this may quantitatively help to explain investors current preference for equities over bonds, and as such the quick recoveries we are observing (with the exception of the UK), whilst still in the midst of a pandemic. In the US in particular, we are once again observing stretched valuations and high CAPE ratios compared to history."
Sources:
papers.ssrn.com
www.bloomberg.com
The standard trading view disclaimer applies to this post -- please consult your own investment advisor before making investment decisions. This post is for observation only and has no warranty etc. www.tradingview.com
Best,
JM
TSI HMA CCIHi!
This strategy has TSI and CCI indicators with the CCI being based on a HMA instead of the Price.
There is a number of conditions that must combine to create buy or sell signals, but it is basically a couple of MA crossovers.
The strategy opens new orders on each candle if the conditions are met, Either direction, so it is hedging.
It wont open new orders if there is a floating loss, and so is constantly attempting to hold a floating profit (drawup instead of drawdown)
But It has a StopLoss (set by user) for closing of losing orders, and it closes all orders in basket style when account is in profit to users set amount target profit.
Low commission set to simulate swap but Forex pairs generally dont have commission like the crypto exchanges do. So if you use this on cryptos, remember to increase the commission to your brokers amount.
Crypto users will likely find that because this opens so many orders the commission could erase its profits.
So i recommend this for Forex only, and perhaps, only NZDUSD 4H chart. other pairs, change settings for.
The strategy has settings for testing on target time spans, so you could test it on just Jan-Feb 2020 for example, if you want, or from Jan 2020 to present day.
Have Fun! Open Script for copy/paste/edit/publish your own version :)
HTF High/Low Repaint StrategyHere is an another attempt to demonstrate repainting and how to avoid them. It happened few times to me that I develop a strategy which is giving immense returns - only to realize after few forward testing that it is repainting. Sometimes, it is well disguised even during forward testing.
In this simple strategy, conditions are as below:
Buy : When a 3M bar produces high and low higher than it's previous 3M bar high, low
Sell : When a 3M bar produces high and low lower than its previous 3M bar high, low.
Default setting is : lookahead = on and offset = 0
This means current 3M bar high low is plotted for all the daily bars within this month. Which means, strategy looks ahead of time to see this 3M bar high is higher than previous 3M bar high during the start of the first daily bar. Hence, this combination leads to massive repaint.
For example, trade made on October 2nd 2018 already knows well ahead of time that price is going to go down in next 3 months:
Similarly, after 2 years on October 2nd 2020 - the strategy already knows that last 3M high is going to be breached on 7th December 2020
Solution: If you are using security for higher timeframes, safer option is always to use offset 1. Further details in the trading view script:
BUT
It may still repaint if we are passing function to security.
For example:
f_secureSecurity(_symbol, _res, _src) => security(_symbol, _res, _src , lookahead = barmerge.lookahead
This function will likely avoid any repainting with Higher timeframe if we are passing in built variables such as high, low, close, open etc. But, if we try to pass supertrend, this will not produce right results. This is because supertrend calculation in turn uses high/low/close values which do not consider the offset while calculating. Hence, even with offset 1, this will still produce issues.
Hence, the call:
= f_secureSecurity(syminfo.tickerid, derivedResolution, supertrend(3,10), offset) will again lead to massive repainting. Solution to this is to implement supertrend function and use high, low, close values derived from secureSecurity.
Quick tips to identify or be suspicious about repainting
Unbelievable results on all timeframes and all instruments with both long and short trades
Lower timeframes giving significantly higher returns on backtest when compared to higher timeframe
If these things happen, be wary about repainting and do a through check of all security function usage in your strategy.
All the best :)
PS: Apply 3-5 days resolution and see the fun. Also, WHC is one hell of a Christmas tree. Could have made immense profit in the same strategy even without repainting.
Bitlinc MARSI Study AST w/ Take Profit & Stop loss - beta 0.1This script is beta 0.1 - will update as soon as the script is tradable
This script is based on AST on a 10 minute timeframe. You can change the asset and the timeframe for any asset you want to trade, but for it to work correct ALL settings have to be testes in the Strategy section of the TradingView. Each assets and timeframe require a different mixture of settings. This is NOT a one settings fits all trading for all assets on any timeframe. Below are the settings and explanation on how it works.
How it fires a buy / sell:
The script will plot an RSI with upper and lower bands in a separate indicator window. The idea behind this script is to fire a LONG when MA crosses OVER lower band and fire a SHORT when the MA crosses under the lower band. Each order that fires is an OCO (Order Cancels Order) for pyramiding.
Settings:
You have full control of these settings as mentioned above, you must configure every part of this script for each asset and timeframe you trade.
- Length of MA
- Length
- Upper bands of RSI
- Lower bands of RSI
- Take profit percentage
- Stop loss percentage
- Month to start and end the strategy (within 2020)
- Day to start and end the strategy (within 2020)
- Quantity type
- Slippage
- Pyramiding
***Remember that after the signal to enter or exit a trade is fired, the alert will trigger AFTER the close of the candle that caused the tigger to fire
Haemil-ri Moving Average Line/Created by user dunsan2000 updated 2020/8/20
//It is a moving average that is easy to use in Haemil-ri.
//둔산2000 만듬, 2020/8/20 수정됨
//해밀리에서 사용하기에 편한 이동평균선 입니다.
LB Squeeze Momentum DivergencesThis study tries to highlight LazyBear Squeeze Momentum divergences
as they are defined by
TradingLatino TradingView user
Squeeze momentum green peaks are connected by a line
Associated prices to these green peaks are also connected
If both lines have a different slope orientation
then there is a divergence.
It only shows two last divergence lines and angles.
The original chart screenshot shows some divergence lines
on the top or main chart
these were drawn manually
because you cannot write to two different charts
from the same pine script study (Well, not in August 2020 anyways)
It's aimed at BTCUSDT pair and 4h timeframe.
HOW IT WORKS
Simple geometric mathematics are used
to calculate the two lines degrees
Then both degrees are compared
to show if both lines agree ( // or \\ )
or if they disagree ( /\ or \/ )
SETTINGS
(SQZDiver) Show degrees : Show degrees of each Squeeze Momentum Divergence
lines to the x-axis.
(SQZDiver) Show desviation labels : Whether to show
or not desviation labels for the Squeeze Momentum Divergences.
(SQZDiver) Show desviation lines : Whether to show
or not desviation lines for the Squeeze Momentum Divergences.
(ADX) Smoothing
(ADX) DI Length
(ADX) key level
(ADX) Print : Whether to show
or not scaled ADX line
(SQZMOM) BB Length
(SQZMOM) BB MultFactor
(SQZMOM) KC Length
(SQZMOM) KC MultFactor
(SQZMOM) Use TrueRange (KC)
(SQZMOM) Print : Whether to show
or not Squeeze Momentum indicator.
WARNING
Some securities and timeframes might output degrees
too next to zero.
The code might need to be tweaked to meet your needs.
USAGE
One strategy is to sell when you are in a long entry
when you find out that the price slope is upwards ( / )
while the lb smilb slope is downwards: ( \ )
E.g. You will see:
/
\
on the indicator.
Why?
Because it might signal you that the price is
going to correct downwards soon.
FEEDBACK 1
Please let me know if there is any
other strategy based on the red side of
LB Squeeze Momentum
so that I might add support for it in the future.
FEEDBACK 2
Calculating degrees in a chart
with a different x-axis scale
is a nightmare
that's why I did not a range settings
so that values next to zero are
converted into zero
and thus showing an horizontal line.
Feedback is welcome on this matter.
EXTRA 1
If you turn off showing the divergence lines
and if you turn off showing the divergence labels
you almost get what TradingLatino user uses
as its default momentum indicator.
EXTRA 2
Optionally this indicator can show you
a rescaled ADX (it only works properly on 2020 Bitcoin charts)
ABOUT COLOURS
TradingLatino user has both dark green and light green
inverted compared to this LB SQZMOM chart.
CREDITS
I have reused and adapted some code from
'Squeeze Momentum Indicator' study
which it's from TradingView LazyBear user.
I have reused and adapted some code from
'Directional Movement Index + ADX & Keylevel Support' study
which it's from TradingView console user.
Black-Scholes Model for American OptionsThis model uses Black's Approximation to price American Options. Black's Approximation is an extension of the traditional Black-Scholes model that allows the price of American Options to be approximated within the Black-Scholes Framework. This is necessary because the traditional Black-Scholes model only works on options that are exercised at expiry, not before; like American Options can be.
Black's Approximation approximates the value of an American option by:
1st. Calculating the theoretical price of a european call or put based on the strike price (K), spot price (S), annual return (sigma), time until expiry (T), times until the next 2 ex-dividend dates (t1 & t2), and the dividend paid out at times t1 and t2 (D1 and D2).
2nd. The theoretical price of an option expiring on the second ex-dividend date (t2) is calculated. This replicates exercising the option early.
3rd. Finally, the highest price of the two theoretical prices calculated in steps 1 & 2 is chosen as the approximated price.
How to use this:
1st. Input your strike price.
2nd. Input the risk-free-rate of the currency the option is based in.
3rd. Input the dividend yield for the next ex-dividend date. For example AAPL's dividend yield is 0.82 and will be paid out on August 7,2020.
4th. Input the time until the next ex-dividend date. For example AAPL's next ex-dividend date is August 7,2020, which is 61 days away. So you'd input 61 (this includes weekends and holidays).
5th. Input the dividend yield for the ex-dividend date after the next one. For example AAPL's dividend yield after the next one is 0.82 and will be paid out on November 6, 2020.
6th. Input the time until the next furthest ex-dividend date. For example AAPL's next ex-dividend date after Aug 7th, is on November 6, 2020, which is 152 days away. So you'd input 152 (this includes weekends and holidays).
7th. Input your time until expiry. You can do so in terms of days, hours, and minutes.
8th. Input your chart time-frame in term of minutes. For example, if you're using the 1 min time-frame enter 1, 4hr time-frame enter 480, daily time-frame enter 1440.
9th. Lastly, pick what type of option you want data for: Long Call or Long Put.
*Disclaimer, because Black's Approximation is mostly geared towards stocks, this will only work for stocks. Also, the time variables: time until expiry and time until the ex-dividend dates; don't automatically update. So you will have to update them each day.
Weis Pip Wave jayyWhat you see here is the Weis pip wave. The Weis pip wave shows how far in price a Weis wave has traveled through the duration of a Weis wave. The Weis pip wave is used in combination with the Weis cumulative volume wave. The two waves must be set to the same "wave size" and using the same method as described by Weis.
Using the traditional Weis method simply enter the desired wave size in the box "Select Weis Wave Size". In the example shown, it is set to 5 points. Each wave for each security and each timeframe requires its own wave size. Although not the traditional method a more automatic way to set wave size would be to use ATR. This is not the true Weis method but it does give you similar waves and, importantly, without the hassle of selecting a wave size for every chart. Once the Weis wave size is set then the pip wave will be shown.
I have put a zigzag of a 5 point Weis wave on the above bar chart. I have added it to allow your eye to get a better appreciation for Weis wave pivot points. You will notice that the wave is not in straight lines connecting wave tops to bottoms this is a function of the limitations of Pinescript version 1. This script would need to be in version 4 to allow straight lines. I will elaborate on the Weis pip zigzag script.
What is a Weis wave? David Weis has been recognized as a Wyckoff method analyst he has written two books one of which, Trades About to Happen, describes the evolution of the now popular Weis wave. The method employed by Weis is to identify waves of price action and to compare the strength of the waves on characteristics of wave strength. Chief among the characteristics of strength is the cumulative volume of the wave. There are other markers that Weis uses as well for example how the actual price difference between the start of the Weis wave from start to finish. Weis also uses time, particularly when using a Renko chart. Weis specifically uses candle/bar closes to define all wave action.
David Weis did a futures.io video which is a popular source of information about his method.
Cheers jayy
PS This script was published a day ago, however, I had included some links to the website of a person that uses Weis pip waves and also a dropbox link that contains the Weis wave chart for May 27, 2020, published by David Weis. Providing those links is against TV policy and so the script was hidden by TV. This is the identical script with the identical settings but without the offending links. If you want to see the pip Weis method in practice then search Weis pip wave. I have absolutely no affiliation. If you want to see Weis chart in pdf then message me and I will give a link or the Weis pdf. Why would you want to see the Weis chart for May 27, 2020? Merely to confirm the veracity of my algorithm. You could compare my chart () from the same period to the Weis chart. Both waves are for the ES!1 4 hour chart and both for a wave size of 5.
ApopheniaPays Crossing detector & 2-field date/time entryYou specify a horizontal line by value, start date/time, and end date/time, and choose a data source (bar close is the default) and it will label count how many times that source crosses that line between those dates/times.
Enter the start and end dates for your horizontal line as MMDDYY and HHMM (24 hour time).
: Jan 17, 2020 would be 11720 (properly it would be 011720, but Pine inputs delete leading 0s).
: November 17, 2020 would be 110720.
: 8:30 AM would be 0830.
: 8:30 PM would be 2030.
Remember to enter the right time zone.
I believe nobody else has published a 2-input date/time picker on TV, at least the last time I checked they hadn't, they all make you input M,D,Y,H,M as separate fields. Ugh!
If you use any parts of this code, please credit me. If somehow you happen to make a lot of money using this code, please think about what a fair share would be to pay me for my help, then give that amount to a worthwhile charity.
.BXBT IndexThe current .BXBT index weighted as close as possible to BitMEX's with updates as BitMEX refreshes their index.
Difference between this and the script titled '2020 March 27 .BXBT Index': this one will receive updates because it doesn't have a date in its title.
Methodology
www.bitmex.com
"BitMEX Index Weights, assuming no constituent exchanges have been excluded due to Index Protection Rules, last updated 27 December 2019 at 12:00:05 UTC."
Binance: -
Bitstamp: 10.61%
Bittrex: 2.53%
Coinbase: 52.30%
Gemini: 6.89%
Huobi: -
Itbit: 4.21%
Kraken: 23.46%
Poloniex: -
ItBit's weight is combined with Gemini's due to ItBit not being on TradingView as of now. BITTREX:BTCUSD substituted with BITTREX:BTCUSDT*POLONIEX:USDTUSD to backfill because Bittrex only recently (late 2018) started to offer a fiat BTC/USD pair. Not that it matters since the index used in 2018 didn't include Bittrex if I remember correctly.
What is actually used for 27/12/2019 to 27/03/2020:
Binance: -
Bitstamp: 10.61%
Bittrex: 2.53%
Coinbase: 52.30%
Gemini: 11.10%
Huobi: -
Itbit: -
Kraken: 23.46%
Poloniex: -
Options:
Toggle candlesticks or close line
Change price source to be used for indicators
To be added: Change quarter to show indexes for different times, with labels that apply to the appropriate index used
Reasons to use this vs. the index itself: (not many)
It is helpful as a reference for other indicators or creation of an index.
Stochastic Pop and Drop by Jake Bernstein v1 [Bitduke]I found a simple strategy by Jake Bernstein, modified it a little and created a strategy with Risk Management System (SL+TP); After that I test it on the different cryptocurrency pairs.
About the Indicator
Basically it's the strategy of 2 indicators: Stochastic Oscillator to define the bias and Average Directional Index to confirm it.
One again, It uses Stochastic Oscillator to define the trading bias. In particular, the trading bias was deemed bullish when the weekly 14-period Stochastic Oscillator was above some default value (in him paper - 50) and rising and vice versa.
Once the trading bias is established, Steckler used the Average Directional Index (ADX) to define a slowdown in the trend. ADX measures the strength of the trend and a move below 20 signals a weak trend.
Modifications
I didn't implement Average Directional Index (ADX) and test just different sources for data, oscillator periods and different levels in relation to the crypto market.
So, it shows good results with two tight thresholds at 55 and 45 level.
The bar chart below the defining the bullish and bearish periods (green and red) and gives a signal to enter the trade (purple bars).
Backtesting
Backtested on XBTUSD , BTCPERP (FTX) pairs. You may notice it shows good results on 3h timeframe.
Relatively low drawdown
~ 10% (from 2019 to date) FTX
~ 22% (4 years from 2016) Bitmex
I backtested on the different altcoin pairs as well, but the results were just not good.
Relatively good results were shown by some index pairs from the FTX exchange ( FTX:SHITPERP ), but I think there is a few data for backtesting to be asure in them.
Bitmex 3h (2017 - 2020) :
i.imgur.com
FTX 3h (2019 - 2020):
i.imgur.com
Possible Improvements
- Regarding trading algorithm it would be good to check with strategy with ADX somehow. Maybe for the better entries
- As for Risk Management system, it can be improved by adding trailing stop to the strategy.
Link: school.stockcharts.com
Double MA CCI"What is the Commodity Channel Index (CCI)?
Developed by Donald Lambert, the Commodity Channel Index (CCI) is a momentum-based oscillator used to help determine when an investment vehicle is reaching a condition of being overbought or oversold. It is also used to assess price trend direction and strength. This information allows traders to determine if they want to enter or exit a trade, refrain from taking a trade, or add to an existing position. In this way, the indicator can be used to provide trade signals when it acts in a certain way.
KEY TAKEAWAYS
• The CCI measures the difference between the current price and the historical average price.
• When the CCI is above zero it indicates the price is above the historic average. When CCI is below zero, the price is below the hsitoric average.
• High readings of 100 or above, for example, indicate the price is well above the historic average and the trend has been strong to the upside.
• Low readings below -100, for example, indicate the price is well below the historic average and the trend has been strong to the downside.
• Going from negative or near-zero readings to +100 can be used as a signal to watch for an emerging uptrend.
• Going from positive or near-zero readings to -100 may indicate an emerging downtrend.
• CCI is an unbounded indicator meaning it can go higher or lower indefinitely. For this reason, overbought and oversold levels are typically determined for each individual asset by looking at historical extreme CCI levels where the price reversed from." ----> 1
SOURCE
1: (SINCE IM NOT A "PRO" MEMBER I C'ANT POST THE SOUCRE URL..., webpage consulted at : 8:50 GMT -5 ; the 2020-01-18)
I- Added a 2nd MA length and changed the default values of the source type and switched the SMA to a MA.
II- In process to add analytic MACD histogram correlation and if possible, ploting a relative histogram between the CCI upper and lower band.
P.S.:
Don't set your moving averages lengths to far from each other... This could result in fewer convergence and divergence, also in fewer crossing MA's.
Have a good year 2020 !!
//----CODER----//
R.V.
Reflex Oscillator - Dr. John EhlersHot off the press, I present this NEW "Reflex Oscillator" employing PSv4.0, originally formulated by Dr. John Ehlers for TASC - February 2020 Traders Tips. John Ehlers might describe it's novel characteristics as being a reversal sensitive near zero-lag averaging indicator retaining the CYCLE component. Also, I would add that irregardless of the sampling interval, this indicator has a bound range between +/-2.0 on "1 second" candles all the way up to "1 month" candle durations. This indicator also has a companion indicator entitled "TrendFlex Oscillator". I have published it in tandem with this one in my scripts profile.
One notable difference between this and the original formulation is that I have added an independent control for the Super Smoother. This "tweak" is enabled by applying the override and adjusting it's period. There is a "Post Smooth" input() that "tweaks" the internal Reflex EMA too. Keep in mind that my intention of adding tweaks is solely for experimentation with the original formulation.
I also added adjustable levels for those of you that may wish to employ alertcondition()s to this indicator somehow. Providing a more utilitarian approach, I created this with an easy to use reusable function named reflex(). As always, I have included advanced Pine programming techniques that conform to proper "Pine Etiquette". Being this is one of John Ehlers' first two simultaneously released indicators for 2020, I felt a few more bells and whistles were appropriate as a proper contribution to the Tradingview community.
Features List Includes:
Dark Background - Easily disabled in indicator Settings->Style for "Light" charts or with Pine commenting
AND much, much more... You have the source!
The comments section below is solely just for commenting and other remarks, ideas, compliments, etc... regarding only this indicator, not others. When available time provides itself, I will consider your inquiries, thoughts, and concepts presented below in the comments section, should you have any questions or comments regarding this indicator. When my indicators achieve more prevalent use by TV members, I may implement more ideas when they present themselves as worthy additions. As always, "Like" it if you simply just like it with a proper thumbs up, and also return to my scripts list occasionally for additional postings. Have a profitable future everyone!
TrendFlex Oscillator - Dr. John EhlersHot off the press, I present this NEW "TrendFlex Oscillator" employing PSv4.0, originally formulated by Dr. John Ehlers for TASC - February 2020 Traders Tips. John Ehlers might describe it's novel characteristics as being a reversal sensitive near zero-lag averaging indicator retaining the TREND component. Also, I would add that irregardless of the sampling interval, this indicator has a bound range between +/-2.0 on "1 second" candles all the way up to "1 month" candle durations. This indicator also has a companion indicator entitled "Reflex Oscillator". I have published it in tandem with this one in my scripts profile.
One notable difference between this and the original formulation is that I have added an independent control for the Super Smoother. This "tweak" is enabled by applying the override and adjusting it's period. There is a "Post Smooth" input() that "tweaks" the internal TrendFlex EMA too. Keep in mind that my intention of adding tweaks is solely for experimentation with the original formulation.
I also added adjustable levels for those of you that may wish to employ alertcondition()s to this indicator somehow. Providing a more utilitarian approach, I created this with an easy to use reusable function named trendflex(). As always, I have included advanced Pine programming techniques that conform to proper "Pine Ettiquette". Being this is one of John Ehlers' first two simultaneously released indicators for 2020, I felt a few more bells and whistles were appropriate as a proper contribution to the Tradingview community.
Features List Includes:
Dark Background - Easily disabled in indicator Settings->Style for "Light" charts or with Pine commenting
AND much, much more... You have the source!
The comments section below is solely just for commenting and other remarks, ideas, compliments, etc... regarding only this indicator, not others. When available time provides itself, I will consider your inquiries, thoughts, and concepts presented below in the comments section, should you have any questions or comments regarding this indicator. When my indicators achieve more prevalent use by TV members, I may implement more ideas when they present themselves as worthy additions. As always, "Like" it if you simply just like it with a proper thumbs up, and also return to my scripts list occasionally for additional postings. Have a profitable future everyone!
Ichimoku Kinkō hyō Keizen 改善
The script is not finnished yet and show's an other interpretation of how it could be scripted
Step -1 is complete... Basic Ichimoku with asjutable length and editable lines colors and visibilities.
Step -2 in progress... Adding ability to une multiple Spans, sens and Kumo on higher and lower timeframe.
Your Step : Like and Share ;) have a good year 2020 !
2020-01-06 /--------/ -R.V.
Trend Score HTF (Raw Data) Pine Screener📘 Trend Score HTF (Raw Data) Pine Screener — Indicator Guide
This indicator tracks price action using a custom cumulative Trend Score (TS) system. It helps you visualize trend momentum, detect early reversals, confirm direction changes, and screen for entries across large watchlists like SPX500 using TradingView’s Pine Script Screener (beta).
⸻
🔧 What This Indicator Does
• Assigns a +1 or -1 score when price breaks the previous high or low
• Accumulates these scores into a real-time tsScore
• Detects early warnings (primed flips) and trend changes (confirmed flips)
• Supports alerts and labels for visual and automated trading
• Designed to work inside the Pine Screener so you can filter hundreds of tickers live
⸻
⚙️ Recommended Settings (for Beginners)
When adding the indicator to your chart:
Go to the “Inputs” tab at the top of the settings panel.
Then:
• Uncheck “Confirm flips on bar close”
• Check “Accumulate TS Across Flips? (ON = non-reset, OFF = reset)”
This setup allows you to see trend changes immediately without waiting for bar closes and lets the trend score build continuously over time, making it easier to follow long trends.
⸻
🧠 Core Logic
Start Date
Select a meaningful historical start date — for example: 2020-01-01. This provides long-term context for trend score calculation.
Per-Bar Delta (Δ) Calculation
The indicator scores each bar based on breakout behavior:
If the bar breaks only the previous high, Δ = +1
If it breaks only the previous low, Δ = -1
If it breaks both the high and low, Δ = 0
If it breaks neither, Δ = 0
This filters out wide-range or indecisive candles during volatility.
Cumulative Trend Score
Each bar’s delta is added to the running tsScore.
When it rises, bullish pressure is building.
When it falls, bearish pressure is increasing.
Trend Flip Logic
A bullish flip happens when tsScore rises by +3 from the lowest recent point.
A bearish flip happens when tsScore falls by -3 from the highest recent point.
These flips update the active trend direction between bullish and bearish.
⸻
⚠️ What Is a “Primed” Flip?
A primed flip is a signal that the current trend is about to flip — just one point away.
A primed bullish flip means the trend is currently bearish, but the tsScore only needs +1 more to flip. If the next bar breaks the previous high (without breaking the low), it will trigger a bullish flip.
A primed bearish flip means the trend is currently bullish, but the tsScore only needs -1 more to flip. If the next bar breaks the previous low (without breaking the high), it will trigger a bearish flip.
Primed flips are plotted one bar ahead of the current bar. They act like forecasts and give you a head start.
⸻
✅ What Is a “Confirmed” Flip?
A confirmed flip is the first bar of a new trend direction.
A confirmed bullish flip appears when a bearish trend officially flips into a new bullish trend.
A confirmed bearish flip appears when a bullish trend officially flips into a new bearish trend.
These signals are reliable and great for entries, trend filters, or reversals.
⸻
🖼 Visual Cues
The trend score (tsScore) line shows the accumulated trend strength.
A Δ histogram shows the daily price contribution: +1 for breaking highs, -1 for breaking lows, 0 otherwise.
A green background means the chart is in a bullish trend.
A red background means the chart is in a bearish trend.
A ⬆ label signals a primed bullish flip is possible on the next bar.
A ⬇ label signals a primed bearish flip is possible on the next bar.
A ✅ means a bullish flip just confirmed.
A ❌ means a bearish flip just confirmed.
⸻
🔔 Alerts You Can Use
The indicator includes these built-in alerts:
• Primed Bullish Flip — watch for possible bullish reversal tomorrow
• Primed Bearish Flip — watch for possible bearish reversal tomorrow
• Bullish Confirmed — official entry into new uptrend
• Bearish Confirmed — official entry into new downtrend
You can set these alerts in TradingView to monitor across your chart or watchlist.
⸻
📈 How to Use in TradingView Pine Screener
Step 1: Create your own watchlist — for example, SPX500
Step 2: Favorite this indicator so it shows up in the screener
Step 3: Go to TradingView → Products → Screeners → Pine (Beta)
Step 4: Select this indicator and choose a condition, like “Bullish Confirmed”
Step 5: Click Scan
You’ll instantly see stocks that just flipped trends or are close to doing so.
⸻
⏰ When to Use the Screener
Use this screener after market close or before the next open to avoid intraday noise.
During the day, if a candle breaks both the high and low, the delta becomes 0, which may cancel a flip or primed signal.
Results during regular trading hours can change frequently. For best results, scan during stable periods like pre-market or after-hours.
⸻
🧪 Real-World Examples
SWK
NVR
WMT
UNH
Each of these examples shows clean, structured trend transitions detected in advance or confirmed with precision.
PLTR: complicated case primed for bullish (but we don't when it will flip)
⚠️ Risk Disclaimer & Trend Context
A confirmed bullish signal does not guarantee an immediate price increase. Price may continue to consolidate or even pull back after a bullish flip.
Likewise, a primed bullish signal does not always lead to confirmation. It simply means the conditions are close — but if the next bar breaks both the high and low, or breaks only the low, the flip will be canceled.
On the other side, a confirmed bearish signal does not mean the market will crash. If the overall trend is bullish (for example, tsScore has been rising for weeks), then a bearish flip may just represent a short-term pullback — not a trend reversal.
You always need to consider the overall market structure. If the long-term trend is bullish, it’s usually smarter to wait for bullish confirmation signals. Bearish flips in that context are often just dips — not opportunities to short.
This indicator gives you context, not predictions. It’s a tool for alignment — not absolute outcomes. Use it to follow structure, not fight it.
Eureka & Phoenix Thrust — NYSE (90% Breadth Days)🚀Eureka & Phoenix Thrust Indicator (NYSE Breadth)
Overview
This free indicator highlights rare but powerful breadth thrust days on the NYSE that can mark important turning points in the market.
It automatically detects both:
📈 Eureka Thrust (90% Up Day)
– At least 90% of NYSE issues advance and at least 90% of NYSE volume is advancing.
– Often signals broad-based institutional buying and strong market demand.
📉 Phoenix Thrust (90% Down Day)
– At least 90% of NYSE issues decline and at least 90% of NYSE volume is declining.
– Reflects broad institutional selling or panic, sometimes marking capitulation lows.
Both signal types were popularized by Lowry’s Research and O’Neil/IBD market models.
Notes
Eureka Thrusts are bullish confirmation signals, especially when clustered.
Phoenix Thrusts often mark panic selling — bearish in the short term, but can precede market bottoms if followed by Eurekas.
These events are rare. You may need to scroll back in history (e.g., March 2020, 2008, 1987) to see them in action.
Disclaimer
This tool is for educational and informational purposes only.
It is not financial advice. Always do your own research and risk management before making trading or investment decisions.
Bitcoin Logarithmic Growth Curve 2025 Z-Score"The Bitcoin logarithmic growth curve is a concept used to analyze Bitcoin's price movements over time. The idea is based on the observation that Bitcoin's price tends to grow exponentially, particularly during bull markets. It attempts to give a long-term perspective on the Bitcoin price movements.
The curve includes an upper and lower band. These bands often represent zones where Bitcoin's price is overextended (upper band) or undervalued (lower band) relative to its historical growth trajectory. When the price touches or exceeds the upper band, it may indicate a speculative bubble, while prices near the lower band may suggest a buying opportunity.
Unlike most Bitcoin growth curve indicators, this one includes a logarithmic growth curve optimized using the latest 2024 price data, making it, in our view, superior to previous models. Additionally, it features statistical confidence intervals derived from linear regression, compatible across all timeframes, and extrapolates the data far into the future. Finally, this model allows users the flexibility to manually adjust the function parameters to suit their preferences.
The Bitcoin logarithmic growth curve has the following function:
y = 10^(a * log10(x) - b)
In the context of this formula, the y value represents the Bitcoin price, while the x value corresponds to the time, specifically indicated by the weekly bar number on the chart.
How is it made (You can skip this section if you’re not a fan of math):
To optimize the fit of this function and determine the optimal values of a and b, the previous weekly cycle peak values were analyzed. The corresponding x and y values were recorded as follows:
113, 18.55
240, 1004.42
451, 19128.27
655, 65502.47
The same process was applied to the bear market low values:
103, 2.48
267, 211.03
471, 3192.87
676, 16255.15
Next, these values were converted to their linear form by applying the base-10 logarithm. This transformation allows the function to be expressed in a linear state: y = a * x − b. This step is essential for enabling linear regression on these values.
For the cycle peak (x,y) values:
2.053, 1.268
2.380, 3.002
2.654, 4.282
2.816, 4.816
And for the bear market low (x,y) values:
2.013, 0.394
2.427, 2.324
2.673, 3.504
2.830, 4.211
Next, linear regression was performed on both these datasets. (Numerous tools are available online for linear regression calculations, making manual computations unnecessary).
Linear regression is a method used to find a straight line that best represents the relationship between two variables. It looks at how changes in one variable affect another and tries to predict values based on that relationship.
The goal is to minimize the differences between the actual data points and the points predicted by the line. Essentially, it aims to optimize for the highest R-Square value.
Below are the results:
snapshot
snapshot
It is important to note that both the slope (a-value) and the y-intercept (b-value) have associated standard errors. These standard errors can be used to calculate confidence intervals by multiplying them by the t-values (two degrees of freedom) from the linear regression.
These t-values can be found in a t-distribution table. For the top cycle confidence intervals, we used t10% (0.133), t25% (0.323), and t33% (0.414). For the bottom cycle confidence intervals, the t-values used were t10% (0.133), t25% (0.323), t33% (0.414), t50% (0.765), and t67% (1.063).
The final bull cycle function is:
y = 10^(4.058 ± 0.133 * log10(x) – 6.44 ± 0.324)
The final bear cycle function is:
y = 10^(4.684 ± 0.025 * log10(x) – -9.034 ± 0.063)
The main Criticisms of growth curve models:
The Bitcoin logarithmic growth curve model faces several general criticisms that we’d like to highlight briefly. The most significant, in our view, is its heavy reliance on past price data, which may not accurately forecast future trends. For instance, previous growth curve models from 2020 on TradingView were overly optimistic in predicting the last cycle’s peak.
This is why we aimed to present our process for deriving the final functions in a transparent, step-by-step scientific manner, including statistical confidence intervals. It's important to note that the bull cycle function is less reliable than the bear cycle function, as the top band is significantly wider than the bottom band.
Even so, we still believe that the Bitcoin logarithmic growth curve presented in this script is overly optimistic since it goes parly against the concept of diminishing returns which we discussed in this post:
This is why we also propose alternative parameter settings that align more closely with the theory of diminishing returns."
Now with Z-Score calculation for easy and constant valuation classification of Bitcoin according to this metric.
Created for TRW
FEDFUNDS Rate Divergence Oscillator [BackQuant]FEDFUNDS Rate Divergence Oscillator
1. Concept and Rationale
The United States Federal Funds Rate is the anchor around which global dollar liquidity and risk-free yield expectations revolve. When the Fed hikes, borrowing costs rise, liquidity tightens and most risk assets encounter head-winds. When it cuts, liquidity expands, speculative appetite often recovers. Bitcoin, a 24-hour permissionless asset sometimes described as “digital gold with venture-capital-like convexity,” is particularly sensitive to macro-liquidity swings.
The FED Divergence Oscillator quantifies the behavioural gap between short-term monetary policy (proxied by the effective Fed Funds Rate) and Bitcoin’s own percentage price change. By converting each series into identical rate-of-change units, subtracting them, then optionally smoothing the result, the script produces a single bounded-yet-dynamic line that tells you, at a glance, whether Bitcoin is outperforming or underperforming the policy backdrop—and by how much.
2. Data Pipeline
• Fed Funds Rate – Pulled directly from the FRED database via the ticker “FRED:FEDFUNDS,” sampled at daily frequency to synchronise with crypto closes.
• Bitcoin Price – By default the script forces a daily timeframe so that both series share time alignment, although you can disable that and plot the oscillator on intraday charts if you prefer.
• User Source Flexibility – The BTC series is not hard-wired; you can select any exchange-specific symbol or even swap BTC for another crypto or risk asset whose interaction with the Fed rate you wish to study.
3. Math under the Hood
(1) Rate of Change (ROC) – Both the Fed rate and BTC close are converted to percent return over a user-chosen lookback (default 30 bars). This means a cut from 5.25 percent to 5.00 percent feeds in as –4.76 percent, while a climb from 25 000 to 30 000 USD in BTC over the same window converts to +20 percent.
(2) Divergence Construction – The script subtracts the Fed ROC from the BTC ROC. Positive values show BTC appreciating faster than policy is tightening (or falling slower than the rate is cutting); negative values show the opposite.
(3) Optional Smoothing – Macro series are noisy. Toggle “Apply Smoothing” to calm the line with your preferred moving-average flavour: SMA, EMA, DEMA, TEMA, RMA, WMA or Hull. The default EMA-25 removes day-to-day whips while keeping turning points alive.
(4) Dynamic Colour Mapping – Rather than using a single hue, the oscillator line employs a gradient where deep greens represent strong bullish divergence and dark reds flag sharp bearish divergence. This heat-map approach lets you gauge intensity without squinting at numbers.
(5) Threshold Grid – Five horizontal guides create a structured regime map:
• Lower Extreme (–50 pct) and Upper Extreme (+50 pct) identify panic capitulations and euphoria blow-offs.
• Oversold (–20 pct) and Overbought (+20 pct) act as early warning alarms.
• Zero Line demarcates neutral alignment.
4. Chart Furniture and User Interface
• Oscillator fill with a secondary DEMA-30 “shader” offers depth perception: fat ribbons often precede high-volatility macro shifts.
• Optional bar-colouring paints candles green when the oscillator is above zero and red below, handy for visual correlation.
• Background tints when the line breaches extreme zones, making macro inflection weeks pop out in the replay bar.
• Everything—line width, thresholds, colours—can be customised so the indicator blends into any template.
5. Interpretation Guide
Macro Liquidity Pulse
• When the oscillator spends weeks above +20 while the Fed is still raising rates, Bitcoin is signalling liquidity tolerance or an anticipatory pivot view. That condition often marks the embryonic phase of major bull cycles (e.g., March 2020 rebound).
• Sustained prints below –20 while the Fed is already dovish indicate risk aversion or idiosyncratic crypto stress—think exchange scandals or broad flight to safety.
Regime Transition Signals
• Bullish cross through zero after a long sub-zero stint shows Bitcoin regaining upward escape velocity versus policy.
• Bearish cross under zero during a hiking cycle tells you monetary tightening has finally started to bite.
Momentum Exhaustion and Mean-Reversion
• Touches of +50 (or –50) come rarely; they are statistically stretched events. Fade strategies either taking profits or hedging have historically enjoyed positive expectancy.
• Inside-bar candlestick patterns or lower-timeframe bearish engulfings simultaneously with an extreme overbought print make high-probability short scalp setups, especially near weekly resistance. The same logic mirrors for oversold.
Pair Trading / Relative Value
• Combine the oscillator with spreads like BTC versus Nasdaq 100. When both the FED Divergence oscillator and the BTC–NDQ relative-strength line roll south together, the cross-asset confirmation amplifies conviction in a mean-reversion short.
• Swap BTC for miners, altcoins or high-beta equities to test who is the divergence leader.
Event-Driven Tactics
• FOMC days: plot the oscillator on an hourly chart (disable ‘Force Daily TF’). Watch for micro-structural spikes that resolve in the first hour after the statement; rapid flips across zero can front-run post-FOMC swings.
• CPI and NFP prints: extremes reached into the release often mean positioning is one-sided. A reversion toward neutral in the first 24 hours is common.
6. Alerts Suite
Pre-bundled conditions let you automate workflows:
• Bullish / Bearish zero crosses – queue spot or futures entries.
• Standard OB / OS – notify for first contact with actionable zones.
• Extreme OB / OS – prime time to review hedges, take profits or build contrarian swing positions.
7. Parameter Playground
• Shorten ROC Lookback to 14 for tactical traders; lengthen to 90 for macro investors.
• Raise extreme thresholds (for example ±80) when plotting on altcoins that exhibit higher volatility than BTC.
• Try HMA smoothing for responsive yet smooth curves on intraday charts.
• Colour-blind users can easily swap bull and bear palette selections for preferred contrasts.
8. Limitations and Best Practices
• The Fed Funds series is step-wise; it only changes on meeting days. Rapid BTC oscillations in between may dominate the calculation. Keep that perspective when interpreting very high-frequency signals.
• Divergence does not equal causation. Crypto-native catalysts (ETF approvals, hack headlines) can overwhelm macro links temporarily.
• Use in conjunction with classical confirmation tools—order-flow footprints, market-profile ledges, or simple price action to avoid “pure-indicator” traps.
9. Final Thoughts
The FEDFUNDS Rate Divergence Oscillator distills an entire macro narrative monetary policy versus risk sentiment into a single colourful heartbeat. It will not magically predict every pivot, yet it excels at framing market context, spotting stretches and timing regime changes. Treat it as a strategic compass rather than a tactical sniper scope, combine it with sound risk management and multi-factor confirmation, and you will possess a robust edge anchored in the world’s most influential interest-rate benchmark.
Trade consciously, stay adaptive, and let the policy-price tension guide your roadmap.
BUY in HASH RibbonsHash Ribbons Indicator (BUY Signal)
A TradingView Pine Script v6 implementation for identifying Bitcoin miner capitulation (“Springs”) and recovery phases based on hash rate data. It marks potential low-risk buying opportunities by tracking short- and long-term moving averages of the network hash rate.
⸻
Key Features
• Hash Rate SMAs
• Short-term SMA (default: 30 days)
• Long-term SMA (default: 60 days)
• Phase Markers
• Gray circle: Short SMA crosses below long SMA (start of capitulation)
• White circles: Ongoing capitulation, with brighter white when the short SMA turns upward
• Yellow circle: Short SMA crosses back above long SMA (end of capitulation)
• Orange circle: Buy signal once hash rate recovery aligns with bullish price momentum (10-day price SMA crosses above 20-day price SMA)
• Display Modes
• Ribbons: Plots the two SMAs as colored bands—red for capitulation, green for recovery
• Oscillator: Shows the percentage difference between SMAs as a histogram (red for negative, blue for positive)
• Optional Overlays
• Bitcoin halving dates (2012, 2016, 2020, 2024) with dashed lines and labels
• Raw hash rate data in EH/s
• Alerts
• Configurable alerts for capitulation start, recovery, and buy signals
⸻
How It Works
1. Data Source: Fetches daily hash rate values from a selected provider (e.g., IntoTheBlock, Quandl).
2. Capitulation Detection: When the 30-day SMA falls below the 60-day SMA, miners are likely capitulating.
3. Recovery Identification: A rising 30-day SMA during capitulation signals miner recovery.
4. Buy Signal: Confirmed when the hash rate recovery coincides with a bullish shift in price momentum (10-day price SMA > 20-day price SMA).
⸻
Inputs
Hash Rate Short SMA: 30 days
Hash Rate Long SMA: 60 days
Plot Signals: On
Plot Halvings: Off
Plot Raw Hash Rate: Off
⸻
Considerations
• Timeframe: Best applied on daily charts to capture meaningful miner behavior.
• Data Reliability: Ensure the chosen hash rate source provides consistent, gap-free data.
• Risk Management: Use alongside other technical indicators (e.g., RSI, MACD) and fundamental analysis.
• Backtesting: Evaluate performance over different market cycles before live deployment.