
La stratégie de capture de croisement inverse est une stratégie complexe qui combine le trading inverse et le croisement d’indicateurs. Elle génère d’abord un signal de négociation en utilisant la forme inverse des prix, puis filtre en combinant un croisement polygonal d’indicateurs aléatoires, capturant ainsi des opportunités de revers sur le marché à court terme.
Cette stratégie est composée de deux sous-stratégies:
La stratégie composite juge les signaux des deux sous-stratégies et produit un signal de transaction réel lorsque les signaux de transaction des deux sous-stratégies sont identiques.
Cette stratégie, qui combine le revers et le croisement des indicateurs, permet de juger de manière globale les prix et les informations sur les indicateurs, de filtrer efficacement les faux signaux, d’exploiter les opportunités de revers potentiels et d’améliorer le taux de rendement des bénéfices.
Les avantages spécifiques sont les suivants:
Cette stratégie comporte aussi des risques:
Ces risques peuvent être maîtrisés par l’adaptation des paramètres de l’indicateur et la mise en place d’un mécanisme d’arrêt des pertes.
Cette stratégie peut être optimisée dans les dimensions suivantes:
La stratégie de capture croisée inverse utilise les avantages de plusieurs stratégies et a une forte capacité de rentabilité dans le cadre de la maîtrise des risques. Grâce à l’optimisation et à l’amélioration continues, il est possible de créer des stratégies efficaces adaptées à son propre style et adaptées aux environnements de marché changeants.
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 15/09/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This back testing strategy generates a long trade at the Open of the following
// bar when the %K line crosses below the %D line and both are above the Overbought level.
// It generates a short trade at the Open of the following bar when the %K line
// crosses above the %D line and both values are below the Oversold level.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
StochCross(Length, DLength,Oversold,Overbought) =>
pos = 0.0
vFast = stoch(close, high, low, Length)
vSlow = sma(vFast, DLength)
pos := iff(vFast < vSlow and vFast > Overbought and vSlow > Overbought, 1,
iff(vFast >= vSlow and vFast < Oversold and vSlow < Oversold, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Stochastic Crossover", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Stochastic Crossover ----")
LengthSC = input(7, minval=1)
DLengthSC = input(3, minval=1)
Oversold = input(20, minval=1)
Overbought = input(70, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posmStochCross = StochCross(LengthSC, DLengthSC,Oversold,Overbought)
pos = iff(posReversal123 == 1 and posmStochCross == 1 , 1,
iff(posReversal123 == -1 and posmStochCross == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )