
La stratégie de suivi des indices à double base est une stratégie de trading de quantification des monnaies numériques. La stratégie génère un signal de trading en combinant les signaux des deux indices de base de l’indicateur 123 inverse et de l’indicateur Qstick, et décide de l’entrée en fonction de la cohérence des deux indicateurs.
La stratégie est composée de deux volets:
Le signal de transaction de l’indicateur provient du prix de clôture des deux dernières lignes K. Un signal de transaction est généré si le prix de clôture des deux dernières lignes K se retourne (c’est-à-dire que le prix de clôture passe de la hausse à la baisse ou de la baisse à la hausse) et remplit simultanément les conditions de l’indicateur aléatoire.
En particulier, si le prix de clôture des deux jours précédents était en baisse, le prix de clôture de la journée était en hausse, et la ligne lente aléatoire du 9e jour était inférieure à 50, générant un signal d’achat. Si le prix de clôture des deux jours précédents était en hausse, le prix de clôture de la journée était en baisse, et la ligne rapide aléatoire du 9e jour était supérieure à 50, générant un signal de vente.
L’indicateur détermine la force des polyèdres et des blancs en calculant une moyenne mobile simple de la différence entre le prix d’ouverture et le prix de clôture. Il génère un signal de transaction en traversant l’axe zéro.
Si le Qstick passe sur l’axe zéro, cela indique une augmentation de la force à plusieurs têtes, générant un signal d’achat. Si le Qstick passe sous l’axe zéro, cela indique une augmentation de la force à vide, générant un signal de vente.
L’indicateur à double base suit une stratégie qui prend en compte les signaux de négociation de l’indicateur 123 inverse et de l’indicateur Qstick, et prend les mesures correspondantes lorsque les signaux sont identiques.
L’indicateur à double base suit une stratégie qui combine les signaux de deux types d’indicateurs différents, ce qui améliore l’exactitude des signaux de négociation. Par rapport à l’indicateur unique, il permet de réduire efficacement les signaux erronés et d’obtenir un taux de victoire plus élevé.
De plus, la stratégie ne s’applique que lorsque les signaux des deux indicateurs sont identiques, ce qui permet de contrôler efficacement le risque et de prévenir les variations de base.
L’optimisation par paramètres permet d’ajuster les paramètres des deux indicateurs afin que la fréquence et le rythme de leur signal soient plus harmonisés.
Il est possible de définir des périodes de détention minimales pour éviter de révoquer et de créer des mandats fréquemment.
Optimiser les paramètres de longueur des deux indicateurs pour trouver la meilleure combinaison de paramètres
Test de différentes configurations de paramètres de l’indicateur aléatoire
Adhérer à une stratégie de stop loss
Les indicateurs binaires suivent la stratégie en combinant les avantages de plusieurs indicateurs de base, permettant d’améliorer la qualité du signal et d’obtenir des rendements plus élevés tout en contrôlant les risques. La stratégie a de la place pour une optimisation supplémentaire des paramètres et de l’optimisation de la stratégie, qui peut être rendue plus stable et plus fiable par le test.
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 24/05/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
// A technical indicator developed by Tushar Chande to numerically identify
// trends in candlestick charting. It is calculated by taking an 'n' period
// moving average of the difference between the open and closing prices. A
// Qstick value greater than zero means that the majority of the last 'n' days
// have been up, indicating that buying pressure has been increasing.
// Transaction signals come from when the Qstick indicator crosses through the
// zero line. Crossing above zero is used as the entry signal because it is indicating
// that buying pressure is increasing, while sell signals come from the indicator
// crossing down through zero. In addition, an 'n' period moving average of the Qstick
// values can be drawn to act as a signal line. Transaction signals are then generated
// when the Qstick value crosses through the trigger line.
//
// 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
Qstick(Length) =>
pos = 0.0
xR = close - open
xQstick = sma(xR, Length)
pos:= iff(xQstick > 0, 1,
iff(xQstick < 0, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Qstick Indicator", 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, "---- Qstick Indicator ----")
LengthQ = input(14, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posQstick = Qstick(LengthQ)
pos = iff(posReversal123 == 1 and posQstick == 1 , 1,
iff(posReversal123 == -1 and posQstick == -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 )