
Cette stratégie consiste à identifier la direction d’une tendance en combinant une double croisée des lignes de parité et un indicateur RSI pour identifier la direction d’une tendance et des situations de survente et d’achat excessif. La stratégie vise à utiliser la croisée des lignes de parité pour déterminer la direction de la tendance, tout en utilisant l’indicateur RSI pour éviter la survente au sommet du marché et la dépréciation au bas du marché, afin d’obtenir de meilleurs résultats.
Un signal typique est un signal à plusieurs têtes lorsque la courte tendance à la hausse est superposée à la longue tendance à la hausse sur une moyenne rapide de 9 cycles. De plus, si le RSI est supérieur à 5 points de la période précédente et inférieur à 70, cela indique qu’il est dans la zone d’avant le surachat.
Lorsque la moyenne rapide de 9 cycles est inférieure à la moyenne lente de 50 cycles, cela signifie que le marché est vide et que la position doit être nettoyée.
Cette stratégie permet d’obtenir des gains stables en utilisant efficacement les tendances de la ligne médiane et longue pour déterminer la direction des croisements de la ligne médiane et éviter de suivre le RSI. Cependant, il faut également être attentif au retard des signaux de croisement de la ligne médiane et à l’ajustement des paramètres du RSI, tout en se concentrant sur la relation entre le prix et le volume de transactions.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 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/
// © joshuajcoop01
//@version=5
strategy("Bitpanda Coinrule Template",
overlay=true,
initial_capital=1000,
process_orders_on_close=true,
default_qty_type=strategy.percent_of_equity,
default_qty_value=30,
commission_type=strategy.commission.percent,
commission_value=0.1)
showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2020, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0
// RSI
length = input(14)
vrsi = ta.rsi(close, length)
// Moving Averages for Buy Condition
buyFastEMA = ta.ema(close, 9)
buySlowEMA = ta.ema(close, 50)
buyCondition1 = ta.crossover(buyFastEMA, buySlowEMA)
increase = 5
if ((vrsi > vrsi[1]+increase) and buyCondition1 and vrsi < 70 and timePeriod)
strategy.entry("Long", strategy.long)
// Moving Averages for Sell Condition
sellFastEMA = ta.ema(close, 9)
sellSlowEMA = ta.ema(close, 50)
plot(request.security(syminfo.tickerid, "60", sellFastEMA), color = color.blue)
plot(request.security(syminfo.tickerid, "60", sellSlowEMA), color = color.green)
condition = ta.crossover(sellSlowEMA, sellFastEMA)
//sellCondition1 = request.security(syminfo.tickerid, "60", condition)
strategy.close('Long', when = condition and timePeriod)