Cette stratégie combine principalement des signaux de deux types de stratégies pour superposer les signaux de stratégie et améliorer la qualité du signal.
Cette stratégie provient de la page 183 du livre
Cette stratégie utilise la différence entre la moyenne mobile de 3 jours et la moyenne mobile de 10 jours pour construire un indicateur. Plus précisément, c'est la moyenne mobile exponentielle de 3 jours moins la moyenne mobile exponentielle de 10 jours. La différence est la ligne rapide.
Ce signal composite d'empilement multi-stratégie présente les avantages suivants:
Filtrer les faux signaux et améliorer la qualité du signal
Étant donné que deux stratégies sont nécessaires pour donner des signaux dans le même sens en même temps, l'impact des faux signaux dans une seule stratégie peut être évité, améliorant ainsi la fiabilité du signal.
Intégrer plusieurs idées commerciales
La combinaison des stratégies d'inversion et des stratégies de tendance intègre deux idées dans une certaine mesure.
Une grande souplesse
Selon les besoins réels, la combinaison des stratégies participantes peut être ajustée pour créer des stratégies de combinaison plus diversifiées en combinant différents types de stratégies.
Les hypothèses contradictoires
L'hypothèse de base de cette stratégie est que plusieurs stratégies peuvent vérifier les signaux les unes avec les autres.
Signaux incohérents
Lorsque les deux signaux stratégiques sont incohérents, il est impossible de déterminer quelle stratégie est la plus fiable et il existe un certain risque de décision.
Décalage des paramètres
Des paramètres incorrects peuvent empêcher certaines stratégies de fonctionner correctement, ce qui entraîne l'incapacité d'obtenir les effets attendus des combinaisons de stratégies.
Les contre-mesures:
Augmenter le nombre de stratégies de vote majoritaire
Définir des points de stop-loss pour contrôler les pertes des signaux individuels
Optimiser les paramètres pour assurer le fonctionnement normal de la stratégie
La stratégie peut également être optimisée dans les directions suivantes:
Augmenter la combinaison de plusieurs stratégies
Continuer d'ajouter de nouveaux types de stratégies pour former des stratégies combinées, afin d'améliorer encore la qualité du signal.
Conditions de filtrage antérieures
Selon les conditions du marché, certaines conditions préalables peuvent être fixées, telles que le filtrage du marché, afin d'éviter d'ouvrir des positions dans des conditions de marché inappropriées.
Ajustez dynamiquement les poids stratégiques
Les pondérations des différentes stratégies dans la combinaison peuvent être ajustées dynamiquement en fonction de leurs performances historiques, de sorte que les stratégies les plus performantes puissent jouer un rôle plus important.
Optimiser les détails des paramètres
Une approche plus systématique peut être utilisée pour tester et optimiser soigneusement les paramètres internes de chaque stratégie afin d'obtenir les paramètres optimaux.
Cette stratégie appartient à une stratégie composite de superposition multi-stratégie. Elle intègre deux sous-stratégies, la stratégie d'inversion de tendance croisée et la stratégie d'oscillation à trois-dix. Elle génère des ordres de négociation uniquement lorsque leurs signaux de négociation sont dans le même sens, ce qui peut filtrer efficacement les faux signaux dans une seule stratégie et améliorer la qualité du signal. Par rapport à une seule stratégie, ce type de combinaison de stratégies présente des avantages tels qu'une fiabilité du signal plus élevée et une tolérance aux erreurs plus forte. Mais les risques liés aux hypothèses de cohérence doivent également être pris en compte et des mesures appropriées doivent être prises pour les contrôler. En général, cette combinaison multi-stratégie a un grand potentiel d'expansion et peut être approfondie en ajoutant plus de sous-stratégies, en optimisant les paramètres et en définissant des conditions de filtrage.
/*backtest start: 2024-01-11 00:00:00 end: 2024-01-18 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 04/12/2019 // 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 // TradeStation does not allow the user to make a Multi Data Chart with // a Tick Bar Chart and any other type a chart. This indicator allows the // user to plot a daily 3-10 Oscillator on a Tick Bar Chart or any intraday interval. // Walter Bressert's 3-10 Oscillator is a detrending oscillator derived // from subtracting a 10 day moving average from a 3 day moving average. // The second plot is an 16 day simple moving average of the 3-10 Oscillator. // The 16 period moving average is the slow line and the 3/10 oscillator is // the fast line. // For more information on the 3-10 Oscillator see Walter Bressert's book // "The Power of Oscillator/Cycle Combinations" // // 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 D_Three(Length1, Length2, Length3) => pos = 0.0 xPrice = security(syminfo.tickerid,"D", hl2) xfastMA = ema(xPrice, Length1) xslowMA = ema(xPrice, Length2) xMACD = xfastMA - xslowMA xSignal = sma(xMACD, Length3) pos := iff(xSignal > xMACD, -1, iff(xSignal < xMACD, 1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & D_Three Ten Osc", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- Length1 = input(3, minval=1) Length2 = input(10, minval=1) Length3 = input(16, minval=1) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posD_Three = D_Three(Length1, Length2, Length3) pos = iff(posReversal123 == 1 and posD_Three == 1 , 1, iff(posReversal123 == -1 and posD_Three == -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 )