Stratégie de modèle de chandelier suiveur inversé


Date de création: 2024-01-26 16:04:26 Dernière modification: 2024-01-26 16:04:26
Copier: 1 Nombre de clics: 578
1
Suivre
1617
Abonnés

Stratégie de modèle de chandelier suiveur inversé

Aperçu

Cette stratégie permet d’effectuer des transactions automatiques en identifiant les formes de blocage, en suivant les signaux de transaction et en combinant la logique de stop-loss avec stop-loss. Lorsque la forme de renversement est identifiée, faites plus de blanchiment et atteignez la position de plafond après le stop ou la perte.

Principe de stratégie

  1. Identifier la forme de la barre: considérer comme un signal de suivi de la transaction lorsque la taille de l’entité de la barre est inférieure à la valeur de la barre définie et que le prix d’ouverture est égal au prix de clôture.

  2. Faire plus de courbe: Lorsque vous identifiez un mouvement de revers, faites plus de courbe si la clôture du jour précédent est supérieure à la clôture du jour précédent; faites plus de courbe si la clôture du jour précédent est inférieure à la clôture du jour précédent.

  3. Stop loss: Stop loss après que le prix a atteint le point d’entrée plus le point d’arrêt; Stop loss après que le prix a atteint le point d’entrée moins le point d’arrêt; Stop loss après que le prix a atteint le point d’arrêt.

Avantages stratégiques

  1. L’utilisation de la forme inverse de la courbe permet de capturer efficacement les points de basculement des cours et d’améliorer l’efficacité des signaux de trading.

  2. Le blocage des pertes, associé à un mécanisme de blocage des pertes, permet de contrôler efficacement les risques, de bloquer les bénéfices et d’éviter l’expansion des pertes.

  3. L’automatisation des transactions, sans intervention humaine, réduit les coûts de transaction et améliore l’efficacité des transactions.

Risque stratégique

  1. Le jugement de la forme de l’argile est subjectif et peut être mal interprété.

  2. Le point d’arrêt de la perte d’arrêt n’est pas correctement réglé, ce qui peut entraîner une perte plus importante ou une perte prématurée.

  3. Les paramètres de la stratégie doivent être testés et optimisés en permanence, sans quoi ils risquent d’être sur-adaptés.

Orientation de l’optimisation de la stratégie

  1. Optimisation des conditions de jugement de la forme de l’aluminium, combinée à plus d’indicateurs de ligne K pour une meilleure précision de jugement.

  2. Tester différentes variétés de transactions, ajuster le point de stop-loss et optimiser les paramètres.

  3. L’ajout d’algorithmes pour juger de plus en plus de signaux de transactions, une logique stratégique plus riche.

  4. Ajout d’un module de gestion de position permettant de modifier dynamiquement les positions en fonction des indicateurs de référence.

Résumer

La stratégie est simple à comprendre et présente une certaine valeur pratique. Cependant, l’exactitude de l’identification et l’optimisation des paramètres doivent encore être améliorées. Il est recommandé de procéder à des tests et à des optimisations supplémentaires avant de recommander une application sur le marché.

Code source de la stratégie
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 30/01/2019
//   This is a candlestick where the open and close are the same. 
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title = "Doji Backtest", overlay = true)
input_takeprofit = input(10, title="Take Profit pip", step=0.01)
input_stoploss = input(10, title="Stop Loss pip", step=0.01)
input_minsizebody = input(0.5, title="Min. Size Body pip", step=0.01)
barcolor(abs(close - open) <= input_minsizebody ? open == close ? yellow : na : na)
possell = 0.0
posbuy = 0.0
pospricebuy = 0.0
pospricesell = 0.0
barcolornow = blue
pospricesell := close< close[2] ? abs(close - open) <= input_minsizebody ? open == close ? close : nz(pospricesell[1], 0) : nz(pospricesell[1], 0) : nz(pospricesell[1], 0) 
possell := iff(pospricesell > 0 , -1, 0)
barcolornow := possell == -1 ? red: posbuy == 1 ? green : blue 
pospricesell := iff(low <= pospricesell - input_takeprofit and pospricesell > 0, 0 ,  nz(pospricesell, 0))
pospricesell := iff(high >= pospricesell + input_stoploss and pospricesell > 0, 0 ,  nz(pospricesell, 0))
pospricebuy := close > close[2] ? abs(close - open) <= input_minsizebody ? open == close ? close : nz(pospricebuy[1], 0) : nz(pospricebuy[1], 0) : nz(pospricebuy[1], 0) 
posbuy := iff(pospricebuy > 0 , 1, 0)
barcolornow := posbuy == 1 ? green: barcolornow
pospricebuy := iff(high >= pospricebuy + input_takeprofit and pospricebuy > 0, 0 ,  nz(pospricebuy, 0))
pospricebuy := iff(low <= pospricebuy - input_stoploss and pospricebuy > 0, 0 ,  nz(pospricebuy, 0))
barcolor(barcolornow)
if (posbuy == 0 and possell == 0) 
    strategy.close_all()
if (posbuy == 1)
    strategy.entry("Long", strategy.long)
if (possell == -1)
    strategy.entry("Short", strategy.short)	   	    
pospricebuy := iff(high <= pospricebuy + input_takeprofit and pospricebuy > 0, 0 ,  nz(pospricebuy, 0))
pospricebuy := iff(low >= pospricebuy - input_stoploss and pospricebuy > 0, 0 ,  nz(pospricebuy, 0))
pospricesell := iff(low <= pospricesell - input_takeprofit and pospricesell > 0, 0 ,  nz(pospricesell, 0))
pospricesell := iff(high >= pospricesell + input_stoploss and pospricesell > 0, 0 ,  nz(pospricesell, 0))