Point of possible Reversal (PPR): forex Strategy

point of possible Reversal, PPR :
in this strategy I have tried to find out the possible Reversal points in the forex pairs. It’s the most resisted levels from where the trend takes up a particular direction. These PPR can lead the price in any direction depending upon the time zone its happening in.

In this strategy once the code finds a PPR it then checks for suitable time zone then it checks for the RSI confirmation, it checks for the Parkinson Volatility , it checks for internal Bar Strength (refer below for more information)
The following setting details will help you in the understanding the strategy and indicator used:

This indicator contains the following setting:
1.Fixed trading sessions for Long and Short
i. Fixed trading session for long trades (long position can be taken in that period of time only)
ii. Fixed trading session for short trades (Short position can be taken in that period of time only)

The concept behind restricting the time to go long or short is because in forex the particular pair move in a particular direction depending upon the currency and time zones.
This strategy works on different forex pairs, you need to find the best settings. I will be providing the best settings which works for this strategy and different pairs.

2.Setting for back test selection date range you can check the beck test of a particular time range.

3.You can check Long and Short positions performance separately, by unchecking the “Go_long” option it will remove all long positions from back test. Vice versa for “Go_short "option

4.Internal Bar Strength
IBS is simply an indicator where you buy on weakness and sell on strength, the cornerstone of any mean-reverting strategy.
It oscillates from zero to one and measures the relative position of the closing price relative to the High and Low.
IBS = (Close – Low) / (High – Low)

In the input setting the you can disable enable the IBS option from the strategy.

5. Parkinson volatility
Parkinson volatility is a volatility measure that uses the stock’s high and low price of the day (can be changed in the setting, instead of day it can be set to any bar length)
The main difference between regular volatility and Parkinson volatility is that the latter uses high and low prices for a day, rather than only the closing price.

In the setting you have three option
1. Enter Volatility Threshold
If the Parkinson volatility value is greater than the the threshold value then it lets the trade happen.
2.Set the high/low bar time frame for calculating Parkinson volatility . ( Set 60m by default)

Formula used as below:
high_=security(syminfo.ticker, input("60"), high)
low_=security(syminfo.ticker, input("60"), low)
hourlyRangeSquared = pow((log(high_) - log(low_)), 2)
dailyParkinsonVol = sqrt(sum(hourlyRangeSquared, 24) / (4 * log(2)))

6. "Enter no of contract size"
This setting helps you to set the contract size , by default it is set to 100000.

7.This setting is for the PPR , in this you can change the search of PPR in another time frame, you can add higher timeframe PPR in the chart, by default the PPR is set to search for current time frame PPR .

8.Futrther confirmation of trade is done through the RSI criteria. In this I have provided four kind of RSI confirmation you can test all by selecting any one of the four.

1. filter trade on the basis of BB of RSI (as shown in the image)
2. filter trade on the basis of RSI Levels (RSI>50 for long, vice versa for short)
3. filter trade by rsi>basis of BB of RSI (for long) & rsi<50(for short)
4. filter trade by rsi>50(long) & rsi< basis of BB of RSI (short)


9.For Exiting the trade I have used the trailing SL you can change it in setting.
You can exit the trade using two targets (two take profit) using different size for editing the trade.

If you want to take only on target then you have to make QANTITY of shares for 1st Exit as 100. Then you will exit all your position in the first target achieved.

A big thanks to there articles are very helpful
Thanks to stack overflow community for clearing the doubts.
Thanks to Mickey for providing assistance.
Trading view official documentation on V4 of pine script also helped me.

Notes de version: major update
Better Input section

An enthusiast trader. I code my strategies in pine script.DM me or Mail Me for any Info at
BTC : 1PZdTyH2faJn6XTyFK8C8uvS8zba2gCRmw
ETH : 0x0dF010AE708E424FD227f07538DeB24faa8B60e6
Script sur invitation seulement

L'accès à ce script est limité aux utilisateurs autorisés par l'auteur et nécessite généralement un paiement. Vous pouvez l'ajouter à vos favoris, mais vous ne pourrez l'utiliser qu'après avoir demandé et obtenu l'autorisation de son auteur. Contactez Badshah.E.Alam pour plus d'informations, ou suivez les instructions de l'auteur ci-dessous.

TradingView ne suggère pas de payer pour un script et de l'utiliser avant d'avoir 100% confiance en son auteur et de comprendre son fonctionnement. Dans de nombreux cas, vous pouvez trouver gratuitement une bonne alternative open-source dans nos Scripts communautaires.

Clause de non-responsabilité

Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.

Instructions de l'auteur

If you do like/comment this post I will give you 3 days free access for trial. you need not message me for trial access. DM me mail me contact me to get access for more than 3 days.

Vous voulez utiliser ce script sur un graphique ?

Avertissement : Veuillez lire avant de demander l'accès.