{Supports-Resist - 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=ll[1]; ClsDwn=co; 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=PeakPricePeakPrice[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, 1); 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, 1); 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;