screener of figure cup with handle to be associated with “indicator of figure cup with handle“.
CapitaLisationMini =10000
timeframe (monthly)
c1=average[20](close*volume)>(CapitaLisationMini*21)
timeframe (weekly)
c1=average[20](close*volume)>(CapitaLisationMini*5)
TIMEFRAME(4 HOUR)
c1=average[20](close*volume)>(CapitaLisationMini/2.125)
TIMEFRAME(2 HOUR)
c1=average[20](close*volume)>(CapitaLisationMini/4.25)
TIMEFRAME(1 HOUR)
c1=average[20](close*volume)>(CapitaLisationMini/8.5)
TIMEFRAME(30 minutes)
c1=average[20](close*volume)>(CapitaLisationMini/17)
TIMEFRAME(15 minutes)
c1=average[20](close*volume)>(CapitaLisationMini/34)
TIMEFRAME(5 minutes)
c1=average[20](close*volume)>(CapitaLisationMini/102)
TIMEFRAME(2 minutes)
c1=average[20](close*volume)>(CapitaLisationMini/255)
TIMEFRAME(daily)
c1=average[20](close*volume)>(CapitaLisationMini)
Timeframe(default)
B5searchzone=13
B5searchzonea=23
B5searchzoneb=33
P1Price = 0
P1Pricea = 0
P1Priceb = 0
for i = 0 to B5searchzone
if high[i] > P1Price then
P1Price = high[i]
B5=i
B5index = BarIndex[i]
endif
next
for ia = 0 to B5searchzonea
if high[ia] > P1Pricea then
P1Pricea = high[ia]
B5a=ia
B5indexa = BarIndex[ia]
endif
next
for ib = 0 to B5searchzoneb
if high[ib] > P1Priceb then
P1Priceb = high[ib]
B5b=ib
B5indexb = BarIndex[ib]
endif
next
B0price=0
for j=B5 to B5+172 DO
If high[j] <= P1Price and high[j+1] > P1Price then
B0price=high[j]
B0=j
B0index=barindex[j]
endif
next
B0pricea=0
for ja=B5a to B5a+172 DO
If high[ja] <= P1Pricea and high[ja+1] > P1Pricea then
B0pricea=high[ja]
B0a=ja //de droite à gauche
B0indexa=barindex[ja]
endif
next
B0priceb=0
for jb=B5b to B5b+172 DO
If high[jb] <= P1Priceb and high[jb+1] > P1Priceb then
B0priceb=high[jb]
B0b=jb
B0indexb=barindex[jb]
endif
next
df=abs((b0-b5))+1
P0price=lowest[max(1,df)](low)[b5]
dfa=abs((b0a-b5a))+1
P0pricea=lowest[max(1,dfa)](low)[b5a]
dfb=abs((b0b-b5b))+1
P0priceb=lowest[max(1,dfb)](low)[b5b]
B0B5=abs(B0-B5)
B0B5a=abs(B0a-B5a)
B0B5b=abs(B0b-B5b)
boxheight = abs( P1price - P0price ) / 5
boxlength = round( (B0B5-0.5) / 5 )
boxheighta = abs( P1pricea - P0pricea ) / 5
boxlengtha = round( (B0B5a-0.5) / 5 )
boxheightb = abs( P1priceb - P0priceb ) / 5
boxlengthb = round( (B0B5b-0.5) / 5 )
reste=B0B5 MOD 5
restea=B0B5a MOD 5
resteb=B0B5b MOD 5
B4= B5 + boxlength
B4a= B5a + boxlengtha
B4b= B5b + boxlengthb
B3=B4+boxlength
B3a= B4a + boxlengtha
B3b= B4b + boxlengthb
B2=B3+boxlength
B2a= B3a + boxlengtha
B2b= B3b + boxlengthb
B1=B2+boxlength+reste
B1a=B2a+boxlengtha+restea
B1b=B2b+boxlengthb+resteb
L1= P0price + boxheight
L2 = P0price + 2 * boxheight
L3 = P0price + 3 * boxheight
L1a= P0pricea + boxheighta
L2a= P0pricea + 2 * boxheighta
L3a = P0pricea + 3 * boxheighta
L1b= P0priceb + boxheightb
L2b= P0priceb + 2 * boxheightb
L3b = P0priceb + 3 * boxheightb
flag=0
d=abs((b1-b4))+1
e=b4
deborde=highest[max(1,d)](close)[e]
IF deborde<l3 THEN
flag=1
endif
flag1=0
f=abs((b2-b3))+1
g=b3
deborde1=highest[max(1,f)](close)[g]
IF deborde1<l2 THEN
flag1=1
endif
flaga=0
da=abs((b1a-b4a))+1
ea=b4a
debordea=highest[max(1,da)](close)[ea]
IF debordea<l3a THEN
flaga=1
endif
flaga1=0
fa=abs((b2a-b3a))+1
ga=b3a
debordea1=highest[max(1,fa)](close)[ga]
IF debordea1<l2a THEN
flaga1=1
endif
flagb=0
db=abs((b1b-b4b))+1
eb=b4b
debordeb=highest[max(1,db)](close)[eb]
IF debordeb<l3b THEN
flagb=1
endif
flagb1=0
fb=abs((b2b-b3b))+1
gb=b3b
debordeb1=highest[max(1,fb)](close)[gb]
IF debordeb1<l2b THEN
flagb1=1
endif
fl=abs((b0-b1))+1
fm=abs((b4-b5))+1
lowdebordea=lowest[max(1,fl)](low)[b1]
lowdebordeb=lowest[max(1,fm)](low)[b5]
flagB0B1B4B5= (lowdebordea or lowdebordeb) <(L2-(boxheight/3))
fn=abs((b1-b2))+1
Fo=abs((b3-b4))+1
lowdebordec=lowest[max(1,fn)](low)[b2]
lowdeborded=lowest[max(1,fo)](low)[b4]
flagB1B2B3B4=(lowdebordec or lowdeborded) <(L1-(boxheight/3))
lowdedans=(flagB0B1B4B5 or flagB1B2B3B4)
fla=abs((b0a-b1a))+1
fma=abs((b4a-b5a))+1
lowdebordeaa=lowest[max(1,fla)](low)[b1a]
lowdebordeba=lowest[max(1,fma)](low)[b5a]
flagB0B1B4B5a=(lowdebordeaa or lowdebordeba) <(L2a-(boxheighta/3))
fna=abs((b1a-b2a))+1
Foa=abs((b3a-b4a))+1
lowdebordeca=lowest[max(1,fna)](low)[b2a]
lowdebordeda=lowest[max(1,foa)](low)[b4a]
flagB1B2B3B4a=(lowdebordeca or lowdebordeda) <(L1a-(boxheighta/3))
lowdedansa=(flagB0B1B4B5a or flagB1B2B3B4a)
flb=abs((b0b-b1b))+1
fmb=abs((b4b-b5b))+1
lowdebordeab=lowest[max(1,flb)](low)[b1b]
lowdebordebb=lowest[max(1,fmb)](low)[b5b]
flagB0B1B4B5b=(lowdebordeab or lowdebordebb) <(L2b-(boxheightb/3))
fnb=abs((b1b-b2b))+1
Fob=abs((b3b-b4b))+1
lowdebordecb=lowest[max(1,fnb)](low)[b2b]
lowdebordedb=lowest[max(1,fob)](low)[b4b]
flagB1B2B3B4b=(lowdebordecb or lowdebordedb) <(L1b-(boxheightb/3))
lowdedansb=(flagB0B1B4B5b or flagB1B2B3B4b)
If barindex > B5index then
plusgrandL2=summation[B5](low>L2)=0
endif
If barindex > B5indexa then
plusgrandL2a=summation[B5a](low>L2a)=0
endif
If barindex > B5indexb then
plusgrandL2b=summation[B5b](low>L2b)=0
endif
lowanse=lowest[max(1,b5)](low)
lowansea=lowest[max(1,b5a)](low)
lowanseb=lowest[max(1,b5b)](low)
cote=high>low
cherche=0
condition=flag=1 and flag1=1 and lowdedans=1 and plusgrandL2=0 and b0index<b5index and B0price>L3 and lowanse>((p1price-p0price)*0.5+(p0price))
if condition then
cherche=13
endif
conditiona=flaga=1 and flaga1=1 and lowdedansa and plusgrandL2a=0 and b0indexa<b5indexa and cote and B0pricea>L3a and lowansea>((p1pricea-p0pricea)*0.5+(p0pricea))
if conditiona then
cherche=23
endif
conditionb=flagb=1 and flagb1=1 and lowdedansb and plusgrandL2b=0 and b0indexb<b5indexb and cote and B0priceb>L3b and lowanseb>((p1priceb-p0priceb)*0.5+(p0priceb))
if conditionb then
cherche=33
endif
toute=condition or conditiona or conditionb
SCREENER [c1 and (toute or toute[1] or toute[2] or toute[3] or toute[4]or toute[5] or toute[6] or toute[7] or toute[8] or toute[9] or toute[10])](cherche as "cherche",average[20](close*volume) as "c1")