
Cette stratégie est basée sur la forme de l’étoile de Doji. Lorsqu’une forme de l’étoile de Doji se produit, un ordre d’arrêt d’achat est placé entre le sommet de l’étoile de Doji et le sommet de la ligne K précédente, et un ordre d’arrêt de vente est placé entre le bas de l’étoile de Doji et le bas de la ligne K précédente.
Lorsqu’un Doji apparaît, cela indique que la relation d’offre et de demande actuelle a changé, que les forces des acheteurs et des vendeurs sont en équilibre et que le prix peut être inversé. La stratégie consiste à utiliser le signal de revers du prix prédit par le Doji pour saisir l’opportunité de revers en plaçant un stop.
body=close-open
range=high-low
abody=abs(body)
ratio=abody/range
data=(abs(open - close) <= (high - low) * Doji)
Si abs{open-close) <= (high-low) et si abs{open-close) <= (high-low) et si abs{open-close} est égal à*Le paramètre Doji, déterminé par la forme de l’étoile Doji, est alors placé sur le bouton d’arrêt. La position du bouton d’arrêt est la suivante:
longDist= longcandle[1] and range[1]>range? high: max(high,high[1])
shortDist= longcandle[1] and range[1]>range? low: min(low,low[1])
Si la première entité de la ligne K est plus grande, l’ordre d’achat et d’arrêt est situé entre le sommet de l’étoile de Doji et le sommet de la ligne K précédente. Si la première entité de la ligne K est plus petite, l’ordre d’achat et d’arrêt est le sommet de l’étoile de Doji.
Il y a deux possibilités de règles de sortie:
strategy.exit("exit buy","buy stop",loss=SL, profit=TP, when=Use_SL_TP)
strategy.close("buy stop",when=not Use_SL_TP and close<dojilow)
Cette stratégie présente les avantages suivants:
Cette stratégie comporte aussi des risques:
Cette stratégie peut être optimisée dans les directions suivantes:
La stratégie fonctionne bien dans l’ensemble et permet d’obtenir de bons signaux de négociation en capturant les occasions de retournement de prix de Doji. La stratégie est simple à utiliser, facile à mettre en œuvre, convient à une variété de types de transactions et est une stratégie de négociation quantitative pratique.
/*backtest
start: 2024-01-02 00:00:00
end: 2024-02-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//This is a simple strategy based on Doji star candlestick
//It places two orders: buy stop at doji star high or previous candle high and sell stop at doji star low or previous candle low.
//This strategy works very well with high time frames like Weekly TF because it eliminates the noise in doji formation.
//
strategy("Doji strategy W", overlay=true, calc_on_every_tick=true, pyramiding=0,default_qty_type=strategy.percent_of_equity,default_qty_value=100,currency=currency.USD)
//INPUTS
//MinDistance=input(100,'Minimum distance in ticks')
Use_SL_TP=input(true,'Use stop loss and take profit?')
TP=input(200,'Take Profit in ticks')
SL=input(200,'Stop Loss in tiks')
Doji = input(0.05, minval=0.01, title="Doji size", step=0.01)
//VARIABILI
body=close-open
range=high-low
abody=abs(body)
ratio=abody/range
longcandle= (ratio>0.6)
//Doji
data=(abs(open - close) <= (high - low) * Doji)
plotchar(data, title="Doji", text='Doji', color=black)
longDist= longcandle[1] and range[1]>range? high: max(high,high[1])
shortDist= longcandle[1] and range[1]>range? low: min(low,low[1])
dojilow=data==1?low:na
dojihigh=data==1?high:na
goStar=data==1?true:false
//////////////////////////////////////////////////////////////////
//STRATEGY
strategy.order("buy stop",true,stop=longDist, oca_name="Dojy Entry",when=goStar)
strategy.order("sell stop",false,stop=shortDist, oca_name="Dojy Entry",when=goStar)
strategy.exit("exit buy","buy stop",loss=SL, profit=TP, when=Use_SL_TP)
strategy.exit("exit sell","sell stop",loss=SL,profit=TP, when=Use_SL_TP)
strategy.close("buy stop",when=not Use_SL_TP and close<dojilow)
strategy.exit("exit buy","buy stop",profit=TP, when=not Use_SL_TP)
strategy.close("sell stop",when=not Use_SL_TP and close>dojihigh)
strategy.exit("exit sell","sell stop",profit=TP, when=not Use_SL_TP)