La stratégie de superposition de la dynamique de printemps-automne consiste principalement à calculer le taux de variation de ROC sur différents cycles et à la superposer en fonction de l'autorisation proportionnelle pour former un indicateur de dynamique global afin de déterminer la direction de la tendance du marché. La stratégie superpose des indicateurs de dynamique à court, moyen et long terme, ce qui permet d'équilibrer les tendances à court et à long terme et d'éviter de créer de faux signaux.
La stratégie commence par calculer les indicateurs ROC pour les différents cycles de 10, 15 et 20 jours, puis traite les ROC en douceur et les superpose en fonction du ratio 1 à 4, la formule de calcul étant la suivante:
roc1 = (sma(roc(close,10),10)*1)
roc2 = (sma(roc(close,15),10)*2)
...
osc = roc1+roc2+roc3+roc4+...
Ici,roc1-roc12 représente le calcul des ROC de différents cycles, correspondant respectivement à des cycles de 10 jours, 15 jours et 530 jours.
Le traitement de l'ASM par l'OSC est ensuite effectué sur un jour (defaut 10 jours) pour obtenir l'OSCSMT.
On compare ensuite la relation de taille de l'osc avec l'oscsmt, et l'osc passe dans le sens de la voyance en passant par l'oscsmt.
Enfin, vous pouvez choisir d'inverser la direction de la transaction.
Les indicateurs de dynamisme à court et à long terme sont superposés, ce qui permet de capturer les tendances à court et à long terme en même temps, évitant ainsi de créer de faux signaux.
En comparant les différences entre osc et oscsmt, il est possible de réduire les transactions inutiles dans la zone de plateau.
Les paramètres peuvent être personnalisés, les paramètres de cycle du calcul ROC peuvent être ajustés, ainsi que les paramètres de fluidité du SMA.
Il est possible de choisir la direction inverse des transactions pour répondre à différents styles de transactions.
Il y a aussi des sites de vente en ligne, des sites de vente en ligne, des sites de vente en ligne, des sites de vente en ligne, etc.
L'indicateur ROC est très sensible aux prix soudains et peut générer des signaux erronés. Le paramètre de l'affinage SMA a peut être augmenté de manière appropriée, ce qui réduit la sensibilité de l'indicateur ROC.
Les paramètres par défaut peuvent ne pas s'appliquer à toutes les variétés et il est nécessaire d'optimiser les paramètres en fonction des caractéristiques des différentes variétés pour trouver la meilleure combinaison de paramètres.
Une comparaison des différences basée uniquement sur osc et oscsmt génère des signaux de transaction, qui peuvent être combinés avec d'autres indicateurs pour filtrer les signaux, réduisant ainsi la probabilité d'erreurs de transaction.
Cette stratégie est plus adaptée aux transactions à long terme, les transactions à court terme peuvent être moins efficaces.
La stratégie de superposition de la mobilité permet d'éviter la production de faux signaux en tenant compte des tendances à court et à long terme en calculant plusieurs cycles d'indicateurs ROC et en les superposant à des indicateurs de mobilité intégrés. Cette stratégie permet d'améliorer considérablement la qualité et la fiabilité du signal par rapport à un seul indicateur ROC.
/*backtest start: 2023-09-25 00:00:00 end: 2023-10-25 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter 08/08/2017 // Pring's Special K is a cyclical indicator created by Martin Pring. // His method combines short-term, intermediate and long-term velocity // into one complete series. Useful tool for Long Term Investors // Modified for any source. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="Martin Pring's Special K Backtest", shorttitle="UCS_Pring_sK") a = input(10, title = "Smooth" ) sources = input(title="Source", defval=close) reverse = input(false, title="Trade reverse") roc1 = (sma(roc(sources,10),10)*1) roc2 = (sma(roc(sources,15),10)*2) roc3 = (sma(roc(sources,20),10)*3) roc4 = (sma(roc(sources,30),15)*4) roc5 = (sma(roc(sources,40),50)*1) roc6 = (sma(roc(sources,65),65)*2) roc7 = (sma(roc(sources,75),75)*3) roc8 = (sma(roc(sources,100),100)*4) roc9 = (sma(roc(sources,195),130)*1) roc10 = (sma(roc(sources,265),130)*2) roc11 = (sma(roc(sources,390),130)*3) roc12 = (sma(roc(sources,530),195)*4) osc = roc1+roc2+roc3+roc4+roc5+roc6+roc7+roc8+roc9+roc10+roc11+roc12 oscsmt = sma(osc,a) pos = iff(osc > oscsmt, 1, iff(osc < oscsmt, -1, nz(pos[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) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(osc, color=blue, title="Martin Pring's Special K") plot(oscsmt, color = red, title = "Smooth") hline(0, title="Zero Line")