La stratégie de portée ouverte avec objectif de profit dynamique

Auteur:ChaoZhang est là., Date: 2023-09-10
Les étiquettes:

img

La stratégie d'ouverture de gamme avec cible de profit dynamique est une stratégie de trading technique qui utilise la gamme d'ouverture du marché pour identifier les opportunités de trading potentielles.

La stratégie fonctionne en calculant d'abord la fourchette d'ouverture du marché. La fourchette d'ouverture est la différence entre le prix élevé et le prix bas de la première barre du jour de négociation. La stratégie identifie ensuite les opportunités de négociation potentielles en recherchant une rupture au-dessus ou en dessous de la fourchette d'ouverture.

Si le prix dépasse la fourchette d'ouverture, la stratégie entrera dans une position longue. Si le prix dépasse la fourchette d'ouverture, la stratégie entrera dans une position courte. La stratégie sortira de la position lorsque le prix atteindra une cible de profit prédéterminée ou un stop loss.

L'objectif de profit de la stratégie est dynamique, ce qui signifie qu'il change au fur et à mesure que le prix évolue. L'objectif de profit est calculé en fonction de la fourchette d'ouverture et du prix actuel du marché. La stratégie sortira de la position lorsque le prix atteindra un pourcentage prédéterminé de la fourchette d'ouverture.

Le stop loss pour la stratégie est également dynamique, ce qui signifie qu'il change à mesure que le prix bouge. Le stop loss est calculé en fonction du prix actuel du marché et du pourcentage prédéterminé de la fourchette d'ouverture. La stratégie sortira de la position si le prix atteint le stop loss.

La stratégie Open Range avec Dynamic Profit Target est une stratégie relativement simple à mettre en œuvre, mais elle peut être efficace pour identifier les opportunités de trading à court terme.

Voici une explication plus détaillée des différentes composantes de la stratégie:

  • La fourchette d'ouverture: La fourchette d'ouverture est la différence entre le prix élevé et le prix bas de la première barre du jour de négociation.
  • Breakout: Une rupture se produit lorsque le prix dépasse ou dépasse la fourchette d'ouverture.
  • Objectif de profit: l'objectif de profit est le pourcentage prédéterminé de la fourchette d'ouverture que la stratégie tentera d'atteindre avant de quitter la position.
  • Stop Loss: Le stop loss est le prix prédéterminé auquel la stratégie sortira de la position si le marché se déplace contre la transaction. La stratégie Open Range avec Dynamic Profit Target est une stratégie polyvalente qui peut être utilisée sur une variété de délais et de marchés.

Voici quelques conseils pour utiliser la stratégie de portée ouverte avec une cible de profit dynamique:

  • Utilisez un stop loss pour protéger vos profits.
  • Utilisez un stop-loss pour obtenir des profits à mesure que le marché évolue en votre faveur.
  • Testez la stratégie sur les données historiques avant de l'utiliser dans le trading en direct.
  • Utiliser une variété d'autres indicateurs pour confirmer les signaux générés par la stratégie Open Range avec Dynamic Profit Target. La stratégie Open Range avec Dynamic Profit Target est un outil puissant qui peut être utilisé pour identifier les opportunités de trading à court terme. Cependant, il est important d'utiliser la stratégie avec sagesse et de comprendre ses limites. En suivant les conseils ci-dessus, vous pouvez augmenter vos chances de succès lors de l'utilisation de cette stratégie.

J'espère que cet article vous sera utile.


/*backtest
start: 2023-08-09 00:00:00
end: 2023-09-08 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
args: [["v_input_10",true]]
*/

//@version=2
//Created by Frenchy/lisfse/Francois Seguin on 2019-01-22"
strategy(title="Open_Range_Strategy_with_dynamic_PT_by_frenchy", shorttitle="O/R Strategy Dynamic PT  ", overlay=true)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2017, title = "From Year", minval = 2010)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2016)
// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => time >= start and time <= finish ? true : false // create function "within window of time"


// === INPUT SESSION RANGE ===
SessionLenght = input('0930-1100',  title="Session Lenght")
res = input('30', title="Length Of Opening Range?")
Notradetime= time('30', '0930-1000')
Tradetime= time('1', '1000-1100')

// === LONG/SHORT STRATEGY AND ALERT SELECTION     ===

Select_long = input(true, title="Long Strategy and alert ?")
Select_short = input(false, title="Short Strategy and alert ?")


//Session Rules
sessToUse = SessionLenght
bartimeSess = time('D', sessToUse)
fr2to17 =  time(timeframe.period, sessToUse) 
newbarSess = bartimeSess != bartimeSess[1]
high_range = valuewhen(newbarSess,high,0)
low_range = valuewhen(newbarSess,low,0)
adopt(r, s) => security(syminfo.tickerid, r, s)


//Formula For Opening Range
highRes = adopt(res, high_range)
lowRes = adopt(res, low_range)
range = highRes - lowRes

//Highlighting Line Rules For Opening Range
highColor = Notradetime  ? red : green
lowColor = Notradetime  ? red : green


//Plot Statements For Opening Range Lines
openRangeHigh = plot(fr2to17 > 0 ? highRes : na, color=highColor, style=linebr, linewidth=4,title="OR High")
openRangeLow = plot(fr2to17 > 0 ? lowRes : na, color=lowColor, style=linebr, linewidth=4,title="OR Low")


//Price definition
price = security(syminfo.tickerid, timeframe.period, close)
haclose = ((open + high + low + close)/4)
//aopen = na(haopen[1]) ? (open + close)/2 : (haopen[1] + haclose[1]) / 2
MA20= sma(price,20)


//Plots For Profit Targe 2
bgcolor(Notradetime? red:na)


///////////////////////////////////////Strategy Definition ///////////////////////////////////////////////////////////////


/////////////////////////////////////////Long Strategy////////////////////////////////////////////////////////////////////
//Enter Strategy Long criteria 
Enterlong = (crossover(price,highRes) and Select_long and Tradetime ? 1:0 ) and (Notradetime ? 0:1) 
plotarrow(Enterlong, color=black, style=shape.triangleup, text="Enter", location=location.belowbar, minheight = 80, maxheight=80, offset=0)

//Exit Strategy Long  criteria
Exitlong  = crossunder(price,highRes) or crossunder(price,MA20) 
//plotshape(Exitlong, color=black, style=shape.triangledown, text="Exit", location=location.abovebar)

/////////////////////////////////////////Long Strategy Excution////////////////////////////////////////////////////////
strategy.entry ("Call", strategy.long, when=Enterlong and window())
strategy.close("Call", when=Exitlong and window())




//////////////////////////////////////////Short Strategy////////////////////////////////////////////////////////////////

//Enter Strategy Short criteria
Entershort = crossunder(price,lowRes) and time(res, SessionLenght) and Select_short ? 1:0

// Exit Strategy short criteria
Exitshort  =  crossover(price,lowRes) or crossover(haclose,MA20)


///////////////////////////////////////Strategy execution Short///////////////////////////////////////////////////////

strategy.entry ("put", strategy.short, when=Entershort and window()) 
strategy.close("put", when=Exitshort and window())



 





Plus de