Stochastic w/ Crossover Alerts (by WJ)NOTE:
// STOCHASTIC CODE TAKEN FROM DEFAULT INDICATOR
// I HAVE ONLY MADE SOME ADJUSTMENTS FOR VISUAL AID
// I MADE THIS FOR MY OWN USE BUT HAVE DECIDED TO PUBLISH AND SHARE IN CASE ANYBODY WANTS TO USE IT
This is the normal default built-in Stochastic indicator which I have added some stuff for visual aid:
Stochastic background turns green when K line crosses D line UPWARDS, D line is below the oversold level, and price is above selected MA
Stochastic background turns red when K line crosses D line DOWNWARDS, D line is above the overbought level, and price is below selected MA
Alert notification on the crossover candle with background colour change when conditions are met (MA filter)
Stokastik Osilatör
Kifier's MFI/STOCH Hidden Divergence/Trend BeaterMFI/STOCH Hidden Divergence/Trend Beater
General Idea:
My premise around this strategy was to make a general strategy for crypto that would help out with finding entry positions for when you’re bullish on a crypto and want to hold on for a while, and at the same time avoiding massive drops. Essentially a way to mix long term/ swing trading; I somewhat achieved my goal however it still requires a lot of logic tuning of the trend averages.
I’m a huge proponent of volume indicators and coupled with average closing price, I think this gives a really good idea of what is happening with the market. It gives an idea on the market and retail investor sentiment. This generally gives you logical entry positions (Although I don’t know how amazing that will work with all cryptos, there’s a fine line between a good strategy and one that just rides bubble market conditions, some would argue that’s still a success and others not)
How it works:
There are many components to the strategy that try to do different things:
First of all there are two types of entries, a MFI hidden divergence with a STOCH check, essentially it will only fire when a divergence is detected while STOCH is above 50%, however this might be changed in the future as due to the volatile nature of cryptos, the STOCH is not too effective. The second entry is a simple MFI/STOCH trend, if STOCH is above 50% and the trend is detected to be in a trending long, once a MFI crossover over the 50% line is detected an entry is placed, this is designed to get out profit where the divergence would otherwise be less accurate during strongly trending conditions.
-MFI is a great indicator, as a volume weighted momentum indicator I find it the most accurate of all, the STOCH however is a great indicator to get a general picture of simple market conditions and can filter out the emotional noise of retail investors.
-VWMA and an SMA (The bottom oscillator) gives an idea of the trend tacking into account of the volume, this serves as a more short term filter of the trend for filters.
-OBV checks are done between the OBV and an EMA of the OBV, to get the idea of a volume weighted long trend, which is important for crypto as there are massive rallies to go up due to retail greed, it’s great to jump onto it at the beginning, and get off before the stack of cards fall apart.
-ATR is used to detect when the market is relatively just ranging or moving sideways, which is where the hidden divergence entries are done, during predictable and profitable market conditions.
- Stop loss is based on the closest support of the entry, this is a nice medium of room to breath but also an actual stop loss.
Future plans and improvements:
Currently there’s a lot I want to improve, mostly the divergence detection and the overall sharpe ratio could be much better, but the current value of 0.5 gives me hope that the strategy is onto something. I also want to change TP from a percentage stop to something more dynamic but that might be too optimistic. The current plan is to paper trade test this either by manual or by a python bot, to see how it performs with some user input as well.
Alert(), alertcondition() or strategy alerts?Variety of possibilities offered by PineScript, especially thanks to recent additions, created some confusion. Especially one question repeats quite often - which method to use to trigger alerts?
I'm posting this to clarify and give some syntax examples. I'll discuss these 3 methods in chronological order, meaning - in the order they were introduced to PineScript.
ALERTCONDITION() - it is a function call, which can be used only in study-type script. Since years ago, you could create 2 types of a script: strategy and study. First one enables creating a backtest of a strategy. Second was to develop scripts which didn't require backtesting and could trigger alerts. alertcondition() calls in strategy-type scripts were rejected by Pine compiler. On the other hand compiling study-type scripts rejected all strategy...() calls. That created difficulties, because once you had a nice and backtested strategy, you had to rip it off from all strategy...() function calls to convert your script to study-type so you could produce alerts. Maintenance of two versions of each script was necessary and it was painful.
"STRATEGY ALERTS" were introduced because of alertcondition() pains. To create strategy alert, you need to click "Add alert" button inside Strategy Tester (backtester) and only there. Alerts set-up this way are bound with the backtester - whenever backtester triggers an order, which is visible on the chart, alert is also fired. And you can customize alert message using some placeholders like {{strategy.order.contracts}} or {{ticker}}.
ALERT() was added last. This is an alerts-triggering function call, which can be run from strategy-type script. Finally it is doable! You can connect it to any event coded in PineScript and generate any alert message you want, thanks to concatenation of strings and wrapping variables into tostring() function.
Out of these three alertcondition() is obviously archaic and probably will be discontinued. There is a chance this makes strategy/study distinction not making sense anymore, so I wouldn't be surprised if "studies" are deprecated at some point.
But what are the differences between "Strategy alerts" and alert()? "Strategy alerts" seem easier to set-up with just a few clicks and probably easier to understand and verify, because they go in sync with the backtester and on-chart trade markers. It is especially important to understand how they work if you're building strategy based on pending orders (stop and limit) - events in your code might trigger placing pending order, but alert will be triggered only (and when) such order is executed.
But "Strategy Alerts" have some limitations - not every variable you'd like to include in alert message is available from PineScript. And maybe you don't need the alert fired when the trade hit a stop-loss or take-profit, because you have already forwarded info about closing conditions in entry alert to your broker/exchange.
Alert() was added to PineScript to fill all these gaps. Is allows concatenating any alert message you want, with any variable you want inside it and you can attach alert() function at any event in your PineScript code. For example - when placing orders, crossing variables, exiting trades, but not explicitly at pending orders execution.
The Verdict
"Strategy Alerts" might seem a better fit - easier to set-up and verify, flexible and they fire only when a trade really happens, not producing unnecessary mess when each pending order is placed. But these advantages are illusionary, because they don't give you the full-control which is needed when trading with real money. Especially when using pending orders. If an alert is fired when price actually hit a stop-order or limit-order level, and even if you are executing such alert within 1 second thanks to a tool like TradingConnector, you might already be late and you are making entry at a market price. Slippage will play a great role here. You need to send ordering alert when logical conditions are met - then it will be executed at the price you want. Even if you need to cancel all the pending orders which were not executed. Because of that I strongly recommend sticking to ALERT() when building your alerts system.
Below is an example strategy, showing syntax to manage placing the orders and cancelling them. Yes, this is another spin-off from my TradingView Alerts to MT4 MT5 . As usual, please don't pay attention to backtest results, as this is educational script only.
P.S. For the last time - farewell alertcondition(). You served us well.
2nd Grade StrategyThis is a strategy to complement the 2GT indicator. It utilises the same rules as 2GT.
This is comprises of multiple popularly used indicators to help decide on whether to go long or short. This indicator will overlay the MA lines and background colours on your chart.
The heikin-ashi colour will be shown as the background colour. This will help you identify a trend more easily while using bars, candles, hollow candles, etc. When the background is green, it means that it is a green HA and vice versa.
The blue MA line is for showing the short-term trend. The red MA line is for showing the medium-term trend. You can select the moving average flavour of your choice in the settings.
The yellow MA line is the long-term trend that is mainly used as a filter to indicate bullish/bearish trend. The MA type for this filter can be different from the short/mid term MA.
This indicator will also show Stochastic crossovers (GC, DC, BC) on the chart. This will help to always keep your eye on the chart candles.
In the settings, you can also turn on/off bullish/bearish signals.
Rules for bullish signals on this indicator:-
1. MA: Blue > Red > Yellow (FastMA > SlowMA > FilterMA)
2. Stochastic: K > D and both are heading upwards
3. 2nd Green HA
When 2 out of the 3 rules are met, the candle background will be Aqua in colour. When all 3 rules are met, the candle background will be Green .
Rules for bearish signals on this indicator:-
1. MA: Yellow > Red > Blue (FilterMA > SlowMA > FastMA)
2. Stochastic: D > K and both are heading downwards
3. 2nd Red HA
When 2 out of the 3 rules are met, the candle background will be Orange in colour. When all 3 rules are met, the candle background will be Red .
Do note that you can hide any of these elements in via the settings.
If you find this useful, do smash the LIKE and FOLLOW button.
WSLM
2nd Grade TechniqueThis is comprises of multiple popularly used indicators to help decide on whether to go long or short. This indicator will overlay the MA lines and background colours on your chart.
The heikin-ashi colour will be shown as the background colour. This will help you identify a trend more easily while using bars, candles, hollow candles, etc. When the background is green, it means that it is a green HA and vice versa.
The blue MA line is for showing the short-term trend. The red MA line is for showing the medium-term trend. You can select the moving average flavour of your choice in the settings.
The yellow MA line is the long-term trend that is mainly used as a filter to indicate bullish/bearish trend. The MA type for this filter can be different from the short/mid term MA.
This indicator will also show Stochastic crossovers (GC, DC, BC) on the chart. This will help to always keep your eye on the chart candles.
In the settings, you can also turn on/off bullish/bearish signals.
Rules for bullish signals on this indicator:-
1. MA: Blue > Red > Yellow (FastMA > SlowMA > FilterMA)
2. Stochastic: K > D and both are heading upwards
3. 2nd Green HA
When 2 out of the 3 rules are met, the candle background will be Aqua in colour. When all 3 rules are met, the candle background will be Green .
Rules for bearish signals on this indicator:-
1. MA: Yellow > Red > Blue (FilterMA > SlowMA > FastMA)
2. Stochastic: D > K and both are heading downwards
3. 2nd Red HA
When 2 out of the 3 rules are met, the candle background will be Orange in colour. When all 3 rules are met, the candle background will be Red .
Do note that you can show/hide any of these elements via the settings.
If you find this useful, do smash the LIKE and FOLLOW button.
WSLM
Moving Stop-Loss mechanism + alerts to MT4/MT5"How to code moving stop-loss mechanism", is one of the most often repeating questions in private messages I receive, so just to focus on this mechanism, I made a spin-off from my previous script: TradingView-Alerts-to-MT4-MT5-dynamic-variables-NON-REPAINTING .
The logic here moves the stop-loss each time a trade is running and a new pivot high/low is detected. When such event occurs (UpdateLongStopLoss or UpdateShortStopLoss), stoploss_long or stoploss_short mutable variable is modified. And it needs to be coded inside strategy.exit() line as "stop=stoploss_long" or "stop=stoploss_short". Entries are pretty straightforward - on Stoch crosses.
Last lines of the script show how to wrap information about such updates and send send alerts to MetaTrader via TradingConnector for execution in Forex/indices/commodities/crypto markets via MetaTrader. Please note that "tradeid=" variable must be passed with each alert, to let MetaTrader know which trade to modify. SLMOD, TPMOD are recently added commands, along with BE (as in "move stop-loss to breakeven" - but that's another topic).
Please disregard strategy backtest results, as this script is for coding education purposes only. However, it seems with the stop-loss mechanism enabled, the results are even better, than in original version of the script :)
How to use Leverage and Margin in PineScriptEn route to being absolutely the best and most complete trading platform out there, TradingView has just closed 2 gaps in their PineScript language.
It is now possible to create and backtest a strategy for trading with leverage.
Backtester now produces Margin Calls - so recognizes mid-trade drawdown and if it is too big for the broker to maintain your trade, some part of if will be instantly closed.
New additions were announced in official blogpost , but it lacked code examples, so I have decided to publish this script. Having said that - this is purely educational stuff.
█ LEVERAGE
Let's start with the Leverage. I will discuss this assuming we are always entering trades with some percentage of our equity balance (default_qty_type = strategy.percent_of_equity), not fixed order quantity.
If you want to trade with 1:1 leverage (so no leverage) and enter a trade with all money in your trading account, then first line of your strategy script must include this parameter:
default_qty_value = 100 // which stands for 100%
Now, if you want to trade with 30:1 leverage, you need to multipy the quantity by 30x, so you'd get 30 x 100 = 3000:
default_qty_value = 3000 // which stands for 3000%
And you can play around with this value as you wish, so if you want to enter each trade with 10% equity on 15:1 leverage you'd get default_qty_value = 150.
That's easy. Of course you can modify this quantity value not only in the script, but also afterwards in Script Settings popup, "Properties" tab.
█ MARGIN
Second newly released feature is Margin calculation together with Margin Calls. If the market goes against your trades and your trading account cannot maintain mid-trade drawdown - those trades will be closed in full or partly. Also, if your trading account cannot afford to open more trades (pyramiding those trades), Margin mechanism will prevent them from being entered.
I will not go into details about how Margin calculation works, it was all explainged in above mentioned blogpost and documentation .
All you need to do is to add two parameters to the opening line of your script:
margin_long = 1./30*50, margin_short = 1./30*50
Whereas "30" is a leverage scale as in 30:1, and "50" stands for 50% of Margin required by your broker. Personally the Required Margin number I've met most often is 50%, so I'm using value 50 here, but there are literally 1000+ brokers in this world and this is individual decision by each of them, so you'd better ask yourself.
--------------------
Please note, that if you ever encounter a strategy which triggers Margin Call at least once, then it is probably a very bad strategy. Margin Call is a last resort, last security measure - all the risks should be calculated by the strategy algorithm before it is ever hit. So if you see a Margin Call being triggred, then something is wrong with risk management of the strategy. Therefore - don't use it!
Stochastic & RSIThis script is a simple extension of the Built-In Stochastic RSI that also plots the RSI and prints the values of ATR and ADX of the last bar of the current timeframe to a small table in the corner.
The script can be used to define the entry for a trade when the stochastics crossed and RSI is below or above 0.50 (for going long or short).
OANDA:BTCUSD
I like to use the Stochastics and RSI indicators for pullback strategies, and with this inidcator you dont have to add both indicators to your setup. The ATR can be used to define the value of your stop-loss and the ADX (e.g. > 25) give you a hint for the strength of the current trend.
Stochastic MFIDue to some similarity of the Relative Strength Index(RSI) and Money Flow Index(MFI), I thought of creating a Stoch MFI inspired by the Stoch RSI.
- can be used similar to the Stoch RSI
- useful for pullback during trending markets and for S&R trading during ranging markets
TAYOR!
DMI With Crosses (MyNewTrade)Directional Movement Indicator:
+DI and -DI
I changed the color of the bar bars according to the crossed of +DI and -DI . It helps us to have an idea of whether the trend is continuing or not.
+DI crossover to -DI barcolor is Aqua, if not bar color is Red.
It also helps us to find the lowest and highest points of the graph according to the positions of Adx +DI and -DI .
It gives warnings at the lowest and highest points, which helps us to detect the direction of the trend.
Stochastic RSI - DurbtradeDurbtrade Stoch RSI -
1) Stoch RSI
A) The K line can be customized to change color based on vertical direction.
B) The space between K line and D line can be filled with a color depending on whether K line is above or below the D line.
C) There are color-coded, cross-over and cross-under background fills, to signal when the K line crosses the D line.
D) K line is drawn in front of D line (D line is drawn behind K line).
E) Default values : K = 3, D = 4, RSI Length = 14, Stoch Length = 14
2) Horizontal Lines
A) Horizontal lines can be drawn automatically, so you don't have to draw them, and they don't extend past the current bar.
B) There are 11 customizable horizontal lines,
and each line is set to non-customizable increments (zero, 10, 20, 30, 40, fifty, 60, 70, 80, 90, hundred).
C) The 11 lines are divided into 2 groups:
a) 4 PAIRS of lines WITH fill options (10/90, 20/80, 30/70, 40/60... 8 lines total), and
b) 3 INDIVIDUAL lines WITHOUT fill options (zero, fifty, hundred).
D) The 4 fills give you the option to fill the space between each pair with a customizable color and opacity,
regardless of whether the lines themselves are drawn or not.
(all default values are what I feel work best for this indicator...
and initially, only the zero, fifty, and hundred lines are drawn automatically .
You may add the other lines if you choose to, by adjusting the opacity to your liking).
3) Conclusion
A) As with my previous indicators, this one maximizes information, color, discernment, clarity, and customization.
B) It is optimized for your ability to be able to easily customize the indicator according to your preferences...
for use on your own personal television, laptop, or cellular phone screen setup... and on all chart zoom levels and layouts.
C) Please feel free to comment your thoughts, critiques, or suggestions. They are all helpful!
D) Check out my previous pine script indicators if you like this one. They work really well together.
E) I hope that you find this script useful.
F) Enjoy!
//Durbtrade
Premier Stochastic Oscillator (PSO) [andre_007]This is a improved version of Premier Stochastic Oscillator (PSO), coded by "LazyBear".
"The indicator was first introduced by technical analyst Lee Leibfarth in the August 2008 issue of the journal Technical Analysis of Stocks & Commodities".
Inprovements:
The script was update to version 4 of PineScript.
Added support for diferents times frames.
For example, now it's possible to stay in intraday and at same time see a weekly version of this indicator.
Possibility to customize the thresholds.
Introduction to indicator:
"Stochastic oscillators have long been used to help traders and investors identify areas where trend changes are likely.
Leibfarth developed the PSO to take advantage of a standard stochastic oscillator's strengths while enhancing it to become more reactive to market activity.
The result is a faster indicator that provides earlier signals for potential trend changes".
More info:
www.investopedia.com
Stochastic RSI w/ Crossover Alerts (by WJ)NOTE:
// STOCH RSI CODE TAKEN FROM DEFAULT INDICATOR
// I HAVE ONLY MADE SOME ADJUSTMENTS FOR VISUAL AID
// I MADE THIS FOR MY OWN USE BUT HAVE DECIDED TO PUBLISH AND SHARE IN CASE ANYBODY WANTS TO USE IT
This is the normal default built-in Stochastic RSI indicator which I have added some stuff for visual aid:
Added middle line (50)
Stoch RSI background turns green when K line crosses D line UPWARDS, K line is below the 50 level, and price is above 200 EMA
Stoch RSI background turns red when K line crosses D line DOWNWARDS, K line is above the 50 level, and price is below 200 EMA
Alert notification on the crossover candle with background colour change conditions met
[GJ]IFRSITHE INVERSE FISHER TRANSFORM STOCH RSI
HOW IT WORKS
This indicator uses the inverse fisher transform on the stoch RSI for clear buying and selling signals. The stoch rsi is used to limit it in the range of 0 and 100. We subtract 50 from this to get it into the range of -50 to +50 and multiply by .1 to get it in the range of -5 to +5. We then use the 9 period weighted MA to remove some "random" trade signals before we finally use the inverse fisher transform to get the output between -1 and +1
HOW TO USE
Buy when the indicator crosses over –0.5 or crosses over +0.5 if it has not previously crossed over –0.5.
Sell when the indicator crosses under +0.5 or crosses under –0.5 if it has not previously crossed under +0.5.
We can see multiple examples of good buy and sell signals from this indicator on the attached chart for QCOM. Let me know if you have any suggestions or thoughts!
Stochastic RVIBased on the Stochastic RSI but uses RVI (Relative Volatility Index) as source. Another great tool for finding market lows and entry points. This oscillator is also good for finding accurate diversions.
(JS) Triple StochasticSo I ended up adding a ton of stuff to my prior Double Stochastic script which you can see here .
The concept of the Double was to smooth out the existing Stochastic by applying a Stochastic to the existing Stochastic (hence the Double). My concept for the Triple Stochastic is much different. It combines a regular stochastic, stochastic RSI, and the double stochastic to get a smoothed output based on all 3.
Also - since I love being able to see a Squeeze (see my Squeeze Pro indicators - Squeeze Pro 2 & Squeeze Pro Overlays ) I added the Squeeze to the Stochastic (the dots). If you're unfamiliar with how a Squeeze works, or what it is, check out my links for explanation. A quick explanation however is that the Squeeze is an indicator that was invented by John Carter that detects price compression before a big move out of a range. This is done by using Bollinger Bands and Keltner Channels, the BB shrink inside the KC. The color of the dots represent the depth of the BB in the KC, white (or black) being the lightest squeeze, red being the standard squeeze, and yellow being the strongest squeeze. Now on to the indicator:
The first thing you'll notice is the options available for the type of Stochastic you'd like to use:
Standard : This is a regular Stochastic
Stochastic RSI : This is the standard Stochastic RSI
Double : This is the Stochastic on top of a Stochastic from the prior version
Triple : This is simply an average of all 3 of the above combined together
(Top indicator shows the Triple Stochastic)
The options "K", "D", and "Smooth" are the settings from a regular Stochastic used to set up the type of Stochastic you choose to use.
Now let's say you're not sure how one type performs compared to another, or you like the quickest momentum change but also like to see the smoothest trend, or you want to use the same types of Stochastic and watch for them to cross like moving averages - for these reasons I added the ability to add a second Stochastic for comparison.
(2nd indicator shows a fast and slow Triple Stochastic together)
Quite obviously, the "K 2", "D 2", and "Smooth 2" are what is used in order to set the parameters for the second Stochastic.
Now another thing I added was the option to replace the regular Stochastic and instead look at the distance between the K and D. By turning off "Use K% and D%" you get to see this in action. To put it simply, a cross above zero would indicate a positive Stochastic crossover, and a cross below zero would represent the opposite. There's also an option titled "SMA Length using Difference" which, to smooth this out a bit, allows you to apply a moving average to the distance. By setting it at 1 you'd see the actual distance between K and D.
(3rd indicator shows the K and D distance used as a plot)
Another thing I wanted to do was add a different type of background that wasn't based on the indicator itself. I decided to use ADX & DMI which is a great way to determine the trend. When you select "ADX/DMI BG" the BG colors will change from being based on the indicator to being based on ADX and DMI.
(The 3rd indicator also shows the ADX/DMI BG being used).
And now finally the last feature I decided to add takes us back to the Squeeze. Essentially it is just the Stochastic shown through the lens of Squeeze momentum, as I ended up plugging the Stochastic output into the Squeeze momentum formula to create an oscillator. By selecting "Use Oscillator" you will see this in action as well.
(Bottom indicator shows the oscillator addition)
Stochastic(4,3,2) Spread By Rajv1: This indicator plots a spread of %K - %D of the stochastic(4,3,2).
STOCHASTIC+Stochastic Oscillators are used to determine Overbought and Oversold Market conditions. This Stoch is set to a quicker Length then normal with an RSI that changes color depending on Momentum. When RSI is Overbought you well get a red shadow to indicate the market is setting up for a sell. When the RSI is Oversold you will get a green shadow to indicate the market is setting up for a buy
FUERSTUses Normalized Price Oscillator and Stochastics and combines them as an ADX weighted measure.
During low trend intensity Stochastics gets higher weighted than Price Oscillator, and vice-versa in times of high trend-intensity.
Stochastic Structure AnalyzerA momentum indicator that uses the highest and lowest values for price in three different lookback lengths to find the performance relative to three timeframes.
- Stochastic can be used for buy and sell signals as usual.
- The bars at the back represent the stochastic value of the OBV based structure calculation.
- The color of the stochastic line is a preliminary indicator of an up move.
- The fill color between the stochastic lines indicate the trend strength,
How to use: I suggest combining this with a higher timeframe to buy when the both stochastics are crossing below 20 line. And sell when one of the stochastics crosses-down.
This is the stochastic version of the structure analyzer().
Upgraded Stochastic by YenJust an enhanced version of stochastic which added with special symbol whenever K and D line crossing up or down.
Background color is green whenever K line is above middle level 50 and red when below middle level 50.
You may also turn on the histogram in settings.