
Cette stratégie est appelée la stratégie de l’oscillateur d’Alon Saucius et s’applique aux actions, indices et marchandises dont les prix sont très volatils et sans tendance évidente. La stratégie utilise l’indicateur d’oscillateur d’Alon pour identifier les tendances des prix et, en combinaison avec plusieurs paramètres, définir les conditions d’entrée et de sortie pour permettre la négociation automatique de ces actifs risqués.
Cette stratégie est née de l’idée de Tushar Chande, le fondateur de la ligne d’Alon. Selon Chande, les tendances à plusieurs têtes et à la tête vide peuvent être identifiées lorsque l’oscillateur d’Alon est supérieur ou inférieur à 50. Cela aide à compenser les lacunes de la simple ligne d’Alon et de la croisée d’Alon dans les marchés non tendance.
En particulier, la stratégie commence par calculer la ligne supérieure d’Alon, la ligne inférieure d’Alon et l’oscillateur d’Alon de 19 cycles. L’oscillateur est calculé en soustrayant la ligne inférieure de la ligne supérieure.
Ainsi, la ligne médiane est utilisée pour déterminer la direction de la tendance à l’entrée du terrain, et les rails supérieurs et inférieurs sont utilisés pour l’inversion de la tendance à l’extérieur du terrain, ce qui permet une transaction automatisée basée sur l’indicateur de l’oscillateur d’Aaron.
Les avantages de cette stratégie par rapport aux stratégies traditionnelles de suivi des tendances sont les suivants:
Dans l’ensemble, cette stratégie, combinée aux avantages de l’indicateur de l’oscillateur d’Arlon, permet d’obtenir de bonnes performances en termes d’automatisation des transactions, de taux de victoire et de rentabilité pour des variétés spécifiques.
Cette stratégie comporte aussi des risques:
Ces points de risque peuvent être améliorés et atténués en ajustant les paramètres et en optimisant le code. De plus, une bonne localisation et une bonne gestion des fonds permettent de contrôler efficacement les risques potentiels.
Afin d’améliorer encore l’efficacité de la stratégie, il est possible d’optimiser la stratégie dans les domaines suivants:
La stabilité, le succès et la rentabilité des stratégies peuvent être considérablement améliorés par des tests et des optimisations multilatéraux.
Cette stratégie, basée sur l’indicateur de l’oscillateur d’Aaron, permet de réaliser de manière créative des transactions automatisées sur des variétés plus volatiles et moins tendance. Par rapport à la stratégie de tendance traditionnelle, son efficacité est meilleure sur ces variétés, et des conditions de négociation strictes sont également réalisées grâce à la définition de paramètres.
/*backtest
start: 2023-12-15 00:00:00
end: 2024-01-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// by Saucius Finance https://saucius-finance.blogspot.com/
// copyrights reserved :)
// This strategy derives form the consideration of the author, Tushar Chande, that, in "more patterns" paragraph,
// long and short trends are identified by oscillator < or > line 50.
// This helps because simple Aroon and Aroon crosses suffer in not trending periods.
// original article avabile in:" Stocks & Commodities, V. 13:9 (369-374) : A Time Price Oscillator by Tushar Chande, Ph.D.""
strategy("Aroon Oscillator strategy by Saucius", overlay=false)
//building aroon lines, Embodying both Aroon line (Up and Down) and Aroon Oscillator
length = input(19, minval=1)
level_middle = input(-25, minval=-90, maxval=90, step = 5)
levelhigh = input(75, minval=-100, maxval=100, step = 5)
levellow = input(-85, minval=-100, maxval=100, step = 5)
upper = 100 * (highestbars(high, length+1) + length)/length
lower = 100 * (lowestbars(low, length+1) + length)/length
oscillator = upper - lower
plot(upper, title="Aroon Up", color=blue)
plot(lower, title="Aroon Down", color=red)
plot(oscillator, title="Aroon Oscillator", color = yellow)
hline(level_middle, title="middle line", color=gray, linewidth=2)
hline(levelhigh, title ="upper border", color=gray, linewidth=1)
hline(levellow, title ="lower border", color=gray, linewidth=1)
// Entry //
entryl = oscillator[1] < level_middle[1] and oscillator > level_middle
entrys = oscillator[1] > level_middle[1] and oscillator < level_middle
strategy.entry("Long", true, when = entryl)
strategy.entry("Short", false, when = crossunder (oscillator, level_middle))
// === EXIT===
exitL1 = oscillator[1] > levelhigh[1] and oscillator < levelhigh
exitS1 = oscillator[1] < levellow[1] and oscillator > levellow
strategy.close("Long", when=entrys)
strategy.close("Short", when=entryl)
strategy.close("Long", when= exitL1)
strategy.close("Short", when= exitS1)