code PRT > RSBoll/Seuil backtest

Forum sur le métier de trader : livres, outils, stations de trading, organisation d'une journée et réalité du métier, racontée par ceux qui l'exercent.
Avatar du membre
falex
Le Gladiateur
Messages : 34267
Enregistré le : 12 févr. 2013 15:41

code PRT > RSBoll/Seuil backtest

Message non lu par falex »

Voici un exempel de bactesting du couple RSI + Bollinger avec entrée sur seuil.

Le backtest est composé d'un indicateur RSboll, puis du bactest à proprement parlé.

Indicateur RSBoll_Seuil (le nom du programme est important parce qu'il est appelé dans le bactest) :

Code : #

//RSBoll 9/25/75
//falex - 2013

//Variables
once rsiperiode = 9
r = RSI[rsiperiode](close) // RSI
bs = BollingerUp[20](close) //Bollinger Superieur
bi = BollingerDown[20](close) //Bollinger Inferieur
once indicateur = 0

//Valeur de seuil du RSI
once rsup = 75
once rinf = 25

c1 = (r >= rsup) and (high > bs)
c2 = (r <= rinf) and (low < bi)

heure = (time > 00000) and (time<235900)

if c1 and heure then
	indicateur =1
elsif c2 and heure then
	indicateur = -1
else
	indicateur = 0
endif

//calcul du seuil 00/25/50/75 le plus proche
if indicateur = 1 then
	seuil = round(close) + (25 - (round(close) mod 25))
elsif indicateur = -1 then
	seuil = round(close) - (round(close) mod 25)
endif

//La valeur de l'indicateur est égal à la valeur du seuil à atteindre.
indicateur = indicateur + seuil

return indicateur as "RSBoll"
Bactest RSBoll avec entrée sur seul 00/25/50/75 :

Code : #

//backtest du RSBoll avec entrée sur seuille 00/25/50/75

//Variables
once SW = 11 //Stop win
once SL = 10 //Stop Loose
once prevmyRSboll = 0
once prevClose = 0
once sens = 0 //Sens du mouvement des prix

//Entrée sur signal passant de 0 à  +/- x, contrariant
myRSBoll = CALL "RSBoll_Seuil"
heure = (time >=80000) and (time <162900)

//Entrée
//1) Recuperation de la valeur du seuil lorsqu'elle change
if myRSBoll <>  prevmyRSboll then
    prevmyRSboll = myRSboll
    prevClose = close
    if prevmyRSboll > prevClose then
        sens = 1
    elsif  prevmyRSboll < prevClose then
        sens = -1
    endif
endif

//Si time alors on place des ordres pour entrer dans le marché
if heure then // and  myRSBoll = 0 then
    If sens = 1  then
        sellshort 1 share at  myRSBoll  Limit
    elsif  sens = -1 then
        buy 1 share at  myRSBoll Limit
    endif
endif

//Sortie
if onmarket then
    sell countofposition share at (entryquote + SW) LIMIT
    sell countofposition share at (entryquote - SL) STOP
    exitshort countofposition share at (entryquote - SW) LIMIT
    exitshort countofposition share at (entryquote + SL) STOP
endif

//stop sur la barre de 16h30
If time = 162900 then
    sell countofposition share at market thisbaronclose
    exitshort  countofposition share at market thisbaronclose
endif
Avatar du membre
falex
Le Gladiateur
Messages : 34267
Enregistré le : 12 févr. 2013 15:41

Re: code PRT > RSBoll/Seuil backtest

Message non lu par falex »

Ce code n'est pas forcément optimisé mais vous montre comment on peut faire.

Sur les short en générale c'est assez propre et ça marche bien.

Sur les long : toujours c'est presque systématiquement faux.
en plus il y a souvent un petit souci d'entrée en position alors que l'on a un nouveau signal ...

Si quelqu'un a envie de faire un code plus propre libre à lui ...

Perso je ne ferai rien de plus, je laisse la paternité à qui de droit.
Avatar du membre
StephD
Apprenti Jedi
Messages : 502
Enregistré le : 31 mai 2013 11:41

Re: code PRT > RSBoll/Seuil backtest

Message non lu par StephD »

Je viens d'installer le RSBoll de teg54 et il me trade de le voir tourner. Je regarderai rapidement quelles sont les différences entre ton code et le sien (en plus bien entendu de l'entrée sur seuil).

J'apprécie vraiment que tu partages ton travail. Il me trade d'être capable de contribuer à mon tour à la base de connaissance de la communauté.

J'imagine que ça viendra en son temps. Pour le moment je partage mes connaissances informatiques sur le forum dédié quand j'en ai l'occasion (d'ailleurs, n'hésitez pas à me solliciter par mp si vous avez des questions sur les "nouvelles technologies").

:merci:
Khepesh
Stormtrooper
Messages : 130
Enregistré le : 19 févr. 2013 21:59

Re: code PRT > RSBoll/Seuil backtest

Message non lu par Khepesh »

intéressant de voir les différentes "manières de coder" de chacun :)
newworld
Padawan
Messages : 332
Enregistré le : 03 avr. 2013 20:40

Re: code PRT > RSBoll/Seuil backtest

Message non lu par newworld »

là je suis loin loin
mais j'arrive j'arrive

phili711