Machine Learning: Perceptron-based strategyPerceptron-based strategy
Description:
The Learning Perceptron is the simplest possible artificial neural network (ANN), consisting of just a single neuron and capable of learning a certain class of binary classification problems. The idea behind ANNs is that by selecting good values for the weight parameters (and the bias), the ANN can model the relationships between the inputs and some target.
Generally, ANN neurons receive a number of inputs, weight each of those inputs, sum the weights, and then transform that sum using a special function called an activation function. The output of that activation function is then either used as the prediction (in a single neuron model) or is combined with the outputs of other neurons for further use in more complex models.
The purpose of the activation function is to take the input signal (that’s the weighted sum of the inputs and the bias) and turn it into an output signal. Think of this activation function as firing (activating) the neuron when it returns 1, and doing nothing when it returns 0. This sort of computation is accomplished with a function called step function: f(z) = {1 if z > 0 else 0}. This function then transforms any weighted sum of the inputs and converts it into a binary output (either 1 or 0). The trick to making this useful is finding (learning) a set of weights that lead to good predictions using this activation function.
Training our perceptron is simply a matter of initializing the weights to zero (or random value) and then implementing the perceptron learning rule, which just updates the weights based on the error of each observation with the current weights. This has the effect of moving the classifier’s decision boundary in the direction that would have helped it classify the last observation correctly. This is achieved via a for loop which iterates over each observation, making a prediction of each observation, calculating the error of that prediction and then updating the weights accordingly. In this way, weights are gradually updated until they converge. Each sweep through the training data is called an epoch.
In this script the perceptron is retrained on each new bar trying to classify this bar by drawing the moving average curve above or below the bar.
This script was tested with BTCUSD, USDJPY, and EURUSD.
Note: TradingViews's playback feature helps to see this strategy in action.
Warning: Signals ARE repainting.
Style tags: Trend Following, Trend Analysis
Asset class: Equities, Futures, ETFs, Currencies and Commodities
Dataset: FX Minutes/Hours+/Days
Cari dalam skrip untuk "curve"
Turkey Yield Curve SpreadYield spreads are used to see investors' perception of future risk and predict a recession. The spread is the value obtained by subtracting the near term bond from the distant one. This indicator plots this value historically. I used 3-year and 10-year Turkey treasury bond yields instead of 2-year and 10-year Turkey treasury bond yields due to lack of historical data on Tradingview.
sDEFI IndexThe Synthetix Exchange provides a DeFi index that has too many components to be used as a chart ticker.
So here is an indicator to bypass the ticker limit.
From the Synthetics docs : docs.synthetix.io
DeFi Index (sDEFI)
Contract: 0xe1aFe1Fd76Fd88f78cBf599ea1846231B8bA3B6B
Token | Initial Weight
---------------------------
Aave | 15%
Synthetix Network Token | 15%
yearn.finance | 15%
Uniswap | 10%
Compound | 7.50%
Maker | 7.50%
Balancer | 5%
Curve DAO Token | 5%
Kyber Network | 5%
Ren | 5%
UMA | 5%
Wrapped Nexus Mutual | 5%
The chart shows it in comparison to FTX's DeFi index, quite a difference as you can see!
Relative Strength Index of EU and US Stock Index Trends quality//Relative Strength Index of European and US Stock Index Trends quality
//This indicator reveals the relative strength of European and US stock index futures.
//take Bull trend as an example , the current closed price>EMA20 value and the current closed price >20th previous bar closed price( deduction price),
//it's defined as a lower level bull trend .If the current price EMA20>EMA60, it's defined as a higher level bull trend .If the EMA20>EMA60>EMA120,it's defined as the highest level bull trend.
//You can choose to draw the curve with the deviation rate of the original major indexes to 20EMA, or draw the deviation rate with the average value (default value is 5 bars).
//In addition, a more technical method is added to analyze the deviation changes of the major indexes.The deviation rate changing velocity value, parameter tan (abbreviated by t) of 1, 2, 5, 10 is introduced.
//You can have the option of calculate the tan using average value of 5 candlesticks or original value.
//Taking tan1 as an example, it indicates how much the deviation rate between the current price and the previous candlestick has changed.
//The indicator of the index color and the description of the trend quality color can be switched off in option.
//In addition, this code color scheme is only suitable for black background (the code color needs to be changed by yourself if you use white background).
My BTC log curveLogarithmic regression of the USD price of Bitcoin , calculated according to the equation:
y=A*exp(beta*x^lambda + c) + m*x + b
where x is the number of days since the genesis block. All parameters are editable in the script options.
ETF / Stocks / Crypto - DCA Strategy v1Simple "benchmark" strategy for ETFs, Stocks and Crypto! Super-easy to implement for beginners, a DCA (dollar-cost-averaging) strategy means that you buy a fixed amount of an ETF / Stock / Crypto every several months. For instance, to DCA the S&P 500 (SPY), you could purchase $10,000 USD every 12 months, irrespective of the market price. Assuming the macro-economic conditions of the underlying country remain favourable, DCA strategies will result in capital gains over a period of many years, e.g. 10 years. DCA is the safest strategy that beginners can employ to make money in the markets, and all other types of strategies should be "benchmarked" against DCA; if your strategy cannot outperform DCA, then your strategy is useless.
Recommended Chart Settings:
Asset Class: ETF / Stocks / Crypto
Time Frame: H1 (Hourly) / D1 (Daily) / W1 (Weekly) / M1 (Monthly)
Necessary ETF Macro Conditions:
1. Country must have healthy demographics, good ratio of young > old
2. Country population must be increasing
3. Country must be experiencing price-inflation
Necessary Stock Conditions:
1. Growing revenue
2. Growing net income
3. Consistent net margins
4. Higher gross/net profit margin compared to its peers in the industry
5. Growing share holders equity
6. Current ratios > 1
7. Debt to equity ratio (compare to peers)
8. Debt servicing ratio < 30%
9. Wide economic moat
10. Products and services used daily, and will stay relevant for at least 1 decade
Necessary Crypto Conditions:
1. Honest founders
2. Competent technical co-founders
3. Fair or non-existent pre-mine
4. Solid marketing and PR
5. Legitimate use-cases / adoption
Default Robot Settings:
Contribution (USD): $10,000
Frequency (Months): 12
*Robot buys $10,000 worth of ETF, Stock, Crypto, regardless of the market price, every 12 months since its founding time.*
*Equity curve can be seen from the bottom panel*
Risk Warning:
This strategy is low-risk, however it assumes you have a long time horizon of at least 5 to 10 years. The longer your holding-period, the better your returns. The only thing the user has to keep-in-mind are the macro-economic conditions as stated above. If unsure, please stick to ETFs rather than buying individual stocks or cryptocurrencies.
PineScript v4 - Forex Pin-Bar Trading StrategyPineScript v4, forex trading robot based on the commonly used bullish / bearish pin-bar piercing the moving averages strategy.
I coded this robot to stress-test the PineScript v4 language to see how advanced it is, and whether I could port a forex trading strategy from MT4 to TradingView.
In my opinion, PineScript v4 is still not a professional coding language; for example you cannot use IF-statements to modify the contents of global variables; this makes complex robot behaviour difficult to implement. In addition, it is unclear if the programmer can use nested IF-ELSE, or nested FOR within IF.
The sequence of program execution is also unclear, and although complex order entry and exit appears to function properly, I am not completely comfortable with it.
Recommended Chart Settings:
Asset Class: Forex
Time Frame: H1
Long Entry Conditions:
a) Moving Average up trend, fast crosses above slow
b) Presence of a Bullish Pin Bar
c) Pin Bar pierces either Moving Average
d) Moving Averages must be sloping up, angle threshold (optional)
Short Entry Conditions:
a) Moving Average down trend, fast crosses below slow
b) Presence of a Bearish Pin Bar
c) Pin Bar pierces either Moving Average
d) Moving Averages must be sloping down, angle threshold (optional)
Exit Conditions:
a) Stoploss level is hit
b) Takeprofit level is hit
c) Moving Averages cross-back (optional)
Default Robot Settings:
Equity Risk (%): 3 //how much account balance to risk per trade
Stop Loss (x*ATR, Float): 2.1 //stoploss = x * ATR, you can change x
Risk : Reward (1 : x*SL, Float): 3.1 //takeprofit = x * stop_loss_distance, you can change x
Fast MA (Period): 20 //fast moving average period
Slow MA (Period): 50 //slow moving average period
ATR (Period): 14 //average true range period
Use MA Slope (Boolean): true //toggle the requirement of the moving average slope
Bull Slope Angle (Deg): 1 //angle above which, moving average is considered to be sloping up
Bear Slope Angle (Deg): -1 //angle below which, moving average is considered to be sloping down
Exit When MA Re-Cross (Boolean): true //toggle, close trade if moving average crosses back
Cancel Entry After X Bars (Period): 3 //cancel the order after x bars not triggered, you can change x
Backtest Results (2019 to 2020, H1, Default Settings):
EURJPY - 111% profit, 2.631 profit factor, 16.43% drawdown
EURUSD - 103% profit, 2.899 profit factor, 14.95% drawdown
EURAUD - 76.75% profit, 1.8 profit factor, 17.99% drawdown
NZDUSD - 64.62% profit, 1.727 profit factor, 19.14% drawdown
GBPUSD - 58.73% profit, 1.663 profit factor, 15.44% downdown
AUDJPY - 48.71% profit, 1.635 profit factor, 11.81% drawdown
USDCHF - 30.72% profit, 1.36 profit factor, 22.63% drawdown
AUDUSD - 8.54% profit, 1.092 profit factor, 19.86% drawdown
EURGBP - 0.03% profit, 1.0 profit factor, 29.66% drawdown
USDJPY - 1.96% loss, 0.972 profit factor, 28.37% drawdown
USDCAD - 6.36% loss, 0.891 profit factor, 21.14% drawdown
GBPJPY - 28.27% loss, 0.461 profit factor, 39.13% drawdown
To reduce the possibility of curve-fitting, this robot was backtested on 12 popular forex currencies, as shown above. The robot was profitable on 8 out of 12 currencies, breakeven on 1, and made a loss on 3.
The default robot settings could be over-fitting for the EUR, as we can see out-sized performance for the EUR pairs, with the exception of the EURGBP. We can see that GBPJPY made the largest loss, so these two pairs could be related.
Risk Warning:
This is a forex trading strategy that involves high risk of equity loss, and backtest performance will not equal future results. You agree to use this script at your own risk.
Combo Backtest 123 Reversal & Fisher Transform Indicator This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
Market prices do not have a Gaussian probability density function
as many traders think. Their probability curve is not bell-shaped.
But trader can create a nearly Gaussian PDF for prices by normalizing
them or creating a normalized indicator such as the relative strength
index and applying the Fisher transform. Such a transformed output
creates the peak swings as relatively rare events.
Fisher transform formula is: y = 0.5 * ln ((1+x)/(1-x))
The sharp turning points of these peak swings clearly and unambiguously
identify price reversals in a timely manner.
WARNING:
- For purpose educate only
- This script to change bars colors.
Combo Strategy 123 Reversal & Fisher Transform Indicator This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
Market prices do not have a Gaussian probability density function
as many traders think. Their probability curve is not bell-shaped.
But trader can create a nearly Gaussian PDF for prices by normalizing
them or creating a normalized indicator such as the relative strength
index and applying the Fisher transform. Such a transformed output
creates the peak swings as relatively rare events.
Fisher transform formula is: y = 0.5 * ln ((1+x)/(1-x))
The sharp turning points of these peak swings clearly and unambiguously
identify price reversals in a timely manner.
WARNING:
- For purpose educate only
- This script to change bars colors.
Bull vs Bear Power by DGTElder-Ray Bear and Bull Power
Dr. Alexander Elder cleverly named his first indicator Elder-Ray because of its function, which is designed to see through the market like an X-ray machine. Developed in 1989, the Elder-Ray indicator can be applied to the chart of any security and helps traders determine the strength of competing groups of bulls and bears by gazing under the surface of the markets for data that may not immediately be ascertainable from a superficial glance at prices
The Elder-Ray indicator is comprised by three elements – Bear Power, Bull Power and a 13-period Exponential Moving Average.
As the high price of any candle shows the maximum power of buyers and the low price of any candle shows the maximum power of sellers, Elder uses the 13-period EMA in order to present the average consensus of price value. Bull power shows whether buyers are capable of pushing prices above the average consensus of value. Bear power shows whether sellers are capable of pushing prices below the average consensus of value. Mathematically, Bull power is the result of subtracting the 13-period EMA from the high price of the day, and Bear power is the result of subtracting the 13-period EMA from the low price of the day.
What does this study implements
Attempts to customize interpretation of Alexander Elder's Elder-Ray Indicator (Bull and Bear Power) by
• adding additional insights to support/confirm Elder’s strategy with different indicators related with the Elder’s concept
• providing different options of visualization of the indicator
• providing smoothing capability
Other Indicators to support/confirm Elder-Ray Indicator:
Colored Directional Movement Index (CDMI) , a custom interpretation of J. Welles Wilder’s Directional Movement Index (DMI) , where :
DMI is a collection of three separate indicators ( ADX , +DI , -DI ) combined into one and measures the trend’s strength as well as its direction
CDMI is a custom interpretation of DMI which presents ( ADX , +DI , -DI ) with a color scale - representing the trend’s strength, color density - representing momentum/slope of the trend’s strength, and triangle up/down shapes - representing the trend’s direction. CDMI provides all the information in a single line with colored triangle shapes plotted on the top. DMI can provide quality information and even trading signals but it is not an easy indicator to master, whereus CDMI simplifies its usage.
Alexander Elder considers the slope of the EMA, which gives insight into the recent trend whether is up or down, and CDMI adds additional insight of verifying/confirming the trend as well as its strength
Note : educational content of how to read CDMI can be found in ideas section named as “Colored Directional Movement Index”
different usages of CDMI can be observed with studies “Candlestick Patterns in Context by DGT", “Ichimoku Colored SuperTrend + Colored DMI by DGT”, “Colored Directional Movement and Bollinger Band's Cloud by DGT”, and “Technical Analyst by DGT”
Price Convergence/Divergence , if we pay attention to mathematical formulations of bull power, bear power and price convergence/divergence (also can be expressed as price distance to its ma) we would clearly observe that price convergence/divergence is in fact the result of how the market performed based on the fact that we assume 13-period EMA is consensus of price value. Then, we may assume that the price convergence/divergence crosses of bull power, or bear power, or sum of bull and bear power could be considered as potential trading signals
Additionally, price convergence/divergence visualizes the belief that prices high above the moving average or low below it are likely to be remedied in the future by a reverse price movement
Alternatively, Least Squares Moving Average of Price Convergence/Divergence (also known as Linear Regression Curve) can be plotted instead of Price Convergence/Divergence which can be considered as a smoothed version of Price Convergence/Divergence
Note : different usages of Price Convergence/Divergence can be observed with studies “Trading Psychology - Fear & Greed Index by DGT”, “Price Distance to its MA by DGT”, “P-MACD by DGT”, where “Price Distance to its MA by DGT” can also be considered as educational content which includes an article of a research carried on the topic
Options of Visualization
Bull and Bear Power plotted as two separate
• histograms
• lines
• bands
Sum of Bull and Bear Power plotted as single
• histogram
• line
• band
Others
Price Convergence/Divergence displayed as Line
CDMI is displayed as single colored line of triangle shapes, where triangle shapes displays direction of the trend (triangle up represents bull and triangle down represent bear), colors of CDMI displays the strength of the trend (green – strong bullish, red – strong bearish, gray – no trend, yellow – week trend)
In general with this study, color densities also have a meaning and aims to displays if the value of the indicator is falling or growing, darker colors displays more intense move comparing to light one
Note : band's upper and lower levels are calculated by using standard deviation build-in function with multiply factor of 0.236 Fibonacci’s ratio (just a number for our case, no any meaning)
Smoothing
No smoothing is applied by default but the capability is added in case Price Convergence/Divergence Line is assumed to be used as a signal line it will be worth smoothing the bear, bull or sum of bear and bull power indicators
Interpreting Elder-Ray Indicator, according to Dr. Alexander Elder
Bull Power should remain positive in normal circumstances, while Bear Power should remain negative in normal circumstances. In case the Bull Power indicator enters into negative territory, this implies that sellers have overcome buyers and control the market. In case the Bear Power indicator enters into positive territory, this indicates that buyers have overcome sellers and control the market. A trader should not go long at times when the Bear Power indicator is positive and he/she should not go short at times when the Bull Power indicator is negative.
13-period EMAs slope can be used in order to identify the direction of the major trend. According to Elder, the most reliable buy signals are generated, when there is a bullish divergence between the Bear Power indicator and the price (Bear Power forms higher lows, while the market forms lower lows). The most reliable sell signals are generated, when there is a bearish divergence between the Bull Power indicator and the price (Bull Power forms lower highs, while the market forms higher highs).
There are four basic conditions, required to go long or short, with the use of the Elder-Ray method alone.
In order to go long:
1. The market is in a bull trend, as indicated by the 13-period EMA
2. Bear Power is in negative territory, but increasing
3. The most recent Bull Power top is higher than its prior top
4. Bear Power is going up from a bullish divergence
The last two conditions are optional that fine-tune the buying decision
In order to go short:
1. The market is in a bear trend, as indicated by the 13-period EMA
2. Bull Power is in positive territory, but falling
3. The most recent Bear Power bottom is lower than its prior bottom
4. Bull Power is falling from a bearish divergence
The last two conditions are optional, they provide a stronger signal for shorting but they are not absolutely essential
If a trader is willing to add to his/her position, he/she needs to:
1. add to his/her long position, when the Bear Power falls below zero and then climbs back into positive territory
2. add to his/her short position, when the Bull Power increases above zero and then drops back into negative territory.
note : terminology of the definitions used herein are as per TV dictionary
Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
Disclaimer : The script is for informational and educational purposes only. Use of the script does not constitute professional and/or financial advice. You alone have the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
Intrinsic value calculation Intrinsic value calculator based on Warren Buffet's and Ben Graham's work
In value investing determing the true value of a COMPANY instead of a stock price is crucial.
This little indicator shows the "Intrinsic value" of the choosen stock meaning the value of the stock in 10 years time. Calculation is based on historical book value's average annual growth rate and dividends paid.
Since this is about long therm investing, use monthly charts.
"Intrinsic value can be defined simply: It is the discounted value of the cash that can be taken out of a business during its remaining life.”
– Warren Buffett
One way to calculate that is by the growth in per share book value and dividends taken in the forseeable future (10 years) than discount it with the prevailing 10 year note's rate.
In the inputs you have to set 2 variables:
1. How many years back you have the first data for book value per share available?
2. What was the per share book value that year?
(Bookvalue is ploted in olive colour and you can get the oldest one if you move your cursor over the latest data on the left)
CAUTION! You have to reenter it for every stock you analyse as this is stock-specific data!
After setting the input data, you will see the "Intrinsic Value"'s pink curve ploted over the price chart.
If the price is well below the pink line, the company is undervalued and can be a possible applicant for long therm investment.
Margin of safety: when the current price is 50% below the intrinsic value that means a 10% yearly growth potential (100% growth in 10 years) or a 100% margin of safety.
I am a beginer in Pine so please excuse my coding...
If anybody knows hot to extract historical data from 15 years ago, please share it with me, so I can automate the whole calculation without inputs necessary.
Options Decay Speed for 0DTEUse only for:
SPX, 5 minutes time frame
This indicator is complementing options 0DTE strategy - selling options for SPX index in the same day as they are expiring. Output of the indicator (red or green color of the curve) indicates whether is profitable to sell options at given moment at delta and VIX specified in the parameters. Changing parameter "Candles" is not recommended.
Main thought is that options expire with certain speed (theta decay) when stock doesnt move. When stock moves in unfavorable direction slowly enough, decay speed can compensate for disadvantage coming from option delta. Intuitively there must be certain speed of stock value change (expressed in stock value per 5 minutes) that is exactly compensating theta decay. This indicator calculates those two values (details below) and shows, where theta decay is faster than stock movement in the last hour and thus favorable to sell options.
Indicator gets its result from comparing two values:
1) volatility in the form of highest high and lowest low for past 12 candles (one hour in total) divided by 12 - meaning average movement of stock expressed in
2) speed of options value decay in form of combination of theta decay and option delta. Formulas are approximation of Black-Scholes model as Pine script doesnt allow for advanced functions. Approximations are accurate to 2 decimal points from market open to one hour before market close and will not indicate green when accuracy is not sufficient. Its value is also expressed in so its mutualy comparable.
My focus was not on code elegance but on practical usability.
Written by Ondřej Škop.
Cross Smoother FilterJust another attempt to smooth things up! But in a lot easier way.
If you are thinking about complicated math formulas that may be happening under this curve, I have to say you are absolutely wrong.
Its all done by splitting the given length in two parts for a moving average and making it two moving averages with half length!
But applying a moving average over another will cover 1 less bar than sum of their periods, so one bar should be added to one of them to cover the required number of bars.
Well the result is not as simple as the code...
Here is John Ehler's Super Smoother Filter (white) and Cross Smoother Filter using WMA.
They are not exactly the same, but very similar.
The Filter relys on the used moving average type and its characteristics to smooth the data.
However any moving average can easily fit in the formula, but common moving averages seem to have good result. Specially WMA and EMA.
WMA (blue) and CSF using WMA (orange)
EMA (blue) and CSF using EMA (orange)
SMA (green) and CSF using SMA (orange)
Logarithmic Moving Average is also included. You can try it as well :)
Logarithmic Moving AverageLogarithmically weighted moving average.
Here is how weight is distributed in LMA and RMA (exponential moving average)
As you know, logarithm of 1 is 0... This means the last bar in specified period will be ignored, and the log curve above applies to LMA of 9 bars.
So one bar should be added to the length when calculating the weight.
Result is faster than simple moving average, but a bit slower than linearly weighted moving average.
Uncertainty IndicatorThis indicator try to show the amount on uncertainty that exist by plotting a 3-days
moving average of the difference between the 'close' and 'ohlc4',
which is compared to a 20-days Bollinger Band with a standard deviation of one.
This menas that when the 3-day curve is above the upper limit, the Uncetainty is
higher than it has been during 84% of the last 20 day period (and vice versa for
the lower limit).
By using Open,High,Low,Close you get four opinions of what the price should be for
the current period. If there is a difference between 'close' and 'ohlc4' there seem
to exist an uncertainty if the closing price is correct.
Can we say anything about direction? I don't think so; either the 'close king' has
to listen to its 'people' and move toward 'ohlc4', or the other way around.
A way to see if the uncertainty increases over time could be to see if:
abs(close - ohlc4 ) < abs(close - ohlc4) ,which say that we are more uncertain
this period than the in previous one.
And I guess, with increased uncertainty comes 'fear' of loosing money.
COVID-19: Daily change per capita (EU only)New confirmed cases per day (daily change) is one thing, just an absolute value but when we put this number in context of population (per million people) of each country the situation is a bit different.
We can easily see that, at the moment (Apr 2nd, 2020), the most affected country is Spain (~150 new cases per million people per day) and surprisingly the second one is Switzerland (CH). We can also see Spain or Belgium's steep curve relative to other countries.
I know that some countries run more tests than the others and the outcome might not be reflect the reality but this is the official data that is available.
GMS: Mean Reversion StrategyThis is based on my GMS: Mean Reversion Indicator ()
Features:
- % Based Profit Target and Stop Loss
- SMA Trend Filter
- Can choose trade exit based off a moving average or linear regression curve
- Filter for long only trades, short only trades, or both at the same time.
Source code is open, so feel free to take a look!
I hope it helps,
Andre
BTC Growth CurveA function which maps Bitcoin supply fundamentals to an estimated demand growth model via price.
SamLRSD
Linear Regression curve supported by Upper and Lower Standard Deviation bands to support your decision
Linear regression series is the average of Close and VWAP to guarantee volume is represented in calculation
Interpretation is similar to what you do with Bollinger Bands
TMMS OscillatorThe TMMS oscillator (aka “Trading Made More Simpler”) is an indicator made of conditions based on both 2 separated Stochastic and 1 RSI.
Bullish zone is green and bearish one is red. When the histogram is grey, no signals is available at that time.
The indicator has an option to show the current trend of an Hull moving average (ascending or descending curve). When the trend is up, green dots are plotted on the zero line. When the trend is down, the dots are coloured in red.
Greetings, success with your trade!!!
Charles Recession WatchThe “Recession Watch” indicator tracks 7 key economic metrics which have historically preceded US recessions. It provides a real-time indication of incoming recession risk.
This indicator gives a picture of when risk is increasing, and therefore when you might want to start taking some money out of risky assets.
All of the last seven recessions were preceded by a risk score of 3 or higher. Six of them were preceded by a risk score of 4 or higher. Unfortunately data prior to 1965 was inconsistent and prior recessions could not be considered.
Based on the indicator hit rate at successfully flagging recessions over the last 50 years, risk scores have the following approximate probabilities of recession:
- 0-1: Low
- 2: 25% within next 18 months
- 3: 30% within next 12 months
- 4-7: 50% within next 12 months
Note that a score of 3 is not necessarily a cause for panic. After all, there are substantial rewards to be had in the lead up to recessions (averaging 19% following yield curve inversion). For the brave, staying invested until the score jumps to 4+, or until the S&P500 drops below the 200day MA, will likely yield the best returns.
Notes on use:
- use MONTHLY time period only (the economic metrics are reported monthly)
- If you want to view the risk Score (1-7) you need to set your chart axis to "Logarithmic"
Enjoy and good luck!
Forecasting - Drift MethodIntroduction
Nothing fancy in terms of code, take this post as an educational post where i provide information rather than an useful tool.
Time-Series Forecasting And The Drift Method
In time-series analysis one can use many many forecasting methods, some share similarities but they can all by classified in groups and sub-groups, the drift method is a forecasting method that unlike averages/naive methods does not have a constant (flat) forecast, instead the drift method can increase or decrease over time, this is why its a great method when it comes to forecasting linear trends.
Basically a drift forecast is like a linear extrapolation, first you take the first and last point of your data and draw a line between those points, extend this line into the future and you have a forecast, thats pretty much it.
One of the advantage of this method is first its simplicity, everyone could do it by hand without any mathematical calculations, then its ability to be non-conservative, conservative methods involve methods that fit the data very well such as linear/non-linear regression that best fit a curve to the data using the method of least-squares, those methods take into consideration all the data points, however the drift method only care about the first and last point.
Understanding Bias And Variance
In order to follow with the ability of methods to be non-conservative i want to introduce the concept of bias and variance, which are essentials in time-series analysis and machine learning.
First lets talk about training a model, when forecasting a time-series we can divide our data set in two, the first part being the training set and the second one the testing set. In the training set we fit a model to the training data, for example :
We use 200 data points, we split this set in two sets, the first one is for training which is in blue, and the other one for testing which is in green.
Basically the Bias is related to how well a forecasting model fit the training set, while the variance is related to how well the model fit the testing set. In our case we can see that the drift line does not fit the training set very well, it is then said to have high bias. If we check the testing set :
We can see that it does not fit the testing set very well, so the model is said to have high variance. It can be better to talk of bias and variance when using regression, but i think you get it. This is an important concept in machine learning, you'll often see the term "overfitting" which relate to a model fitting the training set really well, those models have a low to no bias, however when it comes to testing they don't fit well at all, they have high variance.
Conclusion On The Drift Method
The drift method is good at forecasting linear trends, and thats all...you see, when forecasting financial data you need models that are able to capture the complexity of the price structure as well as being robust to noise and outliers, the drift method isn't able to capture such complexity, its not a super smart method, same goes for linear regression. This is why more peoples are switching to more advanced models such a neural networks that can sometimes capture such complexity and return decent results.
So this method might not be the best but if you like lines then here you go.