| Trading Indicators Post your custom trading indicators. If you download, remember to click INSTALL. |
![]() | | Tweet | |
Support and Resistance Auto Plots Details »» | |||||||||||||||||||||||||||
This is the indicator that I use on my chart. It is the only indicator I use on a price chart. As far as price is concerned, all I care about is Support and Resistance. I use this indicator on a one minute chart of the ES E-mini SP 500. It plots a Resistance line as soon as a Peak signal fires. When the second Peak signal fires, it plots a new Resistance line, and extends the old Resistance line in a different style. The same happens for Support lines. ![]() This indicator in in Easy Language code, programed in tradestation. It is shown below, plus attached as an ELD file. Code: //7-8-11
// Programed by tradescripter
//hh=higher high, ll=lower low
var: hh(False),ll(False),lh(False),hl(False);
var: ClsDwn(False),ClsUp(False);
var: Aftr929(False),Aftr932(False),Aftr939(False);
var: BeforeCls(False);
var: DayHrs(False),newDay(False),OKtoPlot(False);
var: Peak1(False),Peak2(False),Peak3(False),Peak4(False),Peak5(False),Peak6(False);
var: Bttm1(False),Bttm2(False),Bttm3(False),Bttm4(False),Bttm5(False),Bttm6(False);
var: Peak(False),Bttm(False);
var: PeakPrice(H),BttmPrice(L),PriorPeakPrice(H),PriorBttmPrice(L);
var: NoPriorPk(False),NoPriorBttm(False);
var: HL_Price(False),LH_Price(False);
var: NewRzstnceExt(-1), OldRzstnceExt(-1), OldSupport(-1), OldExtSpprt(-1);
var: OldRzstnceBegPrice(h), OldSprtBegPrice(L), OldHiExtBegPrice(H), OldBegPrice2(H);
var: NewRzstnceBegTime(t), NewRzstnceExtBegTime(t), NewLowExtBegTime(t), NewSpprtBegTime(t);
var: NewRzstnceBegDate(D), NewSpprtBegDate(D), NewRzstnceExtBegDate(D), NewLowExtBegDate(D);
var: HierHigh(False), LowerHigh(False), HierLow(False), LowerLow(False);
var: SteppedDwn(0);
var: NewRzstnce(-1), OldRzstnce(-1), NewSpprt(-1);
var: NewSupportExt(-1);
hh=h>h[1];
ll=l<l[1];
lh=h<h[1];
hl=l>l[1];
ClsDwn=c<o;
ClsUp=c>o;
Aftr929=T>929;
Aftr932=T>932;
Aftr939=T>939;
BeforeCls=T<1600;
DayHrs=Aftr929 and BeforeCls;
newDay=date <> date[1];
//OKtoPlot=DayHrs=True;
Peak1=ClsUp[1] and ClsDwn;
Peak2=lh[1] = False and ClsDwn;
Peak3=lh[1] = False and lh;
Peak4=ClsUp[1] and lh;
Peak5=hh[1] and hh = False;
Peak6=hh and ClsUp = False;
Bttm1=ClsDwn[1] and ClsUp;
Bttm2=hl[1] = False and ClsUp;
Bttm3=hl[1] = False and hl;
Bttm4=ClsDwn[1] and hl;
Bttm5=ll[1] and ll = False;
Bttm6=ll and ClsDwn = False;
Peak=(Peak1 = True or Peak2 = True or Peak3 = True or Peak4 = True or Peak5 = True);
Bttm=(Bttm1 = True or Bttm2 = True or Bttm3 = True or Bttm4 = True or Bttm5 = True);
NoPriorPk=Peak[1] = false;
NoPriorBttm=Bttm[1] = false;
if Peak6 and NoPriorPk then
Begin
PeakPrice = H;
End else If
Peak and NoPriorPk then
Begin
PeakPrice = H[1];
End;
if Bttm6 and NoPriorBttm then
BttmPrice=L else If Bttm and NoPriorBttm then
BttmPrice = L[1];
HierLow=BttmPrice>BttmPrice[1];
LowerHigh=PeakPrice<PeakPrice[1];
LowerLow=BttmPrice<BttmPrice[1];
HierHigh=PeakPrice>PeakPrice[1];
if LowerLow then SteppedDwn = 1 else if HierLow then SteppedDwn = 0;
if PeakPrice <> PeakPrice[1] then PriorPeakPrice = PeakPrice[1];
if BttmPrice <> BttmPrice[1] then PriorBttmPrice = BttmPrice[1];
{-- Starts a new Resistance Line, then ends the old Resistance Trend line if a new peak signal fires ---}
If Peak and NoPriorPk Then
Begin
OldRzstnce = NewRzstnce;
If Peak6 and NoPriorPk then
Begin
NewRzstnce = tl_new(d[1], t[1], H, d, t, H);
End
Else
Begin
NewRzstnce = tl_new(d[1], t[1], H[1], d, t, H[1]);
End;
Value1 = TL_SetExtRight(NewRzstnce, True);
Value2 = TL_SetSize(NewRzstnce, 2);
Value3 = TL_SetColor(NewRzstnce, Blue);
If OldRzstnce <> -1 Then
Begin
NewRzstnceBegDate = TL_GetBeginDate(NewRzstnce);
NewRzstnceBegTime = TL_GetBeginTime(NewRzstnce);
OldRzstnceBegPrice = TL_GetBeginVal(OldRzstnce);
Value4 = TL_SetExtRight(OldRzstnce, False); //Stop extending the original line to the right.
Value5 = TL_SetEnd(OldRzstnce, NewRzstnceBegDate, NewRzstnceBegTime, OldRzstnceBegPrice);
End;
End;
{-- Starts a new trendline if a new bottom signal fires ---}
If Bttm and NoPriorBttm Then
Begin
OldSupport = NewSpprt;
If Bttm6 and NoPriorBttm then
Begin
NewSpprt = tl_new(d[1], t[1], L, d, t, L);
End
Else
Begin
NewSpprt = tl_new(d[1], t[1], L[1], d, t, L[1]);
End;
Value6 = TL_SetExtRight(NewSpprt, True);
Value7 = TL_SetSize(NewSpprt, 2);
Value8 = TL_SetColor(NewSpprt, magenta);
If OldSupport <> -1 Then
Begin
NewSpprtBegDate = TL_GetBeginDate(NewSpprt);
NewSpprtBegTime = TL_GetBeginTime(NewSpprt);
OldSprtBegPrice = TL_GetBeginVal(OldSupport);
Value9 = TL_SetExtRight(OldSupport, False);
Value10 = TL_SetEnd(OldSupport, NewSpprtBegDate, NewSpprtBegTime, OldSprtBegPrice);
End;
End;
{-- Extends the old Resistance trendline if a new peak signal fires ---}
If Peak and NoPriorPk and H <= PeakPrice[1] Then
Begin
OldRzstnceExt = NewRzstnceExt;
NewRzstnceExt = tl_new(d[1], t[1], OldRzstnceBegPrice, d, t, OldRzstnceBegPrice);
Value11 = TL_SetExtRight(NewRzstnceExt, True);
Value12 = TL_SetColor(NewRzstnceExt, Blue);
Value13 = Tl_setstyle(NewRzstnceExt, Tool_Dotted);
If OldRzstnceExt <> -1 Then
Begin
NewRzstnceExtBegDate = TL_GetBeginDate(NewRzstnceExt);
NewRzstnceExtBegTime = TL_GetBeginTime(NewRzstnceExt);
OldHiExtBegPrice = TL_GetBeginVal(OldRzstnceExt);
Value14 = TL_SetExtRight(OldRzstnceExt, False);
Value15 = TL_SetEnd(OldRzstnceExt, NewRzstnceExtBegDate, NewRzstnceExtBegTime, OldHiExtBegPrice);
End;
End;
{-- Extends the old support line if a new bttm signal fires ---}
If Bttm and NoPriorBttm and L >= BttmPrice[1] Then
Begin
OldExtSpprt = NewSupportExt;
NewSupportExt = tl_new(d[1], t[1], OldSprtBegPrice, d, t, OldSprtBegPrice);
Value16 = TL_SetExtRight(NewSupportExt, True);
Value17 = TL_SetColor(NewSupportExt, Magenta);
Value18 = Tl_setstyle(NewSupportExt, Tool_Dotted);
If OldExtSpprt <> -1 Then
Begin
NewLowExtBegDate = TL_GetBeginDate(NewSupportExt);
NewLowExtBegTime = TL_GetBeginTime(NewSupportExt);
OldBegPrice2 = TL_GetBeginVal(OldExtSpprt);
Value19 = TL_SetExtRight(OldExtSpprt, False);
Value20 = TL_SetEnd(OldExtSpprt, NewLowExtBegDate, NewLowExtBegTime, OldBegPrice2);
End;
End; Download Now
Screenshots Show Your Support
| |||||||||||||||||||||||||||
| The Following 6 Users Say Thank You to Tradewinds For This Useful Post: | ||
berrob (10-24-2011), chloe31 (07-16-2011), nuno-online (07-09-2011), Tams (07-09-2011), Tripk (07-24-2011), ValueTrader (01-04-2012) | ||
| Comments |
| | #2 | ||
![]() | Re: Support and Resistance Auto Plots So I figured out a "work around" for getting a price bubble to show on the price axis. The trendlines will not show update data, only plots show the values. I got rid of some variables that were not being used, and cleaned up the code a little. I had programed this in another language, and had to rework it, and didn't need some of the old variables. Code: //8-5-11
//hh=higher high, ll=lower low
var: hh(False),ll(False),lh(False),hl(False);
var: ClsDwn(False),ClsUp(False);
var: Peak1(False),Peak2(False),Peak3(False),Peak4(False),Peak5(False),Peak6(False);
var: Bttm1(False),Bttm2(False),Bttm3(False),Bttm4(False),Bttm5(False),Bttm6(False);
var: Peak(False),Bttm(False);
var: CrrntHi(H),CrrntLw(L),PriorPeakPrice(H),PriorBttmPrice(L);
var: NoPriorPk(False),NoPriorBttm(False);
var: HL_Price(False),LH_Price(False);
var: NewRzstnceExt(-1), OldRzstnceExt(-1), OldSupport(-1), OldExtSpprt(-1);
var: OldRzstnceBegPrice(h), OldSprtBegPrice(L), OldHiExtBegPrice(H), OldBegPrice2(H);
var: NewRzstnceBegTime(t), NewRzstnceExtBegTime(t), NewLowExtBegTime(t), NewSpprtBegTime(t);
var: NewRzstnceBegDate(D), NewSpprtBegDate(D), NewRzstnceExtBegDate(D), NewLowExtBegDate(D);
var: NewRzstnce(-1), OldRzstnce(-1), NewSpprt(-1);
var: NewSupportExt(-1);
hh=h>h[1];
ll=l<l[1];
lh=h<h[1];
hl=l>l[1];
ClsDwn=c<o;
ClsUp=c>o;
Peak1=ClsUp[1] and ClsDwn;
Peak2=lh[1] = False and ClsDwn;
Peak3=lh[1] = False and lh;
Peak4=ClsUp[1] and lh;
Peak5=hh[1] and hh = False;
Peak6=hh and ClsUp = False;
Bttm1=ClsDwn[1] and ClsUp;
Bttm2=hl[1] = False and ClsUp;
Bttm3=hl[1] = False and hl;
Bttm4=ClsDwn[1] and hl;
Bttm5=ll[1] and ll = False;
Bttm6=ll and ClsDwn = False;
Peak=(Peak1 or Peak2 or Peak3 or Peak4 or Peak5);
Bttm=(Bttm1 or Bttm2 or Bttm3 or Bttm4 or Bttm5);
NoPriorPk=Peak[1] = false;
NoPriorBttm=Bttm[1] = false;
if Peak6 and NoPriorPk then
CrrntHi = H
else If Peak and NoPriorPk then
CrrntHi = H[1];
if Bttm6 and NoPriorBttm then
CrrntLw=L else If Bttm and NoPriorBttm then
CrrntLw = L[1];
plot1(CrrntHi, "Current High"); // Set to points so that the price of the line shows up on the axis
plot2(CrrntLw, "Current Low");
if CrrntHi <> CrrntHi[1] then PriorPeakPrice = CrrntHi[1];
if CrrntLw <> CrrntLw[1] then PriorBttmPrice = CrrntLw[1];
{-- Starts a new Resistance Line, then ends the old Resistance Trend line if a new peak signal fires ---}
If Peak and NoPriorPk Then
Begin
OldRzstnce = NewRzstnce;
If Peak6 and NoPriorPk then
NewRzstnce = tl_new(d[1], t[1], H, d, t, H)
Else
NewRzstnce = tl_new(d[1], t[1], H[1], d, t, H[1]);
Value1 = TL_SetExtRight(NewRzstnce, True);
Value2 = TL_SetSize(NewRzstnce, 2);
Value3 = TL_SetColor(NewRzstnce, Blue);
If OldRzstnce <> -1 Then
Begin
NewRzstnceBegDate = TL_GetBeginDate(NewRzstnce);
NewRzstnceBegTime = TL_GetBeginTime(NewRzstnce);
OldRzstnceBegPrice = TL_GetBeginVal(OldRzstnce);
Value4 = TL_SetExtRight(OldRzstnce, False); //Stop extending the original line to the right.
Value5 = TL_SetEnd(OldRzstnce, NewRzstnceBegDate, NewRzstnceBegTime, OldRzstnceBegPrice);
End;
End;
{-- Starts a new trendline if a new bottom signal fires ---}
If Bttm and NoPriorBttm Then
Begin
OldSupport = NewSpprt;
If Bttm6 and NoPriorBttm then
NewSpprt = tl_new(d[1], t[1], L, d, t, L)
Else
NewSpprt = tl_new(d[1], t[1], L[1], d, t, L[1]);
Value6 = TL_SetExtRight(NewSpprt, True);
Value7 = TL_SetSize(NewSpprt, 2);
Value8 = TL_SetColor(NewSpprt, magenta);
If OldSupport <> -1 Then
Begin
NewSpprtBegDate = TL_GetBeginDate(NewSpprt);
NewSpprtBegTime = TL_GetBeginTime(NewSpprt);
OldSprtBegPrice = TL_GetBeginVal(OldSupport);
Value9 = TL_SetExtRight(OldSupport, False);
Value10 = TL_SetEnd(OldSupport, NewSpprtBegDate, NewSpprtBegTime, OldSprtBegPrice);
End;
End;
{-- Extends the old Resistance trendline if a new peak signal fires ---}
If Peak and NoPriorPk and H <= CrrntHi[1] Then
Begin
OldRzstnceExt = NewRzstnceExt;
NewRzstnceExt = tl_new(d[1], t[1], OldRzstnceBegPrice, d, t, OldRzstnceBegPrice);
Value11 = TL_SetExtRight(NewRzstnceExt, True);
Value12 = TL_SetColor(NewRzstnceExt, Blue);
Value13 = Tl_setstyle(NewRzstnceExt, Tool_Dotted);
If OldRzstnceExt <> -1 Then
Begin
NewRzstnceExtBegDate = TL_GetBeginDate(NewRzstnceExt);
NewRzstnceExtBegTime = TL_GetBeginTime(NewRzstnceExt);
OldHiExtBegPrice = TL_GetBeginVal(OldRzstnceExt);
Value14 = TL_SetExtRight(OldRzstnceExt, False);
Value15 = TL_SetEnd(OldRzstnceExt, NewRzstnceExtBegDate, NewRzstnceExtBegTime, OldHiExtBegPrice);
End;
End;
{-- Extends the old support line if a new bttm signal fires ---}
If Bttm and NoPriorBttm and L >= CrrntLw[1] Then
Begin
OldExtSpprt = NewSupportExt;
NewSupportExt = tl_new(d[1], t[1], OldSprtBegPrice, d, t, OldSprtBegPrice);
Value16 = TL_SetExtRight(NewSupportExt, True);
Value17 = TL_SetColor(NewSupportExt, Magenta);
Value18 = Tl_setstyle(NewSupportExt, Tool_Dotted);
If OldExtSpprt <> -1 Then
Begin
NewLowExtBegDate = TL_GetBeginDate(NewSupportExt);
NewLowExtBegTime = TL_GetBeginTime(NewSupportExt);
OldBegPrice2 = TL_GetBeginVal(OldExtSpprt);
Value19 = TL_SetExtRight(OldExtSpprt, False);
Value20 = TL_SetEnd(OldExtSpprt, NewLowExtBegDate, NewLowExtBegTime, OldBegPrice2);
End;
End;
__________________ Precise, "dialed-in", targeted combination setups, like opening a combination lock; is the experience you should be having while trading. Dial left, right, left, . . . click - the lock opens. | ||
| |
|
| The Following 4 Users Say Thank You to Tradewinds For This Useful Post: | ||
![]() |
| Tags |
| auto, resistance, support |
| Thread Tools | |
| Help Others By Rating This Thread | |
| |
| ∧ Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| The Nature of Support and Resistance | DbPhoenix | The Wyckoff Forum | 143 | 04-28-2012 04:08 PM |
| TAs for Support and Resistance | Jeremytang | Technical Analysis | 19 | 12-13-2011 01:50 PM |
| [ES] Support and Resistance | jitasb | E-mini Futures Trading Laboratory | 20 | 11-23-2011 10:45 PM |
| Support and Resistance | kvn | Technical Analysis | 156 | 04-10-2011 04:15 AM |
| What is support and resistance? | Raphx | Beginners Forum | 12 | 03-09-2011 10:36 AM |