Besoin d'aide pour coder un robot s'il vous plaît

Forum sur le trading automatique et algorithmique : systèmes, backtests, robots de trading, résultats et limites, code à l'appui.
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour amis Traders, je voudrais savoir s'il est possible de créer un robot qui a besoin de 4 timeframe différente pour rentrer en position et une 5eme timeframe pour cloturer la position?
il fonctionne uniquement grâce aux bougies, il n'y a aucun indicateurs, c'est pour le Dax30 à 25€ le point. (1 lot)
Voici le topo:
Pour prendre une position vendeuse:
Bougie H1 de 10:00 doit clôturer baissier à 11:00
Bougie M30 de 10:30 doit clôturer baissier à 11:00
Bougie M15 de 10:45 doit clôturer baissier à 11:00
Bougie M5 de 10:55 doit clôturer baissier à 11:00
Un ordre est ouvert dès l'ouverture de la prochaine bougie.

Pour prendre une position acheteuse:
Bougie H1 de 10:00 doit clôturer haussier à 11:00
Bougie M30 de 10:30 doit clôturer haussier à 11:00
Bougie M15 de 10:45 doit clôturer haussier à 11:00
Bougie M5 de 10:55 doit clôturer haussier à 11:00
Un ordre est ouvert dès l'ouverture de la prochaine bougie.
Les ordres se ferment dès qu'une bougie 1 min clôture sous la précédente pour une position acheteuse et au dessus de la précédente pour une position vendeuse.

Je vous remercie d'avance pour votre aide
Avatar du membre
Anturyl
Stormtrooper
Messages : 176
Enregistré le : 25 avr. 2020 15:30

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Anturyl »

Bonjour Guillaume, le plus simple est je pense de se mettre sur le graphique en 1 min, d'avoir une condition sur l'heure et une condition sur pour chaque bougie soit pour une position vendeuse:
if time=110100 and open[60]>close and open[30]>close and open[15]>close and open[5]>close
Pour la fermeture close>high[1]

A tester.
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour @Anturyl, Merci beaucoup c'est adorable de ta part.
Ah oui c'est un tout petit code , j'imaginais un peu plus de ligne. Je vais l'essayer en backtest et je te fait un retour des demain.
marouane.ayad
Ewok
Messages : 10
Enregistré le : 19 oct. 2020 13:39

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par marouane.ayad »

Bonjour Guillaume, si sur PRT c'est possible maintenant avec la fonction TimeFrame : https://www.prorealcode.com/documentation/timeframe-probacktest-proorder/
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour @Marouane, je te remercie je vais aller voir ça seulement je suis archi nul en programmation
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour @Anturyl, j'ai essayé ton code aujourd'hui, il ne fonctionne pas malheureusement :(
Avatar du membre
Anturyl
Stormtrooper
Messages : 176
Enregistré le : 25 avr. 2020 15:30

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Anturyl »

Bonjour Guillaume, qu'as tu programmé exactement ? Car ce que je t'ai écrit n'est qu'un bout de code, il faut faire le reste autour.
Avatar du membre
AlainC
Ewok
Messages : 24
Enregistré le : 27 juin 2019 11:43

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par AlainC »

Bonjour Guillaume. Voilà un code qui fonctionne.
Il faut l'exécuter en timeframe 1 minute.
---

TIMEFRAME(1 Hour)

If close > open then
OpH1 = 1
elsif close < open then
OpH1 = -1
else
OpH1 = 0
endif

TIMEFRAME(30 Minutes)

If close > open then
OpM30 = 1
elsif close < open then
OpM30 = -1
else
OpM30 = 0
endif

TIMEFRAME(15 Minutes)

If close > open then
OpM15 = 1
elsif close < open then
OpM15 = -1
else
OpM15 = 0
endif

TIMEFRAME(5 Minutes)

If close > open then
OpM5 = 1
elsif close < open then
OpM5 = -1
else
OpM5 = 0
endif

TIMEFRAME(Default)

ConditionAchat = (OpH1 = 1 and OpM30 = 1 and OpM15 = 1 and OpM5 = 1)
ConditionVente = (OpH1 = -1 and OpM30 = -1 and OpM15 = -1 and OpM5 = -1)

// Conditions pour ouvrir une position acheteuse
IF NOT LongOnMarket AND TIME = 110000 and ConditionAchat THEN
BUY 1 CONTRACTS AT MARKET
ENDIF

// Conditions pour fermer une position acheteuse


If LongOnMarket AND Close < Low[1] THEN
SELL AT MARKET
ENDIF

// Conditions pour ouvrir une position en vente à découvert
IF NOT ShortOnMarket AND TIME = 110000 and ConditionVente THEN
SELLSHORT 1 CONTRACTS AT MARKET
ENDIF

// Conditions pour fermer une position en vente à découvert
IF ShortOnMarket AND Close > High[1] THEN
EXITSHORT AT MARKET
ENDIF
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour @Anturyl, ah ok désolé je n'avais pas compris
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Bonjour @AlainC, superbe, je te remercie du fond du coeur, je vais voir si ça fonctionne et te tiens au courant. :merci:
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Malheureusement je l'ai testé il a de très mauvais résultats:
Rapport détaillé - ProBacktest - ROBOT SCALPING - Allemagne 30 Cash (25€).png
Rapport détaillé - ProBacktest - ROBOT SCALPING - Allemagne 30 Cash (25€).png (48.6 Kio) Vu 1617 fois
Avatar du membre
OverDoze
Apprenti Jedi
Messages : 559
Enregistré le : 07 janv. 2019 13:21

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par OverDoze »

inverse le code, tu auras de très bon résultats :lol2:
Avatar du membre
Guillaume.bkh
Padawan
Messages : 296
Enregistré le : 20 sept. 2020 21:52

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par Guillaume.bkh »

Ok je vais essayer, pas bête 😉
Avatar du membre
takapoto
Membre du Conseil Jedi
Messages : 7801
Enregistré le : 16 déc. 2013 15:56

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par takapoto »

Juste pour les lecteurs qui le prendraient au premier degré malgré les smileys, inverser le code d'une stratégie automatique perdante NE MARCHE JAMAIS.
Spoiler:
Je parle bien sûr d'une période significative, pas sur un jour, une semaine ou un mois. C'est d'une part à cause du spread et d'autre part, ça revient à de l'optimisation qui est un miroir aux alouettes en trading
Avatar du membre
OverDoze
Apprenti Jedi
Messages : 559
Enregistré le : 07 janv. 2019 13:21

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par OverDoze »

takapoto, pourtant j'ai choisis le plus gros smiley pour éviter ce genre d'idée :lol:
Avatar du membre
dav
Chevalier Émérite Jedi
Messages : 3763
Enregistré le : 08 mars 2015 14:34

Re: Besoin d'aide pour coder un robot s'il vous plaît

Message non lu par dav »

:lol2: :lol: