This indicator is a dedication to the work of @RobInTheBlack (Twitter Handle) who has helped countless traders with this pure price action based strategy that he developed over the past 27 years of trading, It is called #TheStrat
This indicator can plot the 4 different Price Action based reversals (along with their entries) as discussed here: https://www.newtraderu.com/2019/02/13/what-do-we-know-to-be-true-about-price-action/
I recommend importing the .ITF in order to load the variables, but for those interested here is the code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
InsideBar = high < high[1]-tollerance*pointsize and low > low[1]+tollerance*pointsize OutsideBar = high > high[1]+tollerance*pointsize and low < low[1]-tollerance*pointsize TwoUp = high > high[1]+tollerance*pointsize and low > low[1]+tollerance*pointsize TwoDown = low < low[1]-tollerance*pointsize and high < high[1]-tollerance*pointsize Up = close > open+tollerance*pointsize Down = close < Open-tollerance*pointsize If TwoOneTwo = 1 Then If EarlyDetection = 1 Then If TwoUp[2] and Up[2] and InsideBar[1] Then drawtext("↑2-1-2↓?",barindex,highest[2](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,low[1]-tollerance*pointsize,barindex+ExtendLines,low[1]-tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-1,high[1]+tollerance*pointsize,barindex+ExtendLines*2,high[1]+tollerance*pointsize)coloured(255,0,0) EndIf ElsIf TwoDown[2] and Down[2] and InsideBar[1] Then drawtext("↓2-1-2↑?",barindex,lowest[2](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,high[1]+tollerance*pointsize,barindex+ExtendLines,high[1]+tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-1,low[1]-tollerance*pointsize,barindex+ExtendLines*2,low[1]-tollerance*pointsize)coloured(255,0,0) EndIf EndIf Else If TwoUp[2] and Up[2] and InsideBar[1] and TwoDown and Down Then drawtext("↑2-1-2↓",barindex-1,highest[3](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-2,low[1]-tollerance*pointsize,barindex+ExtendLines,low[1]-tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-2,high[1]+tollerance*pointsize,barindex+ExtendLines*2,high[1]+tollerance*pointsize)coloured(255,0,0) EndIf ElsIf TwoDown[2] and Down[2] and InsideBar[1] and TwoUp and Up Then drawtext("↓2-1-2↑",barindex-1,lowest[3](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-2,high[1]+tollerance*pointsize,barindex+ExtendLines,high[1]+tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-2,low[1]-tollerance*pointsize,barindex+ExtendLines*2,low[1]-tollerance*pointsize)coloured(255,0,0) EndIf EndIf EndIf EndIf If TwoTwo = 1 Then If TwoUp[1] and TwoDown Then drawtext("↑2-2↓",barindex,highest[3](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,lowest[2](low),barindex+ExtendLines,lowest[2](low)) EndIf ElsIf TwoDown[1] and TwoUp Then drawtext("↓2-2↑",barindex,lowest[3](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,highest[2](high),barindex+ExtendLines,highest[2](high)) EndIf EndIf EndIf If TwoThree = 1 Then If TwoUp[1] and OutsideBar and Down Then drawtext("↑2-3↓",barindex,highest[3](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,lowest[2](low),barindex+ExtendLines,lowest[2](low)) EndIf ElsIf TwoDown[1] and OutsideBar and Up Then drawtext("↓2-3↑",barindex,lowest[3](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,highest[2](high),barindex+ExtendLines,highest[2](high)) EndIf EndIf EndIf If ThreeOneTwo = 1 Then If EarlyDetection = 1 Then If OutsideBar[2] and Up[2] and InsideBar[1] Then drawtext("↑3-1-2↓?",barindex-1,highest[3](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,low[1]-tollerance*pointsize,barindex+ExtendLines,low[1]-tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-1,high[1]+tollerance*pointsize,barindex+ExtendLines*2,high[1]+tollerance*pointsize)coloured(255,0,0) EndIf ElsIf OutsideBar[2] and Down[2] and InsideBar[1] Then drawtext("↓3-1-2↑?",barindex-1,lowest[3](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-1,high[1]+tollerance*pointsize,barindex+ExtendLines,high[1]+tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-1,low[1]-tollerance*pointsize,barindex+ExtendLines*2,low[1]-tollerance*pointsize)coloured(255,0,0) EndIf EndIf Else If OutsideBar[2] and Up[2] and InsideBar[1] and TwoDown and Down Then drawtext("↑3-1-2↓",barindex-1,highest[3](high)+spacing*pointsize,dialog,standard,12) coloured(255,0,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-2,low[1]-tollerance*pointsize,barindex+ExtendLines,low[1]-tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-2,high[1]+tollerance*pointsize,barindex+ExtendLines*2,high[1]+tollerance*pointsize)coloured(255,0,0) EndIf ElsIf OutsideBar[2] and Down[2] and InsideBar[1] and TwoUp and Up Then drawtext("↓3-1-2↑",barindex-1,lowest[3](low)-spacing*pointsize,dialog,standard,12) coloured(0,255,0) If DrawBreakoutLine = 1 Then drawsegment(barindex-2,high[1]+tollerance*pointsize,barindex+ExtendLines,high[1]+tollerance*pointsize)coloured(0,0,255) drawsegment(barindex-2,low[1]-tollerance*pointsize,barindex+ExtendLines*2,low[1]-tollerance*pointsize)coloured(255,0,0) EndIf EndIf EndIf EndIf Return |
Share this
No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.
ProRealTime ITF files and other attachments :PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials
HI
I am struggling to back test this everytime I import it to the indicator bar it does not appear on my backtesting page and only appears on my indicator page. Any suggestions welcome.
This is only an Indicator, the strategy tester is posted in the library here: https://www.prorealcode.com/prorealtime-trading-strategies/thestrat-combo-tester/
it seems not working on prorealtime v11.1
thanks a lot, it´s very helpfull for me. Do you know, where i can find more Indicators for #TheStrat
Hi Juan – awesome implementation of Robins price action analysis. Any chance this can be modded into a screener?
Best
//copperwave
Well done Juan!
IS this working in the latest version of prorealtime? I get the indicator, but not over my chart, but in a separate part of the window but it is also blank?
egalement apparait en dessous du graphique mais vide
Bonjour
est t il possible de remettre en ligne the strat car il y a une indication qui demande au concepteur de le remettre en ligne
Cordialement