gfxParticipant
Average
Bonjour,
Avant de développer pour backtest mon système de trading, je me suis lancé dans la programmation d’un PBT tout simple en prenant une trame dispo sur le net. L’idée est la suivante…
Si aucune position ouverte, alors j’ouvre en simultané une position longue et une position short avec un sl et un tp. Puis j’attends jusqu’à la clôture des deux ordres et je recommence.
J’ai essayé des deux façons ci après. Mais le PBT n’ouvre que des positions courtes. Aucune position longue…
par avance merci.
gfx
// Définition des paramètres du code
DEFPARAM CumulateOrders = true // Cumul des positions désactivé
once myBuy = 0
once mySell = 0
// Money Management
compound = 0
leverage = 1
initialBalance = 10000
IF compound = 0 THEN
n = leverage
ELSIF compound = 1 THEN
currentBalance = initialBalance + strategyprofit
n = (currentBalance / initialBalance)*leverage
IF n < 1 THEN
n = 1
ENDIF
n = round(n)
ENDIF
// Conditions pour ouvrir une position acheteuse
// LONGS
// Conditions pour ouvrir une position vendeuse
// SHORTS
If NOT longOnMarket Then
If NOT shortOnMarket Then
myBuy = 1
mySell = 1
Endif
Endif
if myBuy = 1 then
Buy n Lot at market
SET STOP PLOSS sl
SET TARGET PPROFIT tp
myBuy = 0
endif
if mySell = 1 then
Sellshort n lot at market
SET STOP PLOSS sl
SET TARGET PPROFIT tp
mySell = 0
ENDIF
ou comme ceci
// Définition des paramètres du code
DEFPARAM CumulateOrders = true // Cumul des positions désactivé
// Money Management
compound = 0
leverage = 1
initialBalance = 10000
IF compound = 0 THEN
n = leverage
ELSIF compound = 1 THEN
currentBalance = initialBalance + strategyprofit
n = (currentBalance / initialBalance)*leverage
IF n < 1 THEN
n = 1
ENDIF
n = round(n)
ENDIF
// Conditions pour ouvrir une position acheteuse
// LONGS
// Conditions pour ouvrir une position vendeuse
// SHORTS
If NOT longOnMarket and not shortOnMarket Then
Buy n Lot at market
SET STOP PLOSS sl
SET TARGET PPROFIT tp
Sellshort n lot at market
SET STOP PLOSS sl
SET TARGET PPROFIT tp
endif
Il n’est pas possible d’acheter et vendre le même actif dans la même stratégie ProOrder.
gfxParticipant
Average
Merci Nicolas.
Donc impossible de mettre en place une stratégie de couverture (hedging) d’une position ouverte ?
C’était l’idée sous jacente à ce premier test
Et si la stratégie et scindée en 2 en gardant le même signal …. l’une est “Buy” et l’autre “SellShort”… Non ?
Il est possible de le faire avec deux comptes séparés mais difficile avec PRT car il est quasi impossible de créer des synchronisations entre deux stratégies PRT (pas de socket et pas d’api). Mais je crois que les brokers détestent ces procédés.
D’ailleurs est-il prévu de pouvoir faire communiquer PRT avec d’autres programmes via des API ?
merci
gfxParticipant
Average
Bonjour à tous,
Des nouveautés sur ce sujet ou est-ce que ce ne sera jamais possible pour PRT ?
Merci,
gfx