
La stratégie permet d’optimiser les paramètres de la stratégie en testant différentes combinaisons de pourcentages sur différentes périodes et sur différents graphiques.
La stratégie consiste principalement à suivre les arrêts et les achats à travers deux indicateurs:
La règle de stop loss et de reprise est réalisée en comparant les prix avec la relation entre ces deux indicateurs.
Cette stratégie présente les avantages suivants:
La stratégie présente également les risques suivants:
Cette stratégie peut être optimisée dans les domaines suivants:
La stratégie dans son ensemble est une stratégie de suivi de tendance très simple et intuitive. Elle peut être adaptée à différents marchés par des ajustements de paramètres, tandis que la combinaison d’algorithmes d’adaptation et d’autres indicateurs peut encore améliorer la stabilité et la praticité de la stratégie.
/*backtest
start: 2023-01-12 00:00:00
end: 2024-01-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
//Developed from ©Finnbo code
strategy("Simple Trailing Buy & Stop Strategy", overlay=true)
offset = input(defval=1.5, title="Stop Offset %", type=float, minval=0.1, maxval=100, step=0.1)
buyoffset = input(defval=1.9, title="Trailing Buy Offset %", type=float, minval=0.1, maxval=100, step=0.1)
sumbars = input(defval=6, title="Use last x bars for calculation", minval=1)
srcts = input(title="Source Trailing Stop calculation", defval=close)
srctb = input(title="Source Trailing Buy calculation", defval=close)
srctrigger = input(title="Source Stop Trigger", defval=low)
srctriggerbuy = input(title="Source Buy Trigger", defval=high)
tsl = rma(srcts, sumbars)*(1-(offset/100))// = (sum(srcts,sumbars)/sumbars)*(1-(offset/100))
tbuy = rma(srctb, sumbars)*(1+(buyoffset/100))
plot(tsl, color=(srctrigger<tsl)?red:green)
plot(tbuy, color=(srctriggerbuy>tbuy)?red:green)
//plotshape(crossunder(srctrigger,tsl), text="Long Stop", style=shape.circle, color=red)
alertcondition(crossunder(srctrigger,tsl), "Long Stop alert", "SELL")
//plotshape(crossover(srctriggerbuy,tbuy), text="Long", style=shape.circle, color=green)
alertcondition(crossover(srctriggerbuy,tbuy), "Long alert", "BUY")
longCondition = crossover(srctriggerbuy,tbuy)
if (longCondition)
strategy.entry("Long", strategy.long)
closeCondition = crossunder(srctrigger,tsl)
if (closeCondition)
strategy.close("Long")