Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
20 juillet 2008 7 20 /07 /juillet /2008 20:48

L'indicateur Scalper de John Carter.

Toujours issu du livre de John Carter, "Mastering The Trade", voici l'indicateur Scalper.  L'auteur écrit qu'il a observé que les points de retournement du marché se situent souvent après 3 higher high ou 3 lower low.  Il n'en dit pas plus et reste assez vague sur la construction de l'indicateur.  Dans une vidéo de présentation (visible ici), on constate que la construction est un peu différente de celle décrite dans le livre.  J'ai repris cette explication pour sortir un premier programme mais quelques interrogations subsistent, comme vous l'allez voir.

Pour les sommets, le raisonnement est le suivant, il faut :
- high[1]>high[2] et high[1]>high[3] et high[0]<high[1], ce qui marque le possible sommet en high[1].
- pour valider ce possible point de retournement, il suffit d'une cloture sous low[0] sans que high[1] ne soit dépassé, sinon on recommence la procédure.

Les interrogations sont les suivantes :
- les creux et les sommets doivent-ils être obligatoirement en alternance (ce qui n'est pas le cas dans cette version) ?
- ne peut-on pas prendre, dans certains cas, la condition : high[1]>high[2] et high[2]>high[3] afin de filtrer l'indicateur ?

Voici un vue du CAC avec cette première version du Scalper :



Et le code pour Prorealtime :

once rr=1
mb=average[20](typicalprice)
k=48
n=(k*2)-4
p=(n/2)-1
h1=DPO[n](high)
moyh=high-h1
hi=(moyh-moyh[1]+(high[p])/n)*n
hi=(round(hi*100))/100
l1=dpo[n](low)
moyl=low-l1
lo=(moyl-moyl[1]+(low[p])/n)*n
lo=(round(lo*100))/100
clo1=dpo[n](close)
moyc=close-clo1
clot=(moyc-moyc[1]+(close[p])/n)*n
clot=(round(clot*100))/100
cond1=(high>high[1] and high>high[2])
cond2=(cond1 and high>hi[46]) and (barindex>bari or rr=-1)
if cond1 and cond2 then
    flagg=1
    targeth=high
    targetl=lo[46]
else
    flagg=0
    signa=mb
endif
for zz=0 to 45
    if clot[45-zz]<targetl and hi[45-zz]<=targeth and flagg=1  then
        signa=high+(averagetruerange[20](close))*.5
        rr=1
        bari=barindex+zz+2
        break
    elsif     hi[45-zz]>targeth then
        signa=mb
        break
    endif
next
condi=(low<low[1] and low<low[2]) and low<lo[46] and (barindex>bar or rr=1)
if condi then
    fflag=1
    target1=low
    target2=hi[46]
else
    fflag=0
    siigna=mb
endif
for kk=0 to 45
    if clot[45-kk]>target2 and lo[45-kk]>=target1 and fflag=1 then
        siigna=low-(averagetruerange[20](close))*.5
        rr=-1
        bar=barindex+kk+2
        break
    elsif lo[45-kk]<target1 then
        siigna=mb
        break
    endif
next
if barindex < 100 then
    signa=undefined
    siigna=undefined
endif
return signa,siigna,mb

Ce programme fait appel aux données futures et n'est utilisable qu'en EOD.  Un version temps réel peut en être dérivée.

Partager cet article

Repost 0
Published by hk_lisse - dans Indicateurs
commenter cet article

commentaires

F92 25/10/2014 21:40

Est ce tu repond aux messages ?

Montse 09/06/2014 16:00

Bonsoir Monsieur Sylvian,

Voulait lui demander si cet indicateur repeint d'habitude, parce que je l'utilise et dans ma plate-forme on repeindre toujours.

Il voulait aussi remercier cette page intéressante.

Merci beaucoup,

Montsy