
Cette stratégie est basée sur l’indicateur RSI, un indicateur relativement fort et faible, conçu pour une stratégie d’investissement quantitative utilisée pour les transactions sur l’indice Nifty. Cette stratégie utilise l’indicateur RSI pour identifier les occasions de survente, de survente et de survente.
La stratégie utilise le RSI à deux niveaux comme signal de négociation. Lorsque le RSI dépasse 20, le trader fait plus; lorsque le RSI dépasse 70, le trader fait moins. Cela permet de saisir les opportunités de correction à court terme de l’indice.
Le principe est le suivant: lorsque le RSI est inférieur à 20, il s’agit d’un état de survente, indiquant que l’actif est sous-évalué, ce qui indique un rebond imminent; lorsque le RSI est supérieur à 20, faites plus; lorsque le RSI est supérieur à 70, il s’agit d’un état de survente, indiquant que l’actif est surévalué, ce qui indique un redressement imminent; lorsque le RSI est inférieur à 70, la position est levée.
Il s’agit d’une stratégie quantitative utilisant des indicateurs pour identifier les opportunités de survente à court terme. Par rapport aux stratégies complexes d’apprentissage automatique et d’arbitrage statistique, les avantages de cette stratégie se manifestent principalement par:
La stratégie présente principalement les risques suivants:
Pour maîtriser ces risques, il est possible d’optimiser:
La stratégie peut être optimisée principalement dans les domaines suivants:
Cette stratégie est basée sur l’indicateur RSI. Elle utilise les signaux de sur-achat et de sur-vente de l’indicateur RSI pour réaliser des achats bas et des ventes élevées, pour rechercher des gains excessifs. La stratégie est simple et facile à mettre en œuvre, mais il existe un certain degré de fréquence des transactions, l’incapacité d’identifier les tendances à long terme.
/*backtest
start: 2023-01-18 00:00:00
end: 2024-01-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("RSI Strategy", overlay=true,pyramiding = 1000)
rsi_period = 2
rsi_lower = 20
rsi_upper = 70
rsi_value = rsi(close, rsi_period)
buy_signal = crossover(rsi_value, rsi_lower)
sell_signal = crossunder(rsi_value, rsi_upper)
current_date1 = input(defval=timestamp("01 Nov 2009 00:00 +0000"), title="stary Time", group="Time Settings")
current_date = input(defval=timestamp("01 Nov 2023 00:00 +0000"), title="End Time", group="Time Settings")
investment_amount = 100000.0
start_time = input(defval=timestamp("01 Dec 2018 00:00 +0000"), title="Start Time", group="Time Settings")
end_time = input(defval=timestamp("30 Nov 2023 00:00 +0000"), title="End Time", group="Time Settings")
in_time = time >= start_time and time <= end_time
// Variable to track accumulation.
var accumulation = 0.0
out_time = time >= end_time
if (buy_signal )
strategy.entry("long",strategy.long,qty= 1)
accumulation += 1
if (out_time)
strategy.close(id="long")
plotshape(series=buy_signal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup)
plotshape(series=sell_signal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown)
plot(rsi_value, title="RSI", color=color.blue)
hline(rsi_lower, title="Lower Level", color=color.red)
plot(strategy.opentrades, style=plot.style_columns,
color=#2300a1, title="Profit first entry")
plot(strategy.openprofit, style=plot.style_line,
color=#147a00, title="Profit first entry")
// plot(strategy.position_avg_price, style=plot.style_columns,
// color=#ca0303, title="Profit first entry")
// log.info(strategy.position_size * strategy.position_avg_price)