Cette stratégie est connue sous le nom de stratégie de juste valeur cumulative à taux régulier. Elle consiste à acheter des actifs à taux régulier pour atteindre progressivement la position cible et obtenir une tenue à long terme.
Comment fonctionne cette stratégie ?
Le processus d’opération:
Les avantages de cette stratégie:
Le risque de cette stratégie:
En résumé, la stratégie de quota régulier accumule des actifs en créant des positions par lots et est plus favorable aux investisseurs à long terme. Cependant, les traders doivent toujours être attentifs aux risques de la grande tendance et optimiser leur stratégie de vente pour maximiser leurs bénéfices en plaçant des positions en lots au plus haut de la tendance.
/*backtest
start: 2022-09-08 00:00:00
end: 2023-09-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tanoshimooo
//@version=5
strategy ("DCA", initial_capital=44700, overlay=true)
// To start script at a given date
tz = 0 //timezone
timeadj = time + tz * 60 * 60 * 1000 //adjust the time (unix)
t1 = timeadj >= timestamp(2003, 03, 01, 0, 0) ? 1 : 0 //get the starting time
// Variables
var float lastRef = na
if barstate.isfirst
lastRef := close
var float cash = 50000 // available money
var float sell_contracts = na
var bool first_trade_done = false
// Parameters
var float sell_min = 200 //200 sell more than sell_min or sell all
var float buy_dollars = 200
var int bi = 90
// LONGS
// if bar_index < bi
strategy.order("Long", strategy.long, int(buy_dollars/close))
cash := cash - int(buy_dollars/close)*close
// label.new(bar_index, na, na, xloc.bar_index, yloc.abovebar, color.blue, label.style_triangleup, color.blue, size.tiny)
//plot(cash)
// SHORTS
// if longExit
// if (strategy.position_size*sf*close > sell_min) and (strategy.position_size*sf >= 1)
// strategy.order ("Long", strategy.short, strategy.position_size*sf)
// cash := cash + strategy.position_size*sf*close
// else
// strategy.order ("Long", strategy.short, strategy.position_size)
// cash := cash + strategy.position_size*close
// lastRef := close
// label.new(bar_index, na, na, xloc.bar_index, yloc.belowbar, color.red, label.style_triangledown, color.red, size.tiny)
if bar_index == last_bar_index - 2 // bi
strategy.order ("Long", strategy.short, strategy.position_size)